1. 09 May, 2017 30 commits
  2. 07 May, 2017 1 commit
  3. 06 May, 2017 9 commits
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6 · fe7a719b
      Linus Torvalds authored
      Pull cifs fixes from Steve French:
       "Various fixes for stable for CIFS/SMB3 especially for better
        interoperability for SMB3 to Macs.
      
        It also includes Pavel's improvements to SMB3 async i/o support
        (which is much faster now)"
      
      * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
        CIFS: add misssing SFM mapping for doublequote
        SMB3: Work around mount failure when using SMB3 dialect to Macs
        cifs: fix CIFS_IOC_GET_MNT_INFO oops
        CIFS: fix mapping of SFM_SPACE and SFM_PERIOD
        CIFS: fix oplock break deadlocks
        cifs: fix CIFS_ENUMERATE_SNAPSHOTS oops
        cifs: fix leak in FSCTL_ENUM_SNAPS response handling
        Set unicode flag on cifs echo request to avoid Mac error
        CIFS: Add asynchronous write support through kernel AIO
        CIFS: Add asynchronous read support through kernel AIO
        CIFS: Add asynchronous context to support kernel AIO
        cifs: fix IPv6 link local, with scope id, address parsing
        cifs: small underflow in cnvrtDosUnixTm()
      fe7a719b
    • Linus Torvalds's avatar
      Merge tag 'xfs-4.12-merge-7' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · d484467c
      Linus Torvalds authored
      Pull xfs updates from Darrick Wong:
       "Here are the XFS changes for 4.12. The big new feature for this
        release is the new space mapping ioctl that we've been discussing
        since LSF2016, but other than that most of the patches are larger bug
        fixes, memory corruption prevention, and other cleanups.
      
        Summary:
         - various code cleanups
         - introduce GETFSMAP ioctl
         - various refactoring
         - avoid dio reads past eof
         - fix memory corruption and other errors with fragmented directory blocks
         - fix accidental userspace memory corruptions
         - publish fs uuid in superblock
         - make fstrim terminatable
         - fix race between quotaoff and in-core inode creation
         - avoid use-after-free when finishing up w/ buffer heads
         - reserve enough space to handle bmap tree resizing during cow remap"
      
      * tag 'xfs-4.12-merge-7' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (53 commits)
        xfs: fix use-after-free in xfs_finish_page_writeback
        xfs: reserve enough blocks to handle btree splits when remapping
        xfs: wait on new inodes during quotaoff dquot release
        xfs: update ag iterator to support wait on new inodes
        xfs: support ability to wait on new inodes
        xfs: publish UUID in struct super_block
        xfs: Allow user to kill fstrim process
        xfs: better log intent item refcount checking
        xfs: fix up quotacheck buffer list error handling
        xfs: remove xfs_trans_ail_delete_bulk
        xfs: don't use bool values in trace buffers
        xfs: fix getfsmap userspace memory corruption while setting OF_LAST
        xfs: fix __user annotations for xfs_ioc_getfsmap
        xfs: corruption needs to respect endianess too!
        xfs: use NULL instead of 0 to initialize a pointer in xfs_ioc_getfsmap
        xfs: use NULL instead of 0 to initialize a pointer in xfs_getfsmap
        xfs: simplify validation of the unwritten extent bit
        xfs: remove unused values from xfs_exntst_t
        xfs: remove the unused XFS_MAXLINK_1 define
        xfs: more do_div cleanups
        ...
      d484467c
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 044f1daa
      Linus Torvalds authored
      Pull block fixes and updates from Jens Axboe:
       "Some fixes and followup features/changes that should go in, in this
        merge window. This contains:
      
         - Two fixes for lightnvm from Javier, fixing problems in the new code
           merge previously in this merge window.
      
         - A fix from Jan for the backing device changes, fixing an issue in
           NFS that causes a failure to mount on certain setups.
      
         - A change from Christoph, cleaning up the blk-mq init and exit
           request paths.
      
         - Remove elevator_change(), which is now unused. From Bart.
      
         - A fix for queue operation invocation on a dead queue, from Bart.
      
         - A series fixing up mtip32xx for blk-mq scheduling, removing a
           bandaid we previously had in place for this. From me.
      
         - A regression fix for this series, fixing a case where we wait on
           workqueue flushing from an invalid (non-blocking) context. From me.
      
         - A fix/optimization from Ming, ensuring that we don't both quiesce
           and freeze a queue at the same time.
      
         - A fix from Peter on lock ordering for CPU hotplug. Not a real
           problem right now, but will be once the CPU hotplug rework goes in.
      
         - A series from Omar, cleaning up out blk-mq debugfs support, and
           adding support for exporting info from schedulers in debugfs as
           well. This is really useful in debugging stalls or livelocks. From
           Omar"
      
      * 'for-linus' of git://git.kernel.dk/linux-block: (28 commits)
        mq-deadline: add debugfs attributes
        kyber: add debugfs attributes
        blk-mq-debugfs: allow schedulers to register debugfs attributes
        blk-mq: untangle debugfs and sysfs
        blk-mq: move debugfs declarations to a separate header file
        blk-mq: Do not invoke queue operations on a dead queue
        blk-mq-debugfs: get rid of a bunch of boilerplate
        blk-mq-debugfs: rename hw queue directories from <n> to hctx<n>
        blk-mq-debugfs: don't open code strstrip()
        blk-mq-debugfs: error on long write to queue "state" file
        blk-mq-debugfs: clean up flag definitions
        blk-mq-debugfs: separate flags with |
        nfs: Fix bdi handling for cloned superblocks
        block/mq: Cure cpu hotplug lock inversion
        lightnvm: fix bad back free on error path
        lightnvm: create cmd before allocating request
        blk-mq: don't use sync workqueue flushing from drivers
        mtip32xx: convert internal commands to regular block infrastructure
        mtip32xx: cleanup internal tag assumptions
        block: don't call blk_mq_quiesce_queue() after queue is frozen
        ...
      044f1daa
    • Greg Kroah-Hartman's avatar
      refcount: change EXPORT_SYMBOL markings · d557d1b5
      Greg Kroah-Hartman authored
      Now that kref is using the refcount apis, the _GPL markings are getting
      exported to places that it previously wasn't.  Now kref.h is GPLv2
      licensed, so any non-GPL code using it better be talking to some
      lawyers, but changing api markings isn't considered "nice", so let's fix
      this up.
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d557d1b5
    • Masahiro Yamada's avatar
      docs: bump minimal GNU Make version to 3.81 · 37d69ee3
      Masahiro Yamada authored
      Since 2014, you can't successfully build kernels with GNU Make version
      3.80. Example errors:
      
        $ git describe
        v4.11
        $ make --version | head -1
        GNU Make 3.80
        $ make defconfig
          HOSTCC  scripts/basic/fixdep
        scripts/Makefile.host:135: *** missing separator.  Stop.
        make: *** [defconfig] Error 2
        $ make ARCH=arm64 help
        arch/arm64/Makefile:43: *** unterminated call to function `warning': missing `)'.  Stop.
        $ make help >/dev/null
        ./Documentation/Makefile.sphinx:25: Extraneous text after `else' directive
        ./Documentation/Makefile.sphinx:31: *** only one `else' per conditional.  Stop.
        make: *** [help] Error 2
      
      The first breakage was introduced by commit c8589d1e ("kbuild:
      handle multi-objs dependency appropriately").  Since then (i.e. v3.18),
      GNU Make 3.80 has not been able to compile the kernel, but nobody has
      ever complained aboutt (or noticed) it.
      
      Even GNU Make 3.81 is more than 10 years old.  It would not hurt to
      match the documentation with reality instead of fixing makefiles.
      Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      37d69ee3
    • Linus Torvalds's avatar
      initramfs: avoid "label at end of compound statement" error · 394e4f5d
      Linus Torvalds authored
      Commit 17a9be31 ("initramfs: Always do fput() and load modules after
      rootfs populate") introduced an error for the
      
          CONFIG_BLK_DEV_RAM=y
      
      case, because even though the code looks fine, the compiler really wants
      a statement after a label, or you'll get complaints:
      
        init/initramfs.c: In function 'populate_rootfs':
        init/initramfs.c:644:2: error: label at end of compound statement
      
      That commit moved the subsequent statements to outside the compound
      statement, leaving the label without any associated statements.
      Reported-by: default avatarJörg Otte <jrg.otte@gmail.com>
      Fixes: 17a9be31 ("initramfs: Always do fput() and load modules after rootfs populate")
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: Stafford Horne <shorne@gmail.com>
      Cc: stable@vger.kernel.org  # if 17a9be31 gets backported
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      394e4f5d
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · 3ef2bc09
      Linus Torvalds authored
      Pull DeviceTree updates from Rob Herring:
      
       - fix sparse warnings in drivers/of/
      
       - add more overlay unittests
      
       - update dtc to v1.4.4-8-g756ffc4f52f6. This adds more checks on dts
         files such as unit-address formatting and stricter character sets for
         node and property names
      
       - add a common DT modalias function
      
       - move trivial-devices.txt up and out of i2c dir
      
       - ARM NVIC interrupt controller binding
      
       - vendor prefixes for Sensirion, Dioo, Nordic, ROHM
      
       - correct some binding file locations
      
      * tag 'devicetree-for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (24 commits)
        of: fix sparse warnings in fdt, irq, reserved mem, and resolver code
        of: fix sparse warning in of_pci_range_parser_one
        of: fix sparse warnings in of_find_next_cache_node
        of/unittest: Missing unlocks on error
        of: fix uninitialized variable warning for overlay test
        of: fix unittest build without CONFIG_OF_OVERLAY
        of: Add unit tests for applying overlays
        of: per-file dtc compiler flags
        fpga: region: add missing DT documentation for config complete timeout
        of: Add vendor prefix for ROHM Semiconductor
        of: fix "/cpus" reference leak in of_numa_parse_cpu_nodes()
        of: Add vendor prefix for Nordic Semiconductor
        dt-bindings: arm,nvic: Binding for ARM NVIC interrupt controller on Cortex-M
        dtc: update warning settings for new bus and node/property name checks
        scripts/dtc: Update to upstream version v1.4.4-8-g756ffc4f52f6
        scripts/dtc: automate getting dtc version and log in update script
        of: Add function for generating a DT modalias with a newline
        of: fix of_device_get_modalias returned length when truncating buffers
        Documentation: devicetree: move trivial-devices out of I2C realm
        dt-bindings: add vendor prefix for Dioo
        ..
      3ef2bc09
    • Linus Torvalds's avatar
      Merge tag 'for-4.12/dm-fixes' of... · 2eecf3a4
      Linus Torvalds authored
      Merge tag 'for-4.12/dm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
      
      Pull device mapper fixes from Mike Snitzer:
      
       - DM cache metadata fixes to short-circuit operations that require the
         metadata not be in 'fail_io' mode. Otherwise crashes are possible.
      
       - a DM cache fix to address the inability to adapt to continuous IO
         that happened to also reflect a changing working set (which required
         old blocks be demoted before the new working set could be promoted)
      
       - a DM cache smq policy cleanup that fell out from reviewing the above
      
       - fix the Kconfig help text for CONFIG_DM_INTEGRITY
      
      * tag 'for-4.12/dm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
        dm cache metadata: fail operations if fail_io mode has been established
        dm integrity: improve the Kconfig help text for DM_INTEGRITY
        dm cache policy smq: cleanup free_target_met() and clean_target_met()
        dm cache policy smq: allow demotions to happen even during continuous IO
      2eecf3a4
    • Linus Torvalds's avatar
      Merge tag 'libnvdimm-for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · 53ef7d0e
      Linus Torvalds authored
      Pull libnvdimm updates from Dan Williams:
       "The bulk of this has been in multiple -next releases. There were a few
        late breaking fixes and small features that got added in the last
        couple days, but the whole set has received a build success
        notification from the kbuild robot.
      
        Change summary:
      
         - Region media error reporting: A libnvdimm region device is the
           parent to one or more namespaces. To date, media errors have been
           reported via the "badblocks" attribute attached to pmem block
           devices for namespaces in "raw" or "memory" mode. Given that
           namespaces can be in "device-dax" or "btt-sector" mode this new
           interface reports media errors generically, i.e. independent of
           namespace modes or state.
      
           This subsequently allows userspace tooling to craft "ACPI 6.1
           Section 9.20.7.6 Function Index 4 - Clear Uncorrectable Error"
           requests and submit them via the ioctl path for NVDIMM root bus
           devices.
      
         - Introduce 'struct dax_device' and 'struct dax_operations': Prompted
           by a request from Linus and feedback from Christoph this allows for
           dax capable drivers to publish their own custom dax operations.
           This fixes the broken assumption that all dax operations are
           related to a persistent memory device, and makes it easier for
           other architectures and platforms to add customized persistent
           memory support.
      
         - 'libnvdimm' core updates: A new "deep_flush" sysfs attribute is
           available for storage appliance applications to manually trigger
           memory controllers to drain write-pending buffers that would
           otherwise be flushed automatically by the platform ADR
           (asynchronous-DRAM-refresh) mechanism at a power loss event.
           Support for "locked" DIMMs is included to prevent namespaces from
           surfacing when the namespace label data area is locked. Finally,
           fixes for various reported deadlocks and crashes, also tagged for
           -stable.
      
         - ACPI / nfit driver updates: General updates of the nfit driver to
           add DSM command overrides, ACPI 6.1 health state flags support, DSM
           payload debug available by default, and various fixes.
      
        Acknowledgements that came after the branch was pushed:
      
         - commmit 565851c9 "device-dax: fix sysfs attribute deadlock":
      Tested-by: default avatarYi Zhang <yizhan@redhat.com>
      
         - commit 23f49844 "libnvdimm: rework region badblocks clearing"
           Tested-by: Toshi Kani <toshi.kani@hpe.com>"
      
      * tag 'libnvdimm-for-4.12' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm: (52 commits)
        libnvdimm, pfn: fix 'npfns' vs section alignment
        libnvdimm: handle locked label storage areas
        libnvdimm: convert NDD_ flags to use bitops, introduce NDD_LOCKED
        brd: fix uninitialized use of brd->dax_dev
        block, dax: use correct format string in bdev_dax_supported
        device-dax: fix sysfs attribute deadlock
        libnvdimm: restore "libnvdimm: band aid btt vs clear poison locking"
        libnvdimm: fix nvdimm_bus_lock() vs device_lock() ordering
        libnvdimm: rework region badblocks clearing
        acpi, nfit: kill ACPI_NFIT_DEBUG
        libnvdimm: fix clear length of nvdimm_forget_poison()
        libnvdimm, pmem: fix a NULL pointer BUG in nd_pmem_notify
        libnvdimm, region: sysfs trigger for nvdimm_flush()
        libnvdimm: fix phys_addr for nvdimm_clear_poison
        x86, dax, pmem: remove indirection around memcpy_from_pmem()
        block: remove block_device_operations ->direct_access()
        block, dax: convert bdev_dax_supported() to dax_direct_access()
        filesystem-dax: convert to dax_direct_access()
        Revert "block: use DAX for partition table reads"
        ext2, ext4, xfs: retrieve dax_device for iomap operations
        ...
      53ef7d0e