commit 4c0fe77545077b5052b645b28b73f3c759b4ba03
Author: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Date:   Sun Sep 26 13:36:19 2021 +0200

    Linux 4.9.284
    
    Link: https://lore.kernel.org/r/20210924124328.336953942@linuxfoundation.org
    Tested-by: Jon Hunter <jonathanh@nvidia.com>
    Tested-by: Shuah Khan <skhan@linuxfoundation.org>
    Tested-by: Florian Fainelli <f.fainelli@gmail.com>
    Link: https://lore.kernel.org/r/20210925120744.599320551@linuxfoundation.org
    Tested-by: Guenter Roeck <linux@roeck-us.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 92e7bca98452aa760713016a434aa7edfc09fb13
Author: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Date:   Mon Jun 28 16:13:41 2021 -0300

    sctp: validate from_addr_param return
    
    commit 0c5dc070ff3d6246d22ddd931f23a6266249e3db upstream.
    
    Ilja reported that, simply putting it, nothing was validating that
    from_addr_param functions were operating on initialized memory. That is,
    the parameter itself was being validated by sctp_walk_params, but it
    doesn't check for types and their specific sizes and it could be a 0-length
    one, causing from_addr_param to potentially work over the next parameter or
    even uninitialized memory.
    
    The fix here is to, in all calls to from_addr_param, check if enough space
    is there for the wanted IP address type.
    
    Reported-by: Ilja Van Sprundel <ivansprundel@ioactive.com>
    Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 0bc9c10fabbaec9c41b3b43a23cb2af33ad95425
Author: Guenter Roeck <linux@roeck-us.net>
Date:   Wed Sep 8 12:08:17 2021 -0700

    drm/nouveau/nvkm: Replace -ENOSYS with -ENODEV
    
    commit e8f71f89236ef82d449991bfbc237e3cb6ea584f upstream.
    
    nvkm test builds fail with the following error.
    
      drivers/gpu/drm/nouveau/nvkm/engine/device/ctrl.c: In function 'nvkm_control_mthd_pstate_info':
      drivers/gpu/drm/nouveau/nvkm/engine/device/ctrl.c:60:35: error: overflow in conversion from 'int' to '__s8' {aka 'signed char'} changes value from '-251' to '5'
    
    The code builds on most architectures, but fails on parisc where ENOSYS
    is defined as 251.
    
    Replace the error code with -ENODEV (-19).  The actual error code does
    not really matter and is not passed to userspace - it just has to be
    negative.
    
    Fixes: 7238eca4cf18 ("drm/nouveau: expose pstate selection per-power source in sysfs")
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    Cc: Ben Skeggs <bskeggs@redhat.com>
    Cc: David Airlie <airlied@linux.ie>
    Cc: Daniel Vetter <daniel@ffwll.ch>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit e364afecad951aea095670a2fdd1afc72e3d8f73
Author: Li Jinlin <lijinlin3@huawei.com>
Date:   Tue Sep 7 20:12:42 2021 +0800

    blk-throttle: fix UAF by deleteing timer in blk_throtl_exit()
    
    [ Upstream commit 884f0e84f1e3195b801319c8ec3d5774e9bf2710 ]
    
    The pending timer has been set up in blk_throtl_init(). However, the
    timer is not deleted in blk_throtl_exit(). This means that the timer
    handler may still be running after freeing the timer, which would
    result in a use-after-free.
    
    Fix by calling del_timer_sync() to delete the timer in blk_throtl_exit().
    
    Signed-off-by: Li Jinlin <lijinlin3@huawei.com>
    Link: https://lore.kernel.org/r/20210907121242.2885564-1-lijinlin3@huawei.com
    Signed-off-by: Jens Axboe <axboe@kernel.dk>
    Signed-off-by: Sasha Levin <sashal@kernel.org>

