1. 24 5月, 2016 3 次提交
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · 3159ee58
      Linus Torvalds 提交于
      Pull more security subsystem updates from James Morris:
       "Minor updates for the keys code"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
        MAINTAINERS: Update keyrings record and add asymmetric keys record
        lib: asn1_decoder - add MODULE_LICENSE("GPL")
        KEYS: The PKCS#7 test key type should use the secondary keyring
      3159ee58
    • L
      Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux · 1d6da87a
      Linus Torvalds 提交于
      Pull drm updates from Dave Airlie:
       "Here's the main drm pull request for 4.7, it's been a busy one, and
        I've been a bit more distracted in real life this merge window.  Lots
        more ARM drivers, not sure if it'll ever end.  I think I've at least
        one more coming the next merge window.
      
        But changes are all over the place, support for AMD Polaris GPUs is in
        here, some missing GM108 support for nouveau (found in some Lenovos),
        a bunch of MST and skylake fixes.
      
        I've also noticed a few fixes from Arnd in my inbox, that I'll try and
        get in asap, but I didn't think they should hold this up.
      
        New drivers:
         - Hisilicon kirin display driver
         - Mediatek MT8173 display driver
         - ARC PGU - bitstreamer on Synopsys ARC SDP boards
         - Allwinner A13 initial RGB output driver
         - Analogix driver for DisplayPort IP found in exynos and rockchip
      
        DRM Core:
         - UAPI headers fixes and C++ safety
         - DRM connector reference counting
         - DisplayID mode parsing for Dell 5K monitors
         - Removal of struct_mutex from drivers
         - Connector registration cleanups
         - MST robustness fixes
         - MAINTAINERS updates
         - Lockless GEM object freeing
         - Generic fbdev deferred IO support
      
        panel:
         - Support for a bunch of new panels
      
        i915:
         - VBT refactoring
         - PLL computation cleanups
         - DSI support for BXT
         - Color manager support
         - More atomic patches
         - GEM improvements
         - GuC fw loading fixes
         - DP detection fixes
         - SKL GPU hang fixes
         - Lots of BXT fixes
      
        radeon/amdgpu:
         - Initial Polaris support
         - GPUVM/Scheduler/Clock/Power improvements
         - ASYNC pageflip support
         - New mesa feature support
      
        nouveau:
         - GM108 support
         - Power sensor support improvements
         - GR init + ucode fixes.
         - Use GPU provided topology information
      
        vmwgfx:
         - Add host messaging support
      
        gma500:
         - Some cleanups and fixes
      
        atmel:
         - Bridge support
         - Async atomic commit support
      
        fsl-dcu:
         - Timing controller for LCD support
         - Pixel clock polarity support
      
        rcar-du:
         - Misc fixes
      
        exynos:
         - Pipeline clock support
         - Exynoss4533 SoC support
         - HW trigger mode support
         - export HDMI_PHY clock
         - DECON5433 fixes
         - Use generic prime functions
         - use DMA mapping APIs
      
        rockchip:
         - Lots of little fixes
      
        vc4:
         - Render node support
         - Gamma ramp support
         - DPI output support
      
        msm:
         - Mostly cleanups and fixes
         - Conversion to generic struct fence
      
        etnaviv:
         - Fix for prime buffer handling
         - Allow hangcheck to be coalesced with other wakeups
      
        tegra:
         - Gamme table size fix"
      
      * 'drm-next' of git://people.freedesktop.org/~airlied/linux: (1050 commits)
        drm/edid: add displayid detailed 1 timings to the modelist. (v1.1)
        drm/edid: move displayid validation to it's own function.
        drm/displayid: Iterate over all DisplayID blocks
        drm/edid: move displayid tiled block parsing into separate function.
        drm: Nuke ->vblank_disable_allowed
        drm/vmwgfx: Report vmwgfx version to vmware.log
        drm/vmwgfx: Add VMWare host messaging capability
        drm/vmwgfx: Kill some lockdep warnings
        drm/nouveau/gr/gf100-: fix race condition in fecs/gpccs ucode
        drm/nouveau/core: recognise GM108 chipsets
        drm/nouveau/gr/gm107-: fix touching non-existent ppcs in attrib cb setup
        drm/nouveau/gr/gk104-: share implementation of ppc exception init
        drm/nouveau/gr/gk104-: move rop_active_fbps init to nonctx
        drm/nouveau/bios/pll: check BIT table version before trying to parse it
        drm/nouveau/bios/pll: prevent oops when limits table can't be parsed
        drm/nouveau/volt/gk104: round up in gk104_volt_set
        drm/nouveau/fb/gm200: setup mmu debug buffer registers at init()
        drm/nouveau/fb/gk20a,gm20b: setup mmu debug buffer registers at init()
        drm/nouveau/fb/gf100-: allocate mmu debug buffers
        drm/nouveau/fb: allow chipset-specific actions for oneinit()
        ...
      1d6da87a
    • L
      Merge tag 'libnvdimm-for-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · 1f40c495
      Linus Torvalds 提交于
      Pull libnvdimm updates from Dan Williams:
       "The bulk of this update was stabilized before the merge window and
        appeared in -next.  The "device dax" implementation was revised this
        week in response to review feedback, and to address failures detected
        by the recently expanded ndctl unit test suite.
      
        Not included in this pull request are two dax topic branches (dax
        error handling, and dax radix-tree locking).  These topics were
        deferred to get a few more days of -next integration testing, and to
        coordinate a branch baseline with Ted and the ext4 tree.  Vishal and
        Ross will send the error handling and locking topics respectively in
        the next few days.
      
        This branch has received a positive build result from the kbuild robot
        across 226 configs.
      
        Summary:
      
         - Device DAX for persistent memory: Device DAX is the device-centric
           analogue of Filesystem DAX (CONFIG_FS_DAX).  It allows memory
           ranges to be allocated and mapped without need of an intervening
           file system.  Device DAX is strict, precise and predictable.
           Specifically this interface:
      
            a) Guarantees fault granularity with respect to a given page size
               (pte, pmd, or pud) set at configuration time.
      
            b) Enforces deterministic behavior by being strict about what
               fault scenarios are supported.
      
           Persistent memory is the first target, but the mechanism is also
           targeted for exclusive allocations of performance/feature
           differentiated memory ranges.
      
         - Support for the HPE DSM (device specific method) command formats.
           This enables management of these first generation devices until a
           unified DSM specification materializes.
      
         - Further ACPI 6.1 compliance with support for the common dimm
           identifier format.
      
         - Various fixes and cleanups across the subsystem"
      
      * tag 'libnvdimm-for-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm: (40 commits)
        libnvdimm, dax: fix deletion
        libnvdimm, dax: fix alignment validation
        libnvdimm, dax: autodetect support
        libnvdimm: release ida resources
        Revert "block: enable dax for raw block devices"
        /dev/dax, core: file operations and dax-mmap
        /dev/dax, pmem: direct access to persistent memory
        libnvdimm: stop requiring a driver ->remove() method
        libnvdimm, dax: record the specified alignment of a dax-device instance
        libnvdimm, dax: reserve space to store labels for device-dax
        libnvdimm, dax: introduce device-dax infrastructure
        nfit: add sysfs dimm 'family' and 'dsm_mask' attributes
        tools/testing/nvdimm: ND_CMD_CALL support
        nfit: disable vendor specific commands
        nfit: export subsystem ids as attributes
        nfit: fix format interface code byte order per ACPI6.1
        nfit, libnvdimm: limited/whitelisted dimm command marshaling mechanism
        nfit, libnvdimm: clarify "commands" vs "_DSMs"
        libnvdimm: increase max envelope size for ioctl
        acpi/nfit: Add sysfs "id" for NVDIMM ID
        ...
      1f40c495
  2. 23 5月, 2016 10 次提交
  3. 22 5月, 2016 8 次提交
    • L
      Merge tag 'for-f2fs-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs · f6c658df
      Linus Torvalds 提交于
      Pull f2fs updates from Jaegeuk Kim:
       "In this round, as Ted pointed out, fscrypto allows one more key prefix
        given by filesystem to resolve backward compatibility issues.  Other
        than that, we've fixed several error handling cases by introducing
        a fault injection facility.  We've also achieved performance
        improvement in some workloads as well as a bunch of bug fixes.
      
        Summary:
      
        Enhancements:
         - fs-specific prefix for fscrypto
         - fault injection facility
         - expose validity bitmaps for user to be aware of fragmentation
         - fallocate/rm/preallocation speed up
         - use percpu counters
      
        Bug fixes:
         - some inline_dentry/inline_data bugs
         - error handling for atomic/volatile/orphan inodes
         - recover broken superblock"
      
      * tag 'for-f2fs-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (73 commits)
        f2fs: fix to update dirty page count correctly
        f2fs: flush pending bios right away when error occurs
        f2fs: avoid ENOSPC fault in the recovery process
        f2fs: make exit_f2fs_fs more clear
        f2fs: use percpu_counter for total_valid_inode_count
        f2fs: use percpu_counter for alloc_valid_block_count
        f2fs: use percpu_counter for # of dirty pages in inode
        f2fs: use percpu_counter for page counters
        f2fs: use bio count instead of F2FS_WRITEBACK page count
        f2fs: manipulate dirty file inodes when DATA_FLUSH is set
        f2fs: add fault injection to sysfs
        f2fs: no need inc dirty pages under inode lock
        f2fs: fix incorrect error path handling in f2fs_move_rehashed_dirents
        f2fs: fix i_current_depth during inline dentry conversion
        f2fs: correct return value type of f2fs_fill_super
        f2fs: fix deadlock when flush inline data
        f2fs: avoid f2fs_bug_on during recovery
        f2fs: show # of orphan inodes
        f2fs: support in batch fzero in dnode page
        f2fs: support in batch multi blocks preallocation
        ...
      f6c658df
    • D
      Merge branch 'for-4.7/dax' into libnvdimm-for-next · 36092ee8
      Dan Williams 提交于
      36092ee8
    • D
      libnvdimm, dax: fix deletion · 03dca343
      Dan Williams 提交于
      The ndctl unit tests discovered that the dax enabling omitted updates to
      nd_detach_and_reset().  This routine clears device the configuration
      when the namespace is detached.  Without this clearing userspace may
      assume that the device is in the process of being configured by another
      agent in the system.
      Signed-off-by: NDan Williams <dan.j.williams@intel.com>
      03dca343
    • D
      libnvdimm, dax: fix alignment validation · 5e24c9fd
      Dan Williams 提交于
      Testing the dax-device autodetect support revealed a probe failure with
      the following result:
      
          dax0.1: bad offset: 0x8200000 dax disabled
      
      The original pfn-device implementation inferred the alignment from
      ilog2(offset), now that the alignment is explicit the is_power_of_2()
      needs replacing with a real sanity check against the recorded alignment.
      Otherwise the alignment check is useless in the implicit case and only
      the minimum size of the offset matters.
      
      This self-consistency check is further validated by the probe path that
      will re-check that the offset is large enough to contain all the
      metadata required to enable the device.
      
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NDan Williams <dan.j.williams@intel.com>
      5e24c9fd
    • L
      Merge branch 'for-linus-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · 07be1337
      Linus Torvalds 提交于
      Pull btrfs updates from Chris Mason:
       "This has our merge window series of cleanups and fixes.  These target
        a wide range of issues, but do include some important fixes for
        qgroups, O_DIRECT, and fsync handling.  Jeff Mahoney moved around a
        few definitions to make them easier for userland to consume.
      
        Also whiteout support is included now that issues with overlayfs have
        been cleared up.
      
        I have one more fix pending for page faults during btrfs_copy_from_user,
        but I wanted to get this bulk out the door first"
      
      * 'for-linus-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (90 commits)
        btrfs: fix memory leak during RAID 5/6 device replacement
        Btrfs: add semaphore to synchronize direct IO writes with fsync
        Btrfs: fix race between block group relocation and nocow writes
        Btrfs: fix race between fsync and direct IO writes for prealloc extents
        Btrfs: fix number of transaction units for renames with whiteout
        Btrfs: pin logs earlier when doing a rename exchange operation
        Btrfs: unpin logs if rename exchange operation fails
        Btrfs: fix inode leak on failure to setup whiteout inode in rename
        btrfs: add support for RENAME_EXCHANGE and RENAME_WHITEOUT
        Btrfs: pin log earlier when renaming
        Btrfs: unpin log if rename operation fails
        Btrfs: don't do unnecessary delalloc flushes when relocating
        Btrfs: don't wait for unrelated IO to finish before relocation
        Btrfs: fix empty symlink after creating symlink and fsync parent dir
        Btrfs: fix for incorrect directory entries after fsync log replay
        btrfs: build fixup for qgroup_account_snapshot
        btrfs: qgroup: Fix qgroup accounting when creating snapshot
        Btrfs: fix fspath error deallocation
        btrfs: make find_workspace warn if there are no workspaces
        btrfs: make find_workspace always succeed
        ...
      07be1337
    • L
      Merge tag 'rtc-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux · 63d222b9
      Linus Torvalds 提交于
      Pull RTC updates from Alexandre Belloni:
       "Subsystem wide cleanups:
         - Use IS_ENABLED() instead of checking for built-in or module
         - remove useless DRV_VERSION
         - remove CLK_IS_ROOT
         - remove UIE signaling
      
        Drivers:
         - ds1302: rewritten to be a proper SPI device driver
         - m41t80: huge cleanup, alarm, wakelarm ans oscialltor failure
           detection support
         - rv3029: switch to regmap to handle rv3049, alarm support, fixes
         - zynqmp: enable switching to battery power, fixes
         - small fixes for at91sam9, da9053, ds1307, ds1685, ds3232, r2025,
           sa1100, snvs, stmp3xxx, tps6586x"
      
      * tag 'rtc-4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (40 commits)
        rtc: tps6586x: rename so module can be autoloaded
        rtc: rv3029: hide unused i2c device table
        rtc: rs5c372: r2025: fix check for 'oscillator halted' condition
        rtc: rv3029: add alarm IRQ
        rtc: rv3029: fix set_time function
        rtc: rv3029: fix alarm support
        rtc: rv3029: Remove some checks and warnings
        rtc: rv3029: Add support of RV3049
        rtc: rv3029: convert to use regmap
        rtc: rv3029: remove 'i2c' in functions names
        rtc: stmp3xxx: print message on error
        rtc: Use IS_ENABLED() instead of checking for built-in or module
        rtc: ds3232: fix call trace when rtc->ops_lock is used as NULL
        rtc: snvs: return error in case enable_irq_wake fails
        rtc: zynqmp: Update seconds time programming logic
        rtc: sa1100: DT spelling s/interrupt-name/interrupt-names/
        rtc: mc13xxx: remove UIE signaling
        rtc: mxc: remove UIE signaling
        rtc: ds1307: Remove CLK_IS_ROOT
        rtc: hym8563: Remove CLK_IS_ROOT
        ...
      63d222b9
    • L
      Merge branch 'mailbox-for-next' of git://git.linaro.org/landing-teams/working/fujitsu/integration · 10cd7158
      Linus Torvalds 提交于
      Pull mailbox updates from Jassi Brar:
       "OMAP:
         - Remove non-DT support from mailbox driver
         - Move PM from client calls to native driver suspend/resume
         - Trivial cleanups to make checkpatch happy
      
        STI:
         - Check return from devm_ioremap_resource as ERR_PTR, not NULL"
      
      * 'mailbox-for-next' of git://git.linaro.org/landing-teams/working/fujitsu/integration:
        mailbox: Fix devm_ioremap_resource error detection code
        mailbox/omap: kill omap_mbox_{save/restore}_ctx() functions
        mailbox/omap: check for any unread messages during suspend
        mailbox/omap: add support for suspend/resume
        mailbox/omap: store mailbox interrupt type in omap_mbox_device
        mailbox/omap: add blank lines after declarations
        mailbox/omap: remove FSF mailing address paragraph
        mailbox/omap: use variable name for sizeof() operator
        mailbox/omap: drop legacy platform device support
      10cd7158
    • L
      x86 isa: add back X86_32 dependency on CONFIG_ISA · 51e68d05
      Linus Torvalds 提交于
      Commit b3c1be1b ("base: isa: Remove X86_32 dependency") made ISA
      support available on x86-64 too.  That's not right - while there are
      some LPC-style devices that might be useful still and be based on
      ISA-like IP blocks, that is *not* an excuse to try to enable any random
      legacy drivers.
      
      Such drivers should be individually enabled and made to perhaps depend
      on ISA_DMA_API instead (which we have continued to support on x86-64).
      Or we could add another "ISA_XYZ_API" that we support that doesn't
      enable random old drivers that aren't even 64-bit clean nor do we have
      any test coverage for.
      
      Turning off ISA will now also turn off some drivers that have been
      marked as depending on it as part of this series, and that used to work
      on modern platforms.
      
      See for example commits ad7afc38..cc736607, which may also need
      to be reverted.
      
      This commit means that the warnings that came in due to enabling ISA
      widely are now gone again.
      Acked-by: NWilliam Breathitt Gray <vilhelm.gray@gmail.com>
      Cc: Linus Walleij <linus.walleij@linaro.org>
      Cc: Guenter Roeck <linux@roeck-us.net>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      51e68d05
  4. 21 5月, 2016 19 次提交
    • N
      rtc: tps6586x: rename so module can be autoloaded · b9ba1eb0
      Nicolas Chauvet 提交于
      This module is loaded by the related mfd driver which has
      the needed MODULE_DEVICE_TABLE(i2c,...).
      
      This patch fix the modalias when the rtc driver is built
      as a module, so the right name is used.
      Everything operates correctly when this module is builtin.
      
      Fixes: esdc59ed38 ("rtc: add RTC driver for TPS6586x")
      Signed-off-by: NNicolas Chauvet <kwizart@gmail.com>
      Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com>
      b9ba1eb0
    • A
      rtc: rv3029: hide unused i2c device table · 814db2bc
      Arnd Bergmann 提交于
      The added support for SPI mode made it possible to configure the driver
      when I2C is disabled, leaving an unused device table:
      
      drivers/rtc/rtc-rv3029c2.c:794:29: error: 'rv3029_id' defined but not used [-Werror=unused-variable]
      
      This moves the table inside of the #ifdef section that has the
      only user, to avoid the harmless warning.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Fixes: d08f50dd0afc ("rtc: rv3029: Add support of RV3049")
      Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com>
      814db2bc
    • T
      rtc: rs5c372: r2025: fix check for 'oscillator halted' condition · a9dbe558
      Thomas Koeller 提交于
      The R2025SD chip, according to its data sheet, sets the /XST
      bit to zero if the oscillator stops. Hence the check for this
      condition was wrong.
      Signed-off-by: NThomas Koeller <thomas.koeller@baslerweb.com>
      Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com>
      a9dbe558
    • M
      rtc: rv3029: add alarm IRQ · 0ddc5b89
      Mylène Josserand 提交于
      Add the alarm IRQ functionality.
      Signed-off-by: NMylène Josserand <mylene.josserand@free-electrons.com>
      Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com>
      0ddc5b89
    • M
      rtc: rv3029: fix set_time function · 38201ca3
      Mylène Josserand 提交于
      The bin2bcd function in set_time is uncorrect on weekdays as the
      bit mask should be done at the end of arithmetic operations.
      Signed-off-by: NMylène Josserand <mylene.josserand@free-electrons.com>
      Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com>
      38201ca3
    • M
      rtc: rv3029: fix alarm support · dc492e86
      Mylène Josserand 提交于
      The RTC RV3029 handles different types of alarms : seconds, minutes, ...
      These alarms can be enabled or disabled individually using an AE_x bit
      which is the last bit (BIT(7)) on each alarm registers.
      
      To prepare the alarm IRQ support, the current code enables all the alarm
      types by setting each AE_x to 1.
      It also fixes others alarms issues :
         - month and weekday errors : it was performing -1 instead of +1.
         - wrong use of bit mask with bin2bcd
      Signed-off-by: NMylène Josserand <mylene.josserand@free-electrons.com>
      Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com>
      dc492e86
    • M
      rtc: rv3029: Remove some checks and warnings · abe2f551
      Mylène Josserand 提交于
      Remove some checks from checkpatch such as spaces around arithmetic
      operations or prefer "unsigned int".
      Signed-off-by: NMylène Josserand <mylene.josserand@free-electrons.com>
      Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com>
      abe2f551
    • M
      rtc: rv3029: Add support of RV3049 · c2a1c145
      Mylène Josserand 提交于
      Add support of Microcrystal RV3049 RTC (SPI) using regmap on the
      RV3029 (I2C) driver.
      Signed-off-by: NMylène Josserand <mylene.josserand@free-electrons.com>
      Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com>
      c2a1c145
    • M
      rtc: rv3029: convert to use regmap · e6e38082
      Mylène Josserand 提交于
      To add support of rv3049, the current driver is converted to use regmap.
      Signed-off-by: NMylène Josserand <mylene.josserand@free-electrons.com>
      Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com>
      e6e38082
    • M
      rtc: rv3029: remove 'i2c' in functions names · 4e7f1a60
      Mylène Josserand 提交于
      To prepare the use of regmap to add the support of RV-3049, all the
      'i2c' in functions's names are removed.
      Signed-off-by: NMylène Josserand <mylene.josserand@free-electrons.com>
      Signed-off-by: NAlexandre Belloni <alexandre.belloni@free-electrons.com>
      4e7f1a60
    • L
      Merge branch 'akpm' (patches from Andrew) · 5469dc27
      Linus Torvalds 提交于
      Merge more updates from Andrew Morton:
      
       - the rest of MM
      
       - KASAN updates
      
       - procfs updates
      
       - exit, fork updates
      
       - printk updates
      
       - lib/ updates
      
       - radix-tree testsuite updates
      
       - checkpatch updates
      
       - kprobes updates
      
       - a few other misc bits
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (162 commits)
        samples/kprobes: print out the symbol name for the hooks
        samples/kprobes: add a new module parameter
        kprobes: add the "tls" argument for j_do_fork
        init/main.c: simplify initcall_blacklisted()
        fs/efs/super.c: fix return value
        checkpatch: improve --git <commit-count> shortcut
        checkpatch: reduce number of `git log` calls with --git
        checkpatch: add support to check already applied git commits
        checkpatch: add --list-types to show message types to show or ignore
        checkpatch: advertise the --fix and --fix-inplace options more
        checkpatch: whine about ACCESS_ONCE
        checkpatch: add test for keywords not starting on tabstops
        checkpatch: improve CONSTANT_COMPARISON test for structure members
        checkpatch: add PREFER_IS_ENABLED test
        lib/GCD.c: use binary GCD algorithm instead of Euclidean
        radix-tree: free up the bottom bit of exceptional entries for reuse
        dax: move RADIX_DAX_ definitions to dax.c
        radix-tree: make radix_tree_descend() more useful
        radix-tree: introduce radix_tree_replace_clear_tags()
        radix-tree: tidy up __radix_tree_create()
        ...
      5469dc27
    • L
      Merge tag 'staging-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · 2f37dd13
      Linus Torvalds 提交于
      Pull staging and IIO driver updates from Greg KH:
       "Here's the big staging and iio driver update for 4.7-rc1.
      
        I think we almost broke even with this release, only adding a few more
        lines than we removed, which isn't bad overall given that there's a
        bunch of new iio drivers added.
      
        The Lustre developers seem to have woken up from their sleep and have
        been doing a great job in cleaning up the code and pruning unused or
        old cruft, the filesystem is almost readable :)
      
        Other than that, just a lot of basic coding style cleanups in the
        churn.  All have been in linux-next for a while with no reported
        issues"
      
      * tag 'staging-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (938 commits)
        Staging: emxx_udc: emxx_udc: fixed coding style issue
        staging/gdm724x: fix "alignment should match open parenthesis" issues
        staging/gdm724x: Fix avoid CamelCase
        staging: unisys: rename misleading var ii with frag
        staging: unisys: visorhba: switch success handling to error handling
        staging: unisys: visorhba: main path needs to flow down the left margin
        staging: unisys: visorinput: handle_locking_key() simplifications
        staging: unisys: visorhba: fail gracefully for thread creation failures
        staging: unisys: visornic: comment restructuring and removing bad diction
        staging: unisys: fix format string %Lx to %llx for u64
        staging: unisys: remove unused struct members
        staging: unisys: visorchannel: correct variable misspelling
        staging: unisys: visorhba: replace functionlike macro with function
        staging: dgnc: Need to check for NULL of ch
        staging: dgnc: remove redundant condition check
        staging: dgnc: fix 'line over 80 characters'
        staging: dgnc: clean up the dgnc_get_modem_info()
        staging: lustre: lnet: enable configuration per NI interface
        staging: lustre: o2iblnd: properly set ibr_why
        staging: lustre: o2iblnd: remove last of kiblnd_tunables_fini
        ...
      2f37dd13
    • D
      libnvdimm, dax: autodetect support · c5ed9268
      Dan Williams 提交于
      For autodetecting a previously established dax configuration we need the
      info block to indicate block-device vs device-dax mode, and we need to
      have the default namespace probe hand-off the configuration to the
      dax_pmem driver.
      Signed-off-by: NDan Williams <dan.j.williams@intel.com>
      c5ed9268
    • D
      libnvdimm: release ida resources · b354aba0
      Dan Williams 提交于
      ida instances allocate some internal memory for ->free_bitmap in
      addition to the base 'struct ida'.  Use ida_destroy() to release that
      memory at module_exit().
      Reported-by: NJohannes Thumshirn <jthumshirn@suse.de>
      Reviewed-by: NJohannes Thumshirn <jthumshirn@suse.de>
      Signed-off-by: NDan Williams <dan.j.williams@intel.com>
      b354aba0
    • D
      Revert "block: enable dax for raw block devices" · acc93d30
      Dan Williams 提交于
      This reverts commit 5a023cdb.
      
      The functionality is superseded by the new "Device DAX" facility.
      
      Cc: Jeff Moyer <jmoyer@redhat.com>
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Dave Chinner <david@fromorbit.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Ross Zwisler <ross.zwisler@linux.intel.com>
      Cc: Jan Kara <jack@suse.com>
      Signed-off-by: NDan Williams <dan.j.williams@intel.com>
      acc93d30
    • D
      /dev/dax, core: file operations and dax-mmap · dee41079
      Dan Williams 提交于
      The "Device DAX" core enables dax mappings of performance / feature
      differentiated memory.  An open mapping or file handle keeps the backing
      struct device live, but new mappings are only possible while the device
      is enabled.   Faults are handled under rcu_read_lock to synchronize
      with the enabled state of the device.
      
      Similar to the filesystem-dax case the backing memory may optionally
      have struct page entries.  However, unlike fs-dax there is no support
      for private mappings, or mappings that are not backed by media (see
      use of zero-page in fs-dax).
      
      Mappings are always guaranteed to match the alignment of the dax_region.
      If the dax_region is configured to have a 2MB alignment, all mappings
      are guaranteed to be backed by a pmd entry.  Contrast this determinism
      with the fs-dax case where pmd mappings are opportunistic.  If userspace
      attempts to force a misaligned mapping, the driver will fail the mmap
      attempt.  See dax_dev_check_vma() for other scenarios that are rejected,
      like MAP_PRIVATE mappings.
      
      Cc: Hannes Reinecke <hare@suse.de>
      Cc: Jeff Moyer <jmoyer@redhat.com>
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Dave Hansen <dave.hansen@linux.intel.com>
      Cc: Ross Zwisler <ross.zwisler@linux.intel.com>
      Acked-by: N"Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
      Reviewed-by: NJohannes Thumshirn <jthumshirn@suse.de>
      Signed-off-by: NDan Williams <dan.j.williams@intel.com>
      dee41079
    • D
      /dev/dax, pmem: direct access to persistent memory · ab68f262
      Dan Williams 提交于
      Device DAX is the device-centric analogue of Filesystem DAX
      (CONFIG_FS_DAX).  It allows memory ranges to be allocated and mapped
      without need of an intervening file system.  Device DAX is strict,
      precise and predictable.  Specifically this interface:
      
      1/ Guarantees fault granularity with respect to a given page size (pte,
      pmd, or pud) set at configuration time.
      
      2/ Enforces deterministic behavior by being strict about what fault
      scenarios are supported.
      
      For example, by forcing MADV_DONTFORK semantics and omitting MAP_PRIVATE
      support device-dax guarantees that a mapping always behaves/performs the
      same once established.  It is the "what you see is what you get" access
      mechanism to differentiated memory vs filesystem DAX which has
      filesystem specific implementation semantics.
      
      Persistent memory is the first target, but the mechanism is also
      targeted for exclusive allocations of performance differentiated memory
      ranges.
      
      This commit is limited to the base device driver infrastructure to
      associate a dax device with pmem range.
      
      Cc: Jeff Moyer <jmoyer@redhat.com>
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Dave Hansen <dave.hansen@linux.intel.com>
      Cc: Ross Zwisler <ross.zwisler@linux.intel.com>
      Reviewed-by: NJohannes Thumshirn <jthumshirn@suse.de>
      Signed-off-by: NDan Williams <dan.j.williams@intel.com>
      ab68f262
    • L
      Merge tag 'driver-core-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core · 3aa2fc16
      Linus Torvalds 提交于
      Pull driver core updates from Greg KH:
       "Here's the "big" driver core update for 4.7-rc1.
      
        Mostly just debugfs changes, the long-known and messy races with
        removing debugfs files should be fixed thanks to the great work of
        Nicolai Stange.  We also have some isa updates in here (the x86
        maintainers told me to take it through this tree), a new warning when
        we run out of dynamic char major numbers, and a few other assorted
        changes, details in the shortlog.
      
        All have been in linux-next for some time with no reported issues"
      
      * tag 'driver-core-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (32 commits)
        Revert "base: dd: don't remove driver_data in -EPROBE_DEFER case"
        gpio: ws16c48: Utilize the ISA bus driver
        gpio: 104-idio-16: Utilize the ISA bus driver
        gpio: 104-idi-48: Utilize the ISA bus driver
        gpio: 104-dio-48e: Utilize the ISA bus driver
        watchdog: ebc-c384_wdt: Utilize the ISA bus driver
        iio: stx104: Utilize the module_isa_driver and max_num_isa_dev macros
        iio: stx104: Add X86 dependency to STX104 Kconfig option
        Documentation: Add ISA bus driver documentation
        isa: Implement the max_num_isa_dev macro
        isa: Implement the module_isa_driver macro
        pnp: pnpbios: Add explicit X86_32 dependency to PNPBIOS
        isa: Decouple X86_32 dependency from the ISA Kconfig option
        driver-core: use 'dev' argument in dev_dbg_ratelimited stub
        base: dd: don't remove driver_data in -EPROBE_DEFER case
        kernfs: Move faulting copy_user operations outside of the mutex
        devcoredump: add scatterlist support
        debugfs: unproxify files created through debugfs_create_u32_array()
        debugfs: unproxify files created through debugfs_create_blob()
        debugfs: unproxify files created through debugfs_create_bool()
        ...
      3aa2fc16
    • L
      Merge tag 'char-misc-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 5af23440
      Linus Torvalds 提交于
      Pull char / misc driver updates from Greg KH:
       "Here's the big char and misc driver update for 4.7-rc1.
      
        Lots of different tiny driver subsystems have updates here with new
        drivers and functionality.  Details in the shortlog.
      
        All have been in linux-next with no reported issues for a while"
      
      * tag 'char-misc-4.7-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (125 commits)
        mcb: Delete num_cells variable which is not required
        mcb: Fixed bar number assignment for the gdd
        mcb: Replace ioremap and request_region with the devm version
        mcb: Implement bus->dev.release callback
        mcb: export bus information via sysfs
        mcb: Correctly initialize the bus's device
        mei: bus: call mei_cl_read_start under device lock
        coresight: etb10: adjust read pointer only when needed
        coresight: configuring ETF in FIFO mode when acting as link
        coresight: tmc: implementing TMC-ETF AUX space API
        coresight: moving struct cs_buffers to header file
        coresight: tmc: keep track of memory width
        coresight: tmc: make sysFS and Perf mode mutually exclusive
        coresight: tmc: dump system memory content only when needed
        coresight: tmc: adding mode of operation for link/sinks
        coresight: tmc: getting rid of multiple read access
        coresight: tmc: allocating memory when needed
        coresight: tmc: making prepare/unprepare functions generic
        coresight: tmc: splitting driver in ETB/ETF and ETR components
        coresight: tmc: cleaning up header file
        ...
      5af23440