1. 02 Jul, 2015 15 commits
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-4.2-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · 8688d954
      Linus Torvalds authored
      Pull NFS client updates from Trond Myklebust:
       "Highlights include:
      
        Stable patches:
         - Fix a crash in the NFSv4 file locking code.
         - Fix an fsync() regression, where we were failing to retry I/O in
           some circumstances.
         - Fix an infinite loop in NFSv4.0 OPEN stateid recovery
         - Fix a memory leak when an attempted pnfs fails.
         - Fix a memory leak in the backchannel code
         - Large hostnames were not supported correctly in NFSv4.1
         - Fix a pNFS/flexfiles bug that was impeding error reporting on I/O.
         - Fix a couple of credential issues in pNFS/flexfiles
      
        Bugfixes + cleanups:
         - Open flag sanity checks in the NFSv4 atomic open codepath
         - More NFSv4 delegation related bugfixes
         - Various NFSv4.1 backchannel bugfixes and cleanups
         - Fix the NFS swap socket code
         - Various cleanups of the NFSv4 SETCLIENTID and EXCHANGE_ID code
         - Fix a UDP transport deadlock issue
      
        Features:
         - More RDMA client transport improvements
         - NFSv4.2 LAYOUTSTATS functionality for pnfs flexfiles"
      
      * tag 'nfs-for-4.2-1' of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (87 commits)
        nfs: Remove invalid tk_pid from debug message
        nfs: Remove invalid NFS_ATTR_FATTR_V4_REFERRAL checking in nfs4_get_rootfh
        nfs: Drop bad comment in nfs41_walk_client_list()
        nfs: Remove unneeded micro checking of CONFIG_PROC_FS
        nfs: Don't setting FILE_CREATED flags always
        nfs: Use remove_proc_subtree() instead remove_proc_entry()
        nfs: Remove unused argument in nfs_server_set_fsinfo()
        nfs: Fix a memory leak when meeting an unsupported state protect
        nfs: take extra reference to fl->fl_file when running a LOCKU operation
        NFSv4: When returning a delegation, don't reclaim an incompatible open mode.
        NFSv4.2: LAYOUTSTATS is optional to implement
        NFSv4.2: Fix up a decoding error in layoutstats
        pNFS/flexfiles: Fix the reset of struct pgio_header when resending
        pNFS/flexfiles: Turn off layoutcommit for servers that don't need it
        pnfs/flexfiles: protect ktime manipulation with mirror lock
        nfs: provide pnfs_report_layoutstat when NFS42 is disabled
        nfs: verify open flags before allowing open
        nfs: always update creds in mirror, even when we have an already connected ds
        nfs: fix potential credential leak in ff_layout_update_mirror_cred
        pnfs/flexfiles: report layoutstat regularly
        ...
      8688d954
    • Linus Torvalds's avatar
      Merge branch 'overlayfs-next' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs · 320cd413
      Linus Torvalds authored
      Pull overlayfs updates from Miklos Szeredi:
       "This relaxes the requirements on the lower layer filesystem: now ones
        that implement .d_revalidate, such as NFS, can be used.
      
        Upper layer filesystems still has the "no .d_revalidate" requirement.
      
        Also a bad interaction with jffs2 locking has been fixed"
      
      * 'overlayfs-next' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs:
        ovl: lookup whiteouts outside iterate_dir()
        ovl: allow distributed fs as lower layer
        ovl: don't traverse automount points
      320cd413
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse · a7ba4bf5
      Linus Torvalds authored
      Pull fuse updates from Miklos Szeredi:
       "This is the start of improving fuse scalability.
      
        An input queue and a processing queue is split out from the monolithic
        fuse connection, each of those having their own spinlock.  The end of
        the patchset adds the ability to clone a fuse connection.  This means,
        that instead of having to read/write requests/answers on a single fuse
        device fd, the fuse daemon can have multiple distinct file descriptors
        open.  Each of those can be used to receive requests and send answers,
        currently the only constraint is that a request must be answered on
        the same fd as it was read from.
      
        This can be extended further to allow binding a device clone to a
        specific CPU or NUMA node.
      
        Based on a patchset by Srinivas Eeda and Ashish Samant.  Thanks to
        Ashish for the review of this series"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse: (40 commits)
        fuse: update MAINTAINERS entry
        fuse: separate pqueue for clones
        fuse: introduce per-instance fuse_dev structure
        fuse: device fd clone
        fuse: abort: no fc->lock needed for request ending
        fuse: no fc->lock for pqueue parts
        fuse: no fc->lock in request_end()
        fuse: cleanup request_end()
        fuse: request_end(): do once
        fuse: add req flag for private list
        fuse: pqueue locking
        fuse: abort: group pqueue accesses
        fuse: cleanup fuse_dev_do_read()
        fuse: move list_del_init() from request_end() into callers
        fuse: duplicate ->connected in pqueue
        fuse: separate out processing queue
        fuse: simplify request_wait()
        fuse: no fc->lock for iqueue parts
        fuse: allow interrupt queuing without fc->lock
        fuse: iqueue locking
        ...
      a7ba4bf5
    • Linus Torvalds's avatar
      Merge tag 'module-misc-v4.1-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux · a611fb75
      Linus Torvalds authored
      Pull init.h/module.h fragility fixes from Paul Gortmaker:
       "Fixup various init.h misuses that are fragile wrt code moving to
        module.h
      
        What started as a removal of no longer required include <linux/init.h>
        due to the earlier __cpuinit and __devinit removal led to the
        observation that some module specfic support was living in init.h
        itself, thus preventing the full removal from introducing compile
        regressions.
      
        This series includes a few final fixups needed prior to the relocation
        of the modular init code from <init.h> to <module.h>.  These are
        things that weren't easily categorized into any of the other previous
        series categories already requested for pull.
      
        That said, each fixup branch (including this one) is independent and
        there are no ordering constraints.  Only the final code relocation
        (which is NOT in this pull) requires that all my cleanup branches be
        merged first"
      
      * tag 'module-misc-v4.1-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:
        tile: add init.h to usb.c to avoid compile failure
        arm: fix implicit #include <linux/init.h> in entry asm.
        x86: replace __init_or_module with __init in non-modular vsmp_64.c
      a611fb75
    • Linus Torvalds's avatar
      Merge tag 'module-builtin_driver-v4.1-rc8' of... · 75462c8a
      Linus Torvalds authored
      Merge tag 'module-builtin_driver-v4.1-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux
      
      Pull module_platform_driver replacement from Paul Gortmaker:
       "Replace module_platform_driver with builtin_platform driver in non
        modules.
      
        We see an increasing number of non-modular drivers using
        modular_driver() type register functions.  There are several downsides
        to letting this continue unchecked:
      
         - The code can appear modular to a reader of the code, and they won't
           know if the code really is modular without checking the Makefile
           and Kconfig to see if compilation is governed by a bool or
           tristate.
      
         - Coders of drivers may be tempted to code up an __exit function that
           is never used, just in order to satisfy the required three args of
           the modular registration function.
      
         - Non-modular code ends up including the <module.h> which increases
           CPP overhead that they don't need.
      
         - It hinders us from performing better separation of the module init
           code and the generic init code.
      
        So here we introduce similar macros for builtin drivers.  Then we
        convert builtin drivers (controlled by a bool Kconfig) by making the
        following type of mapping:
      
          module_platform_driver()       --->  builtin_platform_driver()
          module_platform_driver_probe() --->  builtin_platform_driver_probe().
      
        The set of drivers that are converted here are just the ones that
        showed up as relying on an implicit include of <module.h> during a
        pending header cleanup.  So we convert them here vs adding an include
        of <module.h> to non-modular code to avoid compile fails.  Additonal
        conversions can be done asynchronously at any time.
      
        Once again, an unused module_exit function that is removed here
        appears in the diffstat as an outlier wrt all the other changes"
      
      * tag 'module-builtin_driver-v4.1-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:
        drivers/clk: convert sunxi/clk-mod0.c to use builtin_platform_driver
        drivers/power: Convert non-modular syscon-reboot to use builtin_platform_driver
        drivers/soc: Convert non-modular soc-realview to use builtin_platform_driver
        drivers/soc: Convert non-modular tegra/pmc to use builtin_platform_driver
        drivers/cpufreq: Convert non-modular s5pv210-cpufreq.c to use builtin_platform_driver
        drivers/cpuidle: Convert non-modular drivers to use builtin_platform_driver
        drivers/platform: Convert non-modular pdev_bus to use builtin_platform_driver
        platform_device: better support builtin boilerplate avoidance
      75462c8a
    • Linus Torvalds's avatar
      Merge tag 'module_init-alternate_initcall-v4.1-rc8' of... · 9d90f035
      Linus Torvalds authored
      Merge tag 'module_init-alternate_initcall-v4.1-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux
      
      Pull module_init replacement part two from Paul Gortmaker:
       "Replace module_init with appropriate alternate initcall in non
        modules.
      
        This series converts non-modular code that is using the module_init()
        call to hook itself into the system to instead use one of our
        alternate priority initcalls.
      
        Unlike the previous series that used device_initcall and hence was a
        runtime no-op, these commits change to one of the alternate initcalls,
        because (a) we have them and (b) it seems like the right thing to do.
      
        For example, it would seem logical to use arch_initcall for arch
        specific setup code and fs_initcall for filesystem setup code.
      
        This does mean however, that changes in the init ordering will be
        taking place, and so there is a small risk that some kind of implicit
        init ordering issue may lie uncovered.  But I think it is still better
        to give these ones sensible priorities than to just assign them all to
        device_initcall in order to exactly preserve the old ordering.
      
        Thad said, we have already made similar changes in core kernel code in
        commit c96d6660 ("kernel: audit/fix non-modular users of
        module_init in core code") without any regressions reported, so this
        type of change isn't without precedent.  It has also got the same
        local testing and linux-next coverage as all the other pull requests
        that I'm sending for this merge window have got.
      
        Once again, there is an unused module_exit function removal that shows
        up as an outlier upon casual inspection of the diffstat"
      
      * tag 'module_init-alternate_initcall-v4.1-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:
        x86: perf_event_intel_pt.c: use arch_initcall to hook in enabling
        x86: perf_event_intel_bts.c: use arch_initcall to hook in enabling
        mm/page_owner.c: use late_initcall to hook in enabling
        lib/list_sort: use late_initcall to hook in self tests
        arm: use subsys_initcall in non-modular pl320 IPC code
        powerpc: don't use module_init for non-modular core hugetlb code
        powerpc: use subsys_initcall for Freescale Local Bus
        x86: don't use module_init for non-modular core bootflag code
        netfilter: don't use module_init/exit in core IPV4 code
        fs/notify: don't use module_init for non-modular inotify_user code
        mm: replace module_init usages with subsys_initcall in nommu.c
      9d90f035
    • Linus Torvalds's avatar
      Merge tag 'module_init-device_initcall-v4.1-rc8' of... · 2d440707
      Linus Torvalds authored
      Merge tag 'module_init-device_initcall-v4.1-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux
      
      Pull module_init replacement part one from Paul Gortmaker:
       "Replace module_init with equivalent device_initcall in non modules.
      
        This series of commits converts non-modular code that is using the
        module_init() call to hook itself into the system to instead use
        device_initcall().
      
        The conversion is a runtime no-op, since module_init actually becomes
        __initcall in the non-modular case, and that in turn gets mapped onto
        device_initcall.  A couple files show a larger negative diffstat,
        representing ones that had a module_exit function that we remove here
        vs previously relying on the linker to dispose of it.
      
        We make this conversion now, so that we can relocate module_init from
        init.h into module.h in the future.
      
        The files changed here are just limited to those that would otherwise
        have to add module.h to obviously non-modular code, in order to avoid
        a compile fail, as testing has shown"
      
      * tag 'module_init-device_initcall-v4.1-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:
        MIPS: don't use module_init in non-modular cobalt/mtd.c file
        drivers/leds: don't use module_init in non-modular leds-cobalt-raq.c
        cris: don't use module_init for non-modular core eeprom.c code
        tty/metag_da: Avoid module_init/module_exit in non-modular code
        drivers/clk: don't use module_init in clk-nomadik.c which is non-modular
        xtensa: don't use module_init for non-modular core network.c code
        sh: don't use module_init in non-modular psw.c code
        mn10300: don't use module_init in non-modular flash.c code
        parisc64: don't use module_init for non-modular core perf code
        parisc: don't use module_init for non-modular core pdc_cons code
        cris: don't use module_init for non-modular core intmem.c code
        ia64: don't use module_init in non-modular sim/simscsi.c code
        ia64: don't use module_init for non-modular core kernel/mca.c code
        arm: don't use module_init in non-modular mach-vexpress/spc.c code
        powerpc: don't use module_init in non-modular 83xx suspend code
        powerpc: use device_initcall for registering rtc devices
        x86: don't use module_init in non-modular devicetree.c code
        x86: don't use module_init in non-modular intel_mid_vrtc.c
      2d440707
    • Linus Torvalds's avatar
      Merge tag 'module-implicit-v4.1-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux · 9d86b412
      Linus Torvalds authored
      Pull implicit module.h fixes from Paul Gortmaker:
       "Fix up implicit <module.h> users that will break later.
      
        The files changed here are simply modular source files that are
        implicitly relying on <module.h> being present.  We fix them up now,
        so that we can decouple some of the module related init code from the
        core init code in the future.
      
        The addition of the module.h include to several files here is also a
        no-op from a code generation point of view, else there would already
        be compile issues with these files today.
      
        There may be lots more implicit includes of <module.h> in tree, but
        these are the ones that extensive build test coverage has shown that
        must be fixed in order to avoid build breakage fallout for the pending
        module.h <---> init.h code relocation we desire to complete"
      
      * tag 'module-implicit-v4.1-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:
        frv: add module.h to mb93090-mb00/flash.c to avoid compile fail
        drivers/cpufreq: include <module.h> for modular exynos-cpufreq.c code
        drivers/staging: include <module.h> for modular android tegra_ion code
        crypto/asymmetric_keys: pkcs7_key_type needs module.h
        sh: mach-highlander/psw.c is tristate and should use module.h
        drivers/regulator: include <module.h> for modular max77802 code
        drivers/pcmcia: include <module.h> for modular xxs1500_ss code
        drivers/hsi: include <module.h> for modular omap_ssi code
        drivers/gpu: include <module.h> for modular rockchip code
        drivers/gpio: include <module.h> for modular crystalcove code
        drivers/clk: include <module.h> for clk-max77xxx modular code
      9d86b412
    • Linus Torvalds's avatar
      Merge tag 'cpuinit-v4.1-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux · 47f92418
      Linus Torvalds authored
      Pull __cpuinit removal from Paul Gortmaker:
       "Remove __cpuinit macros and users.
      
        We removed the __cpuinit stuff in 3.11-rc1 with commit 22f0a273
        ("init.h: remove __cpuinit sections from the kernel") but we left some
        no-op stubs as a courtesy to unmerged code.
      
        Here we get rid of the stubs as well, since (as can be seen in these
        changes) they are enabling use cases to sneak back in, primarily from
        older BSP code that has been living out of tree for some time prior to
        getting mainlined.  So we get rid of these "new" users 1st and then
        get rid of the stubs.
      
        Obviously, getting rid of the stubs can't happen until all the users
        are gone, so I had to keep this together as a series, even though some
        of these commits since got picked up into maintainers trees as well.
      
        The nature of this change is such that it should have zero impact on
        the generated runtime.
      
        This is one of several independent cleanup branches aimed at enabling
        better organization in the init.h and module.h code.  They have been
        getting coverage in the linux-next tree for the last month, in
        addition to my local testing, which also covers approximately a half
        dozen or more architectures"
      
      * tag 'cpuinit-v4.1-rc8' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux:
        init: delete the __cpuinit related stubs
        kernel/cpu.c: remove new instance of __cpuinit that crept back in
        sched/core: remove __cpuinit section tag that crept back in.
        mips/mm/tlbex: remove new instance of __cpuinit that crept back in
        mips/c-r4k: remove legacy __cpuinit section that crept in
        mips/bcm77xx: remove legacy __cpuinit sections that crept in
        mips/ath25: remove legacy __cpuinit section that crept in
        arm/mach-hisi: remove legacy __CPUINIT section that crept in
        arm/mach-rockchip: remove legacy __cpuinit section that crept in
        arm/mach-mvebu: remove legacy __cpuinit sections that crept in
        arm/mach-keystone: remove legacy __cpuinit sections that crept in
      47f92418
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/glikely/linux · 4da3064d
      Linus Torvalds authored
      Pull devicetree updates from Grant Likely:
       "A whole lot of bug fixes.
      
        Nothing stands out here except the ability to enable CONFIG_OF on
        every architecture, and an import of a newer version of dtc"
      
      * tag 'devicetree-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/glikely/linux: (22 commits)
        of/irq: Rename "intc_desc" to "of_intc_desc" to fix OF on sh
        of/irq: Fix pSeries boot failure
        Documentation: DT: Fix a typo in the filename "lantiq,<chip>-pinumx.txt"
        of: define of_find_node_by_phandle for !CONFIG_OF
        of/address: use atomic allocation in pci_register_io_range()
        of: Add vendor prefix for Zodiac Inflight Innovations
        dt/fdt: add empty versions of early_init_dt_*_memory_arch
        of: clean-up unnecessary libfdt include paths
        of: make unittest select OF_EARLY_FLATTREE instead of depend on it
        of: make CONFIG_OF user selectable
        MIPS: prepare for user enabling of CONFIG_OF
        of/fdt: fix argument name and add comments of unflatten_dt_node()
        of: return NUMA_NO_NODE from fallback of_node_to_nid()
        tps6507x.txt: Remove executable permission
        of/overlay: Grammar s/an negative/a negative/
        of/fdt: Make fdt blob input parameters of unflatten functions const
        of: add helper function to retrive match data
        of: Grammar s/property exist/property exists/
        of: Move OF flags to be visible even when !CONFIG_OF
        scripts/dtc: Update to upstream version 9d3649bd3be245c9
        ...
      4da3064d
    • Linus Torvalds's avatar
      Merge git://www.linux-watchdog.org/linux-watchdog · 93899e39
      Linus Torvalds authored
      Pull watchdog updates from Wim Van Sebroeck:
       "This contains:
      
         - new driver for ST's LPC Watchdog
         - new driver for Conexant Digicolor CX92755 SoC
         - new driver for DA9062 watchdog
         - Addition of the watchdog registration deferral mechanism
         - several improvements on omap_wdt
         - several improvements and reboot-support for imgpdc_wdt
         - max63xx_wdt improvements
         - imx2_wdt improvements
         - dw_wdt improvements
         - and other small improvements and fixes"
      
      * git://www.linux-watchdog.org/linux-watchdog: (37 commits)
        watchdog: omap_wdt: early_enable module parameter
        watchdog: gpio_wdt: Add option for early registration
        watchdog: watchdog_core: Add watchdog registration deferral mechanism
        watchdog: max63xx: dynamically allocate device
        watchdog: imx2_wdt: Disable previously acquired clock on error path
        watchdog: imx2_wdt: Check for clk_prepare_enable() error
        watchdog: hpwdt: Add support for WDIOC_SETOPTIONS
        watchdog: docs: omap_wdt also understands nowayout
        watchdog: omap_wdt: implement get_timeleft
        watchdog: da9062: DA9062 watchdog driver
        watchdog: imx2_wdt: set watchdog parent device
        watchdog: mena21_wdt: Fix possible NULL pointer dereference
        watchdog: dw_wdt: keepalive the watchdog at write time
        watchdog: dw_wdt: No need for a spinlock
        watchdog: imx2_wdt: also set wdog->timeout to new_timeout
        watchdog: Allow compile test of GPIO consumers if !GPIOLIB
        watchdog: cadence: Add dependency on HAS_IOMEM
        watchdog: max63xx_wdt: Constify platform_device_id
        watchdog: MAX63XX_WATCHDOG does not depend on ARM
        watchdog: imgpdc: Add some documentation about the timeout
        ...
      93899e39
    • Linus Torvalds's avatar
      Merge tag 'clk-for-linus-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · 5f1201d5
      Linus Torvalds authored
      Pull clock framework updates from Michael Turquette:
       "The changes to the common clock framework for 4.2 are dominated by new
        drivers and updates to existing ones, as usual.
      
        There are some fixes to the framework itself and several cleanups for
        sparse warnings, etc"
      
      * tag 'clk-for-linus-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (135 commits)
        clk: stm32: Add clock driver for STM32F4[23]xxx devices
        dt-bindings: Document the STM32F4 clock bindings
        cpufreq: exynos: remove Exynos4210 specific cpufreq driver support
        ARM: Exynos: switch to using generic cpufreq driver for Exynos4210
        clk: samsung: exynos4: add cpu clock configuration data and instantiate cpu clock
        clk: samsung: add infrastructure to register cpu clocks
        clk: add CLK_RECALC_NEW_RATES clock flag for Exynos cpu clock support
        doc: dt: add documentation for lpc1850-ccu clk driver
        clk: add lpc18xx ccu clk driver
        doc: dt: add documentation for lpc1850-cgu clk driver
        clk: add lpc18xx cgu clk driver
        clk: keystone: add support for post divider register for main pll
        clk: mvebu: flag the crypto clk as CLK_IGNORE_UNUSED
        clk: cygnus: remove Cygnus dummy clock binding
        clk: cygnus: add clock support for Broadcom Cygnus
        clk: Change bcm clocks build dependency
        clk: iproc: add initial common clock support
        clk: iproc: define Broadcom iProc clock binding
        MAINTAINERS: update email for Michael Turquette
        clk: meson: add some error handling in meson_clk_register_cpu()
        ...
      5f1201d5
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds · 13d45f79
      Linus Torvalds authored
      Pull LED subsystem updates from Bryan Wu:
       "In this cycle, we finished to merge patches for LED Flash class
        driver.
      
        Other than that we have some bug fixes and new drivers for LED
        controllers"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds: (33 commits)
        leds:lp55xx: fix firmware loading error
        leds: fix max77693-led build errors
        leds: fix aat1290 build errors
        leds: aat1290: pass flags parameter to devm_gpiod_get
        leds: ktd2692: pass flags parameter to devm_gpiod_get
        drivers/leds: don't use module_init in non-modular leds-cobalt-raq.c
        leds: aat1290: add support for V4L2 Flash sub-device
        DT: aat1290: Document handling external strobe sources
        leds: max77693: add support for V4L2 Flash sub-device
        media: Add registration helpers for V4L2 flash sub-devices
        v4l: async: Add a pointer to of_node to struct v4l2_subdev, match it
        Documentation: leds: Add description of v4l2-flash sub-device
        leds: add BCM6358 LED driver
        leds: add DT binding for BCM6358 LED controller
        leds: fix brightness changing when software blinking is active
        Documentation: leds-lp5523: describe master fader attributes
        leds: lp5523: add master_fader support
        leds: leds-gpio: Allow compile test if !GPIOLIB
        leds: leds-gpio: Add missing #include <linux/of.h>
        gpiolib: Add missing dummies for the unified device properties interface
        ...
      13d45f79
    • Linus Torvalds's avatar
      Merge tag 'platform-drivers-x86-v4.2-1' of... · 05fde26a
      Linus Torvalds authored
      Merge tag 'platform-drivers-x86-v4.2-1' of git://git.infradead.org/users/dvhart/linux-platform-drivers-x86
      
      Pull x86 platform driver updates from Darren Hart:
       "Fairly routine update for platform-drivers-x86.
      
        Mostly fixes and cleanups, with a significant refactoring of toshiba*
        drivers.  Includes the addition of the dell-rbtn driver.
      
        Details:
      
        asus-wmi:
         - fan control
      
        dell*:
         - add Dell airplane mode switch driver
      
        ideapad-laptop:
         - platform rfkill fixes, and regression fix
      
        pvpanic:
         - handle missing _STA correctly
      
        toshiba*:
         - rafactor bluetooth support
         - haps documentation
         - driver cleanup
      
        other:
         - Use acpi_video_unregister_backlight instead of
           acpi_video_unregister in serveral drivers.
         - Orphan msi-wmi.
      
      * tag 'platform-drivers-x86-v4.2-1' of git://git.infradead.org/users/dvhart/linux-platform-drivers-x86: (24 commits)
        MAINTAINERS: Orphan x86 driver msi-wmi
        ideapad: fix software rfkill setting
        dell-laptop: Use dell-rbtn instead i8042 filter when possible
        dell-rbtn: Export notifier for other kernel modules
        dell-rbtn: Dell Airplane Mode Switch driver
        samsung-laptop: Use acpi_video_unregister_backlight instead of acpi_video_unregister
        asus-wmi: Use acpi_video_unregister_backlight instead of acpi_video_unregister
        apple_gmux: Use acpi_video_unregister_backlight instead of acpi_video_unregister
        pvpanic: handle missing _STA correctly
        ideapad_laptop: Lenovo G50-30 fix rfkill reports wireless blocked
        asus-wmi: add fan control
        Documentation/ABI: Add file describing the sysfs entries for toshiba_haps
        toshiba_haps: Make use of DEVICE_ATTR_{RW, WO} macros
        toshiba_haps: Replace sscanf with kstrtoint
        toshiba_acpi: Bump driver version to 0.22
        toshiba_acpi: Remove TOS_FAILURE check from some functions
        toshiba_acpi: Comments cleanup
        toshiba_acpi: Rename hci_{read, write}1 functions
        toshiba_acpi: Remove no longer needed hci_{read, write}2 functions
        toshiba_bluetooth: Change BT status message to debug
        ...
      05fde26a
    • Linus Torvalds's avatar
      Merge branch 'akpm' (patches from Andrew) · 2d01eedf
      Linus Torvalds authored
      Merge third patchbomb from Andrew Morton:
      
       - the rest of MM
      
       - scripts/gdb updates
      
       - ipc/ updates
      
       - lib/ updates
      
       - MAINTAINERS updates
      
       - various other misc things
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (67 commits)
        genalloc: rename of_get_named_gen_pool() to of_gen_pool_get()
        genalloc: rename dev_get_gen_pool() to gen_pool_get()
        x86: opt into HAVE_COPY_THREAD_TLS, for both 32-bit and 64-bit
        MAINTAINERS: add zpool
        MAINTAINERS: BCACHE: Kent Overstreet has changed email address
        MAINTAINERS: move Jens Osterkamp to CREDITS
        MAINTAINERS: remove unused nbd.h pattern
        MAINTAINERS: update brcm gpio filename pattern
        MAINTAINERS: update brcm dts pattern
        MAINTAINERS: update sound soc intel patterns
        MAINTAINERS: remove website for paride
        MAINTAINERS: update Emulex ocrdma email addresses
        bcache: use kvfree() in various places
        libcxgbi: use kvfree() in cxgbi_free_big_mem()
        target: use kvfree() in session alloc and free
        IB/ehca: use kvfree() in ipz_queue_{cd}tor()
        drm/nouveau/gem: use kvfree() in u_free()
        drm: use kvfree() in drm_free_large()
        cxgb4: use kvfree() in t4_free_mem()
        cxgb3: use kvfree() in cxgb_free_mem()
        ...
      2d01eedf
  2. 01 Jul, 2015 25 commits
    • Linus Torvalds's avatar
      Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6ac15baa
      Linus Torvalds authored
      Pull timer fixes from Thomas Gleixner:
       "This contains:
      
         - a build regression fix introduced by the timeconst move
      
         - a hotplug regression fix introduced by the timer wheel diet
      
         - a cpu hotplug bug fix for the exynos clocksource driver"
      
      * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        time: Remove development rules from Kbuild/Makefile
        timer: Fix hotplug regression
        clocksource: exynos_mct: Avoid blocking calls in the cpu hotplug notifier
      6ac15baa
    • Linus Torvalds's avatar
      Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · d5fb8213
      Linus Torvalds authored
      Pull irq fixes from Thomas Gleixner:
       "This contains:
      
         - a series of fixes for interrupt drivers to prevent a potential race
           when installing a chained interrupt handler
      
         - a fix for cpumask pointer misuse
      
         - a fix for using the wrong interrupt number from struct irq_data
      
         - removal of unused code and outdated comments
      
         - a few new helper functions which allow us to cleanup the interrupt
           handling code further in 4.3
      
         I decided against doing the cleanup at the end of this merge window
         and rather do the preparatory steps for 4.3, so we can run the final
         ABI change at the end of the 4.3 merge window with less risk"
      
      * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (26 commits)
        ARM/LPC32xx: Use irq not hwirq for __irq_set_handler_locked()
        genirq: Implement irq_set_handler_locked()/irq_set_chip_handler_name_locked()
        genirq: Introduce helper irq_desc_get_irq()
        genirq: Remove irq_node()
        genirq: Clean up outdated comments related to include/linux/irqdesc.h
        mn10300: Fix incorrect use of irq_data->affinity
        MIPS/ralink: Fix race in installing chained IRQ handler
        MIPS/pci: Fix race in installing chained IRQ handler
        MIPS/ath25: Fix race in installing chained IRQ handler
        MIPS/ath25: Fix race in installing chained IRQ handler
        m68k/psc: Fix race in installing chained IRQ handler
        avr32/at32ap: Fix race in installing chained IRQ handler
        sh/intc: Fix race in installing chained IRQ handler
        sh/intc: Fix potential race in installing chained IRQ handler
        pinctrl/sun4i: Fix race in installing chained IRQ handler
        pinctrl/samsung: Fix race in installing chained IRQ handler
        pinctrl/samsung: Fix race in installing chained IRQ handler
        pinctrl/exynos: Fix race in installing chained IRQ handler
        pinctrl/st: Fix race in installing chained IRQ handler
        pinctrl/adi2: Fix race in installing chained IRQ handler
        ...
      d5fb8213
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · 8fff7755
      Linus Torvalds authored
      Pull crypto fixes from Herbert Xu:
       "This fixes the aesni setkey error and removes a couple of unnecessary
        NULL checks in the Intel qat driver"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
        crypto: aesni - fix failing setkey for rfc4106-gcm-aesni
        crypto: qat - Deletion of unnecessary checks before two function calls
      8fff7755
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 47ebed96
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) mlx4 driver bug fixes (TX queue wakeups, csum complete indications)
          from Ido Shamay, Eran Ben Elisha, and Or Gerlitz.
      
       2) Missing unlock in error path of PTP support in renesas driver, from
          Dan Carpenter.
      
       3) Add Vitesse 8641 phy IDs to vitesse PHY driver, from Shaohui Xie.
      
       4) Bnx2x driver bug fixes (linearization of encap packets, scratchpad
          parity error notifications, flow-control and speed settings) from
          Yuval Mintz, Manish Chopra, Shahed Shaikh, and Ariel Elior.
      
       5) ipv6 extension header parsing in the igb chip has a HW errata,
          disable it.  Frm Todd Fujinaka.
      
       6) Fix PCI link state locking issue in e1000e driver, from Yanir
          Lubetkin.
      
       7) Cure panics during MTU change in i40e, from Mitch Williams.
      
       8) Don't leak promisc refs in DSA slave driver, from Gilad Ben-Yossef.
      
       9) Add missing HAS_DMA dep to VIA Rhine driver, from Geery
          Uytterhoeven.
      
      10) Make sure DMA map/unmap calls are symmetric in bnx2x driver, from
          Michal Schmidt.
      
      11) Workaround for MDIO access problems in bcm7xxx devices, from FLorian
          Fainelli.
      
      12) Fix races in SCTP protocol between OTTB responses and route
          removals, from Alexander Sverdlin.
      
      13) Fix jumbo frame checksum issue with some mvneta devices, from Simon
          Guinot.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (58 commits)
        sock_diag: don't broadcast kernel sockets
        net: mvneta: disable IP checksum with jumbo frames for Armada 370
        ARM: mvebu: update Ethernet compatible string for Armada XP
        net: mvneta: introduce compatible string "marvell, armada-xp-neta"
        api: fix compatibility of linux/in.h with netinet/in.h
        net: icplus: fix typo in constant name
        sis900: Trivial: Fix typos in enums
        stmmac: Trivial: fix typo in constant name
        sctp: Fix race between OOTB responce and route removal
        net-Liquidio: Delete unnecessary checks before the function call "vfree"
        vmxnet3: Bump up driver version number
        amd-xgbe: Add the __GFP_NOWARN flag to Rx buffer allocation
        net: phy: mdio-bcm-unimac: workaround initial read failures for integrated PHYs
        net: bcmgenet: workaround initial read failures for integrated PHYs
        net: phy: bcm7xxx: workaround MDIO management controller initial read
        bnx2x: fix DMA API usage
        net: via: VIA_RHINE and VIA_VELOCITY should depend on HAS_DMA
        net/phy: tune get_phy_c45_ids to support more c45 phy
        bnx2x: fix lockdep splat
        net: fec: don't access RACC register when not available
        ...
      47ebed96
    • Linus Torvalds's avatar
      Merge tag 'iommu-fixes-v4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · 44b061f7
      Linus Torvalds authored
      Pul IOMMU fixes from Joerg Roedel:
       "Four fixes have queued up to fix regressions introduced after v4.1:
      
         - Don't fail IOMMU driver initialization when the add_device
           call-back returns -ENODEV, as that just means that the device is
           not translated by the IOMMU.  This is pretty common on ARM.
      
         - Two fixes for the ARM-SMMU driver for a wrong feature check and to
           remove a redundant NULL check.
      
         - A fix for the AMD IOMMU driver to fix a boot panic on systems where
           the BIOS requests Unity Mappings in the IVRS table"
      
      * tag 'iommu-fixes-v4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
        iommu/amd: Introduce protection_domain_init() function
        iommu/arm-smmu: Delete an unnecessary check before the function call "free_io_pgtable_ops"
        iommu/arm-smmu: Fix broken ATOS check
        iommu: Ignore -ENODEV errors from add_device call-back
      44b061f7
    • Linus Torvalds's avatar
      Merge tag 'sound-fix-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · f822dcc6
      Linus Torvalds authored
      Pull sound fixes from Takashi Iwai:
       "Here are a bunch of small fixes, mostly for HD-audio quirks, in
        addition to a few regression fixes and trivial cleanups"
      
      * tag 'sound-fix-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: Fix uninintialized error return
        ALSA: hda: Delete an unnecessary check before the function call "snd_info_free_entry"
        ALSA: hda - Add a fixup for Dell E7450
        ALSA: hda - Fix the dock headphone output on Fujitsu Lifebook E780
        ALSA: hda - Add headset support to Acer Aspire V5
        ALSA: hda - restore the MIC FIXUP for some Dell machines
        ALSA: jack: Fix endless loop at unique index detection
        ALSA: hda - set proper caps for newer AMD hda audio in KB/KV
        ALSA: hda - Disable widget power-save for VIA codecs
        ALSA: hda - Fix Dock Headphone on Thinkpad X250 seen as a Line Out
      f822dcc6
    • Christoph Lameter's avatar
      Add __init attribute to new_kmalloc_cache · ae6f2462
      Christoph Lameter authored
      Avoid the warning:
      
        WARNING: mm/built-in.o(.text.unlikely+0xc22): Section mismatch in reference from the function .new_kmalloc_cache() to the variable .init.rodata:kmalloc_info
        The function .new_kmalloc_cache() references
        the variable __initconst kmalloc_info.
      Signed-off-by: default avatarChristoph Lameter <cl@linux.com>
      Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Tested-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ae6f2462
    • Linus Torvalds's avatar
      Merge tag 'pm+acpi-4.2-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 5c395097
      Linus Torvalds authored
      Pull power management and ACPI fixes from Rafael Wysocki:
       "These are fixes that didn't make it to the previous PM+ACPI pull
        request or are fixing issues introduced by it.
      
        Specifics:
      
         - Fix a recently added memory leak in an error path in the ACPI
           resources management code (Dan Carpenter)
      
         - Fix a build warning triggered by an ACPI video header function that
           should be static inline (Borislav Petkov)
      
         - Change names of helper function converting struct fwnode_handle
           pointers to either struct device_node or struct acpi_device
           pointers so they don't conflict with local variable names
           (Alexander Sverdlin)
      
         - Make the hibernate core re-enable nonboot CPUs on failures to
           disable them as expected (Vitaly Kuznetsov)
      
         - Increase the default timeout of the device suspend watchdog to
           prevent it from triggering too early on some systems (Takashi Iwai)
      
         - Prevent the cpuidle powernv driver from registering idle states
           with CPUIDLE_FLAG_TIMER_STOP set if CONFIG_TICK_ONESHOT is unset
           which leads to boot hangs (Preeti U Murthy)"
      
      * tag 'pm+acpi-4.2-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        tick/idle/powerpc: Do not register idle states with CPUIDLE_FLAG_TIMER_STOP set in periodic mode
        PM / sleep: Increase default DPM watchdog timeout to 60
        PM / hibernate: re-enable nonboot cpus on disable_nonboot_cpus() failure
        ACPI / OF: Rename of_node() and acpi_node() to to_of_node() and to_acpi_node()
        ACPI / video: Inline acpi_video_set_dmi_backlight_type
        ACPI / resources: free memory on error in add_region_before()
      5c395097
    • Linus Torvalds's avatar
      Merge tag 'for-linus-4.2-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · 7adf12b8
      Linus Torvalds authored
      Pull xen updates from David Vrabel:
       "Xen features and cleanups for 4.2-rc0:
      
         - add "make xenconfig" to assist in generating configs for Xen guests
      
         - preparatory cleanups necessary for supporting 64 KiB pages in ARM
           guests
      
         - automatically use hvc0 as the default console in ARM guests"
      
      * tag 'for-linus-4.2-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        block/xen-blkback: s/nr_pages/nr_segs/
        block/xen-blkfront: Remove invalid comment
        block/xen-blkfront: Remove unused macro MAXIMUM_OUTSTANDING_BLOCK_REQS
        arm/xen: Drop duplicate define mfn_to_virt
        xen/grant-table: Remove unused macro SPP
        xen/xenbus: client: Fix call of virt_to_mfn in xenbus_grant_ring
        xen: Include xen/page.h rather than asm/xen/page.h
        kconfig: add xenconfig defconfig helper
        kconfig: clarify kvmconfig is for kvm
        xen/pcifront: Remove usage of struct timeval
        xen/tmem: use BUILD_BUG_ON() in favor of BUG_ON()
        hvc_xen: avoid uninitialized variable warning
        xenbus: avoid uninitialized variable warning
        xen/arm: allow console=hvc0 to be omitted for guests
        arm,arm64/xen: move Xen initialization earlier
        arm/xen: Correctly check if the event channel interrupt is present
      7adf12b8
    • Linus Torvalds's avatar
      Merge tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux · 02201e3f
      Linus Torvalds authored
      Pull module updates from Rusty Russell:
       "Main excitement here is Peter Zijlstra's lockless rbtree optimization
        to speed module address lookup.  He found some abusers of the module
        lock doing that too.
      
        A little bit of parameter work here too; including Dan Streetman's
        breaking up the big param mutex so writing a parameter can load
        another module (yeah, really).  Unfortunately that broke the usual
        suspects, !CONFIG_MODULES and !CONFIG_SYSFS, so those fixes were
        appended too"
      
      * tag 'modules-next-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux: (26 commits)
        modules: only use mod->param_lock if CONFIG_MODULES
        param: fix module param locks when !CONFIG_SYSFS.
        rcu: merge fix for Convert ACCESS_ONCE() to READ_ONCE() and WRITE_ONCE()
        module: add per-module param_lock
        module: make perm const
        params: suppress unused variable error, warn once just in case code changes.
        modules: clarify CONFIG_MODULE_COMPRESS help, suggest 'N'.
        kernel/module.c: avoid ifdefs for sig_enforce declaration
        kernel/workqueue.c: remove ifdefs over wq_power_efficient
        kernel/params.c: export param_ops_bool_enable_only
        kernel/params.c: generalize bool_enable_only
        kernel/module.c: use generic module param operaters for sig_enforce
        kernel/params: constify struct kernel_param_ops uses
        sysfs: tightened sysfs permission checks
        module: Rework module_addr_{min,max}
        module: Use __module_address() for module_address_lookup()
        module: Make the mod_tree stuff conditional on PERF_EVENTS || TRACING
        module: Optimize __module_address() using a latched RB-tree
        rbtree: Implement generic latch_tree
        seqlock: Introduce raw_read_seqcount_latch()
        ...
      02201e3f
    • Linus Torvalds's avatar
      Merge tag 'arc-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · 0890a264
      Linus Torvalds authored
      Pull ARC architecture updates from Vineet Gupta:
      
       - support for HS38 cores based on ARCv2 ISA
      
           ARCv2 is the next generation ISA from Synopsys and basis for the
           HS3{4,6,8} families of processors which retain the traditional ARC mantra of
           low power and configurability and are now more performant and feature rich.
      
           HS38x is a 10 stage pipeline core which supports MMU (with huge pages) and
           SMP (upto 4 cores) among other features.
      
           + www.synopsys.com/dw/ipdir.php?ds=arc-hs38-processor
           + http://news.synopsys.com/2014-10-14-New-DesignWare-ARC-HS38-Processor-Doubles-Performance-for-Embedded-Linux-Applications
           + http://www.embedded.com/electronics-news/4435975/Synopsys-ARC-HS38-core-gives-2X-boost-to-Linux-based-apps
      
       - support for ARC SDP (Software Development platform): Main Board + CPU Cards
          = AXS101: CPU Card with ARC700 in silicon @ 700 MHz
          = AXS103: CPU Card with HS38x in FPGA
      
       - refactoring of ARCompact port to accomodate new ARCv2 ISA
      
       - misc updates/cleanups
      
      * tag 'arc-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc: (72 commits)
        ARC: Fix build failures for ARCompact in linux-next after ARCv2 support
        ARCv2: Allow older gcc to cope with new regime of ARCv2/ARCompact support
        ARCv2: [vdk] dts files and defconfig for HS38 VDK
        ARCv2: [axs103] Support ARC SDP FPGA platform for HS38x cores
        ARC: [axs101] Prepare for AXS103
        ARCv2: [nsim*hs*] Support simulation platforms for HS38x cores
        ARCv2: All bits in place, allow ARCv2 builds
        ARCv2: SLC: Handle explcit flush for DMA ops (w/o IO-coherency)
        ARCv2: STAR 9000837815 workaround hardware exclusive transactions livelock
        ARC: Reduce bitops lines of code using macros
        ARCv2: barriers
        arch: conditionally define smp_{mb,rmb,wmb}
        ARC: add smp barriers around atomics per Documentation/atomic_ops.txt
        ARC: add compiler barrier to LLSC based cmpxchg
        ARCv2: SMP: intc: IDU 2nd level intc for dynamic IRQ distribution
        ARCv2: SMP: clocksource: Enable Global Real Time counter
        ARCv2: SMP: ARConnect debug/robustness
        ARCv2: SMP: Support ARConnect (MCIP) for Inter-Core-Interrupts et al
        ARC: make plat_smp_ops weak to allow over-rides
        ARCv2: clocksource: Introduce 64bit local RTC counter
        ...
      0890a264
    • Kinglong Mee's avatar
      nfs: Remove invalid tk_pid from debug message · b4839ebe
      Kinglong Mee authored
      Before rpc_run_task(), tk_pid is uninitiated as 0 always.
      Signed-off-by: default avatarKinglong Mee <kinglongmee@gmail.com>
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      b4839ebe
    • Kinglong Mee's avatar
      nfs: Remove invalid NFS_ATTR_FATTR_V4_REFERRAL checking in nfs4_get_rootfh · d356a7d1
      Kinglong Mee authored
      NFS_ATTR_FATTR_V4_REFERRAL is only set in nfs4_proc_lookup_common.
      Signed-off-by: default avatarKinglong Mee <kinglongmee@gmail.com>
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      d356a7d1
    • Kinglong Mee's avatar
      nfs: Drop bad comment in nfs41_walk_client_list() · bc4da2a2
      Kinglong Mee authored
      Commit 7b1f1fd1 "NFSv4/4.1: Fix bugs in nfs4[01]_walk_client_list"
      have change the logical of the list_for_each_entry().
      Signed-off-by: default avatarKinglong Mee <kinglongmee@gmail.com>
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      bc4da2a2
    • Kinglong Mee's avatar
      nfs: Remove unneeded micro checking of CONFIG_PROC_FS · cd738ee9
      Kinglong Mee authored
      Have checking CONFIG_PROC_FS in include/linux/sunrpc/stats.h.
      Signed-off-by: default avatarKinglong Mee <kinglongmee@gmail.com>
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      cd738ee9
    • Kinglong Mee's avatar
      nfs: Don't setting FILE_CREATED flags always · 2785110d
      Kinglong Mee authored
      Commit 5bc2afc2 "NFSv4: Honour the 'opened' parameter in the atomic_open()
       filesystem method" have support the opened arguments now.
      
      Also,
      Commit 03da633a "atomic_open: take care of EEXIST in no-open case with
       O_CREAT|O_EXCL in fs/namei.c" have change vfs's logical.
      Signed-off-by: default avatarKinglong Mee <kinglongmee@gmail.com>
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      2785110d
    • Kinglong Mee's avatar
      nfs: Use remove_proc_subtree() instead remove_proc_entry() · 6a062a36
      Kinglong Mee authored
      Thanks for Al Viro's comments of killing proc_fs_nfs completely.
      Signed-off-by: default avatarKinglong Mee <kinglongmee@gmail.com>
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      6a062a36
    • Kinglong Mee's avatar
      nfs: Remove unused argument in nfs_server_set_fsinfo() · 71f81e51
      Kinglong Mee authored
      Commit e38eb650 "NFS: set_pnfs_layoutdriver() from nfs4_proc_fsinfo()"
      have remove the using of mntfh from nfs_server_set_fsinfo().
      Signed-off-by: default avatarKinglong Mee <kinglongmee@gmail.com>
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      71f81e51
    • Kinglong Mee's avatar
    • Jeff Layton's avatar
      nfs: take extra reference to fl->fl_file when running a LOCKU operation · db2efec0
      Jeff Layton authored
      Jean reported another crash, similar to the one fixed by feaff8e5:
      
          BUG: unable to handle kernel NULL pointer dereference at 0000000000000148
          IP: [<ffffffff8124ef7f>] locks_get_lock_context+0xf/0xa0
          PGD 0
          Oops: 0000 [#1] SMP
          Modules linked in: nfsv3 nfs_layout_flexfiles rpcsec_gss_krb5 nfsv4 dns_resolver nfs fscache vmw_vsock_vmci_transport vsock cfg80211 rfkill coretemp crct10dif_pclmul ppdev vmw_balloon crc32_pclmul crc32c_intel ghash_clmulni_intel pcspkr vmxnet3 parport_pc i2c_piix4 microcode serio_raw parport nfsd floppy vmw_vmci acpi_cpufreq auth_rpcgss shpchp nfs_acl lockd grace sunrpc vmwgfx drm_kms_helper ttm drm mptspi scsi_transport_spi mptscsih ata_generic mptbase i2c_core pata_acpi
          CPU: 0 PID: 329 Comm: kworker/0:1H Not tainted 4.1.0-rc7+ #2
          Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 07/30/2013
          Workqueue: rpciod rpc_async_schedule [sunrpc]
          30ec000
          RIP: 0010:[<ffffffff8124ef7f>]  [<ffffffff8124ef7f>] locks_get_lock_context+0xf/0xa0
          RSP: 0018:ffff8802330efc08  EFLAGS: 00010296
          RAX: ffff8802330efc58 RBX: ffff880097187c80 RCX: 0000000000000000
          RDX: 0000000000000000 RSI: 0000000000000002 RDI: 0000000000000000
          RBP: ffff8802330efc18 R08: ffff88023fc173d8 R09: 3038b7bf00000000
          R10: 00002f1a02000000 R11: 3038b7bf00000000 R12: 0000000000000000
          R13: 0000000000000000 R14: ffff8802337a2300 R15: 0000000000000020
          FS:  0000000000000000(0000) GS:ffff88023fc00000(0000) knlGS:0000000000000000
          CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
          CR2: 0000000000000148 CR3: 000000003680f000 CR4: 00000000001407f0
          Stack:
           ffff880097187c80 ffff880097187cd8 ffff8802330efc98 ffffffff81250281
           ffff8802330efc68 ffffffffa013e7df ffff8802330efc98 0000000000000246
           ffff8801f6901c00 ffff880233d2b8d8 ffff8802330efc58 ffff8802330efc58
          Call Trace:
           [<ffffffff81250281>] __posix_lock_file+0x31/0x5e0
           [<ffffffffa013e7df>] ? rpc_wake_up_task_queue_locked.part.35+0xcf/0x240 [sunrpc]
           [<ffffffff8125088b>] posix_lock_file_wait+0x3b/0xd0
           [<ffffffffa03890b2>] ? nfs41_wake_and_assign_slot+0x32/0x40 [nfsv4]
           [<ffffffffa0365808>] ? nfs41_sequence_done+0xd8/0x300 [nfsv4]
           [<ffffffffa0367525>] do_vfs_lock+0x35/0x40 [nfsv4]
           [<ffffffffa03690c1>] nfs4_locku_done+0x81/0x120 [nfsv4]
           [<ffffffffa013e310>] ? rpc_destroy_wait_queue+0x20/0x20 [sunrpc]
           [<ffffffffa013e310>] ? rpc_destroy_wait_queue+0x20/0x20 [sunrpc]
           [<ffffffffa013e33c>] rpc_exit_task+0x2c/0x90 [sunrpc]
           [<ffffffffa0134400>] ? call_refreshresult+0x170/0x170 [sunrpc]
           [<ffffffffa013ece4>] __rpc_execute+0x84/0x410 [sunrpc]
           [<ffffffffa013f085>] rpc_async_schedule+0x15/0x20 [sunrpc]
           [<ffffffff810add67>] process_one_work+0x147/0x400
           [<ffffffff810ae42b>] worker_thread+0x11b/0x460
           [<ffffffff810ae310>] ? rescuer_thread+0x2f0/0x2f0
           [<ffffffff810b35d9>] kthread+0xc9/0xe0
           [<ffffffff81010000>] ? perf_trace_xen_mmu_set_pmd+0xa0/0x160
           [<ffffffff810b3510>] ? kthread_create_on_node+0x170/0x170
           [<ffffffff8173c222>] ret_from_fork+0x42/0x70
           [<ffffffff810b3510>] ? kthread_create_on_node+0x170/0x170
          Code: a5 81 e8 85 75 e4 ff c6 05 31 ee aa 00 01 eb 98 66 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 55 48 89 e5 41 54 49 89 fc 53 <48> 8b 9f 48 01 00 00 48 85 db 74 08 48 89 d8 5b 41 5c 5d c3 83
          RIP  [<ffffffff8124ef7f>] locks_get_lock_context+0xf/0xa0
           RSP <ffff8802330efc08>
          CR2: 0000000000000148
          ---[ end trace 64484f16250de7ef ]---
      
      The problem is almost exactly the same as the one fixed by feaff8e5.
      We must take a reference to the struct file when running the LOCKU
      compound to prevent the final fput from running until the operation is
      complete.
      Reported-by: default avatarJean Spector <jean@primarydata.com>
      Signed-off-by: default avatarJeff Layton <jeff.layton@primarydata.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      db2efec0
    • Miklos Szeredi's avatar
      fuse: update MAINTAINERS entry · 0a30f612
      Miklos Szeredi authored
      Signed-off-by: default avatarMiklos Szeredi <mszeredi@suse.cz>
      0a30f612
    • Lars Poeschel's avatar
      watchdog: omap_wdt: early_enable module parameter · b2102eb3
      Lars Poeschel authored
      Add a early_enable module parameter to the omap_wdt that starts the
      watchdog on module insertion. The default value is 0 which does not
      start the watchdog - which also does not change the behavior if the
      parameter is not given.
      Signed-off-by: default avatarLars Poeschel <poeschel@lemonage.de>
      Reviewed-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Signed-off-by: default avatarWim Van Sebroeck <wim@iguana.be>
      b2102eb3
    • Miklos Szeredi's avatar
      fuse: separate pqueue for clones · c3696046
      Miklos Szeredi authored
      Make each fuse device clone refer to a separate processing queue.  The only
      constraint on userspace code is that the request answer must be written to
      the same device clone as it was read off.
      Signed-off-by: default avatarMiklos Szeredi <mszeredi@suse.cz>
      c3696046
    • Miklos Szeredi's avatar
      fuse: introduce per-instance fuse_dev structure · cc080e9e
      Miklos Szeredi authored
      Allow fuse device clones to refer to be distinguished.  This patch just
      adds the infrastructure by associating a separate "struct fuse_dev" with
      each clone.
      Signed-off-by: default avatarMiklos Szeredi <mszeredi@suse.cz>
      Reviewed-by: default avatarAshish Samant <ashish.samant@oracle.com>
      cc080e9e
    • Miklos Szeredi's avatar
      fuse: device fd clone · 00c570f4
      Miklos Szeredi authored
      Allow an open fuse device to be "cloned".  Userspace can create a clone by:
      
            newfd = open("/dev/fuse", O_RDWR)
            ioctl(newfd, FUSE_DEV_IOC_CLONE, &oldfd);
      
      At this point newfd will refer to the same fuse connection as oldfd.
      Signed-off-by: default avatarMiklos Szeredi <mszeredi@suse.cz>
      Reviewed-by: default avatarAshish Samant <ashish.samant@oracle.com>
      00c570f4