commit 00b7c8805936853d494b4b2f11b65312647253c7
Author: Nanyong Sun <sunnanyong@huawei.com>
Date:   Tue Sep 7 20:00:23 2021 -0700

    nilfs2: fix memory leak in nilfs_sysfs_delete_snapshot_group
    
    [ Upstream commit 17243e1c3072b8417a5ebfc53065d0a87af7ca77 ]
    
    kobject_put() should be used to cleanup the memory associated with the
    kobject instead of kobject_del().  See the section "Kobject removal" of
    "Documentation/core-api/kobject.rst".
    
    Link: https://lkml.kernel.org/r/20210629022556.3985106-7-sunnanyong@huawei.com
    Link: https://lkml.kernel.org/r/1625651306-10829-7-git-send-email-konishi.ryusuke@gmail.com
    Signed-off-by: Nanyong Sun <sunnanyong@huawei.com>
    Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>

commit 2adce9f7eafc56cfae8d8f1d292de8cf363d0204
Author: Nanyong Sun <sunnanyong@huawei.com>
Date:   Tue Sep 7 20:00:21 2021 -0700

    nilfs2: fix memory leak in nilfs_sysfs_create_snapshot_group
    
    [ Upstream commit b2fe39c248f3fa4bbb2a20759b4fdd83504190f7 ]
    
    If kobject_init_and_add returns with error, kobject_put() is needed here
    to avoid memory leak, because kobject_init_and_add may return error
    without freeing the memory associated with the kobject it allocated.
    
    Link: https://lkml.kernel.org/r/20210629022556.3985106-6-sunnanyong@huawei.com
    Link: https://lkml.kernel.org/r/1625651306-10829-6-git-send-email-konishi.ryusuke@gmail.com
    Signed-off-by: Nanyong Sun <sunnanyong@huawei.com>
    Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>

commit 26007ee564a2e42ed1d94837df3c1401ef4d17af
Author: Nanyong Sun <sunnanyong@huawei.com>
Date:   Tue Sep 7 20:00:18 2021 -0700

    nilfs2: fix memory leak in nilfs_sysfs_delete_##name##_group
    
    [ Upstream commit a3e181259ddd61fd378390977a1e4e2316853afa ]
    
    The kobject_put() should be used to cleanup the memory associated with the
    kobject instead of kobject_del.  See the section "Kobject removal" of
    "Documentation/core-api/kobject.rst".
    
    Link: https://lkml.kernel.org/r/20210629022556.3985106-5-sunnanyong@huawei.com
    Link: https://lkml.kernel.org/r/1625651306-10829-5-git-send-email-konishi.ryusuke@gmail.com
    Signed-off-by: Nanyong Sun <sunnanyong@huawei.com>
    Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>

commit bc6695acc25c40a2ba2d80761f0c25ab5fa58038
Author: Nanyong Sun <sunnanyong@huawei.com>
Date:   Tue Sep 7 20:00:15 2021 -0700

    nilfs2: fix memory leak in nilfs_sysfs_create_##name##_group
    
    [ Upstream commit 24f8cb1ed057c840728167dab33b32e44147c86f ]
    
    If kobject_init_and_add return with error, kobject_put() is needed here to
    avoid memory leak, because kobject_init_and_add may return error without
    freeing the memory associated with the kobject it allocated.
    
    Link: https://lkml.kernel.org/r/20210629022556.3985106-4-sunnanyong@huawei.com
    Link: https://lkml.kernel.org/r/1625651306-10829-4-git-send-email-konishi.ryusuke@gmail.com
    Signed-off-by: Nanyong Sun <sunnanyong@huawei.com>
    Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>

commit 268a6fbcf97c67722e60301abf326b66e55d678b
Author: Nanyong Sun <sunnanyong@huawei.com>
Date:   Tue Sep 7 20:00:12 2021 -0700

    nilfs2: fix NULL pointer in nilfs_##name##_attr_release
    
    [ Upstream commit dbc6e7d44a514f231a64d9d5676e001b660b6448 ]
    
    In nilfs_##name##_attr_release, kobj->parent should not be referenced
    because it is a NULL pointer.  The release() method of kobject is always
    called in kobject_put(kobj), in the implementation of kobject_put(), the
    kobj->parent will be assigned as NULL before call the release() method.
    So just use kobj to get the subgroups, which is more efficient and can fix
    a NULL pointer reference problem.
    
    Link: https://lkml.kernel.org/r/20210629022556.3985106-3-sunnanyong@huawei.com
    Link: https://lkml.kernel.org/r/1625651306-10829-3-git-send-email-konishi.ryusuke@gmail.com
    Signed-off-by: Nanyong Sun <sunnanyong@huawei.com>
    Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>

