1. 16 Dec, 2014 22 commits
    • Linus Torvalds's avatar
      Merge tag 'dt2-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 205dc205
      Linus Torvalds authored
      Pull ARM SoC DT updates part 2 from Arnd Bergmann:
       "This is a follow-up to the early ARM SoC DT changes, with additional
        content that has external dependencies:
      
         - The Tegra IOMMU DT support depends on changes from the iommu tree,
           plus the contents of the arm-soc drivers branch
         - The MVEBU PHY support depends on changes from the phy tree
         - The AT91 DT support depends on changes from the RTC and DMA-slave
           trees
      
        All of these changes just enable additional devices for existing
        platforms"
      
      * tag 'dt2-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        ARM: tegra: Enable IOMMU for display controllers on Tegra124
        ARM: tegra: Enable IOMMU for display controllers on Tegra114
        ARM: tegra: Enable IOMMU for display controllers on Tegra30
        ARM: tegra: Add memory controller support for Tegra124
        ARM: tegra: Add memory controller support for Tegra114
        ARM: tegra: Add memory controller support for Tegra30
        ARM: tegra: Add APB_MISC_GP as a MIPI pad control bank
        ARM: mvebu: add PHY support to the dts for the USB controllers on Armada 375
        ARM: mvebu: add Device Tree description of USB cluster controller on Armada 375
        ARM: at91/dt: at91sam9g45: add ISI node
        ARM: at91/dt: enable the RTT block on the at91sam9m10g45ek board
        ARM: at91/dt: enable the RTT block on the sam9g20ek board
        ARM: at91/dt: add GPBR nodes
        ARM: at91/dt: add RTT nodes to at91 dtsis
        ARM: at91/dt: at91sam9rl: add rtc
        ARM: at91: fix GPLv2 wording
        ARM: at91/dt: sama5d4: add DMA support
        ARM: at91/dt: sama5d4: use macro instead of numeric value
      205dc205
    • Linus Torvalds's avatar
      Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 94bbdb63
      Linus Torvalds authored
      Pull ARM SoC fixes from Arnd Bergmann:
       "Here are the first arm-soc bug fixes.  Most of these are OMAP related
        fixes for regressions or minor bugs.  Aside from that, there are a few
        defconfig changes for various platforms"
      
      * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        iommu/exynos: Fix arm64 allmodconfig build
        ARM: defconfigs: use CONFIG_CPUFREQ_DT
        ARM: omap2plus_defconfig: Enable AHCI_PLATFORM driver
        ARM: dts: am437x-sk-evm.dts: fix LCD timings
        ARM: dts: dra7-evm: Update SMPS7 (VDD_CORE) max voltage to match DM
        ARM: dts: dra7-evm: Fix typo in SMPS6 (VDD_GPU) max voltage
        ARM: OMAP2+: AM43x: Add ID for ES1.2
        ARM: dts: am437x-sk: fix lcd enable pin mux data
        ARM: dts: Fix gpmc regression for omap 2430sdp smc91x
        Revert "ARM: shmobile: multiplatform: add Audo DMAC peri peri support on defconfig"
        ARM: dts: dra7: fix DSS PLL clock mux registers
        ARM: dts: DRA7: wdt: Fix compatible property for watchdog node
        ARM: OMAP2+: clock: remove unused function prototype
      94bbdb63
    • Linus Torvalds's avatar
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 36c0a48f
      Linus Torvalds authored
      Pull arm64 fixes from Will Deacon:
       "Given that my availability next week is likely to be poor, here are
        three arm64 fixes to resolve some issues introduced by features merged
        last week.  I was going to wait until -rc1, but it doesn't make much
        sense to sit on fixes.
      
        Fix some fallout introduced during the merge window:
      
         - Build failure when PM_SLEEP is disabled but CPU_IDLE is enabled
         - Compiler warning from page table dumper w/ 48-bit VAs
         - Erroneous page table truncation in reported dump"
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: mm: dump: don't skip final region
        arm64: mm: dump: fix shift warning
        arm64: psci: Fix build breakage without PM_SLEEP
      36c0a48f
    • Linus Torvalds's avatar
      Merge tag 'xtensa-next-20141215' of git://github.com/czankel/xtensa-linux · a643fc72
      Linus Torvalds authored
      Pull Xtensa fixes from Chris Zankel:
       - fix nommu support
       - remove s6000 variant and s6105 platform
       - fix permissions for kmapped pages so that copy_to_user_page works with them
       - add power management menu to Kconfig to allow use of runtime PM
       - disable linker optimizations because of a linker bug
       - fix sparse error
      
      * tag 'xtensa-next-20141215' of git://github.com/czankel/xtensa-linux:
        xtensa: disable link optimization
        xtensa/uaccess: fix sparse errors
        xtensa: fix kmap_prot definition
        xtensa: add power management menu to Kconfig
        xtensa: remove s6000 variant and s6105 platform
        xtensa: make PLATFORM_DEFAULT_MEM parameters configurable
        xtensa: nommu: clean up memory map dump
        xtensa: nommu: reserve memory below PLATFORM_DEFAULT_MEM_START
        xtensa: nommu: set up cache and atomctl in initialize_mmu
        xtensa: move vecbase SR initialization to _startup
        xtensa: nommu: fix uImage load address
        xtensa: nommu: fix load address definitions
        xtensa: nommu: fix Image.elf reset code and ld script
        xtensa: nommu: add MMU dependency to DEBUG_TLB_SANITY
        xtensa: nommu: don't build most of the cache flushing code
        xtensa: nommu: don't provide arch_get_unmapped_area
        xtensa: nommu: provide MAP_UNINITIALIZED definition
        xtensa: nommu: provide _PAGE_CHG_MASK definition
        xtensa: nommu: provide __invalidate_dcache_page_alias stub
        xtensa: nommu: move init_mmu stub to nommu_context.h
      a643fc72
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile · 0db2812a
      Linus Torvalds authored
      Pull arch/tile updates from Chris Metcalf:
       "Note that one of the changes converts my old cmetcalf@tilera.com email
        in MAINTAINERS to the cmetcalf@ezchip.com email that you see on this
        email"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
        arch/tile: update MAINTAINERS email to EZchip
        tile: avoid undefined behavior with regs[TREG_TP] etc
        arch: tile: kernel: kgdb.c: Use memcpy() instead of pointer copy one by one
        tile: Use the more common pr_warn instead of pr_warning
        arch: tile: gxio: Export symbols for module using in 'mpipe.c'
        arch: tile: kernel: signal.c: Use __copy_from/to_user() instead of __get/put_user()
      0db2812a
    • Linus Torvalds's avatar
      Merge tag 'stable/for-linus-3.19-rc0b-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · eb64c3c6
      Linus Torvalds authored
      Pull additional xen update from David Vrabel:
       "Xen: additional features for 3.19-rc0
      
         - Linear p2m for x86 PV guests which simplifies the p2m code,
           improves performance and will allow for > 512 GB PV guests in the
           future.
      
        A last-minute, configuration specific issue was discovered with this
        change which is why it was not included in my previous pull request.
        This is now been fixed and tested"
      
      * tag 'stable/for-linus-3.19-rc0b-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen: switch to post-init routines in xen mmu.c earlier
        Revert "swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single"
        xen: annotate xen_set_identity_and_remap_chunk() with __init
        xen: introduce helper functions to do safe read and write accesses
        xen: Speed up set_phys_to_machine() by using read-only mappings
        xen: switch to linear virtual mapped sparse p2m list
        xen: Hide get_phys_to_machine() to be able to tune common path
        x86: Introduce function to get pmd entry pointer
        xen: Delay invalidating extra memory
        xen: Delay m2p_override initialization
        xen: Delay remapping memory of pv-domain
        xen: use common page allocation function in p2m.c
        xen: Make functions static
        xen: fix some style issues in p2m.c
      eb64c3c6
    • Linus Torvalds's avatar
      Merge tag 'linux-kselftest-3.19-rc1' of... · 61de8e53
      Linus Torvalds authored
      Merge tag 'linux-kselftest-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest
      
      Pull kselftest update from Shuah Khan:
       "kselftest updates for 3.19-rc1:
      
         - kcmp test include file cleanup
         - kcmp change to build on all architectures
         - A light weight kselftest framework that provides a set of
           interfaces for tests to use to report results.  In addition,
           several tests are updated to use the framework.
         - A new runtime system size test that prints the amount of RAM that
           the currently running system is using"
      
      * tag 'linux-kselftest-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        selftest: size: Add size test for Linux kernel
        selftests/kcmp: Always try to build the test
        selftests/kcmp: Don't include kernel headers
        kcmp: Move kcmp.h into uapi
        selftests/timers: change test to use ksft framework
        selftests/kcmp: change test to use ksft framework
        selftests/ipc: change test to use ksft framework
        selftests/breakpoints: change test to use ksft framework
        selftests: add kselftest framework for uniform test reporting
        selftests/user: move test out of Makefile into a shell script
        selftests/net: move test out of Makefile into a shell script
      61de8e53
    • Linus Torvalds's avatar
      Merge tag 'trace-3.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · a7c180aa
      Linus Torvalds authored
      Pull tracing updates from Steven Rostedt:
       "As the merge window is still open, and this code was not as complex as
        I thought it might be.  I'm pushing this in now.
      
        This will allow Thomas to debug his irq work for 3.20.
      
        This adds two new features:
      
        1) Allow traceopoints to be enabled right after mm_init().
      
           By passing in the trace_event= kernel command line parameter,
           tracepoints can be enabled at boot up.  For debugging things like
           the initialization of interrupts, it is needed to have tracepoints
           enabled very early.  People have asked about this before and this
           has been on my todo list.  As it can be helpful for Thomas to debug
           his upcoming 3.20 IRQ work, I'm pushing this now.  This way he can
           add tracepoints into the IRQ set up and have users enable them when
           things go wrong.
      
        2) Have the tracepoints printed via printk() (the console) when they
           are triggered.
      
           If the irq code locks up or reboots the box, having the tracepoint
           output go into the kernel ring buffer is useless for debugging.
           But being able to add the tp_printk kernel command line option
           along with the trace_event= option will have these tracepoints
           printed as they occur, and that can be really useful for debugging
           early lock up or reboot problems.
      
        This code is not that intrusive and it passed all my tests.  Thomas
        tried them out too and it works for his needs.
      
         Link: http://lkml.kernel.org/r/20141214201609.126831471@goodmis.org"
      
      * tag 'trace-3.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        tracing: Add tp_printk cmdline to have tracepoints go to printk()
        tracing: Move enabling tracepoints to just after rcu_init()
      a7c180aa
    • Arnd Bergmann's avatar
      Merge tag 'renesas-defconfig-fixes-for-v3.19' of... · 5f1b2953
      Arnd Bergmann authored
      Merge tag 'renesas-defconfig-fixes-for-v3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into fixes
      
      Pull "Renesas ARM Based SoC Defconfig Fixes for v3.19" from Simon Horman:
      
      * Revert change enabling RCAR_AUDMAC_PP in shmobile_defconfig
      
        Unfortunately enabling RCAR_AUDMAC_PP support this patch breaks dmaengine
        support on R-Car Gen2 boards. This should be resolved by driver updates
        in v3.20. But v3.19 was too early for this defconfig change.
      
      * tag 'renesas-defconfig-fixes-for-v3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
        Revert "ARM: shmobile: multiplatform: add Audo DMAC peri peri support on defconfig"
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      5f1b2953
    • Mark Brown's avatar
      iommu/exynos: Fix arm64 allmodconfig build · 20911ce6
      Mark Brown authored
      The Exynos IOMMU driver uses the ARM specific dmac_flush_range() and
      outer_flush_range() functions. This breaks the build on arm64 allmodconfig
      in -next since support has been merged for some Exynos ARMv8 SoCs. Add a
      dependency on ARM to keep things building until either the driver has the
      ARM dependencies removed or the ARMv8 architecture code implements these
      ARM specific APIs.
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      20911ce6
    • Chris Zankel's avatar
      xtensa: disable link optimization · 1f2fdbd0
      Chris Zankel authored
      The default linker behavior is to optimize identical literal values
      and remove unnecessary overhead. However, because of a bug in the
      linker, this currently results in an error ('call target out of range').
      
      Disable link-time optimizations per default until there is a fix
      for the linker and add the option to iss_defconfig.
      Signed-off-by: default avatarChris Zankel <chris@zankel.net>
      1f2fdbd0
    • Michael S. Tsirkin's avatar
      xtensa/uaccess: fix sparse errors · 4255a8e1
      Michael S. Tsirkin authored
      virtio wants to read bitwise types from userspace using get_user.  At the
      moment this triggers sparse errors, since the value is passed through an
      integer.
      
      Fix that up using __force.
      Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: default avatarChris Zankel <chris@zankel.net>
      4255a8e1
    • Chris Zankel's avatar
      Merge tag 'xtensa-for-next-20141213' of git://github.com/jcmvbkbc/linux-xtensa into for_next · 2cb54e84
      Chris Zankel authored
      Xtensa improvements for 3.19:
      
      - fix permissions for kmapped pages so that copy_to_user_page works with
        them;
      - add power management menu to Kconfig to allow use of runtime PM.
      2cb54e84
    • Chris Zankel's avatar
      Merge tag 'v3.18' into for_next · 865566ed
      Chris Zankel authored
      Linux 3.18
      865566ed
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds · 2dbfca5a
      Linus Torvalds authored
      Pull LED subsystem update from Bryan Wu:
       "We got some cleanup and driver for LP8860 as well as some patches for
        LED Flash Class"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds:
        leds: lp8860: Fix module dependency
        leds: lp8860: Introduce TI lp8860 4 channel LED driver
        leds: Add support for setting brightness in a synchronous way
        leds: implement sysfs interface locking mechanism
        leds: syscon: handle multiple syscon instances
        leds: delete copy/paste mistake
        leds: regulator: Convert to devm_regulator_get_exclusive
      2dbfca5a
    • Linus Torvalds's avatar
      Merge tag 'staging-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · dab363f9
      Linus Torvalds authored
      Pull staging driver updates from Greg KH:
       "Here's the big staging tree pull request for 3.19-rc1.
      
        We continued to delete more lines than were added, always a good
        thing, but not at a huge rate this release, only about 70k lines
        removed overall mostly from removing the horrid bcm driver.
      
        Lots of normal staging driver cleanups and fixes all over the place,
        well over a thousand of them, the shortlog shows all the horrid
        details.
      
        The "contentious" thing here is the movement of the Android binder
        code out of staging into the "real" part of the kernel.  This is code
        that has been stable for a few years now and is working as-is in the
        tens of millions of devices with no issues.  Yes, the code is horrid,
        and the userspace api leaves a lot to be desired, but it's not going
        to change due to legacy issues that we have no control over.  Because
        so many devices and companies rely on this, and the code is stable,
        might as well promote it out of staging.
      
        This was all discussed at the Linux Plumbers conference, and everyone
        participating agreed that this was the best way forward.
      
        There is work happening to replace the binder code with something new
        that is happening right now, but I don't expect to see the results of
        that work for another year at the earliest.  If that ever happens, and
        Android switches over to it, I'll gladly remove this version.
      
        As for maintainers, I'll be glad to maintain this code, I've been
        doing it for the past few years with no problems.  I'll send a
        MAINTAINERS entry for it before 3.19-final is out, still need to talk
        to the Google developers about if they are willing to help with it or
        not, last I checked they were, which was good.
      
        All of these patches have been in linux-next for a while with no
        reported issues"
      
      * tag 'staging-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (1382 commits)
        Staging: slicoss: Fix long line issues in slicoss.c
        staging: rtl8712: remove unnecessary else after return
        staging: comedi: change some printk calls to pr_err
        staging: rtl8723au: hal: Removed the extra semicolon
        lustre: Deletion of unnecessary checks before three function calls
        staging: lustre: fix sparse warnings: static function declaration
        staging: lustre: fixed sparse warnings related to static declarations
        staging: unisys: remove duplicate header
        staging: unisys: remove unneeded structure
        staging: ft1000 : replace __attribute ((__packed__) with __packed
        drivers: staging: rtl8192e: Include "asm/unaligned.h" instead of "access_ok.h" in "rtl819x_BAProc.c"
        Drivers:staging:rtl8192e: Fixed checkpatch warning
        Drivers:staging:clocking-wizard: Added a newline
        staging: clocking-wizard: check for a valid clk_name pointer
        staging: rtl8723au: Hal_InitPGData() avoid unnecessary typecasts
        staging: rtl8723au: _DisableAnalog(): Avoid zero-init variables unnecessarily
        staging: rtl8723au: Remove unnecessary wrapper _ResetDigitalProcedure1()
        staging: rtl8723au: _ResetDigitalProcedure1_92C() reduce code obfuscation
        staging: rtl8723au: Remove unnecessary wrapper _DisableRFAFEAndResetBB()
        staging: rtl8723au: _DisableRFAFEAndResetBB8192C(): Reduce code obfuscation
        ...
      dab363f9
    • Linus Torvalds's avatar
      Merge tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394 · a68db9cb
      Linus Torvalds authored
      Pull firewire updates from Stefan Richter:
       "IEEE 1394 subsystem updates:
         - clean up firewire-ohci's longlived vm-mapping
         - use target instance lock instead of core lock in firewire-sbp2"
      
      * tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394:
        firewire: sbp2: replace card lock by target lock
        firewire: sbp2: replace some spin_lock_irqsave by spin_lock_irq
        firewire: sbp2: protect a reference counter properly
        firewire: core: document fw_csr_string's truncation of long strings
        firewire: ohci: replace vm_map_ram() with vmap()
      a68db9cb
    • Linus Torvalds's avatar
      Merge tag 'for-v3.19' of git://git.infradead.org/battery-2.6 · 7051d8e6
      Linus Torvalds authored
      Pull power supply updates from Sebastian Reichel::
       "Power supply and reset changes for the v3.19 series
      
         - update power/reset drivers to use kernel restart handler
         - add power off driver for i.mx6
         - add DT support for gpio-charger"
      
      * tag 'for-v3.19' of git://git.infradead.org/battery-2.6:
        power: reset: adjust priority of simple syscon reboot driver
        power: ds2782_battery: Simplify the PM hooks
        power/reset: brcmstb: Register with kernel restart handler
        power/reset: hisi: Register with kernel restart handler
        power/reset: keystone: Register with kernel restart handler
        power/reset: axxia: Register with kernel restart handler
        power/reset: xgene: Register with kernel restart handler
        power/reset: xgene: Use mdelay instead of jiffies based timeout
        power/reset: xgene: Use local variable dev instead of pdev->dev
        power/reset: xgene: Drop devm_kfree
        power/reset: xgene: Return -ENOMEM if out of memory
        power/reset: vexpress: Register with kernel restart handler
        power: reset: imx-snvs-poweroff: add power off driver for i.mx6
        power: gpio-charger: add device tree support
        dt-bindings: document gpio-charger bindings
      7051d8e6
    • Linus Torvalds's avatar
      Merge tag 'hsi-for-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi · d3255ec4
      Linus Torvalds authored
      Pull HSI update from Sebastian Reichel:
       "Misc fixes in omap-ssi and nokia-modem drivers"
      
      * tag 'hsi-for-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi:
        HSI: nokia-modem: fix error handling of irq_of_parse_and_map
        HSI: nokia-modem: setup default value for pm parameter
        HSI: omap_ssi_port: Don't print uninitialized err
        HSI: remove deprecated IRQF_DISABLED
      d3255ec4
    • Linus Torvalds's avatar
      Merge branch 'irq-irqdomain-arm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 60d7ef3f
      Linus Torvalds authored
      Pull irq domain ARM updates from Thomas Gleixner:
       "This set of changes make use of hierarchical irqdomains to provide:
      
         - MSI/ITS support for GICv3
         - MSI support for GICv2m
         - Interrupt polarity extender for GICv1
      
        Marc has come more cleanups for the existing extension hooks of GIC in
        the pipeline, but they are going to be 3.20 material"
      
      * 'irq-irqdomain-arm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (22 commits)
        irqchip: gicv3-its: Fix ITT allocation
        irqchip: gicv3-its: Move some alloc/free code to activate/deactivate
        irqchip: gicv3-its: Fix domain free in multi-MSI case
        irqchip: gic: Remove warning by including linux/irqdomain.h
        irqchip: gic-v2m: Add DT bindings for GICv2m
        irqchip: gic-v2m: Add support for ARM GICv2m MSI(-X) doorbell
        irqchip: mtk-sysirq: dt-bindings: Add bindings for mediatek sysirq
        irqchip: mtk-sysirq: Add sysirq interrupt polarity support
        irqchip: gic: Support hierarchy irq domain.
        irqchip: GICv3: Binding updates for ITS
        irqchip: GICv3: ITS: enable compilation of the ITS driver
        irqchip: GICv3: ITS: plug ITS init into main GICv3 code
        irqchip: GICv3: ITS: DT probing and initialization
        irqchip: GICv3: ITS: MSI support
        irqchip: GICv3: ITS: device allocation and configuration
        irqchip: GICv3: ITS: tables allocators
        irqchip: GICv3: ITS: LPI allocator
        irqchip: GICv3: ITS: irqchip implementation
        irqchip: GICv3: ITS command queue
        irqchip: GICv3: rework redistributor structure
        ...
      60d7ef3f
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 9b8ec916
      Linus Torvalds authored
      Pull core block fix from Jens Axboe:
       "Jan reported a problem this morning with a crash in blk-mq, and after
        looking over the recent changes, it's obvious that the blk-mq-tag
        waitqueue handling change is buggy.  We could end up _not_ doing
        finish_wait() before switching to a new waitqueue, thus corrupting the
        wait task list"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        Revert "blk-mq: Micro-optimize bt_get()"
      9b8ec916
    • Linus Torvalds's avatar
      Merge tag 'rpmsg-3.19-next' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/rpmsg · 27cb8823
      Linus Torvalds authored
      Pull rpmsg update from Ohad Ben-Cohen:
       "A single patch from Suman Anna which makes rpmsg use less buffers when
        small vrings are being used"
      
      * tag 'rpmsg-3.19-next' of git://git.kernel.org/pub/scm/linux/kernel/git/ohad/rpmsg:
        rpmsg: use less buffers when vrings are small
      27cb8823
  2. 15 Dec, 2014 13 commits
    • Linus Torvalds's avatar
      Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux · 988adfdf
      Linus Torvalds authored
      Pull drm updates from Dave Airlie:
       "Highlights:
      
         - AMD KFD driver merge
      
           This is the AMD HSA interface for exposing a lowlevel interface for
           GPGPU use.  They have an open source userspace built on top of this
           interface, and the code looks as good as it was going to get out of
           tree.
      
         - Initial atomic modesetting work
      
           The need for an atomic modesetting interface to allow userspace to
           try and send a complete set of modesetting state to the driver has
           arisen, and been suffering from neglect this past year.  No more,
           the start of the common code and changes for msm driver to use it
           are in this tree.  Ongoing work to get the userspace ioctl finished
           and the code clean will probably wait until next kernel.
      
         - DisplayID 1.3 and tiled monitor exposed to userspace.
      
           Tiled monitor property is now exposed for userspace to make use of.
      
         - Rockchip drm driver merged.
      
         - imx gpu driver moved out of staging
      
        Other stuff:
      
         - core:
              panel - MIPI DSI + new panels.
              expose suggested x/y properties for virtual GPUs
      
         - i915:
              Initial Skylake (SKL) support
              gen3/4 reset work
              start of dri1/ums removal
              infoframe tracking
              fixes for lots of things.
      
         - nouveau:
              tegra k1 voltage support
              GM204 modesetting support
              GT21x memory reclocking work
      
         - radeon:
              CI dpm fixes
              GPUVM improvements
              Initial DPM fan control
      
         - rcar-du:
              HDMI support added
              removed some support for old boards
              slave encoder driver for Analog Devices adv7511
      
         - exynos:
              Exynos4415 SoC support
      
         - msm:
              a4xx gpu support
              atomic helper conversion
      
         - tegra:
              iommu support
              universal plane support
              ganged-mode DSI support
      
         - sti:
              HDMI i2c improvements
      
         - vmwgfx:
              some late fixes.
      
         - qxl:
              use suggested x/y properties"
      
      * 'drm-next' of git://people.freedesktop.org/~airlied/linux: (969 commits)
        drm: sti: fix module compilation issue
        drm/i915: save/restore GMBUS freq across suspend/resume on gen4
        drm: sti: correctly cleanup CRTC and planes
        drm: sti: add HQVDP plane
        drm: sti: add cursor plane
        drm: sti: enable auxiliary CRTC
        drm: sti: fix delay in VTG programming
        drm: sti: prepare sti_tvout to support auxiliary crtc
        drm: sti: use drm_crtc_vblank_{on/off} instead of drm_vblank_{on/off}
        drm: sti: fix hdmi avi infoframe
        drm: sti: remove event lock while disabling vblank
        drm: sti: simplify gdp code
        drm: sti: clear all mixer control
        drm: sti: remove gpio for HDMI hot plug detection
        drm: sti: allow to change hdmi ddc i2c adapter
        drm/doc: Document drm_add_modes_noedid() usage
        drm/i915: Remove '& 0xffff' from the mask given to WA_REG()
        drm/i915: Invert the mask and val arguments in wa_add() and WA_REG()
        drm: Zero out DRM object memory upon cleanup
        drm/i915/bdw: Fix the write setting up the WIZ hashing mode
        ...
      988adfdf
    • Linus Torvalds's avatar
      x86: mm: consolidate VM_FAULT_RETRY handling · 26178ec1
      Linus Torvalds authored
      The VM_FAULT_RETRY handling was confusing and incorrect for the case of
      returning to kernel mode.  We need to handle the exception table fixup
      if we return to kernel mode due to a fatal signal - it will basically
      look to the kernel user mode access like the access failed due to the VM
      going away from udner it.  Which is correct - the process is dying - and
      avoids the whole "repeat endless kernel page faults" case.
      
      Handling the VM_FAULT_RETRY early and in just one place also simplifies
      the mmap_sem handling, since once we've taken care of VM_FAULT_RETRY we
      know that we can just drop the lock.  The remaining accounting and
      possible error handling is thread-local and does not need the mmap_sem.
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      26178ec1
    • Linus Torvalds's avatar
      x86: mm: move mmap_sem unlock from mm_fault_error() to caller · 7fb08eca
      Linus Torvalds authored
      This replaces four copies in various stages of mm_fault_error() handling
      with just a single one.  It will also allow for more natural placement
      of the unlocking after some further cleanup.
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      7fb08eca
    • Kevin Hilman's avatar
      Merge tag 'omap-for-v3.19/fixes-for-merge-window' of... · 1888d2fa
      Kevin Hilman authored
      Merge tag 'omap-for-v3.19/fixes-for-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into fixes
      
      From: Tony Lindgren <tony@atomide.com>
      Subject: [GIT PULL] few fixes for the v3.19 merge window
      
      Fixes for a few issues found that would be good to get
      into -rc1:
      
      - Update SoC revision detection for am43x es1.2
      
      - Fix regression with GPMC timings on 2430sdp for some versions
        of u-boot
      
      - Fix dra7 watchdog compatible property
      
      - Fix am437x-sk-evm LCD timings
      
      - Fix dra7 DSS clock muxing
      
      - Fix dra7-evm voltages
      
      - Remove a unused function prototype for am33xx_clk_init
      
      - Enable AHCI in the omap2plus_defconfig
      
      * tag 'omap-for-v3.19/fixes-for-merge-window' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (1601 commits)
        ARM: omap2plus_defconfig: Enable AHCI_PLATFORM driver
        ARM: dts: am437x-sk-evm.dts: fix LCD timings
        ARM: dts: dra7-evm: Update SMPS7 (VDD_CORE) max voltage to match DM
        ARM: dts: dra7-evm: Fix typo in SMPS6 (VDD_GPU) max voltage
        ARM: OMAP2+: AM43x: Add ID for ES1.2
        ARM: dts: am437x-sk: fix lcd enable pin mux data
        ARM: dts: Fix gpmc regression for omap 2430sdp smc91x
        hwmon: (tmp401) Detect TMP435 on all addresses it supports
        mfd: rtsx: Add func to split u32 into register
        mmc: sdhci-msm: Convert to mmc_send_tuning()
        mmc: sdhci-esdhc-imx: Convert to mmc_send_tuning()
        mmc: core: Let mmc_send_tuning() to take struct mmc_host* as parameter
        nios2: Make NIOS2_CMDLINE_IGNORE_DTB depend on CMDLINE_BOOL
        nios2: Add missing NR_CPUS to Kconfig
        nios2: asm-offsets: Remove unused definition TI_TASK
        nios2: Remove write-only struct member from nios2_timer
        nios2: Remove unused extern declaration of shm_align_mask
        nios2: include linux/type.h in io.h
        nios2: move include asm-generic/io.h to end of file
        nios2: remove include asm-generic/iomap.h from io.h
        ...
      1888d2fa
    • Viresh Kumar's avatar
      ARM: defconfigs: use CONFIG_CPUFREQ_DT · 9d312cd1
      Viresh Kumar authored
      CONFIG_GENERIC_CPUFREQ_CPU0 disappeared with commit bbcf0719
      ("cpufreq: cpu0: rename driver and internals to 'cpufreq_dt'") and some
      defconfigs are still using it instead of the new one.
      
      Use the renamed CONFIG_CPUFREQ_DT generic driver.
      
      Cc: <stable@vger.kernel.org>        # 3.18
      Reported-by: default avatarNishanth Menon <nm@ti.com>
      Signed-off-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: default avatarKevin Hilman <khilman@linaro.org>
      9d312cd1
    • David Vrabel's avatar
    • Jens Axboe's avatar
      Revert "blk-mq: Micro-optimize bt_get()" · 35d37c66
      Jens Axboe authored
      This reverts commit 52f7eb94.
      
      The optimization is only really safe for a single queue, otherwise
      'bs' and 'bt' can indeed change, and if we don't do a finish_wait()
      for each loop, we'll potentially change the wait structure and
      corrupt task wait list.
      Reported-by: default avatarJan Kara <jack@suse.cz>
      35d37c66
    • Steven Rostedt (Red Hat)'s avatar
      tracing: Add tp_printk cmdline to have tracepoints go to printk() · 0daa2302
      Steven Rostedt (Red Hat) authored
      Add the kernel command line tp_printk option that will have tracepoints
      that are active sent to printk() as well as to the trace buffer.
      
      Passing "tp_printk" will activate this. To turn it off, the sysctl
      /proc/sys/kernel/tracepoint_printk can have '0' echoed into it. Note,
      this only works if the cmdline option is used. Echoing 1 into the sysctl
      file without the cmdline option will have no affect.
      
      Note, this is a dangerous option. Having high frequency tracepoints send
      their data to printk() can possibly cause a live lock. This is another
      reason why this is only active if the command line option is used.
      
      Link: http://lkml.kernel.org/r/alpine.DEB.2.11.1412121539300.16494@nanosSuggested-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Tested-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Acked-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      0daa2302
    • Steven Rostedt (Red Hat)'s avatar
      tracing: Move enabling tracepoints to just after rcu_init() · 5f893b26
      Steven Rostedt (Red Hat) authored
      Enabling tracepoints at boot up can be very useful. The tracepoint
      can be initialized right after RCU has been. There's no need to
      wait for the early_initcall() to be called. That's too late for some
      things that can use tracepoints for debugging. Move the logic to
      enable tracepoints out of the initcalls and into init/main.c to
      right after rcu_init().
      
      This also allows trace_printk() to be used early too.
      
      Link: http://lkml.kernel.org/r/alpine.DEB.2.11.1412121539300.16494@nanos
      Link: http://lkml.kernel.org/r/20141214164104.307127356@goodmis.orgReviewed-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
      Suggested-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Tested-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Acked-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      5f893b26
    • benjamin.gaignard@linaro.org's avatar
      drm: sti: fix module compilation issue · 4e0cd681
      benjamin.gaignard@linaro.org authored
      When compiling in module some symbol aren't missing,
      export them correctly.
      Signed-off-by: default avatarBenjamin Gaignard <benjamin.gaignard@linaro.org>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      4e0cd681
    • Linus Torvalds's avatar
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · 67e2c388
      Linus Torvalds authored
      Pull security layer updates from James Morris:
       "In terms of changes, there's general maintenance to the Smack,
        SELinux, and integrity code.
      
        The IMA code adds a new kconfig option, IMA_APPRAISE_SIGNED_INIT,
        which allows IMA appraisal to require signatures.  Support for reading
        keys from rootfs before init is call is also added"
      
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (23 commits)
        selinux: Remove security_ops extern
        security: smack: fix out-of-bounds access in smk_parse_smack()
        VFS: refactor vfs_read()
        ima: require signature based appraisal
        integrity: provide a hook to load keys when rootfs is ready
        ima: load x509 certificate from the kernel
        integrity: provide a function to load x509 certificate from the kernel
        integrity: define a new function integrity_read_file()
        Security: smack: replace kzalloc with kmem_cache for inode_smack
        Smack: Lock mode for the floor and hat labels
        ima: added support for new kernel cmdline parameter ima_template_fmt
        ima: allocate field pointers array on demand in template_desc_init_fields()
        ima: don't allocate a copy of template_fmt in template_desc_init_fields()
        ima: display template format in meas. list if template name length is zero
        ima: added error messages to template-related functions
        ima: use atomic bit operations to protect policy update interface
        ima: ignore empty and with whitespaces policy lines
        ima: no need to allocate entry for comment
        ima: report policy load status
        ima: use path names cache
        ...
      67e2c388
    • Linus Torvalds's avatar
      Merge tag 'char-misc-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 6ae840e7
      Linus Torvalds authored
      Pull char/misc driver updates from Greg KH:
       "Here's the big char/misc driver update for 3.19-rc1
      
        Lots of little things all over the place in different drivers, and a
        new subsystem, "coresight" has been added.  Full details are in the
        shortlog"
      
      * tag 'char-misc-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (73 commits)
        parport: parport_pc, do not remove parent devices early
        spmi: Remove shutdown/suspend/resume kernel-doc
        carma-fpga-program: drop videobuf dependency
        carma-fpga: drop videobuf dependency
        carma-fpga-program.c: fix compile errors
        i8k: Fix temperature bug handling in i8k_get_temp()
        cxl: Name interrupts in /proc/interrupt
        CXL: Return error to PSL if IRQ demultiplexing fails & print clearer warning
        coresight-replicator: remove .owner field for driver
        coresight: fixed comments in coresight.h
        coresight: fix typo in comment in coresight-priv.h
        coresight: bindings for coresight drivers
        coresight: Adding ABI documentation
        w1: support auto-load of w1_bq27000 module.
        w1: avoid potential u16 overflow
        cn: verify msg->len before making callback
        mei: export fw status registers through sysfs
        mei: read and print all six FW status registers
        mei: txe: add cherrytrail device id
        mei: kill cached host and me csr values
        ...
      6ae840e7
    • Linus Torvalds's avatar
      Merge tag 'driver-core-3.19-rc1' of... · e6b5be2b
      Linus Torvalds authored
      Merge tag 'driver-core-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core update from Greg KH:
       "Here's the set of driver core patches for 3.19-rc1.
      
        They are dominated by the removal of the .owner field in platform
        drivers.  They touch a lot of files, but they are "simple" changes,
        just removing a line in a structure.
      
        Other than that, a few minor driver core and debugfs changes.  There
        are some ath9k patches coming in through this tree that have been
        acked by the wireless maintainers as they relied on the debugfs
        changes.
      
        Everything has been in linux-next for a while"
      
      * tag 'driver-core-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (324 commits)
        Revert "ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries"
        fs: debugfs: add forward declaration for struct device type
        firmware class: Deletion of an unnecessary check before the function call "vunmap"
        firmware loader: fix hung task warning dump
        devcoredump: provide a one-way disable function
        device: Add dev_<level>_once variants
        ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries
        ath: use seq_file api for ath9k debugfs files
        debugfs: add helper function to create device related seq_file
        drivers/base: cacheinfo: remove noisy error boot message
        Revert "core: platform: add warning if driver has no owner"
        drivers: base: support cpu cache information interface to userspace via sysfs
        drivers: base: add cpu_device_create to support per-cpu devices
        topology: replace custom attribute macros with standard DEVICE_ATTR*
        cpumask: factor out show_cpumap into separate helper function
        driver core: Fix unbalanced device reference in drivers_probe
        driver core: fix race with userland in device_add()
        sysfs/kernfs: make read requests on pre-alloc files use the buffer.
        sysfs/kernfs: allow attributes to request write buffer be pre-allocated.
        fs: sysfs: return EGBIG on write if offset is larger than file size
        ...
      e6b5be2b
  3. 14 Dec, 2014 5 commits
    • Linus Torvalds's avatar
      Merge tag 'tty-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 37da7bbb
      Linus Torvalds authored
      Pull tty/serial driver updates from Greg KH:
       "Here's the big tty/serial driver update for 3.19-rc1.
      
        There are a number of TTY core changes/fixes in here from Peter Hurley
        that have all been teted in linux-next for a long time now.  There are
        also the normal serial driver updates as well, full details in the
        changelog below"
      
      * tag 'tty-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (219 commits)
        serial: pxa: hold port.lock when reporting modem line changes
        tty-hvsi_lib: Deletion of an unnecessary check before the function call "tty_kref_put"
        tty: Deletion of unnecessary checks before two function calls
        n_tty: Fix read_buf race condition, increment read_head after pushing data
        serial: of-serial: add PM suspend/resume support
        Revert "serial: of-serial: add PM suspend/resume support"
        Revert "serial: of-serial: fix up PM ops on no_console_suspend and port type"
        serial: 8250: don't attempt a trylock if in sysrq
        serial: core: Add big-endian iotype
        serial: samsung: use port->fifosize instead of hardcoded values
        serial: samsung: prefer to use fifosize from driver data
        serial: samsung: fix style problems
        serial: samsung: wait for transfer completion before clock disable
        serial: icom: fix error return code
        serial: tegra: clean up tty-flag assignments
        serial: Fix io address assign flow with Fintek PCI-to-UART Product
        serial: mxs-auart: fix tx_empty against shift register
        serial: mxs-auart: fix gpio change detection on interrupt
        serial: mxs-auart: Fix mxs_auart_set_ldisc()
        serial: 8250_dw: Use 64-bit access for OCTEON.
        ...
      37da7bbb
    • Linus Torvalds's avatar
      Merge tag 'usb-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · e7cf773d
      Linus Torvalds authored
      Pull USB updates from Greg KH:
       "Here's the big set of USB and PHY patches for 3.19-rc1.
      
        The normal churn in the USB gadget area is in here, as well as xhci
        and other individual USB driver updates.  The PHY tree is also in
        here, as there were dependancies on the USB tree.
      
        All of these have been in linux-next"
      
      * tag 'usb-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (351 commits)
        arm: omap3: twl: remove usb phy init data
        usbip: fix error handling in stub_probe()
        usb: gadget: udc: missing curly braces
        USB: mos7720: delete some unneeded code
        wusb: replace memset by memzero_explicit
        usbip: remove unneeded structure
        usb: xhci: fix comment for PORT_DEV_REMOVE
        xhci: don't use the same variable for stopped and halted rings current TD
        xhci: clear extra bits from slot context when setting max exit latency
        xhci: cleanup finish_td function
        USB: adutux: NULL dereferences on disconnect
        usb: chipidea: fix platform_no_drv_owner.cocci warnings
        usb: chipidea: Fixed a few typos in comments
        Documentation: bindings: add doc for the USB2 ChipIdea USB driver
        usb: chipidea: add a usb2 driver for ci13xxx
        usb: chipidea: fix phy handling
        usb: chipidea: remove duplicate dev_set_drvdata for host_start
        usb: chipidea: parameter 'mode' isn't needed for hw_device_reset
        usb: chipidea: add controller reset API
        usb: chipidea: remove flag CI_HDRC_REQUIRE_TRANSCEIVER
        ...
      e7cf773d
    • Linus Torvalds's avatar
      Merge tag 'squashfs-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-next · 7a02d089
      Linus Torvalds authored
      Pull squashfs update from Phillip Lougher:
       "These patches optionally add LZ4 compression support to Squashfs.
      
        LZ4 is a lightweight compression algorithm which can be used on
        embedded systems to reduce CPU and memory overhead (in comparison to
        the standard zlib compression).
      
        These patches add the wrapper code to allow Squashfs to use the
        existing LZ4 decompression code, and the necessary configuration
        option"
      
      * tag 'squashfs-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-next:
        Squashfs: Add LZ4 compression configuration option
        Squashfs: add LZ4 compression support
      7a02d089
    • Linus Torvalds's avatar
      Merge tag 'gpio-v3.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio · 980f3c34
      Linus Torvalds authored
      Pull take two of the GPIO updates:
       "Same stuff as last time, now with a fixup patch for the previous
        compile error plus I ran a few extra rounds of compile-testing.
      
        This is the bulk of GPIO changes for the v3.19 series:
      
         - A new API that allows setting more than one GPIO at the time.  This
           is implemented for the new descriptor-based API only and makes it
           possible to e.g. toggle a clock and data line at the same time, if
           the hardware can do this with a single register write.  Both
           consumers and drivers need new calls, and the core will fall back
           to driving individual lines where needed.  Implemented for the
           MPC8xxx driver initially
      
         - Patched the mdio-mux-gpio and the serial mctrl driver that drives
           modems to use the new multiple-setting API to set several signals
           simultaneously
      
         - Get rid of the global GPIO descriptor array, and instead allocate
           descriptors dynamically for each GPIO on a certain GPIO chip.  This
           moves us closer to getting rid of the limitation of using the
           global, static GPIO numberspace
      
         - New driver and device tree bindings for 74xx ICs
      
         - New driver and device tree bindings for the VF610 Vybrid
      
         - Support the RCAR r8a7793 and r8a7794
      
         - Guidelines for GPIO device tree bindings trying to get things a bit
           more strict with the advent of combined device properties
      
         - Suspend/resume support for the MVEBU driver
      
         - A slew of minor fixes and improvements"
      
      * tag 'gpio-v3.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (33 commits)
        gpio: mcp23s08: fix up compilation error
        gpio: pl061: document gpio-ranges property for bindings file
        gpio: pl061: hook request if gpio-ranges avaiable
        gpio: mcp23s08: Add option to configure IRQ output polarity as active high
        gpio: fix deferred probe detection for legacy API
        serial: mctrl_gpio: use gpiod_set_array function
        mdio-mux-gpio: Use GPIO descriptor interface and new gpiod_set_array function
        gpio: remove const modifier from gpiod_get_direction()
        gpio: remove gpio_descs global array
        gpio: mxs: implement get_direction callback
        gpio: em: Use dynamic allocation of GPIOs
        gpio: Check if base is positive before calling gpio_is_valid()
        gpio: mcp23s08: Add simple IRQ support for SPI devices
        gpio: mcp23s08: request a shared interrupt
        gpio: mcp23s08: Do not free unrequested interrupt
        gpio: rcar: Add r8a7793 and r8a7794 support
        gpio-mpc8xxx: add mpc8xxx_gpio_set_multiple function
        gpiolib: allow simultaneous setting of multiple GPIO outputs
        gpio: mvebu: add suspend/resume support
        gpio: gpio-davinci: remove duplicate check on resource
        ..
      980f3c34
    • Linus Torvalds's avatar
      Merge git://git.kvack.org/~bcrl/aio-next · 7d22286f
      Linus Torvalds authored
      Pull aio updates from Benjamin LaHaise.
      
      * git://git.kvack.org/~bcrl/aio-next:
        aio: Skip timer for io_getevents if timeout=0
        aio: Make it possible to remap aio ring
      7d22286f