Skip to content
  1. Apr 07, 2018
    • Linus Torvalds's avatar
      Merge tag 'for-4.17/dm-changes' of... · 83c7c18b
      Linus Torvalds authored
      Merge tag 'for-4.17/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
      
      Pull device mapper updates from Mike Snitzer:
      
       - DM core passthrough ioctl fix to retain reference to DM table, and
         that table's block devices, while issuing the ioctl to one of those
         block devices.
      
       - DM core passthrough ioctl fix to _not_ override the fmode_t used to
         issue the ioctl. Overriding by using the fmode_t that the block
         device was originally open with during DM table load is a liability.
      
       - Add DM core support for secure erase forwarding and update the DM
         linear and DM striped targets to support them.
      
       - A DM core 4.16 stable fix to allow abnormal IO (e.g. discard, write
         same, write zeroes) for targets that make use of the non-splitting IO
         variant (as is done for multipath or thinp when layered directly on
         NVMe).
      
       - Allow DM targets to return a payload in response to a DM message that
         they are sent. This is useful for DM targets that would like to
         provide statistics data in response to DM messages.
      
       - Update DM bufio to support non-power-of-2 block sizes. Numerous other
         related changes prepare the DM bufio code for this support.
      
       - Fix DM crypt to use a bounded amount of memory across the entire
         system. This is to avoid OOM that can otherwise occur in response to
         certain pathological IO workloads (e.g. discarding a large DM crypt
         device).
      
       - Add a 'check_at_most_once' feature to the DM verity target to allow
         verity to be used on mobile devices that have very limited resources.
      
       - Fix the DM integrity target to fail early if a keyed algorithm (e.g.
         HMAC) is to be used but the key isn't set.
      
       - Add non-power-of-2 support to the DM unstripe target.
      
       - Eliminate the use of a Variable Length Array in the DM stripe target.
      
       - Update the DM log-writes target to record metadata (REQ_META flag).
      
       - DM raid fixes for its nosync status and some variable range issues.
      
      * tag 'for-4.17/dm-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm: (28 commits)
        dm: remove fmode_t argument from .prepare_ioctl hook
        dm: hold DM table for duration of ioctl rather than use blkdev_get
        dm raid: fix parse_raid_params() variable range issue
        dm verity: make verity_for_io_block static
        dm verity: add 'check_at_most_once' option to only validate hashes once
        dm bufio: don't embed a bio in the dm_buffer structure
        dm bufio: support non-power-of-two block sizes
        dm bufio: use slab cache for dm_buffer structure allocations
        dm bufio: reorder fields in dm_buffer structure
        dm bufio: relax alignment constraint on slab cache
        dm bufio: remove code that merges slab caches
        dm bufio: get rid of slab cache name allocations
        dm bufio: move dm-bufio.h to include/linux/
        dm bufio: delete outdated comment
        dm: add support for secure erase forwarding
        dm: backfill abnormal IO support to non-splitting IO submission
        dm raid: fix nosync status
        dm mpath: use DM_MAPIO_SUBMITTED instead of magic number 0 in process_queued_bios()
        dm stripe: get rid of a Variable Length Array (VLA)
        dm log writes: record metadata flag for better flags record
        ...
      83c7c18b
    • Linus Torvalds's avatar
      Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 9022ca6b
      Linus Torvalds authored
      Pull misc vfs updates from Al Viro:
       "Assorted stuff, including Christoph's I_DIRTY patches"
      
      * 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        fs: move I_DIRTY_INODE to fs.h
        ubifs: fix bogus __mark_inode_dirty(I_DIRTY_SYNC | I_DIRTY_DATASYNC) call
        ntfs: fix bogus __mark_inode_dirty(I_DIRTY_SYNC | I_DIRTY_DATASYNC) call
        gfs2: fix bogus __mark_inode_dirty(I_DIRTY_SYNC | I_DIRTY_DATASYNC) calls
        fs: fold open_check_o_direct into do_dentry_open
        vfs: Replace stray non-ASCII homoglyph characters with their ASCII equivalents
        vfs: make sure struct filename->iname is word-aligned
        get rid of pointless includes of fs_struct.h
        [poll] annotate SAA6588_CMD_POLL users
      9022ca6b
  2. Apr 06, 2018
    • Linus Torvalds's avatar
      Merge tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 38c23685
      Linus Torvalds authored
      Pull ARM SoC driver updates from Arnd Bergmann:
       "The main addition this time around is the new ARM "SCMI" framework,
        which is the latest in a series of standards coming from ARM to do
        power management in a platform independent way.
      
        This has been through many review cycles, and it relies on a rather
        interesting way of using the mailbox subsystem, but in the end I
        agreed that Sudeep's version was the best we could do after all.
      
        Other changes include:
      
         - the ARM CCN driver is moved out of drivers/bus into drivers/perf,
           which makes more sense. Similarly, the performance monitoring
           portion of the CCI driver are moved the same way and cleaned up a
           little more.
      
         - a series of updates to the SCPI framework
      
         - support for the Mediatek mt7623a SoC in drivers/soc
      
         - support for additional NVIDIA Tegra hardware in drivers/soc
      
         - a new reset driver for Socionext Uniphier
      
         - lesser bug fixes in drivers/soc, drivers/tee, drivers/memory, and
           drivers/firmware and drivers/reset across platforms"
      
      * tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (87 commits)
        reset: uniphier: add ethernet reset control support for PXs3
        reset: stm32mp1: Enable stm32mp1 reset driver
        dt-bindings: reset: add STM32MP1 resets
        reset: uniphier: add Pro4/Pro5/PXs2 audio systems reset control
        reset: imx7: add 'depends on HAS_IOMEM' to fix unmet dependency
        reset: modify the way reset lookup works for board files
        reset: add support for non-DT systems
        clk: scmi: use devm_of_clk_add_hw_provider() API and drop scmi_clocks_remove
        firmware: arm_scmi: prevent accessing rate_discrete uninitialized
        hwmon: (scmi) return -EINVAL when sensor information is unavailable
        amlogic: meson-gx-socinfo: Update soc ids
        soc/tegra: pmc: Use the new reset APIs to manage reset controllers
        soc: mediatek: update power domain data of MT2712
        dt-bindings: soc: update MT2712 power dt-bindings
        cpufreq: scmi: add thermal dependency
        soc: mediatek: fix the mistaken pointer accessed when subdomains are added
        soc: mediatek: add SCPSYS power domain driver for MediaTek MT7623A SoC
        soc: mediatek: avoid hardcoded value with bus_prot_mask
        dt-bindings: soc: add header files required for MT7623A SCPSYS dt-binding
        dt-bindings: soc: add SCPSYS binding for MT7623 and MT7623A SoC
        ...
      38c23685
    • Linus Torvalds's avatar
      Merge tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 16756934
      Linus Torvalds authored
      Pull ARM SoC platform updates from Arnd Bergmann:
       "This release brings up a new platform based on the old ARM9 core: the
        Nuvoton NPCM is used as a baseboard management controller, competing
        with the better known ASpeed AST2xx series.
      
        Another important change is the addition of ARMv7-A based chips in
        mach-stm32. The older parts in this platform are ARMv7-M based
        microcontrollers, now they are expanding to general-purpose workloads.
      
        The other changes are the usual defconfig updates to enable additional
        drivers, lesser bugfixes. The largest updates as often are the ongoing
        OMAP cleanups, but we also have a number of changes for the older PXA
        and davinci platforms this time.
      
        For the Renesas shmobile/r-car platform, some new infrastructure is
        needed to make the watchdog work correctly.
      
        Supporting Multiprocessing on Allwinner A80 required a significant
        amount of new code, but is not doing anything ...
      16756934
    • Linus Torvalds's avatar
      Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · b240b419
      Linus Torvalds authored
      Pull ARM SoC device tree updates from Arnd Bergmann:
       "This is the usual set of changes for device trees, with over 700
        non-merged changesets. There is an ongoing set of dtc warning fixes
        and the usual bugfixes, cleanups and added device support.
      
        The most interesting bit as usual is support for new machines listed
        below:
      
         - The Allwinner H6 makes its debut with the Pine-H64 board, and we
           get two new machines based on its older siblings: the H5 based
           OrangePi Zero+ and the A64 based Teres-I Laptop from Olimex. On the
           32-bit side, we add The Olimex som204 based on Allwinner A20, and
           the Banana Pi M2 Zero development board (based on H2).
      
         - NVIDIA adds support for Tegra194 aka "Xavier", plus their p2972
           development board and p2888 CPU module.
      
         - The Nuvoton npcm750 is a BMC that was newly added, for now we only
           support running on the evaluation board.
      
         - STmicroelectronics stm32 gains support for the stm32mp157c and two
           evaluation boards.
      
         - The Toradex Colibri board family grows a few members based on the
           i.MX6ULL variant.
      
         - The Advantec DMS-BA16 is a Qseven module using the NXP i.MX6 family
           of chips.
      
         - The Phytec phyBOARD Mira is a family of industrial boards based on
           i.MX6. For now, four models get added.
      
         - TI am335x based PDU-001 is an industrial embedded machine used for
           traffic monitoring
      
         - The Aspeed platform now supports running on the BMC on the Qualcomm
           Centriq 2400 server
      
         - Samsung Exynos4 based Galaxy S3 is a family of mobile phones
           Qualcomm msm8974 based Galaxy S5 is a rather different phone made
           by the same company.
      
         - The Xilinx Zynq and ZynqMP platforms now gained a lot of dts file
           for the various boards made by Xilinx themselves, as well as the
           Digilent Zybo Z7.
      
         - The ARM Versatile family now supports the "IB2" interface board.
      
         - The Renesas H2 based "Stout" and the H3 based Salvator-X are more
           evaluation boards named after a kind of beer, as most of them are.
           The r8a77980 (V3H) based "Condor" apparently doesn't follow that
           tradition. ;-)
      
         - ROC-RK3328-CC is a simple developement board from the Libre
           Computer Project, based on the Rockchips RK3328 SoC
      
         - Haiku is another development board plus Qseven module based on
           Rockchips RK3368 and made by Theobroma Systems"
      
      * tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (701 commits)
        arm: dts: modify Nuvoton NPCM7xx device tree structure
        arm: dts: modify Makefile NPCM750 configuration name
        arm: dts: modify clock binding in NPCM750 device tree
        arm: dts: modify timer register size in NPCM750 device tree
        arm: dts: modify UART compatible name in NPCM750 device tree
        arm: dts: add watchdog device to NPCM750 device tree
        arm64: dts: uniphier: add ethernet node for PXs3
        ARM: dts: uniphier: add pinctrl groups of ethernet for second instance
        arm: dts: kirkwood*.dts: use SPDX-License-Identifier for board using GPL-2.0+
        arm: dts: kirkwood*.dts: use SPDX-License-Identifier for boards using GPL-2.0+/MIT
        arm: dts: kirkwood*.dts: use SPDX-License-Identifier for boards using GPL-2.0
        arm: dts: armada-385-turris-omnia: use SPDX-License-Identifier
        arm: dts: armada-385-db-ap: use SPDX-License-Identifier
        arm: dts: armada-388-rd: use SPDX-License-Identifier
        arm: dts: armada-xp-db-xc3-24g4xg: use SPDX-License-Identifier
        arm: dts: armada-xp-db-dxbc2: use SPDX-License-Identifier
        arm: dts: armada-370-db: use SPDX-License-Identifier
        arm: dts: armada-*.dts: use SPDX-License-Identifier for most of the Armada based board
        arm: dts: armada-xp-98dx: use SPDX-License-Identifier for prestara 98d SoCs
        arm: dts: armada-*.dtsi: use SPDX-License-Identifier for most of the Armada SoCs
        ...
      b240b419
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-4.17' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · 9c2dd840
      Linus Torvalds authored
      Pull DeviceTree updates from Rob Herring:
      
       - Sync dtc to upstream version v1.4.6-9-gaadd0b65c987. This adds a
         bunch more warnings (hidden behind W=1).
      
       - Build dtc lexer and parser files instead of using shipped versions.
      
       - Rework overlay apply API to take an FDT as input and apply overlays
         in a single step.
      
       - Add a phandle lookup cache. This improves boot time by hundreds of
         msec on systems with large DT.
      
       - Add trivial mcp4017/18/19 potentiometers bindings.
      
       - Remove VLA stack usage in DT code.
      
      * tag 'devicetree-for-4.17' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (26 commits)
        of: unittest: fix an error code in of_unittest_apply_overlay()
        of: unittest: move misplaced function declaration
        of: unittest: Remove VLA stack usage
        of: overlay: Fix forgotten reference to of_overlay_apply()
        of: Documentation: Fix forgotten reference to of_overlay_apply()
        of: unittest: local return value variable related cleanups
        of: unittest: remove unneeded local return value variables
        dt-bindings: trivial: add various mcp4017/18/19 potentiometers
        of: unittest: fix an error test in of_unittest_overlay_8()
        of: cache phandle nodes to reduce cost of of_find_node_by_phandle()
        dt-bindings: rockchip-dw-mshc: use consistent clock names
        MAINTAINERS: Add linux/of_*.h headers to appropriate subsystems
        scripts: turn off some new dtc warnings by default
        scripts/dtc: Update to upstream version v1.4.6-9-gaadd0b65c987
        scripts/dtc: generate lexer and parser during build instead of shipping
        powerpc: boot: add strrchr function
        of: overlay: do not include path in full_name of added nodes
        of: unittest: clean up changeset test
        arm64/efi: Make strrchr() available to the EFI namespace
        ARM: boot: add strrchr function
        ...
      9c2dd840
    • Linus Torvalds's avatar
      Merge branch 'siginfo-linus' of... · d66db9f6
      Linus Torvalds authored
      Merge branch 'siginfo-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace
      
      Pull siginfo updates from Eric Biederman:
       "The work on cleaning up and getting the bugs out of siginfo generation
        was largely stalled this round. The progress that was made was the
        definition of FPE_FLTUNK. Which is usable to fix many of the cases
        where siginfo generation is erroneously generating SI_USER by setting
        si_code to 0, that has recently been tagged as FPE_FIXME.
      
        You already have the change by way of the arm64 tree as that
        definition was pulled into the arm64 tree to allow fixing the problem
        there.
      
        What remains is the second round of fixing for what I thought was a
        trivial change to the struct siginfo when put the union in _sigfault
        where it belongs. Do to historical reasons 32bit m68k only ensures
        that pointers are 2 byte aligned. So I have added a m68k test case
        made of BUILD_BUG_ONs to verify I have this fix correct and possibly
        catch problems, and I have computed the number of bytes of padding
        needed for the _addr_bnd and _addr_pkey cases and just use an array of
        characters that size.
      
        For pure paranoia I have written the code so if there is an
        architecture out there that does not perform any alignment of
        structures it should still work.
      
        With the removal of all of the stale arechitectures this cycle future
        work on cleaning up struct siginfo should be much easier. Almost all
        of the conflicting si_code definitions have been removed with the
        removal of (blackfin, tile, and frv). Plus some of the most difficult
        to test cases have simply been removed from the tree.
      
        Which means that with a little luck copy_siginfo_to_user can become a
        light weight wrapper around copy_to_user in the next cycle"
      
      * 'siginfo-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
        m68k: Verify the offsets in struct siginfo never change.
        signal: Correct the offset of si_pkey and si_lower in struct siginfo on m68k
      d66db9f6
    • Linus Torvalds's avatar
      Merge branch 'for-4.17' of git://git.kernel.org/pub/scm/linux/kernel/git/pmladek/printk · 357aa6ae
      Linus Torvalds authored
      Pull printk updates from Petr Mladek:
      
       - Add info about loaded kdump kernel into the dump stack header
      
       - Move dump-stack related code from printk.c to lib/dump_stack.c
      
       - Write message about suspending consoles in KERN_INFO log level
      
      * 'for-4.17' of git://git.kernel.org/pub/scm/linux/kernel/git/pmladek/printk:
        printk: change message to pr_info
        printk: move dump stack related code to lib/dump_stack.c
        print kdump kernel loaded status in stack dump
      357aa6ae
    • Linus Torvalds's avatar
      Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs · be88751f
      Linus Torvalds authored
      Pull misc filesystem updates from Jan Kara:
       "udf, ext2, quota, fsnotify fixes & cleanups:
      
         - udf fixes for handling of media without uid/gid
      
         - udf fixes for some corner cases in parsing of volume recognition
           sequence
      
         - improvements of fsnotify handling of ENOMEM
      
         - new ioctl to allow setting of watch descriptor id for inotify (for
           checkpoint - restart)
      
         - small ext2, reiserfs, quota cleanups"
      
      * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        quota: Kill an unused extern entry form quota.h
        reiserfs: Remove VLA from fs/reiserfs/reiserfs.h
        udf: fix potential refcnt problem of nls module
        ext2: change return code to -ENOMEM when failing memory allocation
        udf: Do not mark possibly inconsistent filesystems as closed
        fsnotify: Let userspace know about lost events due to ENOMEM
        fanotify: Avoid lost events due to ENOMEM for unlimited queues
        udf: Remove never implemented mount options
        udf: Update mount option documentation
        udf: Provide saner default for invalid uid / gid
        udf: Clean up handling of invalid uid/gid
        udf: Apply uid/gid mount options also to new inodes & chown
        udf: Ignore [ug]id=ignore mount options
        udf: Fix handling of Partition Descriptors
        udf: Unify common handling of descriptors
        udf: Convert descriptor index definitions to enum
        udf: Allow volume descriptor sequence to be terminated by unrecorded block
        udf: Simplify handling of Volume Descriptor Pointers
        udf: Fix off-by-one in volume descriptor sequence length
        inotify: Extend ioctl to allow to request id of new watch descriptor
      be88751f
    • Linus Torvalds's avatar
      Merge tag 'nfsd-4.17' of git://linux-nfs.org/~bfields/linux · 5e4d6597
      Linus Torvalds authored
      Pull nfsd updates from Bruce Fields:
       "Chuck Lever did a bunch of work on nfsd tracepoints, on RDMA, and on
        server xdr decoding (with an eye towards eliminating a data copy in
        the RDMA case).
      
        I did some refactoring of the delegation code in preparation for
        eliminating some delegation self-conflicts and implementing write
        delegations"
      
      * tag 'nfsd-4.17' of git://linux-nfs.org/~bfields/linux: (40 commits)
        nfsd: fix incorrect umasks
        sunrpc: remove incorrect HMAC request initialization
        NFSD: Clean up legacy NFS SYMLINK argument XDR decoders
        NFSD: Clean up legacy NFS WRITE argument XDR decoders
        nfsd: Trace NFSv4 COMPOUND execution
        nfsd: Add I/O trace points in the NFSv4 read proc
        nfsd: Add I/O trace points in the NFSv4 write path
        nfsd: Add "nfsd_" to trace point names
        nfsd: Record request byte count, not count of vectors
        nfsd: Fix NFSD trace points
        svc: Report xprt dequeue latency
        sunrpc: Report per-RPC execution stats
        sunrpc: Re-purpose trace_svc_process
        sunrpc: Save remote presentation address in svc_xprt for trace events
        sunrpc: Simplify trace_svc_recv
        sunrpc: Simplify do_enqueue tracing
        sunrpc: Move trace_svc_xprt_dequeue()
        sunrpc: Update show_svc_xprt_flags() to include recently added flags
        svc: Simplify ->xpo_secure_port
        sunrpc: Remove unneeded pointer dereference
        ...
      5e4d6597
    • Linus Torvalds's avatar
      Merge tag 'f2fs-for-4.17' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs · 274c0e74
      Linus Torvalds authored
      Pull f2fs update from Jaegeuk Kim:
       "In this round, we've mainly focused on performance tuning and critical
        bug fixes occurred in low-end devices. Sheng Yong introduced
        lost_found feature to keep missing files during recovery instead of
        thrashing them. We're preparing coming fsverity implementation. And,
        we've got more features to communicate with users for better
        performance. In low-end devices, some memory-related issues were
        fixed, and subtle race condtions and corner cases were addressed as
        well.
      
        Enhancements:
         - large nat bitmaps for more free node ids
         - add three block allocation policies to pass down write hints given by user
         - expose extension list to user and introduce hot file extension
         - tune small devices seamlessly for low-end devices
         - set readdir_ra by default
         - give more resources under gc_urgent mode regarding to discard and cleaning
         - introduce fsync_mode to enforce posix or not
         - nowait aio support
         - add lost_found feature to keep dangling inodes
         - reserve bits for future fsverity feature
         - add test_dummy_encryption for FBE
      
        Bug fixes:
         - don't use highmem for dentry pages
         - align memory boundary for bitops
         - truncate preallocated blocks in write errors
         - guarantee i_times on fsync call
         - clear CP_TRIMMED_FLAG correctly
         - prevent node chain loop during recovery
         - avoid data race between atomic write and background cleaning
         - avoid unnecessary selinux violation warnings on resgid option
         - GFP_NOFS to avoid deadlock in quota and read paths
         - fix f2fs_skip_inode_update to allow i_size recovery
      
        In addition to the above, there are several minor bug fixes and clean-ups"
      
      * tag 'f2fs-for-4.17' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (50 commits)
        f2fs: remain written times to update inode during fsync
        f2fs: make assignment of t->dentry_bitmap more readable
        f2fs: truncate preallocated blocks in error case
        f2fs: fix a wrong condition in f2fs_skip_inode_update
        f2fs: reserve bits for fs-verity
        f2fs: Add a segment type check in inplace write
        f2fs: no need to initialize zero value for GFP_F2FS_ZERO
        f2fs: don't track new nat entry in nat set
        f2fs: clean up with F2FS_BLK_ALIGN
        f2fs: check blkaddr more accuratly before issue a bio
        f2fs: Set GF_NOFS in read_cache_page_gfp while doing f2fs_quota_read
        f2fs: introduce a new mount option test_dummy_encryption
        f2fs: introduce F2FS_FEATURE_LOST_FOUND feature
        f2fs: release locks before return in f2fs_ioc_gc_range()
        f2fs: align memory boundary for bitops
        f2fs: remove unneeded set_cold_node()
        f2fs: add nowait aio support
        f2fs: wrap all options with f2fs_sb_info.mount_opt
        f2fs: Don't overwrite all types of node to keep node chain
        f2fs: introduce mount option for fsync mode
        ...
      274c0e74
    • Linus Torvalds's avatar
      Merge tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · 052c220d
      Linus Torvalds authored
      Pull SCSI updates from James Bottomley:
       "This is mostly updates of the usual drivers: arcmsr, qla2xx, lpfc,
        ufs, mpt3sas, hisi_sas.
      
        In addition we have removed several really old drivers: sym53c416,
        NCR53c406a, fdomain, fdomain_cs and removed the old scsi_module.c
        initialization from all remaining drivers.
      
        Plus an assortment of bug fixes, initialization errors and other minor
        fixes"
      
      * tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (168 commits)
        scsi: ufs: Add support for Auto-Hibernate Idle Timer
        scsi: ufs: sysfs: reworking of the rpm_lvl and spm_lvl entries
        scsi: qla2xxx: fx00 copypaste typo
        scsi: qla2xxx: fix error message on <qla2400
        scsi: smartpqi: update driver version
        scsi: smartpqi: workaround fw bug for oq deletion
        scsi: arcmsr: Change driver version to v1.40.00.05-20180309
        scsi: arcmsr: Sleep to avoid CPU stuck too long for waiting adapter ready
        scsi: arcmsr: Handle adapter removed due to thunderbolt cable disconnection.
        scsi: arcmsr: Rename ACB_F_BUS_HANG_ON to ACB_F_ADAPTER_REMOVED for adapter hot-plug
        scsi: qla2xxx: Update driver version to 10.00.00.06-k
        scsi: qla2xxx: Fix Async GPN_FT for FCP and FC-NVMe scan
        scsi: qla2xxx: Cleanup code to improve FC-NVMe error handling
        scsi: qla2xxx: Fix FC-NVMe IO abort during driver reset
        scsi: qla2xxx: Fix retry for PRLI RJT with reason of BUSY
        scsi: qla2xxx: Remove nvme_done_list
        scsi: qla2xxx: Return busy if rport going away
        scsi: qla2xxx: Fix n2n_ae flag to prevent dev_loss on PDB change
        scsi: qla2xxx: Add FC-NVMe abort processing
        scsi: qla2xxx: Add changes for devloss timeout in driver
        ...
      052c220d
    • Linus Torvalds's avatar
      Merge tag 'for-4.17/block-20180402' of git://git.kernel.dk/linux-block · 3526dd0c
      Linus Torvalds authored
      Pull block layer updates from Jens Axboe:
       "It's a pretty quiet round this time, which is nice. This contains:
      
         - series from Bart, cleaning up the way we set/test/clear atomic
           queue flags.
      
         - series from Bart, fixing races between gendisk and queue
           registration and removal.
      
         - set of bcache fixes and improvements from various folks, by way of
           Michael Lyle.
      
         - set of lightnvm updates from Matias, most of it being the 1.2 to
           2.0 transition.
      
         - removal of unused DIO flags from Nikolay.
      
         - blk-mq/sbitmap memory ordering fixes from Omar.
      
         - divide-by-zero fix for BFQ from Paolo.
      
         - minor documentation patches from Randy.
      
         - timeout fix from Tejun.
      
         - Alpha "can't write a char atomically" fix from Mikulas.
      
         - set of NVMe fixes by way of Keith.
      
         - bsg and bsg-lib improvements from Christoph.
      
         - a few sed-opal fixes from Jonas.
      
         - cdrom check-disk-change deadlock fix from Maurizio.
      
         - various little fixes, comment fixes, etc from various folks"
      
      * tag 'for-4.17/block-20180402' of git://git.kernel.dk/linux-block: (139 commits)
        blk-mq: Directly schedule q->timeout_work when aborting a request
        blktrace: fix comment in blktrace_api.h
        lightnvm: remove function name in strings
        lightnvm: pblk: remove some unnecessary NULL checks
        lightnvm: pblk: don't recover unwritten lines
        lightnvm: pblk: implement 2.0 support
        lightnvm: pblk: implement get log report chunk
        lightnvm: pblk: rename ppaf* to addrf*
        lightnvm: pblk: check for supported version
        lightnvm: implement get log report chunk helpers
        lightnvm: make address conversions depend on generic device
        lightnvm: add support for 2.0 address format
        lightnvm: normalize geometry nomenclature
        lightnvm: complete geo structure with maxoc*
        lightnvm: add shorten OCSSD version in geo
        lightnvm: add minor version to generic geometry
        lightnvm: simplify geometry structure
        lightnvm: pblk: refactor init/exit sequences
        lightnvm: Avoid validation of default op value
        lightnvm: centralize permission check for lightnvm ioctl
        ...
      3526dd0c
    • Linus Torvalds's avatar
      Merge tag 'edac_for_4.17' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · dd972f92
      Linus Torvalds authored
      Pull EDAC updates from Borislav Petkov:
       "Noteworthy is the NVDIMM support:
      
         - NVDIMM support to EDAC (Tony Luck)
      
         - misc fixes"
      
      * tag 'edac_for_4.17' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        EDAC, sb_edac: Remove variable length array usage
        EDAC, skx_edac: Detect non-volatile DIMMs
        firmware, DMI: Add function to look up a handle and return DIMM size
        acpi, nfit: Add function to look up nvdimm device and provide SMBIOS handle
        EDAC: Add new memory type for non-volatile DIMMs
        EDAC: Drop duplicated array of strings for memory type names
        EDAC, layerscape: Allow building for LS1021A
      dd972f92
    • Kees Cook's avatar
      kernel.h: Retain constant expression output for max()/min() · 3c8ba0d6
      Kees Cook authored
      In the effort to remove all VLAs from the kernel[1], it is desirable to
      build with -Wvla.  However, this warning is overly pessimistic, in that
      it is only happy with stack array sizes that are declared as constant
      expressions, and not constant values.  One case of this is the
      evaluation of the max() macro which, due to its construction, ends up
      converting constant expression arguments into a constant value result.
      
      All attempts to rewrite this macro with __builtin_constant_p() failed
      with older compilers (e.g.  gcc 4.4)[2].  However, Martin Uecker,
      constructed[3] a mind-shattering solution that works everywhere.
      Cthulhu fhtagn!
      
      This patch updates the min()/max() macros to evaluate to a constant
      expression when called on constant expression arguments.  This removes
      several false-positive stack VLA warnings from an x86 allmodconfig build
      when -Wvla is added:
      
        $ diff -u before.txt after.txt | grep ^-
        -drivers/input/touchscreen/cyttsp4_core.c:871:2: warning: ISO C90 forbids variable length array ‘ids’ [-Wvla]
        -fs/btrfs/tree-checker.c:344:4: warning: ISO C90 forbids variable length array ‘namebuf’ [-Wvla]
        -lib/vsprintf.c:747:2: warning: ISO C90 forbids variable length array ‘sym’ [-Wvla]
        -net/ipv4/proc.c:403:2: warning: ISO C90 forbids variable length array ‘buff’ [-Wvla]
        -net/ipv6/proc.c:198:2: warning: ISO C90 forbids variable length array ‘buff’ [-Wvla]
        -net/ipv6/proc.c:218:2: warning: ISO C90 forbids variable length array ‘buff64’ [-Wvla]
      
      This also updates two cases where different enums were being compared
      and explicitly casts them to int (which matches the old side-effect of
      the single-evaluation code): one in tpm/tpm_tis_core.h, and one in
      drm/drm_color_mgmt.c.
      
       [1] https://lkml.org/lkml/2018/3/7/621
       [2] https://lkml.org/lkml/2018/3/10/170
       [3] https://lkml.org/lkml/2018/3/20/845
      
      
      
      Co-Developed-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Co-Developed-by: default avatarMartin Uecker <Martin.Uecker@med.uni-goettingen.de>
      Signed-off-by: default avatarKees Cook <keescook@chromium.org>
      Acked-by: default avatarIngo Molnar <mingo@kernel.org>
      Acked-by: default avatarMiguel Ojeda <miguel.ojeda.sandonis@gmail.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      3c8ba0d6
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · 5414ab31
      Linus Torvalds authored
      Pull input updates from Dmitry Torokhov:
      
       - new driver for PhoenixRC Flight Controller Adapter
      
       - new driver for RAVE SP Power button
      
       - fixes for autosuspend-related deadlocks in a few unput USB dirvers
      
       - support for 2nd wheel in ATech PS/2 mouse
      
       - fix for ALPS trackpoint detection on Thinkpad L570 and Latitude 7370
      
       - bunch of cleanups in various in PS/2 protocols
      
       - other assorted changes and fixes
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (35 commits)
        Input: i8042 - enable MUX on Sony VAIO VGN-CS series to fix touchpad
        Input: stmfts, s6sy761 - update my e-mail
        Input: stmfts - use async probe & suspend/resume to avoid 2s delay
        Input: ALPS - fix TrackStick detection on Thinkpad L570 and Latitude 7370
        Input: xpad - add PDP device id 0x02a4
        Input: alps - report pressure of v3 and v7 trackstick
        Input: pxrc - new driver for PhoenixRC Flight Controller Adapter
        Input: usbtouchscreen - do not rely on input_dev->users
        Input: usbtouchscreen - fix deadlock in autosuspend
        Input: pegasus_notetaker - do not rely on input_dev->users
        Input: pagasus_notetaker - fix deadlock in autosuspend
        Input: synaptics_usb - do not rely on input_dev->users
        Input: synaptics_usb - fix deadlock in autosuspend
        Input: gpio-keys - add support for wakeup event action
        Input: appletouch - use true and false for boolean values
        Input: silead - add Chuwi Hi8 support
        Input: analog - use get_cycles() on PPC
        Input: stmpe-keypad - remove VLA usage
        Input: i8042 - add Lenovo ThinkPad L460 to i8042 reset list
        Input: add RAVE SP Powerbutton driver
        ...
      5414ab31
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial · 672a9c10
      Linus Torvalds authored
      Pull trivial tree updates from Jiri Kosina.
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial:
        kfifo: fix inaccurate comment
        tools/thermal: tmon: fix for segfault
        net: Spelling s/stucture/structure/
        edd: don't spam log if no EDD information is present
        Documentation: Fix early-microcode.txt references after file rename
        tracing: Block comments should align the * on each line
        treewide: Fix typos in printk
        GenWQE: Fix a typo in two comments
        treewide: Align function definition open/close braces
      672a9c10
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid · e8403b49
      Linus Torvalds authored
      Pull HID updates from Jiri Kosina:
      
       - 3rd generation Wacom Intuos BT device support from Aaron Armstrong
         Skomra
      
       - support for NSG-MR5U and NSG-MR7U devices from Todd Kelner
      
       - multitouch Razer Blade Stealth support from Benjamin Tissoires
      
       - Elantech touchpad support from Alexandrov Stansilav
      
       - a few other scattered-around fixes and cleanups to drivers and
         generic code
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (31 commits)
        HID: google: Enable PM Full On mode when adjusting backlight
        HID: google: add google hammer HID driver
        HID: core: reset the quirks before calling probe again
        HID: multitouch: do not set HID_QUIRK_NO_INIT_REPORTS
        HID: core: remove the need for HID_QUIRK_NO_EMPTY_INPUT
        HID: use BIT() macro for quirks too
        HID: use BIT macro instead of plain integers for flags
        HID: multitouch: remove dead zones of Razer Blade Stealth
        HID: multitouch: export a quirk for the button handling of touchpads
        HID: usbhid: extend the polling interval configuration to keyboards
        HID: ntrig: document sysfs interface
        HID: wacom: wacom_wac_collection() is local to wacom_wac.c
        HID: wacom: generic: add the "Report Valid" usage
        HID: wacom: generic: Support multiple tools per report
        HID: wacom: Add support for 3rd generation Intuos BT
        HID: core: rewrite the hid-generic automatic unbind
        HID: sony: Add touchpad support for NSG-MR5U and NSG-MR7U remotes
        HID: hid-multitouch: Use true and false for boolean values
        HID: hid-ntrig: use true and false for boolean values
        HID: logitech-hidpp: document sysfs interface
        ...
      e8403b49
    • Linus Torvalds's avatar
      Merge tag 'sound-4.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · e02d37bf
      Linus Torvalds authored
      Pull sound updates from Takashi Iwai:
       "This became a large update. The changes are scattered widely, and the
        majority of them are attributed to ASoC componentization. The gitk
        output made me dizzy, but it's slightly better than London tube.
      
        OK, below are some highlights:
      
         - Continued hardening works in ALSA PCM core; most of the existing
           syzkaller reports should have been covered.
      
         - USB-audio got the initial USB Audio Class 3 support, as well as
           UAC2 jack detection support and more DSD-device support.
      
         - ASoC componentization: finally each individual driver was converted
           to components framework, which is more future-proof for further
           works. Most of conversations were systematic.
      
         - Lots of fixes for Intel Baytrail / Cherrytrail devices with Realtek
           codecs, typically tablets and small PCs.
      
         - Fixes / cleanups for Samsung Odroid systems
      
         - Cleanups in Freescale SSI driver
      
         - New ASoC drivers:
            * AKM AK4458 and AK5558 codecs
            * A few AMD based machine drivers
            * Intel Kabylake machine drivers
            * Maxim MAX9759 codec
            * Motorola CPCAP codec
            * Socionext Uniphier SoCs
            * TI PCM1789 and TDA7419 codecs
      
         - Retirement of Blackfin drivers along with architecture removal"
      
      * tag 'sound-4.17-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (497 commits)
        ALSA: pcm: Fix UAF at PCM release via PCM timer access
        ALSA: usb-audio: silence a static checker warning
        ASoC: tscs42xx: Remove owner assignment from i2c_driver
        ASoC: mediatek: remove "simple-mfd" in the example
        ASoC: cpcap: replace codec to component
        ASoC: Intel: bytcr_rt5651: don't use codec anymore
        ASoC: amd: don't use codec anymore
        ALSA: usb-audio: fix memory leak on cval
        ALSA: pcm: Fix mutex unbalance in OSS emulation ioctls
        ASoC: topology: Fix kcontrol name string handling
        ALSA: aloop: Mark paused device as inactive
        ALSA: usb-audio: update clock valid control
        ALSA: usb-audio: UAC2 jack detection
        ALSA: pcm: Return -EBUSY for OSS ioctls changing busy streams
        ALSA: pcm: Avoid potential races between OSS ioctls and read/write
        ALSA: usb-audio: Integrate native DSD support for ITF-USB based DACs.
        ALSA: usb-audio: FIX native DSD support for TEAC UD-501 DAC
        ALSA: usb-audio: Add native DSD support for Luxman DA-06
        ALSA: usb-audio: fix uac control query argument
        ASoC: nau8824: recover system clock when device changes
        ...
      e02d37bf
    • Linus Torvalds's avatar
      Merge tag 'dma-mapping-4.17' of git://git.infradead.org/users/hch/dma-mapping · 652ede37
      Linus Torvalds authored
      Pull dma-mapping updates from Christoph Hellwig:
       "Very light this round as the interesting dma mapping changes went
        through the x86 tree.
      
        This just provides proper stubs for architectures not supporting dma
        (Geert Uytterhoeven)"
      
      * tag 'dma-mapping-4.17' of git://git.infradead.org/users/hch/dma-mapping:
        usb: gadget: Add NO_DMA dummies for DMA mapping API
        scsi: Add NO_DMA dummies for SCSI DMA mapping API
        mm: Add NO_DMA dummies for DMA pool API
        dma-coherent: Add NO_DMA dummies for managed DMA API
        dma-mapping: Convert NO_DMA get_dma_ops() into a real dummy
      652ede37
    • Linus Torvalds's avatar
      Merge tag 'gpio-v4.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio · 1b2951dd
      Linus Torvalds authored
      Pull GPIO updates from Linus Walleij:
       "This is the bulk of GPIO changes for the v4.17 kernel cycle:
      
        New drivers:
      
         - Nintendo Wii GameCube GPIO, known as "Hollywood"
      
         - Raspberry Pi mailbox service GPIO expander
      
         - Spreadtrum main SC9860 SoC and IEC GPIO controllers.
      
        Improvements:
      
         - Implemented .get_multiple() callback for most of the
           high-performance industrial GPIO cards for the ISA bus.
      
         - ISA GPIO drivers now select the ISA_BUS_API instead of depending on
           it. This is merged with the same pattern for all the ISA drivers
           and some other Kconfig cleanups related to this.
      
        Cleanup:
      
         - Delete the TZ1090 GPIO drivers following the deletion of this SoC
           from the ARM tree.
      
         - Move the documentation over to driver-api to conform with the rest
           of the kernel documentation build.
      
         - Continue to make the GPIO drivers include only
           <linux/gpio/driver.h> and not the too broad <linux/gpio.h> that we
           want to get rid of.
      
         - Managed to remove VLA allocation from two drivers pending more
           fixes in this area for the next merge window.
      
         - Misc janitorial fixes"
      
      * tag 'gpio-v4.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (77 commits)
        gpio: Add Spreadtrum PMIC EIC driver support
        gpio: Add Spreadtrum EIC driver support
        dt-bindings: gpio: Add Spreadtrum EIC controller documentation
        gpio: ath79: Fix potential NULL dereference in ath79_gpio_probe()
        pinctrl: qcom: Don't allow protected pins to be requested
        gpiolib: Support 'gpio-reserved-ranges' property
        gpiolib: Change bitmap allocation to kmalloc_array
        gpiolib: Extract mask allocation into subroutine
        dt-bindings: gpio: Add a gpio-reserved-ranges property
        gpio: mockup: fix a potential crash when creating debugfs entries
        gpio: pca953x: add compatibility for pcal6524 and pcal9555a
        gpio: dwapb: Add support for a bus clock
        gpio: Remove VLA from xra1403 driver
        gpio: Remove VLA from MAX3191X driver
        gpio: ws16c48: Implement get_multiple callback
        gpio: gpio-mm: Implement get_multiple callback
        gpio: 104-idi-48: Implement get_multiple callback
        gpio: 104-dio-48e: Implement get_multiple callback
        gpio: pcie-idio-24: Implement get_multiple/set_multiple callbacks
        gpio: pci-idio-16: Implement get_multiple callback
        ...
      1b2951dd
  3. Apr 05, 2018