commit 22804e71f2570e383ef0cb7b909c2114e71186b2
Author: Nanyong Sun <sunnanyong@huawei.com>
Date:   Tue Sep 7 20:00:09 2021 -0700

    nilfs2: fix memory leak in nilfs_sysfs_create_device_group
    
    [ Upstream commit 5f5dec07aca7067216ed4c1342e464e7307a9197 ]
    
    Patch series "nilfs2: fix incorrect usage of kobject".
    
    This patchset from Nanyong Sun fixes memory leak issues and a NULL
    pointer dereference issue caused by incorrect usage of kboject in nilfs2
    sysfs implementation.
    
    This patch (of 6):
    
    Reported by syzkaller:
    
      BUG: memory leak
      unreferenced object 0xffff888100ca8988 (size 8):
      comm "syz-executor.1", pid 1930, jiffies 4294745569 (age 18.052s)
      hex dump (first 8 bytes):
      6c 6f 6f 70 31 00 ff ff loop1...
      backtrace:
        kstrdup+0x36/0x70 mm/util.c:60
        kstrdup_const+0x35/0x60 mm/util.c:83
        kvasprintf_const+0xf1/0x180 lib/kasprintf.c:48
        kobject_set_name_vargs+0x56/0x150 lib/kobject.c:289
        kobject_add_varg lib/kobject.c:384 [inline]
        kobject_init_and_add+0xc9/0x150 lib/kobject.c:473
        nilfs_sysfs_create_device_group+0x150/0x7d0 fs/nilfs2/sysfs.c:986
        init_nilfs+0xa21/0xea0 fs/nilfs2/the_nilfs.c:637
        nilfs_fill_super fs/nilfs2/super.c:1046 [inline]
        nilfs_mount+0x7b4/0xe80 fs/nilfs2/super.c:1316
        legacy_get_tree+0x105/0x210 fs/fs_context.c:592
        vfs_get_tree+0x8e/0x2d0 fs/super.c:1498
        do_new_mount fs/namespace.c:2905 [inline]
        path_mount+0xf9b/0x1990 fs/namespace.c:3235
        do_mount+0xea/0x100 fs/namespace.c:3248
        __do_sys_mount fs/namespace.c:3456 [inline]
        __se_sys_mount fs/namespace.c:3433 [inline]
        __x64_sys_mount+0x14b/0x1f0 fs/namespace.c:3433
        do_syscall_x64 arch/x86/entry/common.c:50 [inline]
        do_syscall_64+0x3b/0x90 arch/x86/entry/common.c:80
        entry_SYSCALL_64_after_hwframe+0x44/0xae
    
    If kobject_init_and_add return with error, then the cleanup of kobject
    is needed because memory may be allocated in kobject_init_and_add
    without freeing.
    
    And the place of cleanup_dev_kobject should use kobject_put to free the
    memory associated with the kobject.  As the section "Kobject removal" of
    "Documentation/core-api/kobject.rst" says, kobject_del() just makes the
    kobject "invisible", but it is not cleaned up.  And no more cleanup will
    do after cleanup_dev_kobject, so kobject_put is needed here.
    
    Link: https://lkml.kernel.org/r/1625651306-10829-1-git-send-email-konishi.ryusuke@gmail.com
    Link: https://lkml.kernel.org/r/1625651306-10829-2-git-send-email-konishi.ryusuke@gmail.com
    Reported-by: Hulk Robot <hulkci@huawei.com>
    Link: https://lkml.kernel.org/r/20210629022556.3985106-2-sunnanyong@huawei.com
    Signed-off-by: Nanyong Sun <sunnanyong@huawei.com>
    Signed-off-by: Ryusuke Konishi <konishi.ryusuke@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>

