1. 17 Dec, 2020 19 commits
    • Linus Torvalds's avatar
      Merge tag 'powerpc-5.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 8a5be36b
      Linus Torvalds authored
      Pull powerpc updates from Michael Ellerman:
      
       - Switch to the generic C VDSO, as well as some cleanups of our VDSO
         setup/handling code.
      
       - Support for KUAP (Kernel User Access Prevention) on systems using the
         hashed page table MMU, using memory protection keys.
      
       - Better handling of PowerVM SMT8 systems where all threads of a core
         do not share an L2, allowing the scheduler to make better scheduling
         decisions.
      
       - Further improvements to our machine check handling.
      
       - Show registers when unwinding interrupt frames during stack traces.
      
       - Improvements to our pseries (PowerVM) partition migration code.
      
       - Several series from Christophe refactoring and cleaning up various
         parts of the 32-bit code.
      
       - Other smaller features, fixes & cleanups.
      
      Thanks to: Alan Modra, Alexey Kardashevskiy, Andrew Donnellan, Aneesh
      Kumar K.V, Ard Biesheuvel, Athira Rajeev, Balamuruhan S, Bill Wendling,
      Cédric Le Goater, Christophe Leroy, Christophe Lombard, Colin Ian King,
      Daniel Axtens, David Hildenbrand, Frederic Barrat, Ganesh Goudar,
      Gautham R. Shenoy, Geert Uytterhoeven, Giuseppe Sacco, Greg Kurz,
      Harish, Jan Kratochvil, Jordan Niethe, Kaixu Xia, Laurent Dufour,
      Leonardo Bras, Madhavan Srinivasan, Mahesh Salgaonkar, Mathieu
      Desnoyers, Nathan Lynch, Nicholas Piggin, Oleg Nesterov, Oliver
      O'Halloran, Oscar Salvador, Po-Hsu Lin, Qian Cai, Qinglang Miao, Randy
      Dunlap, Ravi Bangoria, Sachin Sant, Sandipan Das, Sebastian Andrzej
      Siewior , Segher Boessenkool, Srikar Dronamraju, Tyrel Datwyler, Uwe
      Kleine-König, Vincent Stehlé, Youling Tang, and Zhang Xiaoxu.
      
      * tag 'powerpc-5.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (304 commits)
        powerpc/32s: Fix cleanup_cpu_mmu_context() compile bug
        powerpc: Add config fragment for disabling -Werror
        powerpc/configs: Add ppc64le_allnoconfig target
        powerpc/powernv: Rate limit opal-elog read failure message
        powerpc/pseries/memhotplug: Quieten some DLPAR operations
        powerpc/ps3: use dma_mapping_error()
        powerpc: force inlining of csum_partial() to avoid multiple csum_partial() with GCC10
        powerpc/perf: Fix Threshold Event Counter Multiplier width for P10
        powerpc/mm: Fix hugetlb_free_pmd_range() and hugetlb_free_pud_range()
        KVM: PPC: Book3S HV: Fix mask size for emulated msgsndp
        KVM: PPC: fix comparison to bool warning
        KVM: PPC: Book3S: Assign boolean values to a bool variable
        powerpc: Inline setup_kup()
        powerpc/64s: Mark the kuap/kuep functions non __init
        KVM: PPC: Book3S HV: XIVE: Add a comment regarding VP numbering
        powerpc/xive: Improve error reporting of OPAL calls
        powerpc/xive: Simplify xive_do_source_eoi()
        powerpc/xive: Remove P9 DD1 flag XIVE_IRQ_FLAG_EOI_FW
        powerpc/xive: Remove P9 DD1 flag XIVE_IRQ_FLAG_MASK_FW
        powerpc/xive: Remove P9 DD1 flag XIVE_IRQ_FLAG_SHIFT_BUG
        ...
      8a5be36b
    • Linus Torvalds's avatar
      Merge tag 'trace-v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 09c0796a
      Linus Torvalds authored
      Pull tracing updates from Steven Rostedt:
       "The major update to this release is that there's a new arch config
        option called CONFIG_HAVE_DYNAMIC_FTRACE_WITH_ARGS.
      
        Currently, only x86_64 enables it. All the ftrace callbacks now take a
        struct ftrace_regs instead of a struct pt_regs. If the architecture
        has HAVE_DYNAMIC_FTRACE_WITH_ARGS enabled, then the ftrace_regs will
        have enough information to read the arguments of the function being
        traced, as well as access to the stack pointer.
      
        This way, if a user (like live kernel patching) only cares about the
        arguments, then it can avoid using the heavier weight "regs" callback,
        that puts in enough information in the struct ftrace_regs to simulate
        a breakpoint exception (needed for kprobes).
      
        A new config option that audits the timestamps of the ftrace ring
        buffer at most every event recorded.
      
        Ftrace recursion protection has been cleaned up to move the protection
        to the callback itself (this saves on an extra function call for those
        callbacks).
      
        Perf now handles its own RCU protection and does not depend on ftrace
        to do it for it (saving on that extra function call).
      
        New debug option to add "recursed_functions" file to tracefs that
        lists all the places that triggered the recursion protection of the
        function tracer. This will show where things need to be fixed as
        recursion slows down the function tracer.
      
        The eval enum mapping updates done at boot up are now offloaded to a
        work queue, as it caused a noticeable pause on slow embedded boards.
      
        Various clean ups and last minute fixes"
      
      * tag 'trace-v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (33 commits)
        tracing: Offload eval map updates to a work queue
        Revert: "ring-buffer: Remove HAVE_64BIT_ALIGNED_ACCESS"
        ring-buffer: Add rb_check_bpage in __rb_allocate_pages
        ring-buffer: Fix two typos in comments
        tracing: Drop unneeded assignment in ring_buffer_resize()
        tracing: Disable ftrace selftests when any tracer is running
        seq_buf: Avoid type mismatch for seq_buf_init
        ring-buffer: Fix a typo in function description
        ring-buffer: Remove obsolete rb_event_is_commit()
        ring-buffer: Add test to validate the time stamp deltas
        ftrace/documentation: Fix RST C code blocks
        tracing: Clean up after filter logic rewriting
        tracing: Remove the useless value assignment in test_create_synth_event()
        livepatch: Use the default ftrace_ops instead of REGS when ARGS is available
        ftrace/x86: Allow for arguments to be passed in to ftrace_regs by default
        ftrace: Have the callbacks receive a struct ftrace_regs instead of pt_regs
        MAINTAINERS: assign ./fs/tracefs to TRACING
        tracing: Fix some typos in comments
        ftrace: Remove unused varible 'ret'
        ring-buffer: Add recording of ring buffer recursion into recursed_functions
        ...
      09c0796a
    • Linus Torvalds's avatar
      Merge tag 'modules-for-v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux · 312dcaf9
      Linus Torvalds authored
      Pull modules updates from Jessica Yu:
       "Summary of modules changes for the 5.11 merge window:
      
         - Fix a race condition between systemd/udev and the module loader.
      
           The module loader was sending a uevent before the module was fully
           initialized (i.e., before its init function has been called). This
           means udev can start processing the module uevent before the module
           has finished initializing, and some udev rules expect that the
           module has initialized already upon receiving the uevent.
      
           This resulted in some systemd mount units failing if udev processes
           the event faster than the module can finish init. This is fixed by
           delaying the uevent until after the module has called its init
           routine.
      
         - Make the linker array sections for kernel params and module version
           attributes more robust by switching to use the alignment of the
           type in question.
      
           Namely, linker section arrays will be constructed using the
           alignment required by the struct (using __alignof__()) as opposed
           to a specific value such as sizeof(void *) or sizeof(long). This is
           less likely to cause breakages should the size of the type ever
           change (Johan Hovold)
      
         - Fix module state inconsistency by setting it back to GOING when a
           module fails to load and is on its way out (Miroslav Benes)
      
         - Some comment and code cleanups (Sergey Shtylyov)"
      
      * tag 'modules-for-v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux:
        module: delay kobject uevent until after module init call
        module: drop semicolon from version macro
        init: use type alignment for kernel parameters
        params: clean up module-param macros
        params: use type alignment for kernel parameters
        params: drop redundant "unused" attributes
        module: simplify version-attribute handling
        module: drop version-attribute alignment
        module: fix comment style
        module: add more 'kernel-doc' comments
        module: fix up 'kernel-doc' comments
        module: only handle errors with the *switch* statement in module_sig_check()
        module: avoid *goto*s in module_sig_check()
        module: merge repetitive strings in module_sig_check()
        module: set MODULE_STATE_GOING state when a module fails to load
      312dcaf9
    • Linus Torvalds's avatar
      Merge tag 'dmaengine-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine · 6daa9043
      Linus Torvalds authored
      Pull dmaengine updates from Vinod Koul:
       "The last dmaengine updates for this year :)
      
        This contains couple of new drivers, new device support and updates to
        bunch of drivers.
      
        New drivers/devices:
         - Qualcomm ADM driver
         - Qualcomm GPI driver
         - Allwinner A100 DMA support
         - Microchip Sama7g5 support
         - Mediatek MT8516 apdma
      
        Updates:
         - more updates to idxd driver and support for IAX config
         - runtime PM support for dw driver
         - TI drivers"
      
      * tag 'dmaengine-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine: (75 commits)
        soc: ti: k3-ringacc: Use correct error casting in k3_ringacc_dmarings_init
        dmaengine: ti: k3-udma-glue: Add support for K3 PKTDMA
        dmaengine: ti: k3-udma: Initial support for K3 PKTDMA
        dmaengine: ti: k3-udma: Add support for BCDMA channel TPL handling
        dmaengine: ti: k3-udma: Initial support for K3 BCDMA
        soc: ti: k3-ringacc: add AM64 DMA rings support.
        dmaengine: ti: Add support for k3 event routers
        dmaengine: ti: k3-psil: Add initial map for AM64
        dmaengine: ti: k3-psil: Extend psil_endpoint_config for K3 PKTDMA
        dt-bindings: dma: ti: Add document for K3 PKTDMA
        dt-bindings: dma: ti: Add document for K3 BCDMA
        dmaengine: dmatest: Use dmaengine_get_dma_device
        dmaengine: doc: client: Update for dmaengine_get_dma_device() usage
        dmaengine: Add support for per channel coherency handling
        dmaengine: of-dma: Add support for optional router configuration callback
        dmaengine: ti: k3-udma-glue: Configure the dma_dev for rings
        dmaengine: ti: k3-udma-glue: Get the ringacc from udma_dev
        dmaengine: ti: k3-udma-glue: Add function to get device pointer for DMA API
        dmaengine: ti: k3-udma: Add support for second resource range from sysfw
        dmaengine: ti: k3-udma: Wait for peer teardown completion if supported
        ...
      6daa9043
    • Linus Torvalds's avatar
      Merge tag 'mailbox-v5.11' of git://git.linaro.org/landing-teams/working/fujitsu/integration · 83005cd6
      Linus Torvalds authored
      Pull mailbox updates from Jassi Brar:
      
       - arm: added mhu-v2 controller driver
      
       - arm_mhu_db: fix kfree by using devm_ variant
      
       - stm32-ipcc: misc cleanup
      
      * tag 'mailbox-v5.11' of git://git.linaro.org/landing-teams/working/fujitsu/integration:
        mailbox: arm_mhuv2: Add driver
        dt-bindings: mailbox : arm,mhuv2: Add bindings
        mailbox: stm32-ipcc: cast void pointers to unsigned long
        mailbox: stm32-ipcc: remove duplicate error message
        mailbox: stm32-ipcc: add COMPILE_TEST dependency
        mailbox: arm_mhu_db: Fix mhu_db_shutdown by replacing kfree with devm_kfree
      83005cd6
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-5.11-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · 74f602dc
      Linus Torvalds authored
      Pull NFS client updates from Trond Myklebust:
       "Highlights include:
      
        Features:
      
         - NFSv3: Add emulation of lookupp() to improve open_by_filehandle()
           support
      
         - A series of patches to improve readdir performance, particularly
           with large directories
      
         - Basic support for using NFS/RDMA with the pNFS files and flexfiles
           drivers
      
         - Micro-optimisations for RDMA
      
         - RDMA tracing improvements
      
        Bugfixes:
      
         - Fix a long standing bug with xs_read_xdr_buf() when receiving
           partial pages (Dan Aloni)
      
         - Various fixes for getxattr and listxattr, when used over non-TCP
           transports
      
         - Fixes for containerised NFS from Sargun Dhillon
      
         - switch nfsiod to be an UNBOUND workqueue (Neil Brown)
      
         - READDIR should not ask for security label information if there is
           no LSM policy (Olga Kornievskaia)
      
         - Avoid using interval-based rebinding with TCP in lockd (Calum
           Mackay)
      
         - A series of RPC and NFS layer fixes to support the NFSv4.2
           READ_PLUS code
      
         - A couple of fixes for pnfs/flexfiles read failover
      
        Cleanups:
      
         - Various cleanups for the SUNRPC xdr code in conjunction with the
           READ_PLUS fixes"
      
      * tag 'nfs-for-5.11-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (90 commits)
        NFS/pNFS: Fix a typo in ff_layout_resend_pnfs_read()
        pNFS/flexfiles: Avoid spurious layout returns in ff_layout_choose_ds_for_read
        NFSv4/pnfs: Add tracing for the deviceid cache
        fs/lockd: convert comma to semicolon
        NFSv4.2: fix error return on memory allocation failure
        NFSv4.2/pnfs: Don't use READ_PLUS with pNFS yet
        NFSv4.2: Deal with potential READ_PLUS data extent buffer overflow
        NFSv4.2: Don't error when exiting early on a READ_PLUS buffer overflow
        NFSv4.2: Handle hole lengths that exceed the READ_PLUS read buffer
        NFSv4.2: decode_read_plus_hole() needs to check the extent offset
        NFSv4.2: decode_read_plus_data() must skip padding after data segment
        NFSv4.2: Ensure we always reset the result->count in decode_read_plus()
        SUNRPC: When expanding the buffer, we may need grow the sparse pages
        SUNRPC: Cleanup - constify a number of xdr_buf helpers
        SUNRPC: Clean up open coded setting of the xdr_stream 'nwords' field
        SUNRPC: _copy_to/from_pages() now check for zero length
        SUNRPC: Cleanup xdr_shrink_bufhead()
        SUNRPC: Fix xdr_expand_hole()
        SUNRPC: Fixes for xdr_align_data()
        SUNRPC: _shift_data_left/right_pages should check the shift length
        ...
      74f602dc
    • Linus Torvalds's avatar
      Merge tag 'ceph-for-5.11-rc1' of git://github.com/ceph/ceph-client · be695ee2
      Linus Torvalds authored
      Pull ceph updates from Ilya Dryomov:
       "The big ticket item here is support for msgr2 on-wire protocol, which
        adds the option of full in-transit encryption using AES-GCM algorithm
        (myself).
      
        On top of that we have a series to avoid intermittent errors during
        recovery with recover_session=clean and some MDS request encoding work
        from Jeff, a cap handling fix and assorted observability improvements
        from Luis and Xiubo and a good number of cleanups.
      
        Luis also ran into a corner case with quotas which sadly means that we
        are back to denying cross-quota-realm renames"
      
      * tag 'ceph-for-5.11-rc1' of git://github.com/ceph/ceph-client: (59 commits)
        libceph: drop ceph_auth_{create,update}_authorizer()
        libceph, ceph: make use of __ceph_auth_get_authorizer() in msgr1
        libceph, ceph: implement msgr2.1 protocol (crc and secure modes)
        libceph: introduce connection modes and ms_mode option
        libceph, rbd: ignore addr->type while comparing in some cases
        libceph, ceph: get and handle cluster maps with addrvecs
        libceph: factor out finish_auth()
        libceph: drop ac->ops->name field
        libceph: amend cephx init_protocol() and build_request()
        libceph, ceph: incorporate nautilus cephx changes
        libceph: safer en/decoding of cephx requests and replies
        libceph: more insight into ticket expiry and invalidation
        libceph: move msgr1 protocol specific fields to its own struct
        libceph: move msgr1 protocol implementation to its own file
        libceph: separate msgr1 protocol implementation
        libceph: export remaining protocol independent infrastructure
        libceph: export zero_page
        libceph: rename and export con->flags bits
        libceph: rename and export con->state states
        libceph: make con->state an int
        ...
      be695ee2
    • Linus Torvalds's avatar
      Merge tag 'ovl-update-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs · 92dbc9de
      Linus Torvalds authored
      Pull overlayfs updates from Miklos Szeredi:
      
       - Allow unprivileged mounting in a user namespace.
      
         For quite some time the security model of overlayfs has been that
         operations on underlying layers shall be performed with the
         privileges of the mounting task.
      
         This way an unprvileged user cannot gain privileges by the act of
         mounting an overlayfs instance. A full audit of all function calls
         made by the overlayfs code has been performed to see whether they
         conform to this model, and this branch contains some fixes in this
         regard.
      
       - Support running on copied filesystem images by optionally disabling
         UUID verification.
      
       - Bug fixes as well as documentation updates.
      
      * tag 'ovl-update-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs:
        ovl: unprivieged mounts
        ovl: do not get metacopy for userxattr
        ovl: do not fail because of O_NOATIME
        ovl: do not fail when setting origin xattr
        ovl: user xattr
        ovl: simplify file splice
        ovl: make ioctl() safe
        ovl: check privs before decoding file handle
        vfs: verify source area in vfs_dedupe_file_range_one()
        vfs: move cap_convert_nscap() call into vfs_setxattr()
        ovl: fix incorrect extent info in metacopy case
        ovl: expand warning in ovl_d_real()
        ovl: document lower modification caveats
        ovl: warn about orphan metacopy
        ovl: doc clarification
        ovl: introduce new "uuid=off" option for inodes index feature
        ovl: propagate ovl_fs to ovl_decode_real_fh and ovl_encode_real_fh
      92dbc9de
    • Linus Torvalds's avatar
      Merge tag 'fuse-update-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse · 65de0b89
      Linus Torvalds authored
      Pull fuse updates from Miklos Szeredi:
      
       - Improve performance of virtio-fs in mixed read/write workloads
      
       - Try to revalidate cache before returning EEXIST on exclusive create
      
       - Add a couple of miscellaneous bug fixes as well as some code cleanups
      
      * tag 'fuse-update-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:
        fuse: fix bad inode
        fuse: support SB_NOSEC flag to improve write performance
        fuse: add a flag FUSE_OPEN_KILL_SUIDGID for open() request
        fuse: don't send ATTR_MODE to kill suid/sgid for handle_killpriv_v2
        fuse: setattr should set FATTR_KILL_SUIDGID
        fuse: set FUSE_WRITE_KILL_SUIDGID in cached write path
        fuse: rename FUSE_WRITE_KILL_PRIV to FUSE_WRITE_KILL_SUIDGID
        fuse: introduce the notion of FUSE_HANDLE_KILLPRIV_V2
        fuse: always revalidate if exclusive create
        virtiofs: clean up error handling in virtio_fs_get_tree()
        fuse: add fuse_sb_destroy() helper
        fuse: simplify get_fuse_conn*()
        fuse: get rid of fuse_mount refcount
        virtiofs: simplify sb setup
        virtiofs fix leak in setup
        fuse: launder page should wait for page writeback
      65de0b89
    • Linus Torvalds's avatar
      Merge tag 'f2fs-for-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs · ff49c86f
      Linus Torvalds authored
      Pull f2fs updates from Jaegeuk Kim:
       "In this round, we've made more work into per-file compression support.
      
        For example, F2FS_IOC_GET | SET_COMPRESS_OPTION provides a way to
        change the algorithm or cluster size per file. F2FS_IOC_COMPRESS |
        DECOMPRESS_FILE provides a way to compress and decompress the existing
        normal files manually.
      
        There is also a new mount option, compress_mode=fs|user, which can
        control who compresses the data.
      
        Chao also added a checksum feature with a mount option so that
        we are able to detect any corrupted cluster.
      
        In addition, Daniel contributed casefolding with encryption patch,
        which will be used for Android devices.
      
        Summary:
      
        Enhancements:
         - add ioctls and mount option to manage per-file compression feature
         - support casefolding with encryption
         - support checksum for compressed cluster
         - avoid IO starvation by replacing mutex with rwsem
         - add sysfs, max_io_bytes, to control max bio size
      
        Bug fixes:
         - fix use-after-free issue when compression and fsverity are enabled
         - fix consistency corruption during fault injection test
         - fix data offset for lseek
         - get rid of buffer_head which has 32bits limit in fiemap
         - fix some bugs in multi-partitions support
         - fix nat entry count calculation in shrinker
         - fix some stat information
      
        And, we've refactored some logics and fix minor bugs as well"
      
      * tag 'f2fs-for-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (36 commits)
        f2fs: compress: fix compression chksum
        f2fs: fix shift-out-of-bounds in sanity_check_raw_super()
        f2fs: fix race of pending_pages in decompression
        f2fs: fix to account inline xattr correctly during recovery
        f2fs: inline: fix wrong inline inode stat
        f2fs: inline: correct comment in f2fs_recover_inline_data
        f2fs: don't check PAGE_SIZE again in sanity_check_raw_super()
        f2fs: convert to F2FS_*_INO macro
        f2fs: introduce max_io_bytes, a sysfs entry, to limit bio size
        f2fs: don't allow any writes on readonly mount
        f2fs: avoid race condition for shrinker count
        f2fs: add F2FS_IOC_DECOMPRESS_FILE and F2FS_IOC_COMPRESS_FILE
        f2fs: add compress_mode mount option
        f2fs: Remove unnecessary unlikely()
        f2fs: init dirty_secmap incorrectly
        f2fs: remove buffer_head which has 32bits limit
        f2fs: fix wrong block count instead of bytes
        f2fs: use new conversion functions between blks and bytes
        f2fs: rename logical_to_blk and blk_to_logical
        f2fs: fix kbytes written stat for multi-device case
        ...
      ff49c86f
    • Linus Torvalds's avatar
      Merge tag 'for_v5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · b97d4c42
      Linus Torvalds authored
      Pull ext2, reiserfs, quota and writeback updates from Jan Kara:
      
       - a couple of quota fixes (mostly for problems found by syzbot)
      
       - several ext2 cleanups
      
       - one fix for reiserfs crash on corrupted image
      
       - a fix for spurious warning in writeback code
      
      * tag 'for_v5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        writeback: don't warn on an unregistered BDI in __mark_inode_dirty
        fs: quota: fix array-index-out-of-bounds bug by passing correct argument to vfs_cleanup_quota_inode()
        reiserfs: add check for an invalid ih_entry_count
        ext2: Fix fall-through warnings for Clang
        fs/ext2: Use ext2_put_page
        docs: filesystems: Reduce ext2.rst to one top-level heading
        quota: Sanity-check quota file headers on load
        quota: Don't overflow quota file offsets
        ext2: Remove unnecessary blank
        fs/quota: update quota state flags scheme with project quota flags
      b97d4c42
    • Linus Torvalds's avatar
      Merge tag 'fsnotify_for_v5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · 14bd41e4
      Linus Torvalds authored
      Pull fsnotify updates from Jan Kara:
       "A few fsnotify fixes from Amir fixing fallout from big fsnotify
        overhaul a few months back and an improvement of defaults limiting
        maximum number of inotify watches from Waiman"
      
      * tag 'fsnotify_for_v5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        fsnotify: fix events reported to watching parent and child
        inotify: convert to handle_inode_event() interface
        fsnotify: generalize handle_inode_event()
        inotify: Increase default inotify.max_user_watches limit to 1048576
      14bd41e4
    • Linus Torvalds's avatar
      drm/edid: fix objtool warning in drm_cvt_modes() · d652d5f1
      Linus Torvalds authored
      Commit 991fcb77 ("drm/edid: Fix uninitialized variable in
      drm_cvt_modes()") just replaced one warning with another.
      
      The original warning about a possibly uninitialized variable was due to
      the compiler not being smart enough to see that the case statement
      actually enumerated all possible cases.  And the initial fix was just to
      add a "default" case that had a single "unreachable()", just to tell the
      compiler that that situation cannot happen.
      
      However, that doesn't actually fix the fundamental reason for the
      problem: the compiler still doesn't see that the existing case
      statements enumerate all possibilities, so the compiler will still
      generate code to jump to that unreachable case statement.  It just won't
      complain about an uninitialized variable any more.
      
      So now the compiler generates code to our inline asm marker that we told
      it would not fall through, and end end result is basically random.  We
      have created a bridge to nowhere.
      
      And then, depending on the random details of just exactly what the
      compiler ends up doing, 'objtool' might end up complaining about the
      conditional branches (for conditions that cannot happen, and that thus
      will never be taken - but if the compiler was not smart enough to figure
      that out, we can't expect objtool to do so) going off in the weeds.
      
      So depending on how the compiler has laid out the result, you might see
      something like this:
      
          drivers/gpu/drm/drm_edid.o: warning: objtool: do_cvt_mode() falls through to next function drm_mode_detailed.isra.0()
      
      and now you have a truly inscrutable warning that makes no sense at all
      unless you start looking at whatever random code the compiler happened
      to generate for our bare "unreachable()" statement.
      
      IOW, don't use "unreachable()" unless you have an _active_ operation
      that generates code that actually makes it obvious that something is not
      reachable (ie an UD instruction or similar).
      
      Solve the "compiler isn't smart enough" problem by just marking one of
      the cases as "default", so that even when the compiler doesn't otherwise
      see that we've enumerated all cases, the compiler will feel happy and
      safe about there always being a valid case that initializes the 'width'
      variable.
      
      This also generates better code, since now the compiler doesn't generate
      comparisons for five different possibilities (the four real ones and the
      one that can't happen), but just for the three real ones and "the rest"
      (which is that last one).
      
      A smart enough compiler that sees that we cover all the cases won't care.
      
      Cc: Lyude Paul <lyude@redhat.com>
      Cc: Ilia Mirkin <imirkin@alum.mit.edu>
      Cc: Josh Poimboeuf <jpoimboe@redhat.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d652d5f1
    • Michael Ellerman's avatar
      powerpc/32s: Fix cleanup_cpu_mmu_context() compile bug · c1bea0a8
      Michael Ellerman authored
      Currently pmac32_defconfig with SMP=y doesn't build:
      
        arch/powerpc/platforms/powermac/smp.c:
        error: implicit declaration of function 'cleanup_cpu_mmu_context'
      
      It would be nice for consistency if all platforms clear mm_cpumask and
      flush TLBs on unplug, but the TLB invalidation bug described in commit
      01b0f0ea ("powerpc/64s: Trim offlined CPUs from mm_cpumasks") only
      applies to 64s and for now we only have the TLB flush code for that
      platform.
      
      So just add an empty version for 32-bit Book3S.
      
      Fixes: 01b0f0ea ("powerpc/64s: Trim offlined CPUs from mm_cpumasks")
      Reported-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Signed-off-by: default avatarNicholas Piggin <npiggin@gmail.com>
      [mpe: Change log based on comments from Nick]
      Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
      c1bea0a8
    • Linus Torvalds's avatar
      Merge tag 'arm-soc-omap-genpd-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · accefff5
      Linus Torvalds authored
      Pull ARM SoC OMAP GenPD updates from Arnd Bergmann:
       "These are additional updates for the power domain support on OMAP,
        moving to an implementation based on device tree information instead
        of SoC specific code. This is the latest step in the ongoing process
        for moving code out of arch/arm/mach-omap2.
      
        I kept this separate from the other driver changes since it touches
        code in multiple areas"
      
      * tag 'arm-soc-omap-genpd-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (51 commits)
        ARM: OMAP2+: Fix am4 only build after genpd changes
        ARM: dts: Configure power domain for omap5 dss
        ARM: dts: omap5: add remaining PRM instances
        soc: ti: omap-prm: omap5: add genpd support for remaining PRM instances
        ARM: OMAP2+: Drop legacy platform data for dra7 gpmc
        ARM: dts: Configure interconnect target module for dra7 iva
        ARM: dts: dra7: add remaining PRM instances
        soc: ti: omap-prm: dra7: add genpd support for remaining PRM instances
        clk: ti: dra7: Drop idlest polling from IVA clkctrl clocks
        ARM: OMAP2+: Drop legacy platform data for omap4 gpmc
        ARM: OMAP2+: Drop legacy platform data for omap4 iva
        ARM: dts: Configure power domain for omap4 dsp
        ARM: dts: Configure power domain for omap4 dss
        ARM: dts: omap4: add remaining PRM instances
        soc: ti: omap-prm: omap4: add genpd support for remaining PRM instances
        clk: ti: omap4: Drop idlest polling from IVA clkctrl clocks
        ARM: OMAP2+: Drop legacy remaining legacy platform data for am4
        ARM: dts: Use simple-pm-bus for genpd for am4 l3
        ARM: dts: Move am4 l3 noc to a separate node
        ARM: dts: Use simple-pm-bus for genpd for am4 l4_per
        ...
      accefff5
    • Linus Torvalds's avatar
      Merge tag 'arm-soc-drivers-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 48c1c40a
      Linus Torvalds authored
      Pull ARM SoC driver updates from Arnd Bergmann:
       "There are a couple of subsystems maintained by other people that merge
        their drivers through the SoC tree, those changes include:
      
         - The SCMI firmware framework gains support for sensor notifications
           and for controlling voltage domains.
      
         - A large update for the Tegra memory controller driver, integrating
           it better with the interconnect framework
      
         - The memory controller subsystem gains support for Mediatek MT8192
      
         - The reset controller framework gains support for sharing pulsed
           resets
      
        For Soc specific drivers in drivers/soc, the main changes are
      
         - The Allwinner/sunxi MBUS gets a rework for the way it handles
           dma_map_ops and offsets between physical and dma address spaces.
      
         - An errata fix plus some cleanups for Freescale Layerscape SoCs
      
         - A cleanup for renesas drivers regarding MMIO accesses.
      
         - New SoC specific drivers for Mediatek MT8192 and MT8183 power
           domains
      
         - New SoC specific drivers for Aspeed AST2600 LPC bus control and SoC
           identification.
      
         - Core Power Domain support for Qualcomm MSM8916, MSM8939, SDM660 and
           SDX55.
      
         - A rework of the TI AM33xx 'genpd' power domain support to use
           information from DT instead of platform data
      
         - Support for TI AM64x SoCs
      
         - Allow building some Amlogic drivers as modules instead of built-in
      
        Finally, there are numerous cleanups and smaller bug fixes for
        Mediatek, Tegra, Samsung, Qualcomm, TI OMAP, Amlogic, Rockchips,
        Renesas, and Xilinx SoCs"
      
      * tag 'arm-soc-drivers-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (222 commits)
        soc: mediatek: mmsys: Specify HAS_IOMEM dependency for MTK_MMSYS
        firmware: xilinx: Properly align function parameter
        firmware: xilinx: Add a blank line after function declaration
        firmware: xilinx: Remove additional newline
        firmware: xilinx: Fix kernel-doc warnings
        firmware: xlnx-zynqmp: fix compilation warning
        soc: xilinx: vcu: add missing register NUM_CORE
        soc: xilinx: vcu: use vcu-settings syscon registers
        dt-bindings: soc: xlnx: extract xlnx, vcu-settings to separate binding
        soc: xilinx: vcu: drop useless success message
        clk: samsung: mark PM functions as __maybe_unused
        soc: samsung: exynos-chipid: initialize later - with arch_initcall
        soc: samsung: exynos-chipid: order list of SoCs by name
        memory: jz4780_nemc: Fix potential NULL dereference in jz4780_nemc_probe()
        memory: ti-emif-sram: only build for ARMv7
        memory: tegra30: Support interconnect framework
        memory: tegra20: Support hardware versioning and clean up OPP table initialization
        dt-bindings: memory: tegra20-emc: Document opp-supported-hw property
        soc: rockchip: io-domain: Fix error return code in rockchip_iodomain_probe()
        reset-controller: ti: force the write operation when assert or deassert
        ...
      48c1c40a
    • Linus Torvalds's avatar
      Merge tag 'arm-soc-dt-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · 9805529e
      Linus Torvalds authored
      Pull ARM device tree updates from Arnd Bergmann:
       "Across all platforms, there is a continued move towards DT schema for
        validating the dts files. As a result there are bug fixes for mistakes
        that are found using these schema, in addition to warnings from the
        dtc compiler.
      
        As usual, many changes are for adding support for additional on-chip
        and on-board components in the machines we already support.
      
        The newly supported SoCs for this release are:
      
         - MStar Infinity2M, a low-end IP camera chip based on a dual-core
           Cortex-A7, otherwise similar to the Infinity chip we already
           support. This is also known as the SigmaStar SSD202D, and we add
           support for the Honestar ssd201htv2 development kit.
      
         - Nuvoton NPCM730, a Cortex-A9 based Baseboard Management Controller
           (BMC), in the same family as the NPCM750. This gets used in the
           Ampere Altra based "Fii Kudo" server and the Quanta GSJ, both of
           which are added as well.
      
         - Broadcom BCM4908, a 64-bit home router chip based on Broadcom's own
           Brahma-B53 CPU. Support is also added for the Asus ROG Rapture
           GT-AC5300 high-end WiFi router based on this chip.
      
         - Mediatek MT8192 is a new SoC based on eight Cortex-A76/A55 cores,
           meant for faster Chromebooks and tablets. It gets added along with
           its reference design.
      
         - Mediatek MT6779 (Helio P90) is a high-end phone chip from last
           year's generation, also added along with its reference board. This
           one is still based on Cortex-A75/A55.
      
         - Mediatek MT8167 is a version of the already supported MT8516 chip,
           both based on Cortex-A35. It gets added along with the "Pumpkin"
           single board computer, but is likely to also make its way into
           low-end tablets in the future.
      
        For the already supported chips, there are a number of new boards.
        Interestingly there are more 32-bit machines added this time than
        64-bit. Here is a brief list of the new boards:
      
         - Three new Mikrotik router variants based on Marvell Prestera
           98DX3236, a close relative of the more common Armada XP
      
         - A reference board for the Marvell Armada 382
      
         - Three new servers using ASpeed baseboard management controllers,
           the actual machines being from Bytedance, Facebook and IBM, and one
           machine using the Nuvoton NPCM750 BMC.
      
         - The Galaxy Note 10.1 (P4) tablet, using an Exynos 4412.
      
         - The usual set of 32-bit i.MX industrial/embedded hardware:
             * Protonic WD3 (tractor e-cockpit)
             * Kamstrup OMNIA Flex Concentrator (smart grid platform)
             * Van der Laan LANMCU (food storage)
             * Altesco I6P (vehicle inspection stations)
             * PHYTEC phyBOARD-Segin/phyCORE-i.MX6UL baseboard
      
         - DH electronics STM32MP157C DHCOM, a PicoITX carrier board for the
           aleady supported DHCOM module
      
         - Three new Allwinner SoC based single-board computers:
             * NanoPi R1 (H3 based)
             * FriendlyArm ZeroPi (H3 based)
             * Elimo Initium SBC (S3 based)
      
         - Ouya Game Console based on Nvidia Tegra 3
      
         - Version 5 of the already supported Zynq Z-Turn MYIR Board
      
         - LX2162AQDS, a reference platform for NXP Layerscape LX2162A, which
           is a repackaged 16-core LX2160A
      
         - A series of Kontron i.MX8M Mini baseboard/SoM versions
      
         - Espressobin Ultra, a new variant of the popular Armada 3700 based
           board,
      
         - IEI Puzzle-M801, a rackmount network appliance based on Marvell
           Armada 8040
      
         - Microsoft Lumia 950 XL, a phone
      
         - HDK855 and HDK865 Hardware development kits for Qualcomm sm8250 and
           sm8150, respectively
      
         - Three new board variants of the "Trogdor" Chromebook (sc7180)
      
         - New board variants of the Renesas based "Kingfisher" and "HiHope"
           reference boards
      
         - Kobol Helios64, an open source NAS appliance based on Rockchips
           RK3399
      
         - Engicam PX30.Core, a SoM based on Rockchip PX30, along with a few
           carrier boards"
      
      * tag 'arm-soc-dt-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (679 commits)
        arm64: dts: sparx5: Add SGPIO devices
        arm64: dts: sparx5: Add reset support
        dt-bindings: gpio: Add a binding header for the MSC313 GPIO driver
        ARM: mstar: SMP support
        ARM: mstar: Wire up smpctrl for SSD201/SSD202D
        ARM: mstar: Add smp ctrl registers to infinity2m dtsi
        ARM: mstar: Add dts for Honestar ssd201htv2
        ARM: mstar: Add chip level dtsi for SSD202D
        ARM: mstar: Add common dtsi for SSD201/SSD202D
        ARM: mstar: Add infinity2m support
        dt-bindings: mstar: Add Honestar SSD201_HT_V2 to mstar boards
        dt-bindings: vendor-prefixes: Add honestar vendor prefix
        dt-bindings: mstar: Add binding details for mstar,smpctrl
        ARM: mstar: Fill in GPIO controller properties for infinity
        ARM: mstar: Add gpio controller to MStar base dtsi
        ARM: zynq: Fix incorrect reference to XM013 instead of XM011
        ARM: zynq: Convert at25 binding to new description on zc770-xm013
        ARM: zynq: Fix OCM mapping to be aligned with binding on zc702
        ARM: zynq: Fix leds subnode name for zc702/zybo-z7
        ARM: zynq: Rename bus to be align with simple-bus yaml
        ...
      9805529e
    • Linus Torvalds's avatar
      Merge tag 'arm-soc-defconfig-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · b0a6cd29
      Linus Torvalds authored
      Pull ARM SoC defconfig updates from Arnd Bergmann:
       "These are the usual defconfig updates, adding support for additional
        modules and updating some files according to changes in Kconfig.
      
        I also include the removal of CONFIG_BACKLIGHT_GENERIC across multiple
        architectures, after the driver was removed"
      
      * tag 'arm-soc-defconfig-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (41 commits)
        powerpc/configs: drop unused BACKLIGHT_GENERIC option
        parisc: configs: drop unused BACKLIGHT_GENERIC option
        arm64: defconfig: drop unused BACKLIGHT_GENERIC option
        ARM: configs: drop unused BACKLIGHT_GENERIC option
        arm64: defconfig: Enable more Librem 5 hardware
        arm64: defconfig: Enable RTC_DRV_HYM8563
        arm64: defconfig: Enable USB_SERIAL_CP210X
        arm64: defconfig: Enable PHY_ROCKCHIP_INNO_DSIDPHY
        arm64: defconfig: Enable ROCKCHIP_LVDS
        arm64: defconfig: Enable ARM SCMI protocol and drivers
        ARM: multi_v7_defconfig: Enable ARM SCMI protocol and drivers
        ARM: multi_v7_defconfig: enable STM32 dfsdm audio support
        ARM: multi_v7_defconfig: enable STM32 spdifrx support
        ARM: multi_v7_defconfig: enable STUSB160X Type-C port controller support
        ARM: multi_v7_defconfig: add STM32 crypto support
        ARM: multi_v7_defconfig: enable counter subsystem and stm32 counter drivers
        ARM: multi_v7_defconfig: make Samsung Exynos EHCI driver a module
        arm64: defconfig: Enable Qualcomm PON driver
        ARM: omap2plus_defconfig: Enable TI eQEP counter driver
        ARM: multi_v7_defconfig: ti: Enable networking options for nfs boot
        ...
      b0a6cd29
    • Linus Torvalds's avatar
      Merge tag 'arm-soc-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc · b06db0b3
      Linus Torvalds authored
      Pull ARM SoC updates from Arnd Bergmann:
       "These are updates for SoC specific code, mostly in the 32-bit
        architecture:
      
         - A rework for handling MMIO accesses in Renesas SoCs in a more
           portable way
      
         - Updates to SoC version detection in NXP i.MX SoCs.
      
         - Smaller bug fixes for OMAP, Samsung, Marvell, Amlogic"
      
      * tag 'arm-soc-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (24 commits)
        arm64: Kconfig: meson: drop pinctrl
        ARM: mxs: Add serial number support for i.MX23, i.MX28 SoCs
        MAINTAINERS: switch mvebu tree to kernel.org
        MAINTAINERS: Add an entry for MikroTik CRS3xx 98DX3236 boards
        ARM: shmobile: Stop using __raw_*() I/O accessors
        ARM: shmobile: sh73a0: Remove obsolete static mapping
        ARM: shmobile: sh73a0: Use ioremap() to map SMP registers
        ARM: shmobile: sh73a0: Use ioremap() to map L2C registers
        ARM: shmobile: r8a7779: Remove obsolete static mappings
        ARM: shmobile: r8a7779: Use ioremap() to map SMP registers
        ARM: shmobile: r8a7779: Use ioremap() to map INTC2 registers
        ARM: shmobile: r8a7778: Introduce HPBREG_BASE
        ARM: OMAP1: clock: Use IS_ERR_OR_NULL() to clean code
        ARM: OMAP2+: Remove redundant null check before clk_prepare_enable/clk_disable_unprepare
        ARM: OMAP2+: Remove redundant assignment to variable ret
        ARM: OMAP2+: Fix kfree NULL pointer in omap2xxx_clkt_vps_init
        ARM: OMAP2+: Fix memleak in omap2xxx_clkt_vps_init
        ARM: exynos: extend cpuidle support to P4 Note boards
        ARM: imx: mach-imx6q: correctly identify i.MX6QP SoCs
        ARM: imx: imx7ulp: Add a comment explaining the B2 silicon version
        ...
      b06db0b3
  2. 16 Dec, 2020 21 commits
    • Linus Torvalds's avatar
      Merge tag 'vfio-v5.11-rc1' of git://github.com/awilliam/linux-vfio · 0c71cc04
      Linus Torvalds authored
      Pull VFIO updates from Alex Williamson:
      
       - Fix uninitialized list walk in error path (Eric Auger)
      
       - Use io_remap_pfn_range() (Jason Gunthorpe)
      
       - Allow fallback support for NVLink on POWER8 (Alexey Kardashevskiy)
      
       - Enable mdev request interrupt with CCW support (Eric Farman)
      
       - Enable interface to iommu_domain from vfio_group (Lu Baolu)
      
      * tag 'vfio-v5.11-rc1' of git://github.com/awilliam/linux-vfio:
        vfio/type1: Add vfio_group_iommu_domain()
        vfio-ccw: Wire in the request callback
        vfio-mdev: Wire in a request handler for mdev parent
        vfio/pci/nvlink2: Do not attempt NPU2 setup on POWER8NVL NPU
        vfio-pci: Use io_remap_pfn_range() for PCI IO memory
        vfio/pci: Move dummy_resources_list init in vfio_pci_probe()
      0c71cc04
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid · de925e2f
      Linus Torvalds authored
      Pull HID updates from Jiri Kosina:
      
       - AMD SFH (Sensor Fusion Hub) support (Sandeep Singh)
      
       - increase of maximum HID report size to 16KB in order to support some
         of the modern devices (Dean Camera)
      
       - control interface support for hidraw (Dean Camera)
      
       - Sony DS4 power and firmware reporting fixes (Roderick Colenbrander)
      
       - support for ghlive PS3/WII U dongles (Pascal Giard)
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid: (27 commits)
        HID: i2c-hid: add Vero K147 to descriptor override
        HID: ite: Add support for Acer S1002 keyboard-dock
        HID: sony: support for ghlive ps3/wii u dongles
        HID: hidraw: Add additional hidraw input/output report ioctls.
        HID: Increase HID maximum report size to 16KB
        HID: elecom: drop stray comment
        HID: mf: add support for 0079:1846 Mayflash/Dragonrise USB Gamecube Adapter
        HID: elecom: add support for EX-G M-XGL20DLBK wireless mouse
        HID: elecom: rewrite report based on model specific parameters
        HID: wacom: Constify attribute_groups
        HID: input: Fix fall-through warnings for Clang
        HID: usbhid: Fix fall-through warnings for Clang
        HID: logitech-hidpp: Add hid_device_id for V470 bluetooth mouse
        HID: intel-ish-hid: Remove unnecessary assignment to variable rv
        HID: sony: Workaround for DS4 dongle hotplug kernel crash.
        HID: sony: Don't use fw_version/hw_version for sysfs cleanup.
        HID: sony: Report more accurate DS4 power status.
        SFH: fix error return check for -ERESTARTSYS
        HID: SFH: Add documentation
        HID: hid-input: occasionally report stylus battery even if not changed
        ...
      de925e2f
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · 62746f92
      Linus Torvalds authored
      Pull devicetree updates from Rob Herring:
      
       - Add vendor prefixes for bm, gpio-key, mentor, FII, and Ampere
      
       - Add ADP5585/ADP5589 and delta,q54sj108a2 to trivial-devices.yaml
      
       - Convert fixed-partitions, i2c-gate and fsl,dpaa2-console bindings to
         schemas
      
       - Drop PicoXcell bindings
      
       - Drop unused and undocumented 'pnx,timeout' property from LPC32xx
      
       - Add 'dynamic-power-coefficient' to Mali GPU bindings
      
       - Make 'make dt_binding_check' not error out on warnings
      
       - Various minor binding fixes
      
      * tag 'devicetree-for-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (22 commits)
        dt-bindings: mali-bifrost: Add dynamic-power-coefficient
        dt-bindings: mali-midgard: Add dynamic-power-coefficient
        dt-bindings: i2c: dw: cancel mandatory requirements for "#address-cells" and "#size-cells"
        dt-bindings: Remove PicoXcell bindings
        ARM: dts: lpc32xx: Remove unused and undocumented 'pnx,timeout'
        dt-bindings: mtd: convert "fixed-partitions" to the json-schema
        dt-bindings: vendor-prefixes: Add undocumented bm, gpio-key, and mentor prefixes
        dt-bindings: pci: rcar-pci-ep: Document missing interrupts property
        dt-bindings: vendor-prefixes: Add an entry for AmpereComputing.com
        dt-bindings: vendor-prefixes: correct the spelling of TQ-Systems GmbH
        dt-bindings: mfd: fix stm32 timers example
        dt-bindings: trivial-devices: Add delta,q54sj108a2
        dt-bindings:i2c:i2c-gate: txt to yaml conversion
        dt-bindings: add ADP5585/ADP5589 entries to trivial-devices
        dt-bindings: Correct GV11B GPU register sizes
        dt-bindings: vendor-prefixes: Add FII
        dt-bindings: Fix typo on the DesignWare IP reset bindings documentation
        dt-bindings: Fix error in 'make dtbs_check' when using DT_SCHEMA_FILES
        dt-bindings: arm: vt8500: remove redundant white-spaces
        dt-bindings: fsl-imx-drm: fix example compatible string
        ...
      62746f92
    • Linus Torvalds's avatar
      Merge tag 'pinctrl-v5.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · f68e4041
      Linus Torvalds authored
      Pull pin control updates from Linus Walleij:
       "This is the bulk of pin control changes for the v5.11 kernel.
      
        Drivers, drivers and drivers. Not a single core change.
      
        Some new stuff, especially a bunch of new Intel, Qualcomm and Ocelot
        SoCs.
      
        As part of the modularization attempt, I applied one patch affecting
        the firmware subsystem as a functional (not syntactic/semantic)
        dependency and then it blew up in our face, so I had to revert it,
        bummer. It will come in later, through that subsystem, I guess.
      
        New drivers:
      
         - New driver for the Microchip Serial GPIO "SGPIO".
      
         - Qualcomm SM8250 LPASS (Low Power Audio Subsystem) GPIO driver.
      
        New subdrivers:
      
         - Intel Lakefield subdriver.
      
         - Intel Elkhart Lake subdriver.
      
         - Intel Alder Lake-S subdriver.
      
         - Qualcomm MSM8953 subdriver.
      
         - Qualcomm SDX55 subdriver.
      
         - Qualcomm SDX55 PMIC subdriver.
      
         - Ocelot Luton SoC subdriver.
      
         - Ocelot Serval SoC subdriver.
      
        Modularization:
      
         - The Meson driver can now be built as modules.
      
         - The Qualcomm driver(s) can now be built as modules.
      
        Incremental improvements:
      
         - The Intel driver now supports pin configuration for GPIO-related
           configurations.
      
         - A bunch of Renesas PFC drivers have been augmented with support for
           QSPI pins, groups and functions.
      
         - Non-critical fixes to the irq handling in the Allwinner Sunxi
           driver"
      
      * tag 'pinctrl-v5.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (80 commits)
        pinctrl/spear: simplify the return expression of spear300_pinctrl_probe()
        pinctrl: mediatek: simplify the return expression of mtk_pinconf_bias_disable_set_rev1()
        dt-bindings: pinctrl: pinctrl-microchip-sgpio: Add irq support
        pinctrl: pinctrl-microchip-sgpio: Add irq support (for sparx5)
        pinctrl: qcom: Add sm8250 lpass lpi pinctrl driver
        dt-bindings: pinctrl: qcom: Add sm8250 lpass lpi pinctrl bindings
        pinctrl: qcom-pmic-gpio: Add support for pmx55
        dt-bindings: pinctrl: qcom-pmic-gpio: Add pmx55 support
        pinctrl: pinctrl-microchip-sgpio: Mark some symbols with static keyword
        pinctrl: at91-pio4: Make PINCTRL_AT91PIO4 depend on HAS_IOMEM to fix build error
        pinctrl: mtk: Fix low level output voltage issue
        pinctrl: falcon: add missing put_device() call in pinctrl_falcon_probe()
        pinctrl: actions: pinctrl-s500: Constify s500_padinfo[]
        pinctrl: pinctrl-microchip-sgpio: Add OF config dependency
        pinctrl: pinctrl-microchip-sgpio: Add pinctrl driver for Microsemi Serial GPIO
        dt-bindings: pinctrl: Add bindings for pinctrl-microchip-sgpio driver
        pinctrl: at91-pio4: add support for fewer lines on last PIO bank
        pinctrl: sunxi: Always call chained_irq_{enter, exit} in sunxi_pinctrl_irq_handler
        pinctrl: sunxi: Mark the irq bank not found in sunxi_pinctrl_irq_handler() with WARN_ON
        pinctrl: sunxi: fix irq bank map for the Allwinner A100 pin controller
        ...
      f68e4041
    • Linus Torvalds's avatar
      Merge tag 'mtd/for-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux · a701262c
      Linus Torvalds authored
      Pull MTD updates from Miquel Raynal:
       "MTD core:
         - Fix refcounting for unpartitioned MTDs
         - Fix misspelled function parameter 'section'
         - Remove unneeded break
         - cmdline parser: Fix parsing of part-names with colons
         - mtdpart: Fix misdocumented function parameter 'mtd'
      
        MTD devices:
         - phram:
            - Allow the user to set the erase page size
            - File headers are not good candidates for kernel-doc
         - physmap-bt1-rom: Fix __iomem addrspace removal warning
         - plat-ram: correctly free memory on error path in platram_probe()
         - powernv_flash: Add function names to headers and fix 'dev'
         - docg3: Fix kernel-doc 'bad line' and 'excessive doc' issues
      
        UBI cleanup fixes:
         - gluebi: Fix misnamed function parameter documentation
         - wl: Fix a couple of kernel-doc issues
         - eba: Fix a couple of misdocumentation issues
         - kapi: Correct documentation for 'ubi_leb_read_sg's 'sgl' parameter
         - Document 'ubi_num' in struct mtd_dev_param
      
        Generic NAND core ECC management:
         - Add an I/O request tweaking mechanism
         - Entire rework of the software BCH ECC driver, creation of a real
           ECC engine, getting rid of raw NAND structures, migration to more
           generic prototypes, misc fixes and style cleanup. Moved now to the
           Generic NAND layer.
         - Entire rework of the software Hamming ECC driver, creation of a
           real ECC engine, getting rid of raw NAND structures, misc renames,
           comment updates, cleanup, and style fixes. Moved now to the generic
           NAND layer.
         - Necessary plumbing at the NAND level to retrieve generic NAND ECC
           engines (softwares and on-die).
         - Update of the bindings.
      
        Raw NAND core:
         - Geting rid of the chip->ecc.priv entry.
         - Fix miscellaneous typos in kernel-doc
      
        Raw NAND controller drivers:
         - Arasan: Document 'anfc_op's 'buf' member
         - AU1550: Ensure the presence of the right includes
         - Brcmnand: Demote non-conformant kernel-doc headers
         - Cafe: Remove superfluous param doc and add another
         - Davinci: Do not use extra dereferencing
         - Diskonchip: Marking unused variables as __always_unused
         - GPMI:
            - Fix the driver only sense CS0 R/B issue
            - Fix the random DMA timeout issue
            - Use a single line for of_device_id
            - Use of_device_get_match_data()
            - Fix reference count leak in gpmi ops
            - Cleanup makefile
            - Fix binding matching of clocks on different SoCs
         - Ingenic: remove redundant get_device() in ingenic_ecc_get()
         - Intel LGM: New NAND controller driver
         - Marvell: Drop useless line
         - Meson:
            - Fix a resource leak in init
            - Fix meson_nfc_dma_buffer_release() arguments
         - mxc:
            - Use device_get_match_data()
            - Use a single line for of_device_id
            - Remove platform data support
         - Omap:
            - Fix a bunch of kernel-doc misdemeanours
            - Finish ELM half populated function header, demote empty ones
         - s3c2410: Add documentation for 2 missing struct members
         - Sunxi: Document 'sunxi_nfc's 'caps' member
         - Qcom:
            - Add support for SDX55
            - Support for IPQ6018 QPIC NAND controller
            - Fix DMA sync on FLASH_STATUS register read
         - Rockchip: New NAND controller driver for RK3308, RK2928 and others
         - Sunxi: Add MDMA support
      
        ONENAND:
         - bbt: Fix expected kernel-doc formatting
         - Fix some kernel-doc misdemeanours
         - Fix expected kernel-doc formatting
         - Use mtd->oops_panic_write as condition
      
        SPI-NAND core:
         - Creation of a SPI-NAND on-die ECC engine
         - Move ECC related definitions earlier in the driver
         - Fix typo in comment
         - Fill a default ECC provider/algorithm
         - Remove outdated comment
         - Fix OOB read
         - Allow the case where there is no ECC engine
         - Use the external ECC engine logic
      
        SPI-NAND chip drivers:
         - Micron:
            - Add support for MT29F2G01AAAED
            - Use more specific names
         - Macronix:
            - Add support for MX35LFxG24AD
            - Add support for MX35LFxGE4AD
         - Toshiba: Demote non-conformant kernel-doc header
      
        SPI-NOR core:
         - Initial support for stateful Octal DTR mode using volatile settings
         - Preliminary support for JEDEC 251 (xSPI) and JEDEC 216D standards
         - Support for Cypress Semper flash
         - Support to specify ECC block size of SPI NOR flashes
         - Fixes to avoid clearing of non-volatile Block Protection bits at
           probe
         - hisi-sfc: Demote non-conformant kernel-doc"
      
      * tag 'mtd/for-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux: (120 commits)
        mtd: spinand: macronix: Add support for MX35LFxG24AD
        mtd: rawnand: rockchip: NFC driver for RK3308, RK2928 and others
        dt-bindings: mtd: Describe Rockchip RK3xxx NAND flash controller
        mtd: rawnand: gpmi: Use a single line for of_device_id
        mtd: rawnand: gpmi: Fix the random DMA timeout issue
        mtd: rawnand: gpmi: Fix the driver only sense CS0 R/B issue
        mtd: rawnand: qcom: Add NAND controller support for SDX55
        dt-bindings: qcom_nandc: Add SDX55 QPIC NAND documentation
        mtd: rawnand: mxc: Use a single line for of_device_id
        mtd: rawnand: mxc: Use device_get_match_data()
        mtd: rawnand: meson: Fix a resource leak in init
        mtd: rawnand: gpmi: Use of_device_get_match_data()
        mtd: rawnand: Add NAND controller support on Intel LGM SoC
        dt-bindings: mtd: Add Nand Flash Controller support for Intel LGM SoC
        mtd: spinand: micron: Add support for MT29F2G01AAAED
        mtd: spinand: micron: Use more specific names
        mtd: rawnand: gpmi: fix reference count leak in gpmi ops
        dt-bindings: mtd: gpmi-nand: Fix matching of clocks on different SoCs
        mtd: spinand: macronix: Add support for MX35LFxGE4AD
        mtd: plat-ram: correctly free memory on error path in platram_probe()
        ...
      a701262c
    • Linus Torvalds's avatar
      Merge tag 'leds-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/pavel/linux-leds · 945433be
      Linus Torvalds authored
      Pull LED updates from Pavel Machek:
       "Small cleanups/fixes mostly thanks to Marek, nothing major made it in
        this time"
      
      * tag 'leds-5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/pavel/linux-leds:
        leds: turris-omnia: check for LED_COLOR_ID_RGB instead LED_COLOR_ID_MULTI
        leds: turris-omnia: fix checkpatch warning
        leds: turris-omnia: wrap to 80 columns
        leds: turris-omnia: use constants instead of macros for color command
        dt-bindings: leds: Convert pwm to yaml
        leds: lp50xx: Fix an error handling path in 'lp50xx_probe_dt()'
        leds: netxbig: add missing put_device() call in netxbig_leds_get_of_pdata()
        Documentation: leds: remove invalidated information
      945433be
    • Linus Torvalds's avatar
      Merge tag 'for-linus-5.11-1' of git://github.com/cminyard/linux-ipmi · f67d6620
      Linus Torvalds authored
      Pull IPMI updates from Corey Minyard:
       "Some very minor changes.
      
        Nothing functional, just little syntax cleanups and a RCU warning
        suppression"
      
      * tag 'for-linus-5.11-1' of git://github.com/cminyard/linux-ipmi:
        char: ipmi: convert comma to semicolon
        ipmi: msghandler: Suppress suspicious RCU usage warning
        ipmi/watchdog: replace atomic_add() and atomic_sub()
        char: ipmi: remove unneeded break
      f67d6620
    • Linus Torvalds's avatar
      Merge tag 'backlight-next-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight · 84e010ec
      Linus Torvalds authored
      Pull backlight update from Lee Jones:
       "Careful, it's a big one!
      
         - Fix pwm_bl driver interpolation issues by switching to a linear
           algorithm"
      
      * tag 'backlight-next-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight:
        backlight: pwm_bl: Fix interpolation
      84e010ec
    • Linus Torvalds's avatar
      Merge tag 'mfd-next-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd · 278f54c4
      Linus Torvalds authored
      Pull MFD updates from Lee Jones:
       "New Drivers
         - Add support for Intel's Platform Monitoring Technology (PMT)
      
        New Device Support:
         - Add support for PM660/PM660L to QCom SPMI PMIC
         - Add support for lots of new devices to Kontron Core
      
        New Functionality:
         - Provide syscon_regmap_lookup_by_phandle_optional() to SysCon API
      
        Fix-ups:
         - Constify; da9xxx-core; intel_*, tps65xxx, wm8xxx-core, lp8788,
           stmpe, sun4i-gpadc, 88pm800, hi655x-pmic, ioc3, etc
         - Remove superfluous code; madera, tps65910
         - Use raw APIs (rid abstractions); tps65911-comparator, tps65910
         - Whitespace/formatting fix-ups; tps65910
         - Device Tree changes/updates; bd71837-pmic, syscon
         - Use helpers/APIs (no hand rolling); altera-sysmgr
         - Mark of_match tables as __maybe_unused; twl6030-irq
         - Fix spelling; si476x-core
      
        Bug Fixes:
         - Reset on resume to ensure known state; madera-core
         - Correct ordering issues; madera-core, tps65910, kempld-core
         - Remove erroneous passing of of_compatible strings; at91-usart
         - Fix potential I2C adaptor leak; htc-i2cpld
         - Correct errorneous defines; rt5033-private
         - Resolve Kconfig issues; MFD_SL28CPLD, MFD_OMAP_USB_HOST
         - Fix dev_err_probe() handling; stmfx
         - Repair interrupt regression; motorola-cpcap
         - Allow ACPI matching of DT tables; bcm590xx, da9xx, ene-kb3930,
           fsl-imx25-tsadc, max77650, mt6397-core, rt5033, stmfx, max77686,
           sun4i-gpadc, wm8994-core, axp20x-i2c"
      
      [ The PMT updates already came in through the x86 platform tree ]
      
      * tag 'mfd-next-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (48 commits)
        mfd: kempld-core: Add support for additional devices
        mfd: si476x-core.h: Fix "regulator" spelling in comment
        mfd: twl6030: Mark of_device_id table as maybe unused
        mfd: axp20x: Skip of_device_id table when !CONFIG_OF
        mfd: wm8994: Drop of_match_ptr from of_device_id table
        mfd: sun4i: Drop of_match_ptr from of_device_id table
        mfd: max77686: Drop of_match_ptr from of_device_id table
        mfd: stmfx: Drop of_match_ptr from of_device_id table
        mfd: rt5033: Drop of_match_ptr from of_device_id table
        mfd: mt6397: Drop of_match_ptr from of_device_id table
        mfd: max77650: Drop of_match_ptr from of_device_id table
        mfd: fsl-imx25: Drop of_match_ptr from of_device_id table
        mfd: ene-kb3930: Drop of_match_ptr from of_device_id table
        mfd: da9150: Drop of_match_ptr from of_device_id table
        mfd: da9063: Drop of_match_ptr from of_device_id table
        mfd: da9062: Drop of_match_ptr from of_device_id table
        mfd: da9055: Drop of_match_ptr from of_device_id table
        mfd: bcm590xx: Drop of_match_ptr from of_device_id table
        mfd: omap-usb: Depend on COMMON_CLK to fix compile tests
        mfd: kempld-core: Check for DMI definition before ACPI
        ...
      278f54c4
    • Linus Torvalds's avatar
      Merge tag 'memblock-v5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock · fff875a1
      Linus Torvalds authored
      Pull memblock updates from Mike Rapoport:
       "memblock debug enhancements.
      
        Improve tracking of early memory allocations when memblock debug is
        enabled:
      
         - Add memblock_dbg() to memblock_phys_alloc_range() to get details
           about its usage
      
         - Make memblock allocator wrappers actually inline to track their
           callers in memblock debug messages"
      
      * tag 'memblock-v5.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock:
        mm: memblock: drop __init from memblock functions to make it inline
        mm: memblock: add more debug logs
      fff875a1
    • Trond Myklebust's avatar
      NFS/pNFS: Fix a typo in ff_layout_resend_pnfs_read() · 52104f27
      Trond Myklebust authored
      Don't bump the index twice.
      
      Fixes: 563c53e7 ("NFS: Fix flexfiles read failover")
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
      52104f27
    • Trond Myklebust's avatar
      pNFS/flexfiles: Avoid spurious layout returns in ff_layout_choose_ds_for_read · 9bfffea3
      Trond Myklebust authored
      The callers of ff_layout_choose_ds_for_read() should decide whether or
      not they want to return the layout on error. Sometimes, we may just want
      to retry from the beginning.
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
      9bfffea3
    • Trond Myklebust's avatar
      NFSv4/pnfs: Add tracing for the deviceid cache · cac1d3a2
      Trond Myklebust authored
      Add tracepoints to allow debugging of the deviceid cache.
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
      cac1d3a2
    • Mark Rutland's avatar
      arm64: make _TIF_WORK_MASK bits contiguous · 870d1675
      Mark Rutland authored
      We need the bits of _TIF_WORK_MASK to be contiguous in order to to use
      this as an immediate argument to an AND instruction in entry.S.
      
      We happened to change these bits in commits:
      
        b5a5a01d ("arm64: uaccess: remove addr_limit_user_check()")
        192caabd ("arm64: add support for TIF_NOTIFY_SIGNAL")
      
      which each worked in isolation, but the merge resolution in commit:
      
        005b2a9d ("Merge tag 'tif-task_work.arch-2020-12-14' of git://git.kernel.dk/linux-block")
      
      happened to make the bits non-contiguous.
      
      Fix this by moving TIF_NOTIFY_SIGNAL to be bit 6, which is contiguous
      with the rest of _TIF_WORK_MASK.
      
      Otherwise, we'll get a build-time failure as below:
      
         arch/arm64/kernel/entry.S: Assembler messages:
         arch/arm64/kernel/entry.S:733: Error: immediate out of range at operand 3 -- `and x2,x19,#((1<<1)|(1<<0)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<7))'
         scripts/Makefile.build:360: recipe for target 'arch/arm64/kernel/entry.o' failed
      
      Fixes: 005b2a9d ("Merge tag 'tif-task_work.arch-2020-12-14' of git://git.kernel.dk/linux-block")
      Signed-off-by: default avatarMark Rutland <mark.rutland@arm.com>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Will Deacon <will@kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      870d1675
    • Linus Torvalds's avatar
      Merge tag 'iommu-updates-v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 19778dd5
      Linus Torvalds authored
      Pull IOMMU updates from Will Deacon:
       "There's a good mixture of improvements to the core code and driver
        changes across the board.
      
        One thing worth pointing out is that this includes a quirk to work
        around behaviour in the i915 driver (see 65f746e8 ("iommu: Add
        quirk for Intel graphic devices in map_sg")), which otherwise
        interacts badly with the conversion of the intel IOMMU driver over to
        the DMA-IOMMU APU but has being fixed properly in the DRM tree.
      
        We'll revert the quirk later this cycle once we've confirmed that
        things don't fall apart without it.
      
        Summary:
      
         - IOVA allocation optimisations and removal of unused code
      
         - Introduction of DOMAIN_ATTR_IO_PGTABLE_CFG for parameterising the
           page-table of an IOMMU domain
      
         - Support for changing the default domain type in sysfs
      
         - Optimisation to the way in which identity-mapped regions are
           created
      
         - Driver updates:
             * Arm SMMU updates, including continued work on Shared Virtual
               Memory
             * Tegra SMMU updates, including support for PCI devices
             * Intel VT-D updates, including conversion to the IOMMU-DMA API
      
         - Cleanup, kerneldoc and minor refactoring"
      
      * tag 'iommu-updates-v5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (50 commits)
        iommu/amd: Add sanity check for interrupt remapping table length macros
        dma-iommu: remove __iommu_dma_mmap
        iommu/io-pgtable: Remove tlb_flush_leaf
        iommu: Stop exporting free_iova_mem()
        iommu: Stop exporting alloc_iova_mem()
        iommu: Delete split_and_remove_iova()
        iommu/io-pgtable-arm: Remove unused 'level' parameter from iopte_type() macro
        iommu: Defer the early return in arm_(v7s/lpae)_map
        iommu: Improve the performance for direct_mapping
        iommu: avoid taking iova_rbtree_lock twice
        iommu/vt-d: Avoid GFP_ATOMIC where it is not needed
        iommu/vt-d: Remove set but not used variable
        iommu: return error code when it can't get group
        iommu: Fix htmldocs warnings in sysfs-kernel-iommu_groups
        iommu: arm-smmu-impl: Add a space before open parenthesis
        iommu: arm-smmu-impl: Use table to list QCOM implementations
        iommu/arm-smmu: Move non-strict mode to use io_pgtable_domain_attr
        iommu/arm-smmu: Add support for pagetable config domain attribute
        iommu: Document usage of "/sys/kernel/iommu_groups/<grp_id>/type" file
        iommu: Take lock before reading iommu group default domain type
        ...
      19778dd5
    • Linus Torvalds's avatar
      Merge branch 'stable/for-linus-5.11' of... · 007c74e1
      Linus Torvalds authored
      Merge branch 'stable/for-linus-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb
      
      Pull swiotlb update from Konrad Rzeszutek Wilk:
       "A generic (but for right now engaged only with AMD SEV) mechanism to
        adjust a larger size SWIOTLB based on the total memory of the SEV
        guests which right now require the bounce buffer for interacting with
        the outside world.
      
        Normal knobs (swiotlb=XYZ) still work"
      
      * 'stable/for-linus-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb:
        x86,swiotlb: Adjust SWIOTLB bounce buffer size for SEV guests
      007c74e1
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma · 009bd55d
      Linus Torvalds authored
      Pull rdma updates from Jason Gunthorpe:
       "A smaller set of patches, nothing stands out as being particularly
        major this cycle. The biggest item would be the new HIP09 HW support
        from HNS, otherwise it was pretty quiet for new work here:
      
         - Driver bug fixes and updates: bnxt_re, cxgb4, rxe, hns, i40iw,
           cxgb4, mlx4 and mlx5
      
         - Bug fixes and polishing for the new rts ULP
      
         - Cleanup of uverbs checking for allowed driver operations
      
         - Use sysfs_emit all over the place
      
         - Lots of bug fixes and clarity improvements for hns
      
         - hip09 support for hns
      
         - NDR and 50/100Gb signaling rates
      
         - Remove dma_virt_ops and go back to using the IB DMA wrappers
      
         - mlx5 optimizations for contiguous DMA regions"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma: (147 commits)
        RDMA/cma: Don't overwrite sgid_attr after device is released
        RDMA/mlx5: Fix MR cache memory leak
        RDMA/rxe: Use acquire/release for memory ordering
        RDMA/hns: Simplify AEQE process for different types of queue
        RDMA/hns: Fix inaccurate prints
        RDMA/hns: Fix incorrect symbol types
        RDMA/hns: Clear redundant variable initialization
        RDMA/hns: Fix coding style issues
        RDMA/hns: Remove unnecessary access right set during INIT2INIT
        RDMA/hns: WARN_ON if get a reserved sl from users
        RDMA/hns: Avoid filling sl in high 3 bits of vlan_id
        RDMA/hns: Do shift on traffic class when using RoCEv2
        RDMA/hns: Normalization the judgment of some features
        RDMA/hns: Limit the length of data copied between kernel and userspace
        RDMA/mlx4: Remove bogus dev_base_lock usage
        RDMA/uverbs: Fix incorrect variable type
        RDMA/core: Do not indicate device ready when device enablement fails
        RDMA/core: Clean up cq pool mechanism
        RDMA/core: Update kernel documentation for ib_create_named_qp()
        MAINTAINERS: SOFT-ROCE: Change Zhu Yanjun's email address
        ...
      009bd55d
    • Linus Torvalds's avatar
      Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 60f7c503
      Linus Torvalds authored
      Pull SCSI updates from James Bottomley:
       "This consists of the usual driver updates (ufs, qla2xxx, smartpqi,
        target, zfcp, fnic, mpt3sas, ibmvfc) plus a load of cleanups, a major
        power management rework and a load of assorted minor updates.
      
        There are a few core updates (formatting fixes being the big one) but
        nothing major this cycle"
      
      * tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (279 commits)
        scsi: mpt3sas: Update driver version to 36.100.00.00
        scsi: mpt3sas: Handle trigger page after firmware update
        scsi: mpt3sas: Add persistent MPI trigger page
        scsi: mpt3sas: Add persistent SCSI sense trigger page
        scsi: mpt3sas: Add persistent Event trigger page
        scsi: mpt3sas: Add persistent Master trigger page
        scsi: mpt3sas: Add persistent trigger pages support
        scsi: mpt3sas: Sync time periodically between driver and firmware
        scsi: qla2xxx: Update version to 10.02.00.104-k
        scsi: qla2xxx: Fix device loss on 4G and older HBAs
        scsi: qla2xxx: If fcport is undergoing deletion complete I/O with retry
        scsi: qla2xxx: Fix the call trace for flush workqueue
        scsi: qla2xxx: Fix flash update in 28XX adapters on big endian machines
        scsi: qla2xxx: Handle aborts correctly for port undergoing deletion
        scsi: qla2xxx: Fix N2N and NVMe connect retry failure
        scsi: qla2xxx: Fix FW initialization error on big endian machines
        scsi: qla2xxx: Fix crash during driver load on big endian machines
        scsi: qla2xxx: Fix compilation issue in PPC systems
        scsi: qla2xxx: Don't check for fw_started while posting NVMe command
        scsi: qla2xxx: Tear down session if FW say it is down
        ...
      60f7c503
    • Linus Torvalds's avatar
      Merge tag 'for-5.11/drivers-2020-12-14' of git://git.kernel.dk/linux-block · 69f637c3
      Linus Torvalds authored
      Pull block driver updates from Jens Axboe:
       "Nothing major in here:
      
         - NVMe pull request from Christoph:
              - nvmet passthrough improvements (Chaitanya Kulkarni)
              - fcloop error injection support (James Smart)
              - read-only support for zoned namespaces without Zone Append
                (Javier González)
              - improve some error message (Minwoo Im)
              - reject I/O to offline fabrics namespaces (Victor Gladkov)
              - PCI queue allocation cleanups (Niklas Schnelle)
              - remove an unused allocation in nvmet (Amit Engel)
              - a Kconfig spelling fix (Colin Ian King)
              - nvme_req_qid simplication (Baolin Wang)
      
         - MD pull request from Song:
              - Fix race condition in md_ioctl() (Dae R. Jeong)
              - Initialize read_slot properly for raid10 (Kevin Vigor)
              - Code cleanup (Pankaj Gupta)
              - md-cluster resync/reshape fix (Zhao Heming)
      
         - Move null_blk into its own directory (Damien Le Moal)
      
         - null_blk zone and discard improvements (Damien Le Moal)
      
         - bcache race fix (Dongsheng Yang)
      
         - Set of rnbd fixes/improvements (Gioh Kim, Guoqing Jiang, Jack Wang,
           Lutz Pogrell, Md Haris Iqbal)
      
         - lightnvm NULL pointer deref fix (tangzhenhao)
      
         - sr in_interrupt() removal (Sebastian Andrzej Siewior)
      
         - FC endpoint security support for s390/dasd (Jan Höppner, Sebastian
           Ott, Vineeth Vijayan). From the s390 arch guys, arch bits included
           as it made it easier for them to funnel the feature through the
           block driver tree.
      
         - Follow up fixes (Colin Ian King)"
      
      * tag 'for-5.11/drivers-2020-12-14' of git://git.kernel.dk/linux-block: (64 commits)
        block: drop dead assignments in loop_init()
        sr: Remove in_interrupt() usage in sr_init_command().
        sr: Switch the sector size back to 2048 if sr_read_sector() changed it.
        cdrom: Reset sector_size back it is not 2048.
        drivers/lightnvm: fix a null-ptr-deref bug in pblk-core.c
        null_blk: Move driver into its own directory
        null_blk: Allow controlling max_hw_sectors limit
        null_blk: discard zones on reset
        null_blk: cleanup discard handling
        null_blk: Improve implicit zone close
        null_blk: improve zone locking
        block: Align max_hw_sectors to logical blocksize
        null_blk: Fail zone append to conventional zones
        null_blk: Fix zone size initialization
        bcache: fix race between setting bdev state to none and new write request direct to backing
        block/rnbd: fix a null pointer dereference on dev->blk_symlink_name
        block/rnbd-clt: Dynamically alloc buffer for pathname & blk_symlink_name
        block/rnbd: call kobject_put in the failure path
        Documentation/ABI/rnbd-srv: add document for force_close
        block/rnbd-srv: close a mapped device from server side.
        ...
      69f637c3
    • Linus Torvalds's avatar
      Merge tag 'for-5.11/block-2020-12-14' of git://git.kernel.dk/linux-block · ac7ac461
      Linus Torvalds authored
      Pull block updates from Jens Axboe:
       "Another series of killing more code than what is being added, again
        thanks to Christoph's relentless cleanups and tech debt tackling.
      
        This contains:
      
         - blk-iocost improvements (Baolin Wang)
      
         - part0 iostat fix (Jeffle Xu)
      
         - Disable iopoll for split bios (Jeffle Xu)
      
         - block tracepoint cleanups (Christoph Hellwig)
      
         - Merging of struct block_device and hd_struct (Christoph Hellwig)
      
         - Rework/cleanup of how block device sizes are updated (Christoph
           Hellwig)
      
         - Simplification of gendisk lookup and removal of block device
           aliasing (Christoph Hellwig)
      
         - Block device ioctl cleanups (Christoph Hellwig)
      
         - Removal of bdget()/blkdev_get() as exported API (Christoph Hellwig)
      
         - Disk change rework, avoid ->revalidate_disk() (Christoph Hellwig)
      
         - sbitmap improvements (Pavel Begunkov)
      
         - Hybrid polling fix (Pavel Begunkov)
      
         - bvec iteration improvements (Pavel Begunkov)
      
         - Zone revalidation fixes (Damien Le Moal)
      
         - blk-throttle limit fix (Yu Kuai)
      
         - Various little fixes"
      
      * tag 'for-5.11/block-2020-12-14' of git://git.kernel.dk/linux-block: (126 commits)
        blk-mq: fix msec comment from micro to milli seconds
        blk-mq: update arg in comment of blk_mq_map_queue
        blk-mq: add helper allocating tagset->tags
        Revert "block: Fix a lockdep complaint triggered by request queue flushing"
        nvme-loop: use blk_mq_hctx_set_fq_lock_class to set loop's lock class
        blk-mq: add new API of blk_mq_hctx_set_fq_lock_class
        block: disable iopoll for split bio
        block: Improve blk_revalidate_disk_zones() checks
        sbitmap: simplify wrap check
        sbitmap: replace CAS with atomic and
        sbitmap: remove swap_lock
        sbitmap: optimise sbitmap_deferred_clear()
        blk-mq: skip hybrid polling if iopoll doesn't spin
        blk-iocost: Factor out the base vrate change into a separate function
        blk-iocost: Factor out the active iocgs' state check into a separate function
        blk-iocost: Move the usage ratio calculation to the correct place
        blk-iocost: Remove unnecessary advance declaration
        blk-iocost: Fix some typos in comments
        blktrace: fix up a kerneldoc comment
        block: remove the request_queue to argument request based tracepoints
        ...
      ac7ac461
    • Linus Torvalds's avatar
      Merge tag 'for-5.11/io_uring-2020-12-14' of git://git.kernel.dk/linux-block · 48aba79b
      Linus Torvalds authored
      Pull io_uring updates from Jens Axboe:
       "Fairly light set of changes this time around, and mostly some bits
        that were pushed out to 5.11 instead of 5.10, fixes/cleanups, and a
        few features. In particular:
      
         - Cleanups around iovec import (David Laight, Pavel)
      
         - Add timeout support for io_uring_enter(2), which enables us to
           clean up liburing and avoid a timeout sqe submission in the
           completion path.
      
           The big win here is that it allows setups that split SQ and CQ
           handling into separate threads to avoid locking, as the CQ side
           will no longer submit when timeouts are needed when waiting for
           events (Hao Xu)
      
         - Add support for socket shutdown, and renameat/unlinkat.
      
         - SQPOLL cleanups and improvements (Xiaoguang Wang)
      
         - Allow SQPOLL setups for CAP_SYS_NICE, and enable regular
           (non-fixed) files to be used.
      
         - Cancelation improvements (Pavel)
      
         - Fixed file reference improvements (Pavel)
      
         - IOPOLL related race fixes (Pavel)
      
         - Lots of other little fixes and cleanups (mostly Pavel)"
      
      * tag 'for-5.11/io_uring-2020-12-14' of git://git.kernel.dk/linux-block: (43 commits)
        io_uring: fix io_cqring_events()'s noflush
        io_uring: fix racy IOPOLL flush overflow
        io_uring: fix racy IOPOLL completions
        io_uring: always let io_iopoll_complete() complete polled io
        io_uring: add timeout update
        io_uring: restructure io_timeout_cancel()
        io_uring: fix files cancellation
        io_uring: use bottom half safe lock for fixed file data
        io_uring: fix miscounting ios_left
        io_uring: change submit file state invariant
        io_uring: check kthread stopped flag when sq thread is unparked
        io_uring: share fixed_file_refs b/w multiple rsrcs
        io_uring: replace inflight_wait with tctx->wait
        io_uring: don't take fs for recvmsg/sendmsg
        io_uring: only wake up sq thread while current task is in io worker context
        io_uring: don't acquire uring_lock twice
        io_uring: initialize 'timeout' properly in io_sq_thread()
        io_uring: refactor io_sq_thread() handling
        io_uring: always batch cancel in *cancel_files()
        io_uring: pass files into kill timeouts/poll
        ...
      48aba79b