1. 20 Sep, 2019 5 commits
  2. 19 Sep, 2019 8 commits
    • Anup Patel's avatar
      RISC-V: Enable VIRTIO drivers in RV64 and RV32 defconfig · 1cec0ce2
      Anup Patel authored
      This patch enables more VIRTIO drivers (such as console, rpmsg, 9p,
      rng, etc.) which are usable on KVM RISC-V Guest and Xvisor RISC-V
      Guest.
      Signed-off-by: default avatarAnup Patel <anup.patel@wdc.com>
      Acked-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      Reviewed-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      Reviewed-by: default avatarAlexander Graf <graf@amazon.com>
      Signed-off-by: default avatarPaul Walmsley <paul.walmsley@sifive.com>
      1cec0ce2
    • Greentime Hu's avatar
      RISC-V: Fix building error when CONFIG_SPARSEMEM_MANUAL=y · b6f2b2e6
      Greentime Hu authored
      Fix a build break by adjusting where VMALLOC_* and FIXADDR_* are
      defined.  This fixes the definition of the MEMMAP_* macros.
      
        CC      init/main.o
      In file included from ./include/linux/mm.h:99,
                       from ./include/linux/ring_buffer.h:5,
                       from ./include/linux/trace_events.h:6,
                       from ./include/trace/syscall.h:7,
                       from ./include/linux/syscalls.h:85,
                       from init/main.c:21:
      ./arch/riscv/include/asm/pgtable.h: In function ‘pmd_page’:
      ./arch/riscv/include/asm/pgtable.h:95:24: error: ‘VMALLOC_START’ undeclared (first use in this function); did you mean ‘VMEMMAP_START’?
       #define VMEMMAP_START (VMALLOC_START - VMEMMAP_SIZE)
                              ^~~~~~~~~~~~~
      
      Fixes: d95f1a54 ("RISC-V: Implement sparsemem")
      Signed-off-by: default avatarGreentime Hu <greentime.hu@sifive.com>
      [paul.walmsley@sifive.com: minor patch description fix]
      Signed-off-by: default avatarPaul Walmsley <paul.walmsley@sifive.com>
      b6f2b2e6
    • Yash Shah's avatar
      riscv: dts: Add DT support for SiFive FU540 PWM driver · b45e0c30
      Yash Shah authored
      Add the PWM DT node in SiFive FU540 soc-specific DT file.
      Enable the PWM nodes in HiFive Unleashed board-specific DT file.
      Signed-off-by: default avatarYash Shah <yash.shah@sifive.com>
      Cc: Palmer Dabbelt <palmer@sifive.com>
      [paul.walmsley@sifive.com: added chip-specific compatible string;
       dropped reg-names string from pwm1]
      Signed-off-by: default avatarPaul Walmsley <paul.walmsley@sifive.com>
      b45e0c30
    • Linus Torvalds's avatar
      Merge tag 'xfs-5.4-merge-7' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · b41dae06
      Linus Torvalds authored
      Pull xfs updates from Darrick Wong:
       "For this cycle we have the usual pile of cleanups and bug fixes, some
        performance improvements for online metadata scrubbing, massive
        speedups in the directory entry creation code, some performance
        improvement in the file ACL lookup code, a fix for a logging stall
        during mount, and fixes for concurrency problems.
      
        It has survived a couple of weeks of xfstests runs and merges cleanly.
      
        Summary:
      
         - Remove KM_SLEEP/KM_NOSLEEP.
      
         - Ensure that memory buffers for IO are properly sector-aligned to
           avoid problems that the block layer doesn't check.
      
         - Make the bmap scrubber more efficient in its record checking.
      
         - Don't crash xfs_db when superblock inode geometry is corrupt.
      
         - Fix btree key helper functions.
      
         - Remove unneeded error returns for things that can't fail.
      
         - Fix buffer logging bugs in repair.
      
         - Clean up iterator return values.
      
         - Speed up directory entry creation.
      
         - Enable allocation of xattr value memory buffer during lookup.
      
         - Fix readahead racing with truncate/punch hole.
      
         - Other minor cleanups.
      
         - Fix one AGI/AGF deadlock with RENAME_WHITEOUT.
      
         - More BUG -> WARN whackamole.
      
         - Fix various problems with the log failing to advance under certain
           circumstances, which results in stalls during mount"
      
      * tag 'xfs-5.4-merge-7' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (45 commits)
        xfs: push the grant head when the log head moves forward
        xfs: push iclog state cleaning into xlog_state_clean_log
        xfs: factor iclog state processing out of xlog_state_do_callback()
        xfs: factor callbacks out of xlog_state_do_callback()
        xfs: factor debug code out of xlog_state_do_callback()
        xfs: prevent CIL push holdoff in log recovery
        xfs: fix missed wakeup on l_flush_wait
        xfs: push the AIL in xlog_grant_head_wake
        xfs: Use WARN_ON_ONCE for bailout mount-operation
        xfs: Fix deadlock between AGI and AGF with RENAME_WHITEOUT
        xfs: define a flags field for the AG geometry ioctl structure
        xfs: add a xfs_valid_startblock helper
        xfs: remove the unused XFS_ALLOC_USERDATA flag
        xfs: cleanup xfs_fsb_to_db
        xfs: fix the dax supported check in xfs_ioctl_setattr_dax_invalidate
        xfs: Fix stale data exposure when readahead races with hole punch
        fs: Export generic_fadvise()
        mm: Handle MADV_WILLNEED through vfs_fadvise()
        xfs: allocate xattr buffer on demand
        xfs: consolidate attribute value copying
        ...
      b41dae06
    • Linus Torvalds's avatar
      Merge tag 'vfs-5.4-merge-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · e6bc9de7
      Linus Torvalds authored
      Pull swap access updates from Darrick Wong:
       "Prohibit writing to active swap files and swap partitions.
      
        There's no non-malicious use case for allowing userspace to scribble
        on storage that the kernel thinks it owns"
      
      * tag 'vfs-5.4-merge-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        vfs: don't allow writes to swap files
        mm: set S_SWAPFILE on blockdev swap devices
      e6bc9de7
    • Linus Torvalds's avatar
      Merge tag 'ovl-fixes-5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs · b6c0d357
      Linus Torvalds authored
      Pull overlayfs fixes from Miklos Szeredi:
       "Fix a regression in docker introduced by overlayfs changes in 4.19.
        Also fix a couple of miscellaneous bugs"
      
      * tag 'ovl-fixes-5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs:
        ovl: filter of trusted xattr results in audit
        ovl: Fix dereferencing possible ERR_PTR()
        ovl: fix regression caused by overlapping layers detection
      b6c0d357
    • Linus Torvalds's avatar
      Merge tag 'for-5.4-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux · 7d14df2d
      Linus Torvalds authored
      Pull btrfs updates from David Sterba:
       "This continues with work on code refactoring, sanity checks and space
        handling. There are some less user visible changes, nothing that would
        particularly stand out.
      
        User visible changes:
         - tree checker, more sanity checks of:
             - ROOT_ITEM (key, size, generation, level, alignment, flags)
             - EXTENT_ITEM and METADATA_ITEM checks (key, size, offset,
               alignment, refs)
             - tree block reference items
             - EXTENT_DATA_REF (key, hash, offset)
      
         - deprecate flag BTRFS_SUBVOL_CREATE_ASYNC for subvolume creation
           ioctl, scheduled removal in 5.7
      
         - delete stale and unused UAPI definitions
           BTRFS_DEV_REPLACE_ITEM_STATE_*
      
         - improved export of debugging information available via existing
           sysfs directory structure
      
         - try harder to delete relations between qgroups and allow to delete
           orphan entries
      
         - remove unreliable space checks before relocation starts
      
        Core:
         - space handling:
             - improved ticket reservations and other high level logic in
               order to remove special cases
             - factor flushing infrastructure and use it for different
               contexts, allows to remove some special case handling
             - reduce metadata reservation when only updating inodes
             - reduce global block reserve minimum size (affects small
               filesystems)
             - improved overcommit logic wrt global block reserve
      
         - tests:
             - fix memory leaks in extent IO tree
             - catch all TRIM range
      
        Fixes:
         - fix ENOSPC errors, leading to transaction aborts, when cloning
           extents
      
         - several fixes for inode number cache (mount option inode_cache)
      
         - fix potential soft lockups during send when traversing large trees
      
         - fix unaligned access to space cache pages with SLUB debug on
           (PowerPC)
      
        Other:
         - refactoring public/private functions, moving to new or more
           appropriate files
      
         - defines converted to enums
      
         - error handling improvements
      
         - more assertions and comments
      
         - old code deletion"
      
      * tag 'for-5.4-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux: (138 commits)
        btrfs: Relinquish CPUs in btrfs_compare_trees
        btrfs: Don't assign retval of btrfs_try_tree_write_lock/btrfs_tree_read_lock_atomic
        btrfs: create structure to encode checksum type and length
        btrfs: turn checksum type define into an enum
        btrfs: add enospc debug messages for ticket failure
        btrfs: do not account global reserve in can_overcommit
        btrfs: use btrfs_try_granting_tickets in update_global_rsv
        btrfs: always reserve our entire size for the global reserve
        btrfs: change the minimum global reserve size
        btrfs: rename btrfs_space_info_add_old_bytes
        btrfs: remove orig_bytes from reserve_ticket
        btrfs: fix may_commit_transaction to deal with no partial filling
        btrfs: rework wake_all_tickets
        btrfs: refactor the ticket wakeup code
        btrfs: stop partially refilling tickets when releasing space
        btrfs: add space reservation tracepoint for reserved bytes
        btrfs: roll tracepoint into btrfs_space_info_update helper
        btrfs: do not allow reservations if we have pending tickets
        btrfs: stop clearing EXTENT_DIRTY in inode I/O tree
        btrfs: treat RWF_{,D}SYNC writes as sync for CRCs
        ...
      7d14df2d
    • Linus Torvalds's avatar
      Merge tag 'afs-next-20190915' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs · 0bb73e42
      Linus Torvalds authored
      Pull AFS updates from David Howells:
       "Here's a set of patches for AFS. The first three are trivial, deleting
        unused symbols and rolling out a wrapper function.
      
        The fourth and fifth patches make use of the previously added RCU-safe
        request_key facility to allow afs_permission() and afs_d_revalidate()
        to attempt to operate without dropping out of RCU-mode pathwalk. Under
        certain conditions, such as conflict with another client, we still
        have to drop out anyway, take a lock and consult the server"
      
      * tag 'afs-next-20190915' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs:
        afs: Support RCU pathwalk
        afs: Provide an RCU-capable key lookup
        afs: Use afs_extract_discard() rather than iov_iter_discard()
        afs: remove unused variable 'afs_zero_fid'
        afs: remove unused variable 'afs_voltypes'
      0bb73e42
  3. 18 Sep, 2019 24 commits
    • Linus Torvalds's avatar
      Merge tag 'fsverity-for-linus' of git://git.kernel.org/pub/scm/fs/fscrypt/fscrypt · f60c55a9
      Linus Torvalds authored
      Pull fs-verity support from Eric Biggers:
       "fs-verity is a filesystem feature that provides Merkle tree based
        hashing (similar to dm-verity) for individual readonly files, mainly
        for the purpose of efficient authenticity verification.
      
        This pull request includes:
      
         (a) The fs/verity/ support layer and documentation.
      
         (b) fs-verity support for ext4 and f2fs.
      
        Compared to the original fs-verity patchset from last year, the UAPI
        to enable fs-verity on a file has been greatly simplified. Lots of
        other things were cleaned up too.
      
        fs-verity is planned to be used by two different projects on Android;
        most of the userspace code is in place already. Another userspace tool
        ("fsverity-utils"), and xfstests, are also available. e2fsprogs and
        f2fs-tools already have fs-verity support. Other people have shown
        interest in using fs-verity too.
      
        I've tested this on ext4 and f2fs with xfstests, both the existing
        tests and the new fs-verity tests. This has also been in linux-next
        since July 30 with no reported issues except a couple minor ones I
        found myself and folded in fixes for.
      
        Ted and I will be co-maintaining fs-verity"
      
      * tag 'fsverity-for-linus' of git://git.kernel.org/pub/scm/fs/fscrypt/fscrypt:
        f2fs: add fs-verity support
        ext4: update on-disk format documentation for fs-verity
        ext4: add fs-verity read support
        ext4: add basic fs-verity support
        fs-verity: support builtin file signatures
        fs-verity: add SHA-512 support
        fs-verity: implement FS_IOC_MEASURE_VERITY ioctl
        fs-verity: implement FS_IOC_ENABLE_VERITY ioctl
        fs-verity: add data verification hooks for ->readpages()
        fs-verity: add the hook for file ->setattr()
        fs-verity: add the hook for file ->open()
        fs-verity: add inode and superblock fields
        fs-verity: add Kconfig and the helper functions for hashing
        fs: uapi: define verity bit for FS_IOC_GETFLAGS
        fs-verity: add UAPI header
        fs-verity: add MAINTAINERS file entry
        fs-verity: add a documentation file
      f60c55a9
    • Linus Torvalds's avatar
      Merge tag 'fscrypt-for-linus' of git://git.kernel.org/pub/scm/fs/fscrypt/fscrypt · 734d1ed8
      Linus Torvalds authored
      Pull fscrypt updates from Eric Biggers:
       "This is a large update to fs/crypto/ which includes:
      
         - Add ioctls that add/remove encryption keys to/from a
           filesystem-level keyring.
      
           These fix user-reported issues where e.g. an encrypted home
           directory can break NetworkManager, sshd, Docker, etc. because they
           don't get access to the needed keyring. These ioctls also provide a
           way to lock encrypted directories that doesn't use the
           vm.drop_caches sysctl, so is faster, more reliable, and doesn't
           always need root.
      
         - Add a new encryption policy version ("v2") which switches to a more
           standard, secure, and flexible key derivation function, and starts
           verifying that the correct key was supplied before using it.
      
           The key derivation improvement is needed for its own sake as well
           as for ongoing feature work for which the current way is too
           inflexible.
      
        Work is in progress to update both Android and the 'fscrypt' userspace
        tool to use both these features. (Working patches are available and
        just need to be reviewed+merged.) Chrome OS will likely use them too.
      
        This has also been tested on ext4, f2fs, and ubifs with xfstests --
        both the existing encryption tests, and the new tests for this. This
        has also been in linux-next since Aug 16 with no reported issues. I'm
        also using an fscrypt v2-encrypted home directory on my personal
        desktop"
      
      * tag 'fscrypt-for-linus' of git://git.kernel.org/pub/scm/fs/fscrypt/fscrypt: (27 commits)
        ext4 crypto: fix to check feature status before get policy
        fscrypt: document the new ioctls and policy version
        ubifs: wire up new fscrypt ioctls
        f2fs: wire up new fscrypt ioctls
        ext4: wire up new fscrypt ioctls
        fscrypt: require that key be added when setting a v2 encryption policy
        fscrypt: add FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS ioctl
        fscrypt: allow unprivileged users to add/remove keys for v2 policies
        fscrypt: v2 encryption policy support
        fscrypt: add an HKDF-SHA512 implementation
        fscrypt: add FS_IOC_GET_ENCRYPTION_KEY_STATUS ioctl
        fscrypt: add FS_IOC_REMOVE_ENCRYPTION_KEY ioctl
        fscrypt: add FS_IOC_ADD_ENCRYPTION_KEY ioctl
        fscrypt: rename keyinfo.c to keysetup.c
        fscrypt: move v1 policy key setup to keysetup_v1.c
        fscrypt: refactor key setup code in preparation for v2 policies
        fscrypt: rename fscrypt_master_key to fscrypt_direct_key
        fscrypt: add ->ci_inode to fscrypt_info
        fscrypt: use FSCRYPT_* definitions, not FS_*
        fscrypt: use FSCRYPT_ prefix for uapi constants
        ...
      734d1ed8
    • Linus Torvalds's avatar
      Merge tag 'filelock-v5.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/jlayton/linux · d013cc80
      Linus Torvalds authored
      Pull file locking updates from Jeff Layton:
       "Just a couple of minor bugfixes, a revision to a tracepoint to account
        for some earlier changes to the internals, and a patch to add a
        pr_warn message when someone tries to mount a filesystem with '-o
        mand' on a kernel that has that support disabled"
      
      * tag 'filelock-v5.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/jlayton/linux:
        locks: fix a memory leak bug in __break_lease()
        locks: print a warning when mount fails due to lack of "mand" support
        locks: Fix procfs output for file leases
        locks: revise generic_add_lease tracepoint
      d013cc80
    • Linus Torvalds's avatar
      Merge branch 'work.mount-base' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · e170eb27
      Linus Torvalds authored
      Pull vfs mount API infrastructure updates from Al Viro:
       "Infrastructure bits of mount API conversions.
      
        The rest is more of per-filesystem updates and that will happen
        in separate pull requests"
      
      * 'work.mount-base' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        mtd: Provide fs_context-aware mount_mtd() replacement
        vfs: Create fs_context-aware mount_bdev() replacement
        new helper: get_tree_keyed()
        vfs: set fs_context::user_ns for reconfigure
      e170eb27
    • Linus Torvalds's avatar
      Merge branch 'work.dcache' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · b30d87cf
      Linus Torvalds authored
      Pull d_path fix from Al Viro:
       "Fix d_absolute_path() regression in the last cycle (felt by tomoyo,
        mostly)"
      
      * 'work.dcache' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        [PATCH] fix d_absolute_path() interplay with fsmount()
      b30d87cf
    • Linus Torvalds's avatar
      Merge branch 'work.namei' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 53e5e7a7
      Linus Torvalds authored
      Pull vfs namei updates from Al Viro:
       "Pathwalk-related stuff"
      
      [ Audit-related cleanups, misc simplifications, and easier to follow
        nd->root refcounts     - Linus ]
      
      * 'work.namei' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        devpts_pty_kill(): don't bother with d_delete()
        infiniband: don't bother with d_delete()
        hypfs: don't bother with d_delete()
        fs/namei.c: keep track of nd->root refcount status
        fs/namei.c: new helper - legitimize_root()
        kill the last users of user_{path,lpath,path_dir}()
        namei.h: get the comments on LOOKUP_... in sync with reality
        kill LOOKUP_NO_EVAL, don't bother including namei.h from audit.h
        audit_inode(): switch to passing AUDIT_INODE_...
        filename_mountpoint(): make LOOKUP_NO_EVAL unconditional there
        filename_lookup(): audit_inode() argument is always 0
      53e5e7a7
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next · 81160dda
      Linus Torvalds authored
      Pull networking updates from David Miller:
      
       1) Support IPV6 RA Captive Portal Identifier, from Maciej Żenczykowski.
      
       2) Use bio_vec in the networking instead of custom skb_frag_t, from
          Matthew Wilcox.
      
       3) Make use of xmit_more in r8169 driver, from Heiner Kallweit.
      
       4) Add devmap_hash to xdp, from Toke Høiland-Jørgensen.
      
       5) Support all variants of 5750X bnxt_en chips, from Michael Chan.
      
       6) More RTNL avoidance work in the core and mlx5 driver, from Vlad
          Buslov.
      
       7) Add TCP syn cookies bpf helper, from Petar Penkov.
      
       8) Add 'nettest' to selftests and use it, from David Ahern.
      
       9) Add extack support to drop_monitor, add packet alert mode and
          support for HW drops, from Ido Schimmel.
      
      10) Add VLAN offload to stmmac, from Jose Abreu.
      
      11) Lots of devm_platform_ioremap_resource() conversions, from
          YueHaibing.
      
      12) Add IONIC driver, from Shannon Nelson.
      
      13) Several kTLS cleanups, from Jakub Kicinski.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next: (1930 commits)
        mlxsw: spectrum_buffers: Add the ability to query the CPU port's shared buffer
        mlxsw: spectrum: Register CPU port with devlink
        mlxsw: spectrum_buffers: Prevent changing CPU port's configuration
        net: ena: fix incorrect update of intr_delay_resolution
        net: ena: fix retrieval of nonadaptive interrupt moderation intervals
        net: ena: fix update of interrupt moderation register
        net: ena: remove all old adaptive rx interrupt moderation code from ena_com
        net: ena: remove ena_restore_ethtool_params() and relevant fields
        net: ena: remove old adaptive interrupt moderation code from ena_netdev
        net: ena: remove code duplication in ena_com_update_nonadaptive_moderation_interval _*()
        net: ena: enable the interrupt_moderation in driver_supported_features
        net: ena: reimplement set/get_coalesce()
        net: ena: switch to dim algorithm for rx adaptive interrupt moderation
        net: ena: add intr_moder_rx_interval to struct ena_com_dev and use it
        net: phy: adin: implement Energy Detect Powerdown mode via phy-tunable
        ethtool: implement Energy Detect Powerdown support via phy-tunable
        xen-netfront: do not assume sk_buff_head list is empty in error handling
        s390/ctcm: Delete unnecessary checks before the macro call “dev_kfree_skb”
        net: ena: don't wake up tx queue when down
        drop_monitor: Better sanitize notified packets
        ...
      81160dda
    • Linus Torvalds's avatar
      Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 8b53c765
      Linus Torvalds authored
      Pull crypto updates from Herbert Xu:
       "API:
         - Add the ability to abort a skcipher walk.
      
        Algorithms:
         - Fix XTS to actually do the stealing.
         - Add library helpers for AES and DES for single-block users.
         - Add library helpers for SHA256.
         - Add new DES key verification helper.
         - Add surrounding bits for ESSIV generator.
         - Add accelerations for aegis128.
         - Add test vectors for lzo-rle.
      
        Drivers:
         - Add i.MX8MQ support to caam.
         - Add gcm/ccm/cfb/ofb aes support in inside-secure.
         - Add ofb/cfb aes support in media-tek.
         - Add HiSilicon ZIP accelerator support.
      
        Others:
         - Fix potential race condition in padata.
         - Use unbound workqueues in padata"
      
      * 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (311 commits)
        crypto: caam - Cast to long first before pointer conversion
        crypto: ccree - enable CTS support in AES-XTS
        crypto: inside-secure - Probe transform record cache RAM sizes
        crypto: inside-secure - Base RD fetchcount on actual RD FIFO size
        crypto: inside-secure - Base CD fetchcount on actual CD FIFO size
        crypto: inside-secure - Enable extended algorithms on newer HW
        crypto: inside-secure: Corrected configuration of EIP96_TOKEN_CTRL
        crypto: inside-secure - Add EIP97/EIP197 and endianness detection
        padata: remove cpu_index from the parallel_queue
        padata: unbind parallel jobs from specific CPUs
        padata: use separate workqueues for parallel and serial work
        padata, pcrypt: take CPU hotplug lock internally in padata_alloc_possible
        crypto: pcrypt - remove padata cpumask notifier
        padata: make padata_do_parallel find alternate callback CPU
        workqueue: require CPU hotplug read exclusion for apply_workqueue_attrs
        workqueue: unconfine alloc/apply/free_workqueue_attrs()
        padata: allocate workqueue internally
        arm64: dts: imx8mq: Add CAAM node
        random: Use wait_event_freezable() in add_hwgenerator_randomness()
        crypto: ux500 - Fix COMPILE_TEST warnings
        ...
      8b53c765
    • Linus Torvalds's avatar
      Merge tag 'char-misc-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 6cfae0c2
      Linus Torvalds authored
      Pull char/misc driver updates from Greg KH:
       "Here is the big char/misc driver pull request for 5.4-rc1.
      
        As has been happening in previous releases, more and more individual
        driver subsystem trees are ending up in here. Now if that is good or
        bad I can't tell, but hopefully it makes your life easier as it's more
        of an aggregation of trees together to one merge point for you.
      
        Anyway, lots of stuff in here:
           - habanalabs driver updates
           - thunderbolt driver updates
           - misc driver updates
           - coresight and intel_th hwtracing driver updates
           - fpga driver updates
           - extcon driver updates
           - some dma driver updates
           - char driver updates
           - android binder driver updates
           - nvmem driver updates
           - phy driver updates
           - parport driver fixes
           - pcmcia driver fix
           - uio driver updates
           - w1 driver updates
           - configfs fixes
           - other assorted driver updates
      
        All of these have been in linux-next for a long time with no reported
        issues"
      
      * tag 'char-misc-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (200 commits)
        misc: mic: Use PTR_ERR_OR_ZERO rather than its implementation
        habanalabs: correctly cast variable to __le32
        habanalabs: show correct id in error print
        habanalabs: stop using the acronym KMD
        habanalabs: display card name as sensors header
        habanalabs: add uapi to retrieve aggregate H/W events
        habanalabs: add uapi to retrieve device utilization
        habanalabs: Make the Coresight timestamp perpetual
        habanalabs: explicitly set the queue-id enumerated numbers
        habanalabs: print to kernel log when reset is finished
        habanalabs: replace __le32_to_cpu with le32_to_cpu
        habanalabs: replace __cpu_to_le32/64 with cpu_to_le32/64
        habanalabs: Handle HW_IP_INFO if device disabled or in reset
        habanalabs: Expose devices after initialization is done
        habanalabs: improve security in Debug IOCTL
        habanalabs: use default structure for user input in Debug IOCTL
        habanalabs: Add descriptive name to PSOC app status register
        habanalabs: Add descriptive names to PSOC scratch-pad registers
        habanalabs: create two char devices per ASIC
        habanalabs: change device_setup_cdev() to be more generic
        ...
      6cfae0c2
    • Linus Torvalds's avatar
      Merge tag 'staging-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · e6874fc2
      Linus Torvalds authored
      Pull staging and IIO driver updates from Greg KH:
       "Here is the big staging/iio driver update for 5.4-rc1.
      
        Lots of churn here, with a few driver/filesystems moving out of
        staging finally:
      
           - erofs moved out of staging
      
           - greybus core code moved out of staging
      
        Along with that, a new filesytem has been added:
      
           - extfat
      
        to provide support for those devices requiring that filesystem (i.e.
        transfer devices to/from windows systems or printers)
      
        Other than that, there a number of new IIO drivers, and lots and lots
        and lots of staging driver cleanups and minor fixes as people continue
        to dig into those for easy changes.
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'staging-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (453 commits)
        Staging: gasket: Use temporaries to reduce line length.
        Staging: octeon: Avoid several usecases of strcpy
        staging: vhciq_core: replace snprintf with scnprintf
        staging: wilc1000: avoid twice IRQ handler execution for each single interrupt
        staging: wilc1000: remove unused interrupt status handling code
        staging: fbtft: make several arrays static const, makes object smaller
        staging: rtl8188eu: make two arrays static const, makes object smaller
        staging: rtl8723bs: core: Remove Macro "IS_MAC_ADDRESS_BROADCAST"
        dt-bindings: anybus-controller: move to staging/ tree
        staging: emxx_udc: remove local TRUE/FALSE definition
        staging: wilc1000: look for rtc_clk clock
        staging: dt-bindings: wilc1000: add optional rtc_clk property
        staging: nvec: make use of devm_platform_ioremap_resource
        staging: exfat: drop unused function parameter
        Staging: exfat: Avoid use of strcpy
        staging: exfat: use integer constants
        staging: exfat: cleanup spacing for casts
        staging: exfat: cleanup spacing for operators
        staging: rtl8723bs: hal: remove redundant variable n
        staging: pi433: Fix typo in documentation
        ...
      e6874fc2
    • Linus Torvalds's avatar
      Merge tag 'tty-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · e444d51b
      Linus Torvalds authored
      Pull tty/serial driver updates from Greg KH:
       "Even in this age, people are still making new serial port silicon,
        why...
      
        Anyway, here's the TTY and Serial driver update for 5.4-rc1. Lots of
        changes in here for a number of embedded serial port devices that are
        being worked on because people really like to see those console
        logs...
      
        Other than that, nothing major here, no core tty changes that anyone
        should care about.
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'tty-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (125 commits)
        serial: tegra: Add PIO mode support
        serial: tegra: report clk rate errors
        serial: tegra: add support to adjust baud rate
        serial: tegra: DT for Adjusted baud rates
        serial: tegra: add support to use 8 bytes trigger
        serial: tegra: set maximum num of uart ports to 8
        serial: tegra: check for FIFO mode enabled status
        dt-binding: serial: tegra: add new chips
        serial: tegra: report error to upper tty layer
        serial: tegra: flush the RX fifo on frame error
        serial: tegra: avoid reg access when clk disabled
        serial: tegra: add support to ignore read
        serial: sprd: correct the wrong sequence of arguments
        dt-bindings: serial: Convert riscv,sifive-serial to json-schema
        serial: max310x: turn off transmitter before activating AutoCTS or auto transmitter flow control
        serial: max310x: Properly set flags in AutoCTS mode
        tty: serial: fix platform_no_drv_owner.cocci warnings
        dt-bindings: serial: Document Freescale LINFlexD UART
        serial: fsl_linflexuart: Update compatible string
        tty: n_gsm: avoid recursive locking with async port hangup
        ...
      e444d51b
    • Linus Torvalds's avatar
      Merge tag 'usb-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · c6b48dad
      Linus Torvalds authored
      Pull USB updates from Greg KH:
       "Here is the big set of USB patches for 5.4-rc1.
      
        Two major chunks of code are moving out of the tree and into the
        staging directory, uwb and wusb (wireless USB support), because there
        are no devices that actually use this protocol anymore, and what we
        have today probably doesn't work at all given that the maintainers
        left many many years ago. So move it to staging where it will be
        removed in a few releases if no one screams.
      
        Other than that, lots of little things. The usual gadget and xhci and
        usb serial driver updates, along with a bunch of sysfs file cleanups
        due to the driver core changes to support that. Nothing really major,
        just constant forward progress.
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'usb-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (159 commits)
        USB: usbcore: Fix slab-out-of-bounds bug during device reset
        usb: cdns3: Remove redundant dev_err call in cdns3_probe()
        USB: rio500: Fix lockdep violation
        USB: rio500: simplify locking
        usb: mtu3: register a USB Role Switch for dual role mode
        usb: common: add USB GPIO based connection detection driver
        usb: common: create Kconfig file
        usb: roles: get usb-role-switch from parent
        usb: roles: Add fwnode_usb_role_switch_get() function
        device connection: Add fwnode_connection_find_match()
        usb: roles: Introduce stubs for the exiting functions in role.h
        dt-bindings: usb: mtu3: add properties about USB Role Switch
        dt-bindings: usb: add binding for USB GPIO based connection detection driver
        dt-bindings: connector: add optional properties for Type-B
        dt-binding: usb: add usb-role-switch property
        usbip: Implement SG support to vhci-hcd and stub driver
        usb: roles: intel: Enable static DRD mode for role switch
        xhci-ext-caps.c: Add property to disable Intel SW switch
        usb: dwc3: remove generic PHY calibrate() calls
        usb: core: phy: add support for PHY calibration
        ...
      c6b48dad
    • Linus Torvalds's avatar
      Merge tag 'driver-core-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core · 1f7d290a
      Linus Torvalds authored
      Pull driver core updates from Greg Kroah-Hartman:
       "Here is the big driver core update for 5.4-rc1.
      
        There was a bit of a churn in here, with a number of core and OF
        platform patches being added to the tree, and then after much
        discussion and review and a day-long in-person meeting, they were
        decided to be reverted and a new set of patches is currently being
        reviewed on the mailing list.
      
        Other than that churn, there are two "persistent" branches in here
        that other trees will be pulling in as well during the merge window.
        One branch to add support for drivers to have the driver core
        automatically add sysfs attribute files when a driver is bound to a
        device so that the driver doesn't have to manually do it (and then
        clean it up, as it always gets it wrong).
      
        There's another branch in here for generic lookup helpers for the
        driver core that lots of busses are starting to use. That's the
        majority of the non-driver-core changes in this patch series.
      
        There's also some on-going debugfs file creation cleanup that has been
        slowly happening over the past few releases, with the goal to
        hopefully get that done sometime next year.
      
        All of these have been in linux-next for a while now with no reported
        issues"
      
      [ Note that the above-mentioned generic lookup helpers branch was
        already brought in by the LED merge (commit 4feaab05) that had
        shared it.
      
        Also note that that common branch introduced an i2c bug due to a bad
        conversion, which got fixed here. - Linus ]
      
      * tag 'driver-core-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (49 commits)
        coccinelle: platform_get_irq: Fix parse error
        driver-core: add include guard to linux/container.h
        sysfs: add BIN_ATTR_WO() macro
        driver core: platform: Export platform_get_irq_optional()
        hwmon: pwm-fan: Use platform_get_irq_optional()
        driver core: platform: Introduce platform_get_irq_optional()
        Revert "driver core: Add support for linking devices during device addition"
        Revert "driver core: Add edit_links() callback for drivers"
        Revert "of/platform: Add functional dependency link from DT bindings"
        Revert "driver core: Add sync_state driver/bus callback"
        Revert "of/platform: Pause/resume sync state during init and of_platform_populate()"
        Revert "of/platform: Create device links for all child-supplier depencencies"
        Revert "of/platform: Don't create device links for default busses"
        Revert "of/platform: Fix fn definitons for of_link_is_valid() and of_link_property()"
        Revert "of/platform: Fix device_links_supplier_sync_state_resume() warning"
        Revert "of/platform: Disable generic device linking code for PowerPC"
        devcoredump: fix typo in comment
        devcoredump: use memory_read_from_buffer
        of/platform: Disable generic device linking code for PowerPC
        device.h: Fix warnings for mismatched parameter names in comments
        ...
      1f7d290a
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · fe38bd68
      Linus Torvalds authored
      Pull KVM updates from Paolo Bonzini:
       "s390:
         - ioctl hardening
         - selftests
      
        ARM:
         - ITS translation cache
         - support for 512 vCPUs
         - various cleanups and bugfixes
      
        PPC:
         - various minor fixes and preparation
      
        x86:
         - bugfixes all over the place (posted interrupts, SVM, emulation
           corner cases, blocked INIT)
         - some IPI optimizations"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (75 commits)
        KVM: X86: Use IPI shorthands in kvm guest when support
        KVM: x86: Fix INIT signal handling in various CPU states
        KVM: VMX: Introduce exit reason for receiving INIT signal on guest-mode
        KVM: VMX: Stop the preemption timer during vCPU reset
        KVM: LAPIC: Micro optimize IPI latency
        kvm: Nested KVM MMUs need PAE root too
        KVM: x86: set ctxt->have_exception in x86_decode_insn()
        KVM: x86: always stop emulation on page fault
        KVM: nVMX: trace nested VM-Enter failures detected by H/W
        KVM: nVMX: add tracepoint for failed nested VM-Enter
        x86: KVM: svm: Fix a check in nested_svm_vmrun()
        KVM: x86: Return to userspace with internal error on unexpected exit reason
        KVM: x86: Add kvm_emulate_{rd,wr}msr() to consolidate VXM/SVM code
        KVM: x86: Refactor up kvm_{g,s}et_msr() to simplify callers
        doc: kvm: Fix return description of KVM_SET_MSRS
        KVM: X86: Tune PLE Window tracepoint
        KVM: VMX: Change ple_window type to unsigned int
        KVM: X86: Remove tailing newline for tracepoints
        KVM: X86: Trace vcpu_id for vmexit
        KVM: x86: Manually calculate reserved bits when loading PDPTRS
        ...
      fe38bd68
    • Linus Torvalds's avatar
      Merge tag 'for-linus-urgent' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 404e634f
      Linus Torvalds authored
      Pull KVM fix from Paolo Bonzini:
       "Fix missing bounds-checking in coalesced_mmio (CVE-2019-14821)"
      
      * tag 'for-linus-urgent' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: coalesced_mmio: add bounds checking
      404e634f
    • Matt Delco's avatar
      KVM: coalesced_mmio: add bounds checking · b60fe990
      Matt Delco authored
      The first/last indexes are typically shared with a user app.
      The app can change the 'last' index that the kernel uses
      to store the next result.  This change sanity checks the index
      before using it for writing to a potentially arbitrary address.
      
      This fixes CVE-2019-14821.
      
      Cc: stable@vger.kernel.org
      Fixes: 5f94c174 ("KVM: Add coalesced MMIO support (common part)")
      Signed-off-by: default avatarMatt Delco <delco@chromium.org>
      Signed-off-by: default avatarJim Mattson <jmattson@google.com>
      Reported-by: syzbot+983c866c3dd6efa3662a@syzkaller.appspotmail.com
      [Use READ_ONCE. - Paolo]
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      b60fe990
    • Linus Torvalds's avatar
      Merge tag 'devprop-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 35f7a952
      Linus Torvalds authored
      Pull device properties framework updates from Rafael Wysocki:
       "Improve software node support (Heikki Krogerus) and clean up two
        assorted pieces of code (Andy Shevchenko, Geert Uytterhoeven)"
      
      * tag 'devprop-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        software node: Initialize the return value in software_node_find_by_name()
        software node: Initialize the return value in software_node_to_swnode()
        ACPI / property: Fix acpi_graph_get_remote_endpoint() name in kerneldoc
        device property: Remove duplicate test for NULL
        platform/x86: intel_cht_int33fe: Use new API to gain access to the role switch
        usb: roles: intel_xhci: Supplying software node for the role mux
        software node: Add software_node_find_by_name()
      35f7a952
    • Linus Torvalds's avatar
      Merge tag 'acpi-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · d2aaa49e
      Linus Torvalds authored
      Pull ACPI updates from Rafael Wysocki:
       "These include an ACPICA update (to upstream revision 20190816),
        improvements of support for memory hot-add in the HMAT handling code
        and some assorted fixes and cleanups.
      
        Specifics:
      
         - Update the ACPICA code in the kernel to upstream revision 20190816
           including:
            * Internal limits change to support larger systems (Bob Moore).
            * Macros clean up (Bob Moore).
            * printf format string fixes (Bob Moore).
            * Full deployment of the ACPI_PRINTF_LIKE macro (Bob Moore).
            * Tools improvements (Bob Moore, Colin Ian King).
            * Windows _OSI support fixes (Jung-uk Kim).
      
         - Improve memory hot-add support in the ACPI HMAT handling code (Dan
           Williams, Keith Busch).
      
         - Fix the ACPI LPSS (Low-Power Subsystem) driver for Intel SoCs to
           save and restore private registers during system-wide suspend and
           resume on systems with the Lynxpoint PCH (Jarkko Nikula).
      
         - Convert the ACPI documentation related to LEDs to ReST (Sakari
           Ailus).
      
         - Fix assorted issues and make assorted minor improvements in the
           ACPI-related code (Al Stone, Andy Shevchenko, Jiri Slaby, Kelsey
           Skunberg, Krzysztof Wilczynski, Liguang Zhang, Wenwen Wang,
           YueHaibing)"
      
      * tag 'acpi-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (23 commits)
        ACPI / PCI: fix acpi_pci_irq_enable() memory leak
        ACPI: custom_method: fix memory leaks
        ACPI: thermal: Remove redundant acpi_has_method() calls
        ACPI / CPPC: do not require the _PSD method
        ACPI: SBS: remove unused const variable 'SMBUS_PEC'
        ACPI / LPSS: Save/restore LPSS private registers also on Lynxpoint
        ACPI/PCI: Remove surplus parentheses from a return statement
        ACPICA: Update version to 20190816.
        ACPICA: Add "Windows 2019" string to _OSI support.
        ACPICA: Differentiate Windows 8.1 from Windows 8.
        ACPICA: Fully deploy ACPI_PRINTF_LIKE macro
        ACPICA: iASL,acpi_dump: Improve y/n query
        ACPICA: Fix issues with arg types within printf format strings
        ACPICA: Macros: remove pointer math on a null pointer
        ACPICA: Increase total number of possible Owner IDs
        ACPICA: Debugger: remove redundant assignment on obj_desc
        Documentation: ACPI: DSD: Convert LED documentation to ReST
        ACPI / APEI: Release resources if gen_pool_add() fails
        HMAT: Skip publishing target info for nodes with no online memory
        HMAT: Register attributes for memory hot add
        ...
      d2aaa49e
    • Linus Torvalds's avatar
      Merge tag 'pm-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 77dcfe2b
      Linus Torvalds authored
      Pull power management updates from Rafael Wysocki:
       "These include a rework of the main suspend-to-idle code flow (related
        to the handling of spurious wakeups), a switch over of several users
        of cpufreq notifiers to QoS-based limits, a new devfreq driver for
        Tegra20, a new cpuidle driver and governor for virtualized guests, an
        extension of the wakeup sources framework to expose wakeup sources as
        device objects in sysfs, and more.
      
        Specifics:
      
         - Rework the main suspend-to-idle control flow to avoid repeating
           "noirq" device resume and suspend operations in case of spurious
           wakeups from the ACPI EC and decouple the ACPI EC wakeups support
           from the LPS0 _DSM support (Rafael Wysocki).
      
         - Extend the wakeup sources framework to expose wakeup sources as
           device objects in sysfs (Tri Vo, Stephen Boyd).
      
         - Expose system suspend statistics in sysfs (Kalesh Singh).
      
         - Introduce a new haltpoll cpuidle driver and a new matching governor
           for virtualized guests wanting to do guest-side polling in the idle
           loop (Marcelo Tosatti, Joao Martins, Wanpeng Li, Stephen Rothwell).
      
         - Fix the menu and teo cpuidle governors to allow the scheduler tick
           to be stopped if PM QoS is used to limit the CPU idle state exit
           latency in some cases (Rafael Wysocki).
      
         - Increase the resolution of the play_idle() argument to microseconds
           for more fine-grained injection of CPU idle cycles (Daniel
           Lezcano).
      
         - Switch over some users of cpuidle notifiers to the new QoS-based
           frequency limits and drop the CPUFREQ_ADJUST and CPUFREQ_NOTIFY
           policy notifier events (Viresh Kumar).
      
         - Add new cpufreq driver based on nvmem for sun50i (Yangtao Li).
      
         - Add support for MT8183 and MT8516 to the mediatek cpufreq driver
           (Andrew-sh.Cheng, Fabien Parent).
      
         - Add i.MX8MN support to the imx-cpufreq-dt cpufreq driver (Anson
           Huang).
      
         - Add qcs404 to cpufreq-dt-platdev blacklist (Jorge Ramirez-Ortiz).
      
         - Update the qcom cpufreq driver (among other things, to make it
           easier to extend and to use kryo cpufreq for other nvmem-based
           SoCs) and add qcs404 support to it (Niklas Cassel, Douglas
           RAILLARD, Sibi Sankar, Sricharan R).
      
         - Fix assorted issues and make assorted minor improvements in the
           cpufreq code (Colin Ian King, Douglas RAILLARD, Florian Fainelli,
           Gustavo Silva, Hariprasad Kelam).
      
         - Add new devfreq driver for NVidia Tegra20 (Dmitry Osipenko, Arnd
           Bergmann).
      
         - Add new Exynos PPMU events to devfreq events and extend that
           mechanism (Lukasz Luba).
      
         - Fix and clean up the exynos-bus devfreq driver (Kamil Konieczny).
      
         - Improve devfreq documentation and governor code, fix spelling typos
           in devfreq (Ezequiel Garcia, Krzysztof Kozlowski, Leonard Crestez,
           MyungJoo Ham, Gaël PORTAY).
      
         - Add regulators enable and disable to the OPP (operating performance
           points) framework (Kamil Konieczny).
      
         - Update the OPP framework to support multiple opp-suspend properties
           (Anson Huang).
      
         - Fix assorted issues and make assorted minor improvements in the OPP
           code (Niklas Cassel, Viresh Kumar, Yue Hu).
      
         - Clean up the generic power domains (genpd) framework (Ulf Hansson).
      
         - Clean up assorted pieces of power management code and documentation
           (Akinobu Mita, Amit Kucheria, Chuhong Yuan).
      
         - Update the pm-graph tool to version 5.5 including multiple fixes
           and improvements (Todd Brandt).
      
         - Update the cpupower utility (Benjamin Weis, Geert Uytterhoeven,
           Sébastien Szymanski)"
      
      * tag 'pm-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (126 commits)
        cpuidle-haltpoll: Enable kvm guest polling when dedicated physical CPUs are available
        cpuidle-haltpoll: do not set an owner to allow modunload
        cpuidle-haltpoll: return -ENODEV on modinit failure
        cpuidle-haltpoll: set haltpoll as preferred governor
        cpuidle: allow governor switch on cpuidle_register_driver()
        PM: runtime: Documentation: add runtime_status ABI document
        pm-graph: make setVal unbuffered again for python2 and python3
        powercap: idle_inject: Use higher resolution for idle injection
        cpuidle: play_idle: Increase the resolution to usec
        cpuidle-haltpoll: vcpu hotplug support
        cpufreq: Add qcs404 to cpufreq-dt-platdev blacklist
        cpufreq: qcom: Add support for qcs404 on nvmem driver
        cpufreq: qcom: Refactor the driver to make it easier to extend
        cpufreq: qcom: Re-organise kryo cpufreq to use it for other nvmem based qcom socs
        dt-bindings: opp: Add qcom-opp bindings with properties needed for CPR
        dt-bindings: opp: qcom-nvmem: Support pstates provided by a power domain
        Documentation: cpufreq: Update policy notifier documentation
        cpufreq: Remove CPUFREQ_ADJUST and CPUFREQ_NOTIFY policy notifier events
        PM / Domains: Verify PM domain type in dev_pm_genpd_set_performance_state()
        PM / Domains: Simplify genpd_lookup_dev()
        ...
      77dcfe2b
    • Linus Torvalds's avatar
      Merge tag 'dmaengine-5.4-rc1' of git://git.infradead.org/users/vkoul/slave-dma · 04cbfba6
      Linus Torvalds authored
      Pull dmaengine updates from Vinod Koul:
      
       - Move Dmaengine DT bindings to YAML and convert Allwinner to schema.
      
       - FSL dma device_synchronize implementation
      
       - DW split acpi and of helpers and updates to driver and support for
         Elkhart Lake
      
       - Move filter fn as private for omap-dma and edma drivers and
         improvements to these drivers
      
       - Mark expected switch fall-through in couple of drivers
      
       - Renames of shdma and nbpfaxi binding document
      
       - Minor updates to bunch of drivers
      
      * tag 'dmaengine-5.4-rc1' of git://git.infradead.org/users/vkoul/slave-dma: (55 commits)
        dmaengine: ti: edma: Use bitmap_set() instead of open coded edma_set_bits()
        dmaengine: ti: edma: Only reset region0 access registers
        dmaengine: ti: edma: Do not reset reserved paRAM slots
        dmaengine: iop-adma.c: fix printk format warning
        dmaengine: stm32-dma: Use struct_size() helper
        dt-bindings: dmaengine: dma-common: Fix the dma-channel-mask property
        dmanegine: ioat/dca: Use struct_size() helper
        dmaengine: iop-adma: remove set but not used variable 'slots_per_op'
        dmaengine: dmatest: Add support for completion polling
        dmaengine: ti: omap-dma: Remove variable override in omap_dma_tx_status()
        dmaengine: ti: omap-dma: Remove 'Assignment in if condition'
        dmaengine: ti: edma: Remove 'Assignment in if condition'
        dmaengine: dw: platform: Split OF helpers to separate module
        dmaengine: dw: platform: Split ACPI helpers to separate module
        dmaengine: dw: platform: Move handle check to dw_dma_acpi_controller_register()
        dmaengine: dw: platform: Switch to acpi_dma_controller_register()
        dmaengine: dw: platform: Use devm_platform_ioremap_resource()
        dmaengine: dw: platform: Enable iDMA 32-bit on Intel Elkhart Lake
        dmaengine: dw: platform: Use struct dw_dma_chip_pdata
        dmaengine: dw: Export struct dw_dma_chip_pdata for wider use
        ...
      04cbfba6
    • Linus Torvalds's avatar
      Merge tag 'leds-for-5.4-rc1' of... · 4feaab05
      Linus Torvalds authored
      Merge tag 'leds-for-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds
      
      Pull LED updates from Jacek Anaszewski:
       "In this cycle we've finally managed to contribute the patch set
        sorting out LED naming issues. Besides that there are many changes
        scattered among various LED class drivers and triggers.
      
        LED naming related improvements:
      
         - add new 'function' and 'color' fwnode properties and deprecate
           'label' property which has been frequently abused for conveying
           vendor specific names that have been available in sysfs anyway
      
         - introduce a set of standard LED_FUNCTION* definitions
      
         - introduce a set of standard LED_COLOR_ID* definitions
      
         - add a new {devm_}led_classdev_register_ext() API with the
           capability of automatic LED name composition basing on the
           properties available in the passed fwnode; the function is
           backwards compatible in a sense that it uses 'label' data, if
           present in the fwnode, for creating LED name
      
         - add tools/leds/get_led_device_info.sh script for retrieving LED
           vendor, product and bus names, if applicable; it also performs
           basic validation of an LED name
      
         - update following drivers and their DT bindings to use the new LED
           registration API:
      
              - leds-an30259a, leds-gpio, leds-as3645a, leds-aat1290, leds-cr0014114,
                leds-lm3601x, leds-lm3692x, leds-lp8860, leds-lt3593, leds-sc27xx-blt
      
        Other LED class improvements:
      
         - replace {devm_}led_classdev_register() macros with inlines
      
         - allow to call led_classdev_unregister() unconditionally
      
         - switch to use fwnode instead of be stuck with OF one
      
        LED triggers improvements:
      
         - led-triggers:
              - fix dereferencing of null pointer
              - fix a memory leak bug
      
         - ledtrig-gpio:
              - GPIO 0 is valid
      
        Drop superseeded apu2/3 support from leds-apu since for apu2+ a newer,
        more complete driver exists, based on a generic driver for the AMD
        SOCs gpio-controller, supporting LEDs as well other devices:
      
         - drop profile field from priv data
      
         - drop iosize field from priv data
      
         - drop enum_apu_led_platform_types
      
         - drop superseeded apu2/3 led support
      
         - add pr_fmt prefix for better log output
      
         - fix error message on probing failure
      
        Other misc fixes and improvements to existing LED class drivers:
      
         - leds-ns2, leds-max77650:
              - add of_node_put() before return
      
         - leds-pwm, leds-is31fl32xx:
              - use struct_size() helper
      
         - leds-lm3697, leds-lm36274, leds-lm3532:
              - switch to use fwnode_property_count_uXX()
      
         - leds-lm3532:
              - fix brightness control for i2c mode
              - change the define for the fs current register
              - fixes for the driver for stability
              - add full scale current configuration
              - dt: Add property for full scale current.
              - avoid potentially unpaired regulator calls
              - move static keyword to the front of declarations
              - fix optional led-max-microamp prop error handling
      
         - leds-max77650:
              - add of_node_put() before return
              - add MODULE_ALIAS()
              - Switch to fwnode property API
      
         - leds-as3645a:
              - fix misuse of strlcpy
      
         - leds-netxbig:
              - add of_node_put() in netxbig_leds_get_of_pdata()
              - remove legacy board-file support
      
         - leds-is31fl319x:
              - simplify getting the adapter of a client
      
         - leds-ti-lmu-common:
              - fix coccinelle issue
              - move static keyword to the front of declaration
      
         - leds-syscon:
              - use resource managed variant of device register
      
         - leds-ktd2692:
              - fix a typo in the name of a constant
      
         - leds-lp5562:
              - allow firmware files up to the maximum length
      
         - leds-an30259a:
              - fix typo
      
         - leds-pca953x:
              - include the right header"
      
      * tag 'leds-for-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds: (72 commits)
        leds: lm3532: Fix optional led-max-microamp prop error handling
        led: triggers: Fix dereferencing of null pointer
        leds: ti-lmu-common: Move static keyword to the front of declaration
        leds: lm3532: Move static keyword to the front of declarations
        leds: trigger: gpio: GPIO 0 is valid
        leds: pwm: Use struct_size() helper
        leds: is31fl32xx: Use struct_size() helper
        leds: ti-lmu-common: Fix coccinelle issue in TI LMU
        leds: lm3532: Avoid potentially unpaired regulator calls
        leds: syscon: Use resource managed variant of device register
        leds: Replace {devm_}led_classdev_register() macros with inlines
        leds: Allow to call led_classdev_unregister() unconditionally
        leds: lm3532: Add full scale current configuration
        dt: lm3532: Add property for full scale current.
        leds: lm3532: Fixes for the driver for stability
        leds: lm3532: Change the define for the fs current register
        leds: lm3532: Fix brightness control for i2c mode
        leds: Switch to use fwnode instead of be stuck with OF one
        leds: max77650: Switch to fwnode property API
        led: triggers: Fix a memory leak bug
        ...
      4feaab05
    • Linus Torvalds's avatar
      Merge tag 'media/v5.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · e7345f92
      Linus Torvalds authored
      Pull media updates from Mauro Carvalho Chehab:
      
       - a new sensor driver for ov5675
      
       - a new platform driver for Allwinner A10 sensor interface
      
       - some new remote controller keymaps
      
       - some cosmetic changes at V4L2 core in order to avoid #ifdefs and to
         merge two core modules into one
      
       - removal of bcm2048 radio driver from staging
      
       - removal of davinci_vpfe video driver from staging
      
       - regression fix since Kernel 5.1 at the legacy VideoBuffer version 1
         core
      
       - added some documentation for remote controller protocols
      
       - pixel format documentation was split on two files
      
       - lots of other driver improvements and cleanups
      
      * tag 'media/v5.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (321 commits)
        media: videobuf-core.c: poll_wait needs a non-NULL buf pointer
        media: sun4i: Make sun4i_csi_formats static
        media: imx: remove unused including <linux/version.h>
        media: stm32-dcmi: Delete an unnecessary of_node_put() call in dcmi_probe()
        media: pvrusb2: qctrl.flag will be uninitlaized if cx2341x_ctrl_query() returns error code
        media: em28xx: Fix exception handling in em28xx_alloc_urbs()
        media: don't do a 31 bit shift on a signed int
        media: use the BIT() macro
        media: ov9650: add a sanity check
        media: aspeed-video: address a protential usage of an unitialized var
        media: vicodec: make life easier for static analyzers
        media: remove include stdarg.h from some drivers
        v4l2-core: fix coding style for the two new c files
        media: v4l2-core: Remove BUG() from i2c and spi helpers
        media: v4l2-core: introduce a helper to unregister a i2c subdev
        media: v4l2-core: introduce a helper to unregister a spi subdev
        media: v4l2-core: move i2c helpers out of v4l2-common.c
        media: v4l2-core: move spi helpers out of v4l2-common.c
        media: v4l2-core: Module re-organization
        media: usbvision: Remove dead code
        ...
      e7345f92
    • Linus Torvalds's avatar
      Merge tag 'sound-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 6ab8ad31
      Linus Torvalds authored
      Pull sound updates from Takashi Iwai:
       "As shown in diffstat and logs, it was again a busy development cycle
        at this time, too. The most significant changes are still on-going
        refactoring / modernization works for ASoC core and drivers, but there
        are lots of other changes as well. Here we go, some highlights below:
      
        ASoC:
      
         - Quite a lot of cleanup / refactoring of ASoC core and APIs; most of
           them are systematic, but also including cleanups and modernization
      
         - A bulk of updates for some ASoC platforms, Freescale, sunxi and
           Intel SST/SOF
      
         - Initial support for Sound Open Firmware on i.MX8
      
         - Removal of deprecated w90x900 and nuc900 drivers
      
         - New support for Cirrus Logic CS47L15 and CS47L92, Freescale i.MX
           7ULP and 8MQ, Meson G12A and NXP UDA1334
      
        USB-audio:
      
         - More validations of descriptor units for hardening against bugs
           reported by fuzzers
      
         - PCM device assignment workaround for a past call-order change
      
         - Scarlett Gen2 mixer interface, a few more more quirks
      
        HD-audio:
      
         - Support for audio component with AMD/ATI and Nvidia HDMI codecs
      
         - Clean up HD-audio core and remove indirect access ops for Intel SOF
      
         - DMIC detection at probe; it would make systems automatically
           falling back to SST/SOF driver on devices that need DMIC handling.
           Needs a new Kconfig to set, and beware that it's still new and a
           bit experimental
      
        FireWire:
      
         - Lots of code refactoring and cleanups"
      
      * tag 'sound-5.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (521 commits)
        ASoC: sdm845: remove unneeded semicolon
        ASoC: fsl_sai: Implement set_bclk_ratio
        ASoC: dmaengine: Replace strncpy() with strscpy_pad() for pcm->name
        ASoC: wcd9335: remove redundant use of ret variable
        ALSA: firewire-tascam: check intermediate state of clock status and retry
        ALSA: firewire-tascam: handle error code when getting current source of clock
        ASoC: hdmi-codec: Add an op to set callback function for plug event
        ASoC: rt5677: keep analog power register at SND_SOC_BIAS_OFF
        ASoC: rt5677: Remove magic number register writes
        ASoC: soc-core: self contained soc_unbind_aux_dev()
        ASoC: soc-core: add soc_unbind_aux_dev()
        ASoC: soc-core: self contained soc_bind_aux_dev()
        ASoC: soc-core: move soc_probe_link_dais() next to soc_remove_link_dais()
        ASoC: soc-core: self contained soc_probe_link_dais()
        ASoC: soc-core: add new soc_link_init()
        ASoC: soc-core: move soc_probe_dai() next to soc_remove_dai()
        ASoC: soc-core: self contained soc_remove_link_dais()
        ASoC: soc-core: self contained soc_remove_link_components()
        ASoC: soc-core: self contained soc_probe_link_components()
        ASoC: rt1308: make array pd static const, makes object smaller
        ...
      6ab8ad31
    • Linus Torvalds's avatar
      Merge tag 'mmc-v5.4' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · ea982ba7
      Linus Torvalds authored
      Pull MMC updates from Ulf Hansson:
       "MMC core:
         - Fixup processing of SDIO IRQs during system suspend/resume
         - Add helper function to indicate if SDIO IRQs is enabled
      
        MMC host:
         - bcm2835: Take SWIOTLB memory size limitation into account
         - dw_mmc: Improve SDIO IRQs support
         - mtk-sd: Various improvements
         - mtk-sd: Improve SDIO IRQs support
         - sdhci-iproc: Add support for emmc2 of the BCM2711
         - sdhci-of-arasan: Add Support for Intel LGM eMMC
         - sdhci-of-aspeed: Add support for the ASPEED SD controller
         - sdhci-of-esdhc: Deal with erratum A011334 support in ls1028a 1.0 SoC
         - sdhci-pci: Prepare to add support of Genesys Logic GL975x
         - sdhci-pci: Add another Id for Intel CML
         - sdhci-pci-o2micro: Fix O2 Host data read/write DLL Lock phase shift issue
         - sunxi: Add support for H5 compatibles"
      
      * tag 'mmc-v5.4' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc: (59 commits)
        ms_block: fix spelling mistake "randomally" -> "randomly"
        mmc: dw_mmc: hi3798cv200: make array degrees static const, makes object smaller
        mmc: sdhci: Convert to use sdio_irq_claimed()
        mmc: sdhci: Drop redundant code for SDIO IRQs
        mmc: sdhci: Drop redundant check in sdhci_ack_sdio_irq()
        mmc: core: Fixup processing of SDIO IRQs during system suspend/resume
        mmc: core: WARN if SDIO IRQs are enabled for non-powered card in suspend
        mmc: core: Clarify that the ->ack_sdio_irq() callback is mandatory
        mmc: core: Clarify sdio_irq_pending flag for MMC_CAP2_SDIO_IRQ_NOTHREAD
        mmc: core: Move code to get pending SDIO IRQs to a function
        mmc: mtk-sd: Re-store SDIO IRQs mask at system resume
        mmc: dw_mmc: Re-store SDIO IRQs mask at system resume
        mmc: core: Add helper function to indicate if SDIO IRQs is enabled
        mmc: sdhci-pci-o2micro: Fix O2 Host data read/write DLL Lock phase shift issue
        mmc: sdhci-pci-o2micro: Move functions in preparation to fix DLL lock phase shift issue
        mmc: sdhci-pci-o2micro: Change O2 Host PLL and DLL register name
        mmc: sdhci: Fix incorrect switch to HS mode
        mmc: sdhci-of-aspeed: Depend on CONFIG_OF_ADDRESS
        mmc: sdhci-of-aspeed: Allow max-frequency limitation of SDCLK
        mmc: sdhci-of-aspeed: Uphold clocks-on post-condition of set_clock()
        ...
      ea982ba7
  4. 17 Sep, 2019 3 commits
    • Linus Torvalds's avatar
      Merge tag 'for-5.4/block-2019-09-16' of git://git.kernel.dk/linux-block · 7ad67ca5
      Linus Torvalds authored
      Pull block updates from Jens Axboe:
      
       - Two NVMe pull requests:
           - ana log parse fix from Anton
           - nvme quirks support for Apple devices from Ben
           - fix missing bio completion tracing for multipath stack devices
             from Hannes and Mikhail
           - IP TOS settings for nvme rdma and tcp transports from Israel
           - rq_dma_dir cleanups from Israel
           - tracing for Get LBA Status command from Minwoo
           - Some nvme-tcp cleanups from Minwoo, Potnuri and Myself
           - Some consolidation between the fabrics transports for handling
             the CAP register
           - reset race with ns scanning fix for fabrics (move fabrics
             commands to a dedicated request queue with a different lifetime
             from the admin request queue)."
           - controller reset and namespace scan races fixes
           - nvme discovery log change uevent support
           - naming improvements from Keith
           - multiple discovery controllers reject fix from James
           - some regular cleanups from various people
      
       - Series fixing (and re-fixing) null_blk debug printing and nr_devices
         checks (André)
      
       - A few pull requests from Song, with fixes from Andy, Guoqing,
         Guilherme, Neil, Nigel, and Yufen.
      
       - REQ_OP_ZONE_RESET_ALL support (Chaitanya)
      
       - Bio merge handling unification (Christoph)
      
       - Pick default elevator correctly for devices with special needs
         (Damien)
      
       - Block stats fixes (Hou)
      
       - Timeout and support devices nbd fixes (Mike)
      
       - Series fixing races around elevator switching and device add/remove
         (Ming)
      
       - sed-opal cleanups (Revanth)
      
       - Per device weight support for BFQ (Fam)
      
       - Support for blk-iocost, a new model that can properly account cost of
         IO workloads. (Tejun)
      
       - blk-cgroup writeback fixes (Tejun)
      
       - paride queue init fixes (zhengbin)
      
       - blk_set_runtime_active() cleanup (Stanley)
      
       - Block segment mapping optimizations (Bart)
      
       - lightnvm fixes (Hans/Minwoo/YueHaibing)
      
       - Various little fixes and cleanups
      
      * tag 'for-5.4/block-2019-09-16' of git://git.kernel.dk/linux-block: (186 commits)
        null_blk: format pr_* logs with pr_fmt
        null_blk: match the type of parameter nr_devices
        null_blk: do not fail the module load with zero devices
        block: also check RQF_STATS in blk_mq_need_time_stamp()
        block: make rq sector size accessible for block stats
        bfq: Fix bfq linkage error
        raid5: use bio_end_sector in r5_next_bio
        raid5: remove STRIPE_OPS_REQ_PENDING
        md: add feature flag MD_FEATURE_RAID0_LAYOUT
        md/raid0: avoid RAID0 data corruption due to layout confusion.
        raid5: don't set STRIPE_HANDLE to stripe which is in batch list
        raid5: don't increment read_errors on EILSEQ return
        nvmet: fix a wrong error status returned in error log page
        nvme: send discovery log page change events to userspace
        nvme: add uevent variables for controller devices
        nvme: enable aen regardless of the presence of I/O queues
        nvme-fabrics: allow discovery subsystems accept a kato
        nvmet: Use PTR_ERR_OR_ZERO() in nvmet_init_discovery()
        nvme: Remove redundant assignment of cq vector
        nvme: Assign subsys instance from first ctrl
        ...
      7ad67ca5
    • Linus Torvalds's avatar
      Merge tag 'for-5.4/libata-2019-09-15' of git://git.kernel.dk/linux-block · 5260c2b8
      Linus Torvalds authored
      Pull libata updates from Jens Axboe:
      
       - Kill unused export (Andy)
      
       - Use dma_set_mask_and_coherent() throughout (Christoph)
      
       - Drop PCS quirk on Denverton, which has different register layout
         (Dan)
      
       - Support non-boot time detection for pata_buddha (Max)
      
      * tag 'for-5.4/libata-2019-09-15' of git://git.kernel.dk/linux-block:
        libata/ahci: Drop PCS quirk for Denverton and beyond
        ahci: Do not export local variable ahci_em_messages
        libata: switch remaining drivers to use dma_set_mask_and_coherent
        sata_sil24: use dma_set_mask_and_coherent
        sata_qstor: use dma_set_mask_and_coherent
        sata_nv: use dma_set_mask_and_coherent
        sata_mv: use dma_set_mask_and_coherent
        pdc_adma: use dma_set_mask_and_coherent
        ahci: use dma_set_mask_and_coherent
        acard_ahci: use dma_set_mask_and_coherent
        ata/pata_buddha: Probe via modalias instead of initcall
      5260c2b8
    • Linus Torvalds's avatar
      Merge tag 'for-5.4/io_uring-2019-09-15' of git://git.kernel.dk/linux-block · 1e6fa3a3
      Linus Torvalds authored
      Pull io_uring updates from Jens Axboe:
      
       - Allocate SQ/CQ ring together, more efficient. Expose this through a
         feature flag as well, so we can reduce the number of mmaps by 1
         (Hristo and me)
      
       - Fix for sequence logic with SQ thread (Jackie).
      
       - Add support for links with drain commands (Jackie).
      
       - Improved async merging (me)
      
       - Improved buffered async write performance (me)
      
       - Support SQ poll wakeup + event get in single io_uring_enter() (me)
      
       - Support larger SQ ring size. For epoll conversions, the 4k limit was
         too small for some prod workloads (Daniel).
      
       - put_user_page() usage (John)
      
      * tag 'for-5.4/io_uring-2019-09-15' of git://git.kernel.dk/linux-block:
        io_uring: increase IORING_MAX_ENTRIES to 32K
        io_uring: make sqpoll wakeup possible with getevents
        io_uring: extend async work merging
        io_uring: limit parallelism of buffered writes
        io_uring: add io_queue_async_work() helper
        io_uring: optimize submit_and_wait API
        io_uring: add support for link with drain
        io_uring: fix wrong sequence setting logic
        io_uring: expose single mmap capability
        io_uring: allocate the two rings together
        fs/io_uring.c: convert put_page() to put_user_page*()
      1e6fa3a3