commit 2bf26bc5aa8598c4f8384a37649851e32b4f4143
Author: Jeff Layton <jlayton@kernel.org>
Date:   Thu Sep 2 08:31:03 2021 -0400

    ceph: lockdep annotations for try_nonblocking_invalidate
    
    [ Upstream commit 3eaf5aa1cfa8c97c72f5824e2e9263d6cc977b03 ]
    
    Signed-off-by: Jeff Layton <jlayton@kernel.org>
    Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
    Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>

commit b62a856952879bf7ffdb86f10197876ffd11fb7d
Author: Radhey Shyam Pandey <radhey.shyam.pandey@xilinx.com>
Date:   Thu Aug 19 14:28:48 2021 +0530

    dmaengine: xilinx_dma: Set DMA mask for coherent APIs
    
    [ Upstream commit aac6c0f90799d66b8989be1e056408f33fd99fe6 ]
    
    The xilinx dma driver uses the consistent allocations, so for correct
    operation also set the DMA mask for coherent APIs. It fixes the below
    kernel crash with dmatest client when DMA IP is configured with 64-bit
    address width and linux is booted from high (>4GB) memory.
    
    Call trace:
    [  489.531257]  dma_alloc_from_pool+0x8c/0x1c0
    [  489.535431]  dma_direct_alloc+0x284/0x330
    [  489.539432]  dma_alloc_attrs+0x80/0xf0
    [  489.543174]  dma_pool_alloc+0x160/0x2c0
    [  489.547003]  xilinx_cdma_prep_memcpy+0xa4/0x180
    [  489.551524]  dmatest_func+0x3cc/0x114c
    [  489.555266]  kthread+0x124/0x130
    [  489.558486]  ret_from_fork+0x10/0x3c
    [  489.562051] ---[ end trace 248625b2d596a90a ]---
    
    Signed-off-by: Radhey Shyam Pandey <radhey.shyam.pandey@xilinx.com>
    Reviewed-by: Harini Katakam <harini.katakam@xilinx.com>
    Link: https://lore.kernel.org/r/1629363528-30347-1-git-send-email-radhey.shyam.pandey@xilinx.com
    Signed-off-by: Vinod Koul <vkoul@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>

commit 724bb8515a3ad87832911a6b89abafb5733bd21c
Author: Johannes Berg <johannes.berg@intel.com>
Date:   Mon Aug 9 11:24:09 2021 +0200

    dmaengine: ioat: depends on !UML
    
    [ Upstream commit bbac7a92a46f0876e588722ebe552ddfe6fd790f ]
    
    Now that UML has PCI support, this driver must depend also on
    !UML since it pokes at X86_64 architecture internals that don't
    exist on ARCH=um.
    
    Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>
    Acked-by: Dave Jiang <dave.jiang@intel.com>
    Link: https://lore.kernel.org/r/20210809112409.a3a0974874d2.I2ffe3d11ed37f735da2f39884a74c953b258b995@changeid
    Signed-off-by: Vinod Koul <vkoul@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>

commit 8d7c6fa807645e1664fd8556a05c8fb3d0a7be47
Author: Guenter Roeck <linux@roeck-us.net>
Date:   Wed Sep 8 08:30:41 2021 -0700

    parisc: Move pci_dev_is_behind_card_dino to where it is used
    
    [ Upstream commit 907872baa9f1538eed02ec737b8e89eba6c6e4b9 ]
    
    parisc build test images fail to compile with the following error.
    
    drivers/parisc/dino.c:160:12: error:
            'pci_dev_is_behind_card_dino' defined but not used
    
    Move the function just ahead of its only caller to avoid the error.
    
    Fixes: 5fa1659105fa ("parisc: Disable HP HSC-PCI Cards to prevent kernel crash")
    Cc: Helge Deller <deller@gmx.de>
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    Signed-off-by: Helge Deller <deller@gmx.de>
    Signed-off-by: Sasha Levin <sashal@kernel.org>

