1. 11 Sep, 2013 13 commits
    • Sachin Kamat's avatar
      hwmon: (emc2103) Fix return value · 1a3abbd0
      Sachin Kamat authored
      kstrtol() returns appropriate error values. Use those instead of
      hardcoding. Silences several sparse messages of following type:
      "why not propagate 'result' from kstrtol() instead of (-22)?"
      Signed-off-by: default avatarSachin Kamat <sachin.kamat@linaro.org>
      Cc: Steve Glendinning <steve.glendinning@shawell.net>
      Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
      1a3abbd0
    • Linus Torvalds's avatar
      Merge tag 'for-v3.12' of git://git.infradead.org/battery-2.6 · a22a0fdb
      Linus Torvalds authored
      Pull battery/power supply driver updates from Anton Vorontsov:
       "New drivers:
      
         - APM X-Gene system reboot driver by Feng Kan and Loc Ho (APM).
      
         - Qualcomm MSM reboot/poweroff driver by Abhimanyu Kapur (Codeaurora).
      
         - Texas Instruments BQ24190 charger driver by Mark A.  Greer (Animal
           Creek Technologies).
      
         - Texas Instruments TWL4030 MADC battery driver by Lukas Märdian and
           Marek Belisko (Golden Delicious Computers).  The driver is used on
           Freerunner GTA04 phones.
      
        Highlighted fixes and improvements:
      
         - Suspend/wakeup logic improvements: power supply objects will block
           system suspend until all power supply events are processed.  Thanks
           to Zoran Markovic (Linaro), Arve Hjonnevag and Todd Poynor (Google)"
      
      * tag 'for-v3.12' of git://git.infradead.org/battery-2.6:
        rx51_battery: Fix channel number when reading adc value
        power: Add twl4030_madc battery driver.
        bq24190_charger: Workaround SS definition problem on i386 builds
        power_supply: Prevent suspend until power supply events are processed
        vexpress-poweroff: Should depend on the required infrastructure
        twl4030-charger: Fix compiler warning with regulator_enable()
        rx51_battery: Replace hardcoded channels values.
        bq24190_charger: Add support for TI BQ24190 Battery Charger
        ab8500-charger: We print an unintended error message
        max8925_power: Fix missing of_node_put
        power_supply: Replace strict_strtol() with kstrtol()
        power: Add APM X-Gene system reboot driver
        power_supply: tosa_battery: Get rid of irq_to_gpio usage
        power supply: collie_battery: Convert to use dev_pm_ops
        power_supply: Make goldfish_battery depend on GOLDFISH || COMPILE_TEST
        power: reset: Add msm restart support
        MAINTAINERS: drivers/power: add entry for SmartReflex AVS drivers
      a22a0fdb
    • Linus Torvalds's avatar
      Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc · bf83e614
      Linus Torvalds authored
      Pull powerpc fixes from Ben Herrenschmidt:
       "Here are a handful of small powerpc fixes.
      
        A couple of section mismatches (always worth fixing), a missing export
        of a new symbol causing build failures of modules, a page fault
        deadlock fix (interestingly that bug has been around for a LONG time,
        though it seems to be more easily triggered by KVM) and fixing pseries
        default idle loop in the absence of the cpuidle drivers (such as
        during boot)"
      
      * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
        powerpc: Default arch idle could cede processor on pseries
        fbdev/ps3fb: Fix section mismatch warning for ps3fb_probe
        powerpc: Fix section mismatch warning for prom_rtas_call
        powerpc: Fix possible deadlock on page fault
        powerpc: Export cpu_to_chip_id() to fix build error
      bf83e614
    • Linus Torvalds's avatar
      Merge tag 'stable/for-linus-3.12-rc0-tag-two' of... · a60d4b98
      Linus Torvalds authored
      Merge tag 'stable/for-linus-3.12-rc0-tag-two' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip
      
      Pull Xen bug-fixes from Konrad Rzeszutek Wilk:
       "This pull I usually do after rc1 is out but because we have a nice
        amount of fixes, some bootup related fixes for ARM, and it is early in
        the cycle we figured to do it now to help with tracking of potential
        regressions.
      
        The simple ones are the ARM ones - one of the patches fell through the
        cracks, other fixes a bootup issue (unconditionally using Xen
        functions).  Then a fix for a regression causing preempt count being
        off (patch causing this went in v3.12).
      
        Lastly are the fixes to make Xen PVHVM guests use PV ticketlocks (Xen
        PV already does).
      
        The enablement of that was supposed to be part of the x86 spinlock
        merge in commit 816434ec ("The biggest change here are
        paravirtualized ticket spinlocks (PV spinlocks), which bring a nice
        speedup on various benchmarks...") but unfortunatly it would cause
        hang when booting Xen PVHVM guests.  Yours truly got all of the bugs
        fixed last week and they (six of them) are included in this pull.
      
        Bug-fixes:
         - Boot on ARM without using Xen unconditionally
         - On Xen ARM don't run cpuidle/cpufreq
         - Fix regression in balloon driver, preempt count warnings
         - Fixes to make PVHVM able to use pv ticketlock.
         - Revert Xen PVHVM disabling pv ticketlock (aka, re-enable pv ticketlocks)"
      
      * tag 'stable/for-linus-3.12-rc0-tag-two' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen/spinlock: Don't use __initdate for xen_pv_spin
        Revert "xen/spinlock: Disable IRQ spinlock (PV) allocation on PVHVM"
        xen/spinlock: Don't setup xen spinlock IPI kicker if disabled.
        xen/smp: Update pv_lock_ops functions before alternative code starts under PVHVM
        xen/spinlock: We don't need the old structure anymore
        xen/spinlock: Fix locking path engaging too soon under PVHVM.
        xen/arm: disable cpuidle and cpufreq when linux is running as dom0
        xen/p2m: Don't call get_balloon_scratch_page() twice, keep interrupts disabled for multicalls
        ARM: xen: only set pm function ptrs for Xen guests
      a60d4b98
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · fa1586a7
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "Daniel had some fixes queued up, that were delayed, the stolen memory
        ones and vga arbiter ones are quite useful, along with his usual bunch
        of stuff, nothing for HSW outputs yet.
      
        The one nouveau fix is for a regression I caused with the poweroff stuff"
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: (30 commits)
        drm/nouveau: fix oops on runtime suspend/resume
        drm/i915: Delay disabling of VGA memory until vgacon->fbcon handoff is done
        drm/i915: try not to lose backlight CBLV precision
        drm/i915: Confine page flips to BCS on Valleyview
        drm/i915: Skip stolen region initialisation if none is reserved
        drm/i915: fix gpu hang vs. flip stall deadlocks
        drm/i915: Hold an object reference whilst we shrink it
        drm/i915: fix i9xx_crtc_clock_get for multiplied pixels
        drm/i915: handle sdvo input pixel multiplier correctly again
        drm/i915: fix hpd work vs. flush_work in the pageflip code deadlock
        drm/i915: fix up the relocate_entry refactoring
        drm/i915: Fix pipe config warnings when dealing with LVDS fixed mode
        drm/i915: Don't call sg_free_table() if sg_alloc_table() fails
        i915: Update VGA arbiter support for newer devices
        vgaarb: Fix VGA decodes changes
        vgaarb: Don't disable resources that are not owned
        drm/i915: Pin pages whilst mapping the dma-buf
        drm/i915: enable trickle feed on Haswell
        x86: add early quirk for reserving Intel graphics stolen memory v5
        drm/i915: split PCI IDs out into i915_drm.h v4
        ...
      fa1586a7
    • Linus Torvalds's avatar
      Merge branch 'nfsd-next' of git://linux-nfs.org/~bfields/linux · cf596766
      Linus Torvalds authored
      Pull nfsd updates from Bruce Fields:
       "This was a very quiet cycle! Just a few bugfixes and some cleanup"
      
      * 'nfsd-next' of git://linux-nfs.org/~bfields/linux:
        rpc: let xdr layer allocate gssproxy receieve pages
        rpc: fix huge kmalloc's in gss-proxy
        rpc: comment on linux_cred encoding, treat all as unsigned
        rpc: clean up decoding of gssproxy linux creds
        svcrpc: remove unused rq_resused
        nfsd4: nfsd4_create_clid_dir prints uninitialized data
        nfsd4: fix leak of inode reference on delegation failure
        Revert "nfsd: nfs4_file_get_access: need to be more careful with O_RDWR"
        sunrpc: prepare NFS for 2038
        nfsd4: fix setlease error return
        nfsd: nfs4_file_get_access: need to be more careful with O_RDWR
      cf596766
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging · 516f7b3f
      Linus Torvalds authored
      Pull hwmon cleanups from Guenter Roeck:
       "Minor cleanup in ina2xx and hwmon-vid drivers; no functional changes"
      
      * tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (ina2xx) Remove casting the return value which is a void pointer
        hwmon: (hwmon-vid) Add __maybe_unused attribute to dummy variable
      516f7b3f
    • Linus Torvalds's avatar
      Merge branch 'x86/jumplabel' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 442e0973
      Linus Torvalds authored
      Pull x86 jumplabel changes from Peter Anvin:
       "One more x86 tree for this merge window.  This tree improves the
        handling of jump labels, so that most of the time we don't have to do
        a massive initial patching run.
      
        Furthermore, we will error out of the jump label is not what is
        expected, eg if it has been corrupted or tampered with"
      
      * 'x86/jumplabel' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/jump-label: Show where and what was wrong on errors
        x86/jump-label: Add safety checks to jump label conversions
        x86/jump-label: Do not bother updating nops if they are correct
        x86/jump-label: Use best default nops for inital jump label calls
      442e0973
    • Vaidyanathan Srinivasan's avatar
      powerpc: Default arch idle could cede processor on pseries · 363edbe2
      Vaidyanathan Srinivasan authored
      When adding cpuidle support to pSeries, we introduced two
      regressions:
      
        - The new cpuidle backend driver only works under hypervisors
          supporting the "SLPLAR" option, which isn't the case of the
          old POWER4 hypervisor and the HV "light" used on js2x blades
      
        - The cpuidle driver registers fairly late, meaning that for
          a significant portion of the boot process, we end up having
          all threads spinning. This slows down the boot process and
          increases the overall resource usage if the hypervisor has
          shared processors.
      
      This fixes both by implementing a "default" idle that will cede
      to the hypervisor when possible, in a very simple way without
      all the bells and whisles of cpuidle.
      Reported-by: default avatarPaul Mackerras <paulus@samba.org>
      Signed-off-by: default avatarVaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>
      Acked-by: default avatarDeepthi Dharwar <deepthi@linux.vnet.ibm.com>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      CC: <stable@vger.kernel.org>
      363edbe2
    • Vladimir Murzin's avatar
      fbdev/ps3fb: Fix section mismatch warning for ps3fb_probe · 88c2d0b6
      Vladimir Murzin authored
      While cross-building for PPC64 I've got
      
      WARNING: drivers/video/built-in.o(.text+0x9f9ca): Section mismatch in
      reference from the function .ps3fb_probe() to th e variable
      .init.data:ps3fb_fix The function .ps3fb_probe() references the
      variable __initdata ps3fb_fix.  This is often because .ps3fb_probe
      lacks a __initdata annotation or the annotation of ps3fb_fix is wrong.
      
      WARNING: drivers/video/built-in.o(.text+0x9f9d2): Section mismatch in
      reference from the function .ps3fb_probe() to the variable
      .init.data:ps3fb_fix The function .ps3fb_probe() references the
      variable __initdata ps3fb_fix.  This is often because .ps3fb_probe
      lacks a __initdata annotation or the annotation of ps3fb_fix is wrong.
      
      WARNING: drivers/built-in.o(.text+0xe222a): Section mismatch in
      reference from the function .ps3fb_probe() to the variable
      .init.data:ps3fb_fix The function .ps3fb_probe() references the
      variable __initdata ps3fb_fix.  This is often because .ps3fb_probe
      lacks a __initdata annotation or the annotation of ps3fb_fix is wrong.
      
      WARNING: drivers/built-in.o(.text+0xe2232): Section mismatch in
      reference from the function .ps3fb_probe() to the variable
      .init.data:ps3fb_fix The function .ps3fb_probe() references the
      variable __initdata ps3fb_fix.  This is often because .ps3fb_probe
      lacks a __initdata annotation or the annotation of ps3fb_fix is wrong.
      
      WARNING: vmlinux.o(.text+0x561d4a): Section mismatch in reference from
      the function .ps3fb_probe() to the variable .init.data:ps3fb_fix The
      function .ps3fb_probe() references the variable __initdata ps3fb_fix.
      This is often because .ps3fb_probe lacks a __initdata annotation or
      the annotation of ps3fb_fix is wrong.
      
      Mismatch was introduced with 48c68c4f "Drivers: video: remove __dev*
      attributes."
      
      Remove __init data annotation from ps3fb_fix.
      Signed-off-by: default avatarVladimir Murzin <murzin.v@gmail.com>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      88c2d0b6
    • Vladimir Murzin's avatar
      powerpc: Fix section mismatch warning for prom_rtas_call · 620e5050
      Vladimir Murzin authored
      While cross-building for PPC64 I've got
      
      WARNING: vmlinux.o(.text.unlikely+0x1ba): Section mismatch in
      reference from the function .prom_rtas_call() to the variable
      .init.data:dt_string_start The function .prom_rtas_call() references
      the variable __initdata dt_string_start.  This is often because
      .prom_rtas_call lacks a __initdata annotation or the annotation of
      dt_string_start is wrong.
      
      WARNING: vmlinux.o(.meminit.text+0xeb0): Section mismatch in reference
      from the function .free_area_init_core.isra.47() to the function
      .init.text:.set_pageblock_order() The function __meminit
      .free_area_init_core.isra.47() references a function __init
      .set_pageblock_order().  If .set_pageblock_order is only used by
      .free_area_init_core.isra.47 then annotate .set_pageblock_order with a
      matching annotation.
      
      Fix it by proper annotation of prom_rtas_call.
      Signed-off-by: default avatarVladimir Murzin <murzin.v@gmail.com>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      620e5050
    • Aneesh Kumar K.V's avatar
      powerpc: Fix possible deadlock on page fault · 69e044dd
      Aneesh Kumar K.V authored
       stack_grow_into/14082 is trying to acquire lock:
        (&mm->mmap_sem){++++++}, at: [<c000000000206d28>] .might_fault+0x78/0xe0
      
       but task is already holding lock:
        (&mm->mmap_sem){++++++}, at: [<c0000000007ffd8c>] .do_page_fault+0x24c/0x910
      
       other info that might help us debug this:
        Possible unsafe locking scenario:
      
              CPU0
              ----
         lock(&mm->mmap_sem);
         lock(&mm->mmap_sem);
      
        *** DEADLOCK ***
      
        May be due to missing lock nesting notation
      
       1 lock held by stack_grow_into/14082:
        #0:  (&mm->mmap_sem){++++++}, at: [<c0000000007ffd8c>] .do_page_fault+0x24c/0x910
      
       stack backtrace:
       CPU: 21 PID: 14082 Comm: stack_grow_into Not tainted 3.10.0-10.el7.ppc64.debug #1
       Call Trace:
       [c0000003d396b850] [c000000000016e7c] .show_stack+0x7c/0x1f0 (unreliable)
       [c0000003d396b920] [c000000000813fc8] .dump_stack+0x28/0x3c
       [c0000003d396b990] [c000000000124b90] .__lock_acquire+0x1640/0x1800
       [c0000003d396bab0] [c00000000012570c] .lock_acquire+0xac/0x250
       [c0000003d396bb80] [c000000000206d54] .might_fault+0xa4/0xe0
       [c0000003d396bbf0] [c0000000007ffe2c] .do_page_fault+0x2ec/0x910
       [c0000003d396be30] [c0000000000092e8] handle_page_fault+0x10/0x30
      Signed-off-by: default avatarAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      69e044dd
    • Guenter Roeck's avatar
      powerpc: Export cpu_to_chip_id() to fix build error · 256588fd
      Guenter Roeck authored
      powerpc allmodconfig build fails with:
      
      ERROR: ".cpu_to_chip_id" [drivers/block/mtip32xx/mtip32xx.ko] undefined!
      
      The problem was introduced with commit 15863ff3 (powerpc: Make chip-id
      information available to userspace).
      
      Export the missing symbol.
      
      Cc: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
      Cc: Shivaprasad G Bhat <sbhat@linux.vnet.ibm.com>
      Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      256588fd
  2. 10 Sep, 2013 20 commits
    • Linus Torvalds's avatar
      Merge tag 'cris-for-3.12' of git://jni.nu/cris · 8d7551eb
      Linus Torvalds authored
      Pull CRIS updates from Jesper Nilsson:
       "Mostly cleanup and removal of unused configs"
      
      * tag 'cris-for-3.12' of git://jni.nu/cris:
        CRIS: drop unused Kconfig symbols
        CRIS: Add kvm_para.h which includes generic file
        CRIS: remove unused current_regs
        CRIS: Remove last traces of legacy RTC drivers
        CRIS: remove "config OOM_REBOOT"
      8d7551eb
    • Akira Takeuchi's avatar
      mn10300: Fix crash just after starting userspace on !CONFIG_PREEMPT · 3da06ed7
      Akira Takeuchi authored
      The mn10300 kernel crashes just after starting userspace programs, if
      CONFIG_PREEMPT is disabled:
      
        Freeing unused kernel memory: 96K (90286000 - 9029e000)
        MISALIGN: 97c33ff9: unsupported instruction f
        MISALIGN: 97c33ff9: unsupported instruction f
        MISALIGN: 97c33ff9: unsupported instruction f
        :
      
      This fixes the problem that was introduced by commit d17fc238
      ("MN10300: Enable IRQs more in system call exit work path").
      Signed-off-by: default avatarAkira Takeuchi <takeuchi.akr@jp.panasonic.com>
      Signed-off-by: default avatarKiyoshi Owada <owada.kiyoshi@jp.panasonic.com>
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      3da06ed7
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-linus' of git://git.secretlab.ca/git/linux · 31f7c3a6
      Linus Torvalds authored
      Pull device tree core updates from Grant Likely:
       "Generally minor changes.  A bunch of bug fixes, particularly for
        initialization and some refactoring.  Most notable change if feeding
        the entire flattened tree into the random pool at boot.  May not be
        significant, but shouldn't hurt either"
      
      Tim Bird questions whether the boot time cost of the random feeding may
      be noticeable.  And "add_device_randomness()" is definitely not some
      speed deamon of a function.
      
      * tag 'devicetree-for-linus' of git://git.secretlab.ca/git/linux:
        of/platform: add error reporting to of_amba_device_create()
        irq/of: Fix comment typo for irq_of_parse_and_map
        of: Feed entire flattened device tree into the random pool
        of/fdt: Clean up casting in unflattening path
        of/fdt: Remove duplicate memory clearing on FDT unflattening
        gpio: implement gpio-ranges binding document fix
        of: call __of_parse_phandle_with_args from of_parse_phandle
        of: introduce of_parse_phandle_with_fixed_args
        of: move of_parse_phandle()
        of: move documentation of of_parse_phandle_with_args
        of: Fix missing memory initialization on FDT unflattening
        of: consolidate definition of early_init_dt_alloc_memory_arch()
        of: Make of_get_phy_mode() return int i.s.o. const int
        include: dt-binding: input: create a DT header defining key codes.
        of/platform: Staticize of_platform_device_create_pdata()
        of: Specify initrd location using 64-bit
        dt: Typo fix
        OF: make of_property_for_each_{u32|string}() use parameters if OF is not enabled
      31f7c3a6
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma · ec5b103e
      Linus Torvalds authored
      Pull slave-dmaengine updates from Vinod Koul:
       "This pull brings:
         - Andy's DW driver updates
         - Guennadi's sh driver updates
         - Pl08x driver fixes from Tomasz & Alban
         - Improvements to mmp_pdma by Daniel
         - TI EDMA fixes by Joel
         - New drivers:
           - Hisilicon k3dma driver
           - Renesas rcar dma driver
        - New API for publishing slave driver capablities
        - Various fixes across the subsystem by Andy, Jingoo, Sachin etc..."
      
      * 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma: (94 commits)
        dma: edma: Remove limits on number of slots
        dma: edma: Leave linked to Null slot instead of DUMMY slot
        dma: edma: Find missed events and issue them
        ARM: edma: Add function to manually trigger an EDMA channel
        dma: edma: Write out and handle MAX_NR_SG at a given time
        dma: edma: Setup parameters to DMA MAX_NR_SG at a time
        dmaengine: pl330: use dma_set_max_seg_size to set the sg limit
        dmaengine: dma_slave_caps: remove sg entries
        dma: replace devm_request_and_ioremap by devm_ioremap_resource
        dma: ste_dma40: Fix potential null pointer dereference
        dma: ste_dma40: Remove duplicate const
        dma: imx-dma: Remove redundant NULL check
        dma: dmagengine: fix function names in comments
        dma: add driver for R-Car HPB-DMAC
        dma: k3dma: use devm_ioremap_resource() instead of devm_request_and_ioremap()
        dma: imx-sdma: Staticize sdma_driver_data structures
        pch_dma: Add MODULE_DEVICE_TABLE
        dmaengine: PL08x: Add cyclic transfer support
        dmaengine: PL08x: Fix reading the byte count in cctl
        dmaengine: PL08x: Add support for different maximum transfer size
        ...
      ec5b103e
    • Linus Torvalds's avatar
      Merge tag 'mmc-updates-for-3.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc · d0048f0b
      Linus Torvalds authored
      Pull MMC updates from Chris Ball:
       "MMC highlights for 3.12:
      
        Core:
         - Support Allocation Units 8MB-64MB in SD3.0, previous max was 4MB.
         - The slot-gpio helper can now handle GPIO debouncing card-detect.
         - Read supported voltages from DT "voltage-ranges" property.
      
        Drivers:
         - dw_mmc: Add support for ARC architecture, and support exynos5420.
         - mmc_spi: Support CD/RO GPIOs.
         - sh_mobile_sdhi: Add compatibility for more Renesas SoCs.
         - sh_mmcif: Add DT support for DMA channels"
      
      * tag 'mmc-updates-for-3.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (50 commits)
        Revert "mmc: tmio-mmc: Remove .set_pwr() callback from platform data"
        mmc: dw_mmc: Add support for ARC
        mmc: sdhci-s3c: initialize host->quirks2 for using quirks2
        mmc: sdhci-s3c: fix the wrong register value, when clock is disabled
        mmc: esdhc: add support to get voltage from device-tree
        mmc: sdhci: get voltage from sdhc host
        mmc: core: parse voltage from device-tree
        mmc: omap_hsmmc: use the generic config for omap2plus devices
        mmc: omap_hsmmc: clear status flags before starting a new command
        mmc: dw_mmc: exynos: Add a new compatible string for exynos5420
        mmc: sh_mmcif: revision-specific CLK_CTRL2 handling
        mmc: sh_mmcif: revision-specific Command Completion Signal handling
        mmc: sh_mmcif: add support for Device Tree DMA bindings
        mmc: sh_mmcif: move header include from header into .c
        mmc: SDHI: add DT compatibility strings for further SoCs
        mmc: dw_mmc-pci: enable bus-mastering mode
        mmc: dw_mmc-pci: get resources from a proper BAR
        mmc: tmio-mmc: Remove .set_pwr() callback from platform data
        mmc: tmio-mmc: Remove .get_cd() callback from platform data
        mmc: sh_mobile_sdhi: Remove .set_pwr() callback from platform data
        ...
      d0048f0b
    • Linus Torvalds's avatar
      Merge tag 'dm-3.12-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm · 7426d628
      Linus Torvalds authored
      Pull device-mapper updates from Mike Snitzer:
       "Add the ability to collect I/O statistics on user-defined regions of a
        device-mapper device.  This dm-stats code required the reintroduction
        of a div64_u64_rem() helper, but as a separate method that doesn't
        slow down div64_u64() -- especially on 32-bit systems.
      
        Allow the error target to replace request-based DM devices (e.g.
        multipath) in addition to bio-based DM devices.
      
        Various other small code fixes and improvements to thin-provisioning,
        DM cache and the DM ioctl interface"
      
      * tag 'dm-3.12-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
        dm stripe: silence a couple sparse warnings
        dm: add statistics support
        dm thin: always return -ENOSPC if no_free_space is set
        dm ioctl: cleanup error handling in table_load
        dm ioctl: increase granularity of type_lock when loading table
        dm ioctl: prevent rename to empty name or uuid
        dm thin: set pool read-only if breaking_sharing fails block allocation
        dm thin: prefix pool error messages with pool device name
        dm: allow error target to replace bio-based and request-based targets
        math64: New separate div64_u64_rem helper
        dm space map: optimise sm_ll_dec and sm_ll_inc
        dm btree: prefetch child nodes when walking tree for a dm_btree_del
        dm btree: use pop_frame in dm_btree_del to cleanup code
        dm cache: eliminate holes in cache structure
        dm cache: fix stacking of geometry limits
        dm thin: fix stacking of geometry limits
        dm thin: add data block size limits to Documentation
        dm cache: add data block size limits to code and Documentation
        dm cache: document metadata device is exclussive to a cache
        dm: stop using WQ_NON_REENTRANT
      7426d628
    • Linus Torvalds's avatar
      Merge tag 'md/3.12' of git://neil.brown.name/md · 4d7696f1
      Linus Torvalds authored
      Pull md update from Neil Brown:
       "Headline item is multithreading for RAID5 so that more IO/sec can be
        supported on fast (SSD) devices.  Also TILE-Gx SIMD suppor for RAID6
        calculations and an assortment of bug fixes"
      
      * tag 'md/3.12' of git://neil.brown.name/md:
        raid5: only wakeup necessary threads
        md/raid5: flush out all pending requests before proceeding with reshape.
        md/raid5: use seqcount to protect access to shape in make_request.
        raid5: sysfs entry to control worker thread number
        raid5: offload stripe handle to workqueue
        raid5: fix stripe release order
        raid5: make release_stripe lockless
        md: avoid deadlock when dirty buffers during md_stop.
        md: Don't test all of mddev->flags at once.
        md: Fix apparent cut-and-paste error in super_90_validate
        raid6/test: replace echo -e with printf
        RAID: add tilegx SIMD implementation of raid6
        md: fix safe_mode buglet.
        md: don't call md_allow_write in get_bitmap_file.
      4d7696f1
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · b05430fc
      Linus Torvalds authored
      Pull vfs pile 3 (of many) from Al Viro:
       "Waiman's conversion of d_path() and bits related to it,
        kern_path_mountpoint(), several cleanups and fixes (exportfs
        one is -stable fodder, IMO).
      
        There definitely will be more...  ;-/"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        split read_seqretry_or_unlock(), convert d_walk() to resulting primitives
        dcache: Translating dentry into pathname without taking rename_lock
        autofs4 - fix device ioctl mount lookup
        introduce kern_path_mountpoint()
        rename user_path_umountat() to user_path_mountpoint_at()
        take unlazy_walk() into umount_lookup_last()
        Kill indirect include of file.h from eventfd.h, use fdget() in cgroup.c
        prune_super(): sb->s_op is never NULL
        exportfs: don't assume that ->iterate() won't feed us too long entries
        afs: get rid of redundant ->d_name.len checks
      b05430fc
    • Linus Torvalds's avatar
      vfs: make sure we don't have a stale root path if unlazy_walk() fails · d0d27277
      Linus Torvalds authored
      When I moved the RCU walk termination into unlazy_walk(), I didn't copy
      quite all of it: for the successful RCU termination we properly add the
      necessary reference counts to our temporary copy of the root path, but
      for the failure case we need to make sure that any temporary root path
      information is cleared out (since it does _not_ have the proper
      reference counts from the RCU lookup).
      
      We could clean up this mess by just always dropping the temporary root
      information, but Al points out that that would mean that a single lookup
      through symlinks could see multiple different root entries if it races
      with another thread doing chroot.  Not that I think we should really
      care (we had that before too, back before we had a copy of the root path
      in the nameidata).
      
      Al says he has a cunning plan.  In the meantime, this is the minimal fix
      for the problem, even if it's not all that pretty.
      Reported-by: default avatarMace Moneta <moneta.mace@gmail.com>
      Acked-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      d0d27277
    • Paul Bolle's avatar
      CRIS: drop unused Kconfig symbols · be8cb7f4
      Paul Bolle authored
      Signed-off-by: default avatarPaul Bolle <pebolle@tiscali.nl>
      Signed-off-by: default avatarJesper Nilsson <jesper.nilsson@axis.com>
      be8cb7f4
    • Jesper Nilsson's avatar
      CRIS: Add kvm_para.h which includes generic file · b172b370
      Jesper Nilsson authored
      Copied from frv.
      Reviewed-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarJesper Nilsson <jesper.nilsson@axis.com>
      b172b370
    • Jesper Nilsson's avatar
      CRIS: remove unused current_regs · c9ea40cb
      Jesper Nilsson authored
      CC: Mikael Starvik <starvik@axis.com>
      CC: linux-cris-kernel@axis.com
      Signed-off-by: default avatarJonas Bonn <jonas@southpole.se>
      Signed-off-by: default avatarJesper Nilsson <jesper.nilsson@axis.com>
      c9ea40cb
    • Paul Bolle's avatar
      CRIS: Remove last traces of legacy RTC drivers · 569fa263
      Paul Bolle authored
      These legacy drivers were removed in commit
      9c75fc8c ("CRIS: Remove legacy RTC
      drivers"). Now remove their last traces in two Kconfig files and one
      Makefile.
      Signed-off-by: default avatarPaul Bolle <pebolle@tiscali.nl>
      Signed-off-by: default avatarJesper Nilsson <jespern@axis.com>
      569fa263
    • Paul Bolle's avatar
      CRIS: remove "config OOM_REBOOT" · 96184b60
      Paul Bolle authored
      The Kconfig symbol OOM_REBOOT got added in v2.6.25. It has never been
      used. Its entry can safely be removed.
      Signed-off-by: default avatarPaul Bolle <pebolle@tiscali.nl>
      Signed-off-by: default avatarJesper Nilsson <jesper.nilsson@axis.com>
      96184b60
    • Jingoo Han's avatar
      hwmon: (ina2xx) Remove casting the return value which is a void pointer · 8876dd78
      Jingoo Han authored
      Casting the return value which is a void pointer is redundant.
      The conversion from void pointer to any other pointer type is
      guaranteed by the C programming language.
      Signed-off-by: default avatarJingoo Han <jg1.han@samsung.com>
      Acked-by: default avatarJean Delvare <khali@linux-fr.org>
      Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
      8876dd78
    • Guenter Roeck's avatar
      hwmon: (hwmon-vid) Add __maybe_unused attribute to dummy variable · 98128de3
      Guenter Roeck authored
      This gets rid of this warning:
      
      drivers/hwmon/hwmon-vid.c: In function 'get_via_model_d_vrm':
      drivers/hwmon/hwmon-vid.c:249:27: warning: variable 'dummy' set but not used
      [-Wunused-but-set-variable]
      Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Reviewed-by: default avatarJean Delvare <khali@linux-fr.org>
      98128de3
    • Dave Airlie's avatar
      drm/nouveau: fix oops on runtime suspend/resume · 01172772
      Dave Airlie authored
      if we have no crtcs we need to not call the display resume code.
      Reported-by: default avatarTobias Klausmann <tobias.johannes.klausmann@mni.thm.de>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      01172772
    • Dave Airlie's avatar
      Merge tag 'drm-intel-fixes-2013-09-06' of... · 48016851
      Dave Airlie authored
      Merge tag 'drm-intel-fixes-2013-09-06' of git://people.freedesktop.org/~danvet/drm-intel into drm-fixes
      
      - Early stolen mem reservation from Jesse in x86 boot code. Acked by Ingo
        and hpa.  This was ready much earlier but somehow I've thought it'd go
        in through x86 trees, hence why this is late. Avoids the pci resource
        code to plant mmiobars in the middle of stolen mem and other ugliness.
      - vgaarb improvements from Alex Williamson plus the fix from Ville for the
        vgacon->fbcon smooth transition "feature".
      - Render pageflips on ivb/hsw to avoid stalls due to the ring switching
        when only flipping on the blitter (Chris).
      - Deadlock fixes around our flush_workqueue which crept back in - lockdep
        isn't clever enough :(
      - Shrinker recursion fix from Chris - this is the thing that blew the vma
        patches from Ben I've taken out of 3.12.
      - Fixup for the relocation refactoring. Also an igt testcase to make sure
        we don't break this again.
      - Pile of smaller fixups all over, shortlog has full details.
      
      * tag 'drm-intel-fixes-2013-09-06' of git://people.freedesktop.org/~danvet/drm-intel: (29 commits)
        drm/i915: Delay disabling of VGA memory until vgacon->fbcon handoff is done
        drm/i915: try not to lose backlight CBLV precision
        drm/i915: Confine page flips to BCS on Valleyview
        drm/i915: Skip stolen region initialisation if none is reserved
        drm/i915: fix gpu hang vs. flip stall deadlocks
        drm/i915: Hold an object reference whilst we shrink it
        drm/i915: fix i9xx_crtc_clock_get for multiplied pixels
        drm/i915: handle sdvo input pixel multiplier correctly again
        drm/i915: fix hpd work vs. flush_work in the pageflip code deadlock
        drm/i915: fix up the relocate_entry refactoring
        drm/i915: Fix pipe config warnings when dealing with LVDS fixed mode
        drm/i915: Don't call sg_free_table() if sg_alloc_table() fails
        i915: Update VGA arbiter support for newer devices
        vgaarb: Fix VGA decodes changes
        vgaarb: Don't disable resources that are not owned
        drm/i915: Pin pages whilst mapping the dma-buf
        drm/i915: enable trickle feed on Haswell
        x86: add early quirk for reserving Intel graphics stolen memory v5
        drm/i915: split PCI IDs out into i915_drm.h v4
        i915_gem: Convert kmem_cache_alloc(...GFP_ZERO) to kmem_cache_zalloc
        ...
      48016851
    • Linus Torvalds's avatar
      Merge tag 'dmaengine-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/dmaengine · 26b0332e
      Linus Torvalds authored
      Pull dmaengine update from Dan Williams:
       "Collection of random updates to the core and some end-driver fixups
        for ioatdma and mv_xor:
         - NUMA aware channel allocation
         - Cleanup dmatest debugfs interface
         - ioat: make raid-support Atom only
         - mv_xor: big endian
      
        Aside from the top three commits these have all had some soak time in
        -next.  The top commit fixes a recent build breakage.
      
        It has been a long while since my last pull request, hopefully it does
        not show.  Thanks to Vinod for keeping an eye on drivers/dma/ this
        past year"
      
      * tag 'dmaengine-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/dmaengine:
        dmaengine: dma_sync_wait and dma_find_channel undefined
        MAINTAINERS: update email for Dan Williams
        dma: mv_xor: Fix incorrect error path
        ioatdma: silence GCC warnings
        dmaengine: make dma_channel_rebalance() NUMA aware
        dmaengine: make dma_submit_error() return an error code
        ioatdma: disable RAID on non-Atom platforms and reenable unaligned copies
        mv_xor: support big endian systems using descriptor swap feature
        mv_xor: use {readl, writel}_relaxed instead of __raw_{readl, writel}
        dmatest: print message on debug level in case of no error
        dmatest: remove IS_ERR_OR_NULL checks of debugfs calls
        dmatest: make module parameters writable
      26b0332e
    • Jon Mason's avatar
      dmaengine: dma_sync_wait and dma_find_channel undefined · 4a43f394
      Jon Mason authored
      dma_sync_wait and dma_find_channel are declared regardless of whether
      CONFIG_DMA_ENGINE is enabled, but calling the function without
      CONFIG_DMA_ENGINE enabled results "undefined reference" errors.
      
      To get around this, declare dma_sync_wait and dma_find_channel as inline
      functions if CONFIG_DMA_ENGINE is undefined.
      Signed-off-by: default avatarJon Mason <jon.mason@intel.com>
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      4a43f394
  3. 09 Sep, 2013 7 commits
    • Linus Torvalds's avatar
      Merge tag 'late-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 64041417
      Linus Torvalds authored
      Pull ARM SoC late changes from Kevin Hilman:
       "These are changes that arrived a little late before the merge window,
        or had dependencies on previous branches.
      
        Highlights:
         - ux500: misc.  cleanup, fixup I2C devices
         - exynos: DT updates for RTC; PM updates
         - at91: DT updates for NAND; new platforms added to generic defconfig
         - sunxi: DT updates: cubieboard2, pinctrl driver, gated clocks
         - highbank: LPAE fixes, select necessary ARM errata
         - omap: PM fixes and improvements; OMAP5 mailbox support
         - omap: basic support for new DRA7xx SoCs"
      
      * tag 'late-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (60 commits)
        ARM: dts: vexpress: Add CCI node to TC2 device-tree
        ARM: EXYNOS: Skip C1 cpuidle state for exynos5440
        ARM: EXYNOS: always enable PM domains support for EXYNOS4X12
        ARM: highbank: clean-up some unused includes
        ARM: sun7i: Enable the A20 clocks in the DTSI
        ARM: sun6i: Enable clock support in the DTSI
        ARM: sun5i: dt: Use the A10s gates in the DTSI
        ARM: at91: at91_dt_defconfig: enable rm9200 support
        ARM: dts: add ADC device tree node for exynos5420/5250
        ARM: dts: Add RTC DT node to Exynos5420 SoC
        ARM: dts: Update the "status" property of RTC DT node for Exynos5250 SoC
        ARM: dts: Fix the RTC DT node name for Exynos5250
        irqchip: mmp: avoid to include irqs head file
        ARM: mmp: avoid to include head file in mach-mmp
        irqchip: mmp: support irqchip
        irqchip: move mmp irq driver
        ARM: OMAP: AM33xx: clock: Add RNG clock data
        ARM: OMAP: TI81XX: add always-on powerdomain for TI81XX
        ARM: OMAP4: clock: Lock PLLs in the right sequence
        ARM: OMAP: AM33XX: hwmod: Add hwmod data for debugSS
        ...
      64041417
    • Linus Torvalds's avatar
      Merge tag 'renesas-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · fa91515c
      Linus Torvalds authored
      Pull ARM Renesas SoC cleanup, refactoring and more SMP support from Kevin Hilman:
       "Lots of cleanup and refactoring and some SMP additions for Renesas
        platforms.  Due to some inter-dependencies with other arm-soc
        branches, this Renesas stuff was separated out for sending after the
        other branches were merged.
      
        Highlights:
         - remove unused board support and cleanup of unused headers
         - refactoring of init and device registration
         - simplify IRQ initialization"
      
      * tag 'renesas-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (68 commits)
        ARM: shmobile: Per-CPU SMP boot / sleep code for SCU SoCs
        ARM: shmobile: Introduce per-CPU SMP boot / sleep code
        ARM: shmobile: Use shared SCU CPU Hotplug code on r8a7779
        ARM: shmobile: Use shared SCU CPU Hotplug code on sh73a0
        ARM: shmobile: Add shared SCU CPU Hotplug code
        ARM: shmobile: Use shared SCU SMP boot code on emev2
        ARM: shmobile: Use shared SCU SMP boot code on r8a7779
        ARM: shmobile: Use shared SCU SMP boot code on sh73a0
        ARM: shmobile: Introduce shared SCU SMP boot code
        ARM: shmobile: sh73a0: Remove global GPIO_NR definition
        ARM: shmobile: kzm9d: remove nfsroot settings from bootargs
        ARM: shmobile: armadillo800eva: remove nfsroot settings from bootargs
        ARM: shmobile: r8a7779: move r8a7779_init_irq_xxx() to setup
        ARM: shmobile: r8a7740: move r8a7740_init_irq_of() to setup
        ARM: shmobile: bockw: add missing __initdata
        ARM: shmobile: r8a7790: add missing __initdata
        ARM: shmobile: r8a7779: add missing __initdata
        ARM: shmobile: Remove unused shmobile_init_time()
        ARM: shmobile: Use clocksource_of_init() on r8a7790
        ARM: shmobile: Use default ->init_time() on KZM9G DT ref
        ...
      fa91515c
    • Linus Torvalds's avatar
      Merge tag 'drivers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · a35c6322
      Linus Torvalds authored
      Pull ARM SoC driver update from Kevin Hilman:
       "This contains the ARM SoC related driver updates for v3.12.  The only
        thing this cycle are core PM updates and CPUidle support for ARM's TC2
        big.LITTLE development platform"
      
      * tag 'drivers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        cpuidle: big.LITTLE: vexpress-TC2 CPU idle driver
        ARM: vexpress: tc2: disable GIC CPU IF in tc2_pm_suspend
        drivers: irq-chip: irq-gic: introduce gic_cpu_if_down()
      a35c6322
    • Linus Torvalds's avatar
      Merge tag 'clk-for-linus-3.12' of git://git.linaro.org/people/mturquette/linux · bef4a0ab
      Linus Torvalds authored
      Pull clock framework changes from Michael Turquette:
       "The common clk framework changes for 3.12 are dominated by clock
        driver patches, both new drivers and fixes to existing.  A high
        percentage of these are for Samsung platforms like Exynos.  Core
        framework fixes and some new features like automagical clock
        re-parenting round out the patches"
      
      * tag 'clk-for-linus-3.12' of git://git.linaro.org/people/mturquette/linux: (102 commits)
        clk: only call get_parent if there is one
        clk: samsung: exynos5250: Simplify registration of PLL rate tables
        clk: samsung: exynos4: Register PLL rate tables for Exynos4x12
        clk: samsung: exynos4: Register PLL rate tables for Exynos4210
        clk: samsung: exynos4: Reorder registration of mout_vpllsrc
        clk: samsung: pll: Add support for rate configuration of PLL46xx
        clk: samsung: pll: Use new registration method for PLL46xx
        clk: samsung: pll: Add support for rate configuration of PLL45xx
        clk: samsung: pll: Use new registration method for PLL45xx
        clk: samsung: exynos4: Rename exynos4_plls to exynos4x12_plls
        clk: samsung: exynos4: Remove checks for DT node
        clk: samsung: exynos4: Remove unused static clkdev aliases
        clk: samsung: Modify _get_rate() helper to use __clk_lookup()
        clk: samsung: exynos4: Use separate aliases for cpufreq related clocks
        clocksource: samsung_pwm_timer: Get clock from device tree
        ARM: dts: exynos4: Specify PWM clocks in PWM node
        pwm: samsung: Update DT bindings documentation to cover clocks
        clk: Move symbol export to proper location
        clk: fix new_parent dereference before null check
        clk: wm831x: Initialise wm831x pointer on init
        ...
      bef4a0ab
    • Linus Torvalds's avatar
      Merge tag 'trace-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 7eb69529
      Linus Torvalds authored
      Pull tracing updates from Steven Rostedt:
       "Not much changes for the 3.12 merge window.  The major tracing changes
        are still in flux, and will have to wait for 3.13.
      
        The changes for 3.12 are mostly clean ups and minor fixes.
      
        H Peter Anvin added a check to x86_32 static function tracing that
        helps a small segment of the kernel community.
      
        Oleg Nesterov had a few changes from 3.11, but were mostly clean ups
        and not worth pushing in the -rc time frame.
      
        Li Zefan had small clean up with annotating a raw_init with __init.
      
        I fixed a slight race in updating function callbacks, but the race is
        so small and the bug that happens when it occurs is so minor it's not
        even worth pushing to stable.
      
        The only real enhancement is from Alexander Z Lam that made the
        tracing_cpumask work for trace buffer instances, instead of them all
        sharing a global cpumask"
      
      * tag 'trace-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        ftrace/rcu: Do not trace debug_lockdep_rcu_enabled()
        x86-32, ftrace: Fix static ftrace when early microcode is enabled
        ftrace: Fix a slight race in modifying what function callback gets traced
        tracing: Make tracing_cpumask available for all instances
        tracing: Kill the !CONFIG_MODULES code in trace_events.c
        tracing: Don't pass file_operations array to event_create_dir()
        tracing: Kill trace_create_file_ops() and friends
        tracing/syscalls: Annotate raw_init function with __init
      7eb69529
    • Alex Elder's avatar
      clk: only call get_parent if there is one · 12d29886
      Alex Elder authored
      In __clk_init(), after a clock is mostly initialized, a scan is done
      of the orphan clocks to see if the clock being registered is the
      parent of any of them.
      
      This code assumes that any clock that provides a get_parent method
      actually has at least one parent, and that's not a valid assumption.
      
      As a result, an orphan clock with no parent can return *something*
      as the parent index, and that value is blindly used to dereference
      the orphan's parent_names[] array (which will be ZERO_SIZE_PTR or
      NULL).
      
      Fix this by ensuring get_parent is only called for orphans with at
      least one parent.
      Signed-off-by: default avatarAlex Elder <elder@linaro.org>
      Signed-off-by: default avatarMike Turquette <mturquette@linaro.org>
      12d29886
    • Al Viro's avatar
      split read_seqretry_or_unlock(), convert d_walk() to resulting primitives · 48f5ec21
      Al Viro authored
      Separate "check if we need to retry" from "unlock if we are done and
      had seq_writelock"; that allows to use these guys in d_walk(), where
      we need to recheck every time we ascend back to parent, but do *not*
      want to unlock until the very end.  Lift rcu_read_lock/rcu_read_unlock
      out into callers.
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      48f5ec21