commit 7fc2172ad4e701d3c6e7dcb7b2efd8df71d2417b
Author: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Date:   Wed Jul 7 18:27:49 2021 +0200

    pwm: lpc32xx: Don't modify HW state in .probe() after the PWM chip was registered
    
    commit 3d2813fb17e5fd0d73c1d1442ca0192bde4af10e upstream.
    
    This fixes a race condition: After pwmchip_add() is called there might
    already be a consumer and then modifying the hardware behind the
    consumer's back is bad. So set the default before.
    
    (Side-note: I don't know what this register setting actually does, if
    this modifies the polarity there is an inconsistency because the
    inversed polarity isn't considered if the PWM is already running during
    .probe().)
    
    Fixes: acfd92fdfb93 ("pwm: lpc32xx: Set PWM_PIN_LEVEL bit to default value")
    Cc: Sylvain Lemieux <slemieux@tycoint.com>
    Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
    Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 59ce95a11dbc0e85dca1207a5462e853f926a244
Author: Pavel Skripkin <paskripkin@gmail.com>
Date:   Tue Sep 7 19:58:21 2021 -0700

    profiling: fix shift-out-of-bounds bugs
    
    commit 2d186afd04d669fe9c48b994c41a7405a3c9f16d upstream.
    
    Syzbot reported shift-out-of-bounds bug in profile_init().
    The problem was in incorrect prof_shift. Since prof_shift value comes from
    userspace we need to clamp this value into [0, BITS_PER_LONG -1]
    boundaries.
    
    Second possible shiht-out-of-bounds was found by Tetsuo:
    sample_step local variable in read_profile() had "unsigned int" type,
    but prof_shift allows to make a BITS_PER_LONG shift. So, to prevent
    possible shiht-out-of-bounds sample_step type was changed to
    "unsigned long".
    
    Also, "unsigned short int" will be sufficient for storing
    [0, BITS_PER_LONG] value, that's why there is no need for
    "unsigned long" prof_shift.
    
    Link: https://lkml.kernel.org/r/20210813140022.5011-1-paskripkin@gmail.com
    Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
    Reported-and-tested-by: syzbot+e68c89a9510c159d9684@syzkaller.appspotmail.com
    Suggested-by: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>
    Signed-off-by: Pavel Skripkin <paskripkin@gmail.com>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Steven Rostedt <rostedt@goodmis.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 6f02282af49ca4bfdec0d2744bb2ff7bb839be80
Author: Cyrill Gorcunov <gorcunov@gmail.com>
Date:   Tue Sep 7 20:00:41 2021 -0700

    prctl: allow to setup brk for et_dyn executables
    
    commit e1fbbd073137a9d63279f6bf363151a938347640 upstream.
    
    Keno Fischer reported that when a binray loaded via ld-linux-x the
    prctl(PR_SET_MM_MAP) doesn't allow to setup brk value because it lays
    before mm:end_data.
    
    For example a test program shows
    
     | # ~/t
     |
     | start_code      401000
     | end_code        401a15
     | start_stack     7ffce4577dd0
     | start_data      403e10
     | end_data        40408c
     | start_brk       b5b000
     | sbrk(0)         b5b000
    
    and when executed via ld-linux
    
     | # /lib64/ld-linux-x86-64.so.2 ~/t
     |
     | start_code      7fc25b0a4000
     | end_code        7fc25b0c4524
     | start_stack     7fffcc6b2400
     | start_data      7fc25b0ce4c0
     | end_data        7fc25b0cff98
     | start_brk       55555710c000
     | sbrk(0)         55555710c000
    
    This of course prevent criu from restoring such programs.  Looking into
    how kernel operates with brk/start_brk inside brk() syscall I don't see
    any problem if we allow to setup brk/start_brk without checking for
    end_data.  Even if someone pass some weird address here on a purpose then
    the worst possible result will be an unexpected unmapping of existing vma
    (own vma, since prctl works with the callers memory) but test for
    RLIMIT_DATA is still valid and a user won't be able to gain more memory in
    case of expanding VMAs via new values shipped with prctl call.
    
    Link: https://lkml.kernel.org/r/20210121221207.GB2174@grain
    Fixes: bbdc6076d2e5 ("binfmt_elf: move brk out of mmap when doing direct loader exec")
    Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
    Reported-by: Keno Fischer <keno@juliacomputing.com>
    Acked-by: Andrey Vagin <avagin@gmail.com>
    Tested-by: Andrey Vagin <avagin@gmail.com>
    Cc: Dmitry Safonov <0x7f454c46@gmail.com>
    Cc: Kirill Tkhai <ktkhai@virtuozzo.com>
    Cc: Eric W. Biederman <ebiederm@xmission.com>
    Cc: Pavel Tikhomirov <ptikhomirov@virtuozzo.com>
    Cc: Alexander Mikhalitsyn <alexander.mikhalitsyn@virtuozzo.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 591777ef0acbace53cd95b5bc5248e59f063e3d3
Author: Xie Yongji <xieyongji@bytedance.com>
Date:   Mon May 17 16:35:57 2021 +0800

    9p/trans_virtio: Remove sysfs file on probe failure
    
    commit f997ea3b7afc108eb9761f321b57de2d089c7c48 upstream.
    
    This ensures we don't leak the sysfs file if we failed to
    allocate chan->vc_wq during probe.
    
    Link: http://lkml.kernel.org/r/20210517083557.172-1-xieyongji@bytedance.com
    Fixes: 86c8437383ac ("net/9p: Add sysfs mount_tag file for virtio 9P device")
    Signed-off-by: Xie Yongji <xieyongji@bytedance.com>
    Signed-off-by: Dominique Martinet <asmadeus@codewreck.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit fa9e6fc74daf369c87b6b9b39e72020b1fc0be10
Author: Dan Carpenter <dan.carpenter@oracle.com>
Date:   Tue Aug 10 11:44:13 2021 +0300

    thermal/drivers/exynos: Fix an error code in exynos_tmu_probe()
    
    commit 02d438f62c05f0d055ceeedf12a2f8796b258c08 upstream.
    
    This error path return success but it should propagate the negative
    error code from devm_clk_get().
    
    Fixes: 6c247393cfdd ("thermal: exynos: Add TMU support for Exynos7 SoC")
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
    Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
    Link: https://lore.kernel.org/r/20210810084413.GA23810@kili
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit e5261b31fa429bca31ceea4e1eed13781ad89037
Author: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Date:   Fri Jul 30 23:27:15 2021 +0300

    dmaengine: acpi: Avoid comparison GSI with Linux vIRQ
    
    commit 67db87dc8284070adb15b3c02c1c31d5cf51c5d6 upstream.
    
    Currently the CRST parsing relies on the fact that on most of x86 devices
    the IRQ mapping is 1:1 with Linux vIRQ. However, it may be not true for
    some. Fix this by converting GSI to Linux vIRQ before checking it.
    
    Fixes: ee8209fd026b ("dma: acpi-dma: parse CSRT to extract additional resources")
    Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
    Link: https://lore.kernel.org/r/20210730202715.24375-1-andriy.shevchenko@linux.intel.com
    Signed-off-by: Vinod Koul <vkoul@kernel.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 4d2de0d232ee386fceacf7cdb20a6398c3c0854b
Author: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Date:   Mon Jun 28 16:13:44 2021 -0300

    sctp: add param size validation for SCTP_PARAM_SET_PRIMARY
    
    commit ef6c8d6ccf0c1dccdda092ebe8782777cd7803c9 upstream.
    
    When SCTP handles an INIT chunk, it calls for example:
    sctp_sf_do_5_1B_init
      sctp_verify_init
        sctp_verify_param
      sctp_process_init
        sctp_process_param
          handling of SCTP_PARAM_SET_PRIMARY
    
    sctp_verify_init() wasn't doing proper size validation and neither the
    later handling, allowing it to work over the chunk itself, possibly being
    uninitialized memory.
    
    Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 6b5361868870e9a097745446798aa10ee92c159c
Author: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Date:   Mon Jun 28 16:13:43 2021 -0300

    sctp: validate chunk size in __rcv_asconf_lookup
    
    commit b6ffe7671b24689c09faa5675dd58f93758a97ae upstream.
    
    In one of the fallbacks that SCTP has for identifying an association for an
    incoming packet, it looks for AddIp chunk (from ASCONF) and take a peek.
    Thing is, at this stage nothing was validating that the chunk actually had
    enough content for that, allowing the peek to happen over uninitialized
    memory.
    
    Similar check already exists in actual asconf handling in
    sctp_verify_asconf().
    
    Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit e05408813ec2755fcd4d66fac6adea93b2943135
Author: Cheng Chao <cs.os.kernel@gmail.com>
Date:   Thu Sep 23 22:18:14 2021 +0800

    staging: android: ion: fix page is NULL
    
    Fixes: commit e7f63771b60e ("ION: Sys_heap: Add cached pool to spead up cached buffer alloc")
    the commit e7f63771b60e introduced the bug which didn't test page which maybe NULL.
    and previous logic was right.
    
    the e7f63771b60e has been merged in v4.8-rc3, only longterm 4.9.x has this bug,
    and other longterm/stable version have not.
    
    kernel panic is here when page is NULL:
    
    Unable to handle kernel paging request at virtual address b0380000
    pgd = d9d94000
    [b0380000] *pgd=00000000
    Internal error: Oops: 2805 [#1] PREEMPT SMP ARM
    ...
    task: daa2dd00 task.stack: da194000
    PC is at v7_dma_clean_range+0x1c/0x34
    LR is at arm_dma_sync_single_for_device+0x44/0x58
    pc : [<c011aa0c>]    lr : [<c011645c>]    psr: 200f0013
    sp : da195da0  ip : dc1f9000  fp : c1043dc4
    r10: 00000000  r9 : c16f1f58  r8 : 00000001
    r7 : c1621f94  r6 : c0116418  r5 : 00000000  r4 : c011aa58
    r3 : 0000003f  r2 : 00000040  r1 : b0480000  r0 : b0380000
    Flags: nzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment none
    Control: 10c5383d  Table: 19d9406a  DAC: 00000051
    ...
    [<c011aa0c>] (v7_dma_clean_range) from [<c011645c>] (arm_dma_sync_single_for_device+0x44/0x58)
    [<c011645c>] (arm_dma_sync_single_for_device) from [<c0117088>] (arm_dma_sync_sg_for_device+0x50/0x7c)
    [<c0117088>] (arm_dma_sync_sg_for_device) from [<c0c033c4>] (ion_pages_sync_for_device+0xb0/0xec)
    [<c0c033c4>] (ion_pages_sync_for_device) from [<c0c054ac>] (ion_system_heap_allocate+0x2a0/0x2e0)
    [<c0c054ac>] (ion_system_heap_allocate) from [<c0c02c78>] (ion_alloc+0x12c/0x494)
    [<c0c02c78>] (ion_alloc) from [<c0c03eac>] (ion_ioctl+0x510/0x63c)
    [<c0c03eac>] (ion_ioctl) from [<c027c4b0>] (do_vfs_ioctl+0xa8/0x9b4)
    [<c027c4b0>] (do_vfs_ioctl) from [<c027ce28>] (SyS_ioctl+0x6c/0x7c)
    [<c027ce28>] (SyS_ioctl) from [<c0108a40>] (ret_fast_syscall+0x0/0x48)
    Code: e3a02004 e1a02312 e2423001 e1c00003 (ee070f3a)
    ---[ end trace 89278304932c0e87 ]---
    Kernel panic - not syncing: Fatal exception
    
    Signed-off-by: Cheng Chao <cs.os.kernel@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 17b219f7ff519b912b50326a17de42cc9ef449f9
Author: Christophe Leroy <christophe.leroy@c-s.fr>
Date:   Wed Jun 12 05:49:50 2019 +0000

    crypto: talitos - fix max key size for sha384 and sha512
    
    commit 192125ed5ce62afba24312d8e7a0314577565b4a upstream.
    
    Below commit came with a typo in the CONFIG_ symbol, leading
    to a permanently reduced max key size regarless of the driver
    capabilities.
    
    Reported-by: Horia Geantă <horia.geanta@nxp.com>
    Fixes: b8fbdc2bc4e7 ("crypto: talitos - reduce max key size for SEC1")
    Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
    Reviewed-by: Horia Geantă <horia.geanta@nxp.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Nobuhiro Iwamatsu (CIP) <nobuhiro1.iwamatsu@toshiba.co.jp>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 999522e04054593a724fd76af38e13274b26bd2f
Author: Tony Lindgren <tony@atomide.com>
Date:   Fri Feb 9 08:11:26 2018 -0800

    PM / wakeirq: Fix unbalanced IRQ enable for wakeirq
    
    commit 69728051f5bf15efaf6edfbcfe1b5a49a2437918 upstream.
    
    If a device is runtime PM suspended when we enter suspend and has
    a dedicated wake IRQ, we can get the following warning:
    
    WARNING: CPU: 0 PID: 108 at kernel/irq/manage.c:526 enable_irq+0x40/0x94
    [  102.087860] Unbalanced enable for IRQ 147
    ...
    (enable_irq) from [<c06117a8>] (dev_pm_arm_wake_irq+0x4c/0x60)
    (dev_pm_arm_wake_irq) from [<c0618360>]
     (device_wakeup_arm_wake_irqs+0x58/0x9c)
    (device_wakeup_arm_wake_irqs) from [<c0615948>]
    (dpm_suspend_noirq+0x10/0x48)
    (dpm_suspend_noirq) from [<c01ac7ac>]
    (suspend_devices_and_enter+0x30c/0xf14)
    (suspend_devices_and_enter) from [<c01adf20>]
    (enter_state+0xad4/0xbd8)
    (enter_state) from [<c01ad3ec>] (pm_suspend+0x38/0x98)
    (pm_suspend) from [<c01ab3e8>] (state_store+0x68/0xc8)
    
    This is because the dedicated wake IRQ for the device may have been
    already enabled earlier by dev_pm_enable_wake_irq_check().  Fix the
    issue by checking for runtime PM suspended status.
    
    This issue can be easily reproduced by setting serial console log level
    to zero, letting the serial console idle, and suspend the system from
    an ssh terminal.  On resume, dmesg will have the warning above.
    
    The reason why I have not run into this issue earlier has been that I
    typically run my PM test cases from on a serial console instead over ssh.
    
    Fixes: c84345597558 (PM / wakeirq: Enable dedicated wakeirq for suspend)
    Signed-off-by: Tony Lindgren <tony@atomide.com>
    Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
    Signed-off-by: Nobuhiro Iwamatsu (CIP) <nobuhiro1.iwamatsu@toshiba.co.jp>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit c22cf38428cb910f1996839c917e9238d2e44d4b
Author: Ilya Leoshkevich <iii@linux.ibm.com>
Date:   Mon Sep 6 15:04:14 2021 +0200

    s390/bpf: Fix optimizing out zero-extensions
    
    commit db7bee653859ef7179be933e7d1384644f795f26 upstream.
    
    Currently the JIT completely removes things like `reg32 += 0`,
    however, the BPF_ALU semantics requires the target register to be
    zero-extended in such cases.
    
    Fix by optimizing out only the arithmetic operation, but not the
    subsequent zero-extension.
    
    Reported-by: Johan Almbladh <johan.almbladh@anyfinetworks.com>
    Fixes: 054623105728 ("s390/bpf: Add s390x eBPF JIT compiler backend")
    Reviewed-by: Heiko Carstens <hca@linux.ibm.com>
    Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
    Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>