1. 22 Apr, 2015 26 commits
    • Eric Dumazet's avatar
      net: do not deplete pfmemalloc reserve · 79930f58
      Eric Dumazet authored
      build_skb() should look at the page pfmemalloc status.
      If set, this means page allocator allocated this page in the
      expectation it would help to free other pages. Networking
      stack can do that only if skb->pfmemalloc is also set.
      
      Also, we must refrain using high order pages from the pfmemalloc
      reserve, so __page_frag_refill() must also use __GFP_NOMEMALLOC for
      them. Under memory pressure, using order-0 pages is probably the best
      strategy.
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      79930f58
    • Johannes Berg's avatar
      ip6_gre: use netdev_alloc_pcpu_stats() · 26349c71
      Johannes Berg authored
      The code there just open-codes the same, so use the provided macro instead.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      26349c71
    • David S. Miller's avatar
      Merge branch 'mpls' · 0e2d6865
      David S. Miller authored
      Robert Shearman says:
      
      ====================
      mpls: ABI changes for security and correctness
      
      V2:
       - don't treat loopback interfaces specially by enabling mpls by
         default
      
      These changes make mpls not be enabled by default on all
      interfaces when in use for security, along with ensuring that a label
      not valid as an outgoing label can be added in mpls routes.
      
      This series contains three ABI/behaviour-affecting changes which have
      been split out from "[PATCH net-next v4 0/6] mpls: Behaviour-changing
      improvements" without any further modification. These changes need to
      be considered for 4.1 otherwise we'll be stuck with the current
      behaviour/ABI forever.
      ====================
      Reviewed-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      0e2d6865
    • Robert Shearman's avatar
      mpls: Prevent use of implicit NULL label as outgoing label · 5a9ab017
      Robert Shearman authored
      The reserved implicit-NULL label isn't allowed to appear in the label
      stack for packets, so make it an error for the control plane to
      specify it as an outgoing label.
      Suggested-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
      Signed-off-by: default avatarRobert Shearman <rshearma@brocade.com>
      Reviewed-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      5a9ab017
    • Robert Shearman's avatar
      mpls: Per-device enabling of packet input · 37bde799
      Robert Shearman authored
      An MPLS network is a single trust domain where the edges must be in
      control of what labels make their way into the core. The simplest way
      of ensuring this is for the edge device to always impose the labels,
      and not allow forward labeled traffic from untrusted neighbours. This
      is achieved by allowing a per-device configuration of whether MPLS
      traffic input from that interface should be processed or not.
      
      To be secure by default, the default state is changed to MPLS being
      disabled on all interfaces unless explicitly enabled and no global
      option is provided to change the default. Whilst this differs from
      other protocols (e.g. IPv6), network operators are used to explicitly
      enabling MPLS forwarding on interfaces, and with the number of links
      to the MPLS core typically fairly low this doesn't present too much of
      a burden on operators.
      
      Cc: "Eric W. Biederman" <ebiederm@xmission.com>
      Signed-off-by: default avatarRobert Shearman <rshearma@brocade.com>
      Reviewed-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      37bde799
    • Robert Shearman's avatar
      mpls: Per-device MPLS state · 03c57747
      Robert Shearman authored
      Add per-device MPLS state to supported interfaces. Use the presence of
      this state in mpls_route_add to determine that this is a supported
      interface.
      
      Use the presence of mpls_dev to drop packets that arrived on an
      unsupported interface - previously they were allowed through.
      
      Cc: "Eric W. Biederman" <ebiederm@xmission.com>
      Signed-off-by: default avatarRobert Shearman <rshearma@brocade.com>
      Reviewed-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      03c57747
    • Yuval Mintz's avatar
      bnx2x: Prevent inner-reload while VFs exist · 909d9faa
      Yuval Mintz authored
      On some feature changes, driver employes an inner-reload flow where it
      resets the function and re-configures it with the new required set of
      parameters.
      
      Such a flow proves fatal to any VF since those were not intended to be used
      while HW is being reset underneath, causing them [at best] to lose all
      connectivity.
      
      This changes driver behavior to fail all configuration changes [e.g., mtu
      change] requested of the driver in case VFs are active.
      Signed-off-by: default avatarYuval Mintz <Yuval.Mintz@qlogic.com>
      Signed-off-by: default avatarAriel Elior <Ariel.Elior@qlogic.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      909d9faa
    • David S. Miller's avatar
      Merge branch 'rhashtable-fixes' · a2c3935a
      David S. Miller authored
      Thomas Graf says:
      
      ====================
      rhashtable rehashing fixes
      
      Some rhashtable rehashing bugs found while testing with the
      next rhashtable self-test queued up for the next devel cycle:
      
      https://github.com/tgraf/net-next/commits/rht
      
      v2:
       - Moved schedule_work() call into rhashtable_insert_rehash()
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a2c3935a
    • Thomas Graf's avatar
      rhashtable: Do not schedule more than one rehash if we can't grow further · a87b9ebf
      Thomas Graf authored
      The current code currently only stops inserting rehashes into the
      chain when no resizes are currently scheduled. As long as resizes
      are scheduled and while inserting above the utilization watermark,
      more and more rehashes will be scheduled.
      
      This lead to a perfect DoS storm with thousands of rehashes
      scheduled which lead to thousands of spinlocks to be taken
      sequentially.
      
      Instead, only allow either a series of resizes or a single rehash.
      Drop any further rehashes and return -EBUSY.
      
      Fixes: ccd57b1b ("rhashtable: Add immediate rehash during insertion")
      Signed-off-by: default avatarThomas Graf <tgraf@suug.ch>
      Acked-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a87b9ebf
    • Thomas Graf's avatar
      rhashtable: Schedule async resize when sync realloc fails · e2307ed6
      Thomas Graf authored
      When rhashtable_insert_rehash() fails with ENOMEM, this indicates that
      we can't allocate the necessary memory in the current context but the
      limits as set by the user would still allow to grow.
      
      Thus attempt an async resize in the background where we can allocate
      using GFP_KERNEL which is more likely to succeed. The insertion itself
      will still fail to indicate pressure.
      
      This fixes a bug where the table would never continue growing once the
      utilization is above 100%.
      
      Fixes: ccd57b1b ("rhashtable: Add immediate rehash during insertion")
      Signed-off-by: default avatarThomas Graf <tgraf@suug.ch>
      Acked-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      e2307ed6
    • Eric Dumazet's avatar
      tcp: fix possible deadlock in tcp_send_fin() · d83769a5
      Eric Dumazet authored
      Using sk_stream_alloc_skb() in tcp_send_fin() is dangerous in
      case a huge process is killed by OOM, and tcp_mem[2] is hit.
      
      To be able to free memory we need to make progress, so this
      patch allows FIN packets to not care about tcp_mem[2], if
      skb allocation succeeded.
      
      In a follow-up patch, we might abort tcp_send_fin() infinite loop
      in case TIF_MEMDIE is set on this thread, as memory allocator
      did its best getting extra memory already.
      
      This patch reverts d22e1537 ("tcp: fix tcp fin memory accounting")
      
      Fixes: d22e1537 ("tcp: fix tcp fin memory accounting")
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d83769a5
    • Linus Torvalds's avatar
      Merge tag 'mmc-4.1-rc1' of git://git.linaro.org/people/ulf.hansson/mmc · 5e6c94a9
      Linus Torvalds authored
      Pull MMC fixes from Ulf Hansson:
       "Here is two mmc core fixes for v.4.1 rc1:
      
         - fix error code propagation in mmc_pwrseq_simple_alloc()
      
         - revert 'mmc: core: Convert mmc_driver to device_driver'"
      
      * tag 'mmc-4.1-rc1' of git://git.linaro.org/people/ulf.hansson/mmc:
        Revert "mmc: core: Convert mmc_driver to device_driver"
        mmc: pwrseq: Fix error code propagation in mmc_pwrseq_simple_alloc()
      5e6c94a9
    • Vinod Koul's avatar
      dmaengine: hsu: don't prompt for hsu_core part · 3cfe2137
      Vinod Koul authored
      HSU_DMA is selected by the HSU_DMA_PCI driver, this should be user selected
      so remove the user prompt for this
      Signed-off-by: default avatarVinod Koul <vinod.koul@intel.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      3cfe2137
    • Linus Torvalds's avatar
      Merge tag 'armsoc-late' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 8b3c8ba3
      Linus Torvalds authored
      Pull ARM SoC late changes from Olof Johansson:
       "We were expecting to sit on this branch through most of the merge
        window since the contents was merged into our tree late, but we ended
        up sitting on all of our contents so it can go in with the rest.
      
        The contents here is:
      
         - a large branch of cleanups of the CM/PRM blocks on OMAP.
      
         - a couple of patches plumbing up CM/PRM on OMAP5 and DRA7.
      
         - a branch with DT updates for Freescale i.MX.  including some
           shuffling from .dts to .dtsi (include) files that causes a little
           churn"
      
      * tag 'armsoc-late' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (78 commits)
        ARM: OMAP2+: Fix booting with configs that don't have MFD_SYSCON
        ARM: OMAP4+: control: add support for initializing control module via DT
        ARM: dts: dra7: add minimal l4 bus layout with control module support
        ARM: dts: omap5: add minimal l4 bus layout with control module support
        ARM: OMAP4+: control: remove support for legacy pad read/write
        ARM: OMAP4: display: convert display to use syscon for dsi muxing
        ARM: dts: omap4: add minimal l4 bus layout with control module support
        ARM: dts: am4372: add minimal l4 bus layout with control module support
        ARM: dts: am43xx-epos-evm: fix pinmux node layout
        ARM: dts: am33xx: add minimal l4 bus layout with control module support
        ARM: dts: omap3: add minimal l4 bus layout with control module support
        ARM: dts: omap24xx: add minimal l4 bus layout with control module support
        ARM: OMAP2+: control: add syscon support for register accesses
        ARM: OMAP2+: id: cache omap_type value
        ARM: OMAP2+: control: remove API for getting control module base address
        ARM: OMAP2+: clock: add low-level support for regmap
        ARM: OMAP4+: PRM: get rid of cpu_is_omap44xx calls from interrupt init
        ARM: OMAP4+: PRM: setup prm_features from the PRM init time flags
        ARM: OMAP2+: CM: move SoC specific init calls within a generic API
        ARM: OMAP4+: PRM: determine prm_device_inst based on DT compatibility
        ...
      8b3c8ba3
    • Linus Torvalds's avatar
      Merge tag 'armsoc-arm64' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · d34dc4f9
      Linus Torvalds authored
      Pull ARM SoC 64-bit changes from Olof Johansson:
       "Mostly DT updates for arm64, but also a couple of Kconfig additions.
      
        Main contents:
      
         - Qualcomm MSM8916/APQ8016
      
         - Spreadtrum SC9836
      
         - Xilinx ZynqMP
      
         - pincontrol entries for MediaTek MT8173"
      
      * tag 'armsoc-arm64' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        arm64: dts: add interrupt-affinity property to pmu node for juno
        arm64: dts: Add Qualcomm APQ8016 SBC evaluation board dts
        arm64: dts: Add Qualcomm MSM8916 SoC and evaluation board dts
        arm64: dts: sprd: adding coresight entries to Spreadtrum SC9836
        arm64: Add support for Spreadtrum's Sharkl64 Platform in Kconfig and defconfig
        arm64: dts: Add support for Spreadtrum SC9836 SoC in dts and Makefile
        ARM64: Add new Xilinx ZynqMP SoC
        arm64: qcom: Add support for Qualcomm MSM8916 SoC
        arm64: dts: mt8173: Add pinctrl/GPIO/EINT node for mt8173.
        arm64: mediatek: Select PINCTRL for Mediatek platform
      d34dc4f9
    • Linus Torvalds's avatar
      Merge tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 2144de82
      Linus Torvalds authored
      Pull ARM SoC defconfig updates from Olof Johansson:
       "We keep collecting defconfig updates in a separate branch mostly to
        encourage people to handle them separately and avoid conflicts between
        different topics.
      
        Most of these are enablement of new drivers that have come in, or
        minor config refreshes due to reorderings in Kconfig files, etc.  I.e.
        mostly minor churn of various kinds.
      
        We might start folding this branch into something else for upstream
        merge since it's so small, but keep it independent in our own tree for
        the above reasons"
      
      * tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (38 commits)
        ARM: multi_v7_defconfig: enable alpine platform
        ARM: multi_v7_defconfig: Add gpio-restart driver
        ARM: multi_v7_defconfig: Build the Marvell WiFi-Ex driver as a module
        ARM: multi_v7_defconfig: Enable support for ELAN i2c trackpads
        ARM: multi_v7_defconfig: Enable Tegra ACTMON support
        ARM: configs: remove all CONFIG_RCAR_AUDMAC_PP from ARM defconfigs
        ARM: configs: enable Marvell Armada 39x in multi_v7_defconfig
        ARM: exynos_defconfig: Enable HDMI support
        ARM: exynos_defconfig: Enable options to mount a rootfs via NFS
        ARM: qcom: Increase MMC_BLOCK_MINORS in defconfig
        ARM: mvebu: Enable perf support in mvebu_v7_defconfig
        ARM: exynos_defconfig: Enable ChromeOS EC chardev driver
        ARM: exynos_defconfig: Enable CPU idle
        ARM: exynos_defconfig: Enable Marvell WiFi-Ex support
        arm: qcom: Update defconfig
        arm: qcom: Enable lpass clock driver in defconfig
        ARM: omap2plus_defconfig: Enable n900 modem as loadable modules
        ARM: omap2plus_defconfig: Update bluetooth options
        ARM: omap2plus_defconfig: Enable leds-pwm
        ARM: omap1_defconfig: drop obsolete Kconfig symbols
        ...
      2144de82
    • Linus Torvalds's avatar
      Merge tag 'armsoc-multiplatform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · e5ac320d
      Linus Torvalds authored
      Pull ARM SoC multiplatform code changes from Olof Johansson:
       "The changes here belong to two main platforms:
      
         - Atmel At91 is flipping the bit and going multiplatform.  This
           includes some cleanups and removal of code, and the final flip of
           config dependencies
      
         - Shmobile has several platforms that are going multiplatform, but
           this branch also contains a bunch of cleanups that they weren't
           able to keep separate in a good way.  THere's also a removal of one
           of their SoCs and the corresponding boards (sh7372 and mackerel)"
      
      * tag 'armsoc-multiplatform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (67 commits)
        ARM: at91/pm: move AT91_MEMCTRL_* to pm.h
        ARM: at91/pm: move the standby functions to pm.c
        ARM: at91: fix pm_suspend.S compilation when ARMv6 is selected
        ARM: at91: add a Kconfig dependency on multi-platform
        ARM: at91: drop AT91_TIMER_HZ
        ARM: at91: remove hardware.h
        ARM: at91: remove SoC headers
        ARM: at91: remove useless mach/cpu.h
        ARM: at91: remove unused headers
        ARM: at91: switch at91_dt_defconfig to multiplatform
        ARM: at91: switch to multiplatform
        ARM: shmobile: r8a7778: enable multiplatform target
        ARM: shmobile: bockw: add sound to DT
        ARM: shmobile: r8a7778: add sound to DT
        ARM: shmobile: bockw: add devices hooked up to i2c0 to DT
        DT: i2c: add trivial binding for OKI ML86V7667 video decoder
        ARM: shmobile: r8a7778: common clock framework CPG driver
        ARM: shmobile: bockw dts: set extal clock frequency
        ARM: shmobile: bockw dts: Move Ethernet node to BSC
        ARM: shmobile: r8a73a4: Remove legacy code
        ...
      e5ac320d
    • Linus Torvalds's avatar
      Merge tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 7d2b6ef1
      Linus Torvalds authored
      Pull ARM SoC driver updates from Olof Johansson:
       "Driver updates for v4.1.  Some of these are for drivers/soc, where we
        find more and more SoC-specific drivers these days.  Some are for
        other driver subsystems where we have received acks from the
        appropriate maintainers.
      
        The larger parts of this branch are:
      
         - MediaTek support for their PMIC wrapper interface, a high-level
           interface for talking to the system PMIC over a dedicated I2C
           interface.
      
         - Qualcomm SCM driver has been moved to drivers/firmware.  It's used
           for CPU up/down and needs to be in a shared location for arm/arm64
           common code.
      
         - cleanup of ARM-CCI PMU code.
      
         - another set of cleanusp to the OMAP GPMC code"
      
      * tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (43 commits)
        soc/mediatek: Remove unused variables
        clocksource: atmel-st: select MFD_SYSCON
        soc: mediatek: Add PMIC wrapper for MT8135 and MT8173 SoCs
        arm-cci: Fix CCI PMU event validation
        arm-cci: Split the code for PMU vs driver support
        arm-cci: Get rid of secure transactions for PMU driver
        arm-cci: Abstract the CCI400 PMU specific definitions
        arm-cci: Rearrange code for splitting PMU vs driver code
        drivers: cci: reject groups spanning multiple HW PMUs
        ARM: at91: remove useless include
        clocksource: atmel-st: remove mach/hardware dependency
        clocksource: atmel-st: use syscon/regmap
        ARM: at91: time: move the system timer driver to drivers/clocksource
        ARM: at91: properly initialize timer
        ARM: at91: at91rm9200: remove deprecated arm_pm_restart
        watchdog: at91rm9200: implement restart handler
        watchdog: at91rm9200: use the system timer syscon
        mfd: syscon: Add atmel system timer registers definition
        ARM: at91/dt: declare atmel,at91rm9200-st as a syscon
        soc: qcom: gsbi: Add support for ADM CRCI muxing
        ...
      7d2b6ef1
    • Linus Torvalds's avatar
      Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 5c73cc4b
      Linus Torvalds authored
      Pull ARM DT updates from Olof Johansson:
       "As always, this tends to be one of our bigger branches.  There are
        lots of updates this release, but not that many jumps out as something
        that needs more detailed coverage.  Some of the highlights are:
      
         - DTs for the new Annapurna Labs Alpine platform
      
         - more graphics DT pieces falling into place on Exynos, bridges,
           clocks.
      
         - plenty of DT updates for Qualcomm platforms for various IP blocks
      
         - some churn on Tegra due to switch-over to tool-generated pinctrl
           data
      
         - misc fixes and updates for Atmel at91 platforms
      
         - various DT updates to add IP block support on Broadcom's Cygnus
           platforms
      
         - more updates for Renesas platforms as DT support is added for
           various IP blocks (IPMMU, display, audio, etc)"
      
      * tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (231 commits)
        ARM: dts: alpine: add internal pci
        Revert "ARM: dts: mt8135: Add pinctrl/GPIO/EINT node for mt8135."
        ARM: mvebu: use 0xf1000000 as internal registers on Armada 370 DB
        ARM: dts: qcom: Add idle state device nodes for 8064
        ARM: dts: qcom: Add idle states device nodes for 8084
        ARM: dts: qcom: Add idle states device nodes for 8974/8074
        ARM: dts: qcom: Update power-controller device node for 8064 Krait CPUs
        ARM: dts: qcom: Add power-controller device node for 8084 Krait CPUs
        ARM: dts: qcom: Add power-controller device node for 8074 Krait CPUs
        devicetree: bindings: Document qcom,idle-states
        devicetree: bindings: Update qcom,saw2 node bindings
        dt-bindings: Add #defines for MSM8916 clocks and resets
        arm: dts: qcom: Add LPASS Audio HW to IPQ8064 device tree
        arm: dts: qcom: Add APQ8084 chipset SPMI PMIC's nodes
        arm: dts: qcom: Add 8x74 chipset SPMI PMIC's nodes
        arm: dts: qcom: Add SPMI PMIC Arbiter nodes for APQ8084 and MSM8974
        arm: dts: qcom: Add LCC nodes
        arm: dts: qcom: Add TCSR support for MSM8960
        arm: dts: qcom: Add TCSR support for MSM8660
        arm: dts: qcom: Add TCSR support for IPQ8064
        ...
      5c73cc4b
    • Linus Torvalds's avatar
      Merge tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · e6c81cce
      Linus Torvalds authored
      Pull ARM SoC platform updates from Olof Johansson:
       "Our SoC branch usually contains expanded support for new SoCs and
        other core platform code.  In this case, that includes:
      
         - support for the new Annapurna Labs "Alpine" platform
      
         - a rework greatly simplifying adding new platform support to the
           MCPM subsystem (Multi-cluster power management)
      
         - cpuidle and PM improvements for Exynos3250
      
         - misc updates for Renesas, OMAP, Meson, i.MX.  Some of these could
           have gone in other branches but ended up here for various reasons"
      
      * tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (53 commits)
        ARM: alpine: add support for generic pci
        ARM: Exynos: migrate DCSCB to the new MCPM backend abstraction
        ARM: vexpress: migrate DCSCB to the new MCPM backend abstraction
        ARM: vexpress: DCSCB: tighten CPU validity assertion
        ARM: vexpress: migrate TC2 to the new MCPM backend abstraction
        ARM: MCPM: move the algorithmic complexity to the core code
        ARM: EXYNOS: allow cpuidle driver usage on Exynos3250 SoC
        ARM: EXYNOS: add AFTR mode support for Exynos3250
        ARM: EXYNOS: add code for setting/clearing boot flag
        ARM: EXYNOS: fix CPU1 hotplug on Exynos3250
        ARM: S3C64XX: Use fixed IRQ bases to avoid conflicts on Cragganmore
        ARM: cygnus: fix const declaration bcm_cygnus_dt_compat
        ARM: DRA7: hwmod: Fix the hwmod class for GPTimer4
        ARM: DRA7: hwmod: Add data for GPTimers 13 through 16
        ARM: EXYNOS: Remove left over 'extra_save'
        ARM: EXYNOS: Constify exynos_pm_data array
        ARM: EXYNOS: use static in suspend.c
        ARM: EXYNOS: Use platform device name as power domain name
        ARM: EXYNOS: add support for async-bridge clocks for pm_domains
        ARM: omap-device: add missed callback for suspend-to-disk
        ...
      e6c81cce
    • Linus Torvalds's avatar
      Merge tag 'armsoc-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · d0440c59
      Linus Torvalds authored
      Pull ARM SoC cleanups from Olof Johansson:
       "We've got a fairly large cleanup branch this time.  The bulk of this
        is removal of non-DT platforms of several flavors:
      
         - Atmel at91 platforms go full-DT, with removal of remaining
           board-file based support
      
         - OMAP removes legacy board files for three more platforms
      
         - removal of non-DT mach-msm, newer Qualcomm platforms now live in
           mach-qcom
      
         - Freescale i.MX25 also removes non-DT platform support"
      
      Most of the rest of the changes here are fallout from the above, i.e. for
      example removal of drivers that now lack platforms, etc.
      
      * tag 'armsoc-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (58 commits)
        mmc: Remove msm_sdcc driver
        gpio: Remove gpio-msm-v1 driver
        ARM: Remove mach-msm and associated ARM architecture code
        ARM: shmobile: cpuidle: Remove the pointless default driver
        ARM: davinci: dm646x: Add interrupt resource for McASPs
        ARM: davinci: irqs: Correct McASP1 TX interrupt definition for DM646x
        ARM: davinci: dm646x: Clean up the McASP DMA resources
        ARM: davinci: devices-da8xx: Add support for McASP2 on da830
        ARM: davinci: devices-da8xx: Clean up and correct the McASP device creation
        ARM: davinci: devices-da8xx: Add interrupt resource to McASP structs
        ARM: davinci: devices-da8xx: Add resource name for the McASP DMA request
        ARM: OMAP2+: Remove legacy support for omap3 TouchBook
        ARM: OMAP3: Remove legacy support for devkit8000
        ARM: OMAP3: Remove legacy support for EMA-Tech Stalker board
        ARM: shmobile: Consolidate the pm code for R-Car Gen2
        ARM: shmobile: r8a7791: Correct SYSCIER value
        ARM: shmobile: r8a7790: Correct SYSCIER value
        ARM: at91: remove old setup
        ARM: at91: sama5d4: remove useless map_io
        ARM: at91: sama5 use SoC detection infrastructure
        ...
      d0440c59
    • Linus Torvalds's avatar
      Merge tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 38eb1dbb
      Linus Torvalds authored
      Pull ARM SoC fixes from Olof Johansson:
       "Here's the usual "low-priority fixes that didn't make it into the last
        few -rcs, with a twist: We had a fixes pull request that I didn't send
        in time to get into 4.0, so we'll send some of them to Greg for
        -stable as well.
      
        Contents here is as usual not all that controversial:
      
         - a handful of randconfig fixes from Arnd, in particular for older
           Samsung platforms
      
         - Exynos fixes, !SMP building, DTS updates for MMC and lid switch
      
         - Kbuild fix to create output subdirectory for DTB files
      
         - misc minor fixes for OMAP"
      
      * tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (23 commits)
        ARM: at91/dt: sama5d3 xplained: add phy address for macb1
        kbuild: Create directory for target DTB
        ARM: mvebu: Disable CPU Idle on Armada 38x
        ARM: DRA7: Enable Cortex A15 errata 798181
        ARM: dts: am57xx-beagle-x15: Add thermal map to include fan and tmp102
        ARM: dts: DRA7: Add bandgap and related thermal nodes
        bus: ocp2scp: SYNC2 value should be changed to 0x6
        ARM: dts: am4372: Add "ti,am437x-ocp2scp" as compatible string for OCP2SCP
        ARM: OMAP2+: remove superfluous NULL pointer check
        ARM: EXYNOS: Fix build breakage cpuidle on !SMP
        ARM: dts: fix lid and power pin-functions for exynos5250-spring
        ARM: dts: fix mmc node updates for exynos5250-spring
        ARM: OMAP4: remove dead kconfig option OMAP4_ERRATA_I688
        MAINTAINERS: add OMAP defconfigs under OMAP SUPPORT
        ARM: OMAP1: PM: fix some build warnings on 1510-only Kconfigs
        ARM: cns3xxx: don't export static symbol
        ARM: S3C24XX: avoid a Kconfig warning
        ARM: S3C24XX: fix header file inclusions
        ARM: S3C24XX: fix building without PM_SLEEP
        ARM: S3C24XX: use SAMSUNG_WAKEMASK for s3c2416
        ...
      38eb1dbb
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc · db4fd9c5
      Linus Torvalds authored
      Pull sparc fixes from David Miller:
      
       1) ldc_alloc_exp_dring() can be called from softints, so use
          GFP_ATOMIC.  From Sowmini Varadhan.
      
       2) Some minor warning/build fixups for the new iommu-common code on
          certain archs and with certain debug options enabled.  Also from
          Sowmini Varadhan.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
        sparc: Use GFP_ATOMIC in ldc_alloc_exp_dring() as it can be called in softirq context
        sparc64: Use M7 PMC write on all chips T4 and onward.
        iommu-common: rename iommu_pool_hash to iommu_hash_common
        iommu-common: fix x86_64 compiler warnings
      db4fd9c5
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 8aaa51b6
      Linus Torvalds authored
      Pull networking fixes from David Miller:
       "Just a few fixes trickling in at this point.
      
        1) If we see an attached socket on an skb in the ipv4 forwarding path,
           bail.  This can happen due to races with FIB rule addition, and
           deletion, and we should just drop such frames.  From Sebastian
           Pöhn.
      
        2) pppoe receive should only accept packets destined for this hosts's
           MAC address.  From Joakim Tjernlund.
      
        3) Handle checksum unwrapping properly in ppp receive properly when
           it's encapsulated in UDP in some way, fix from Tom Herbert.
      
        4) Fix some bugs in mv88e6xxx DSA driver resulting from the conversion
           from register offset constants to mnenomic macros.  From Vivien
           Didelot.
      
        5) Fix handling of HCA max message size in mlx4 adapters, from Eran
           Ben ELisha"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
        net/mlx4_core: Fix reading HCA max message size in mlx4_QUERY_DEV_CAP
        tcp: add memory barriers to write space paths
        altera tse: Error-Bit on tx-avalon-stream always set.
        net: dsa: mv88e6xxx: use PORT_DEFAULT_VLAN
        net: dsa: mv88e6xxx: fix setup of port control 1
        ppp: call skb_checksum_complete_unset in ppp_receive_frame
        net: add skb_checksum_complete_unset
        pppoe: Lacks DST MAC address check
        ip_forward: Drop frames with attached skb->sk
      8aaa51b6
    • Olof Johansson's avatar
      Merge tag 'omap-for-v4.1/prcm-dts-mfd-syscon-fix' of... · 48c10785
      Olof Johansson authored
      Merge tag 'omap-for-v4.1/prcm-dts-mfd-syscon-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/late
      
      Merge "urgent omap boot fix for v4.1 if MFD_SYSCON is not set" from Tony
      Lindgren:
      
      Urgent pull request for v4.1 to booting for custom kernel
      .config files that do not have MFD_SYSCON set.
      
      Omaps now have a dependency to MFD_SYSCON for system control
      module generic register area and some clocks with the changes
      done in omap-for-v4.1/prcm-dts branch.
      
      This can be pulled on top of omap-for-v4.1/prcm-dts, or into
      fixes for v4.1.
      
      We already do have a slight MFD_SYSCON dependency for
      REGULATOR_PBIAS for dual voltage MMC cards on the first MMC
      bus for many devices, so from that point of view this can
      also be merged separately from omap-for-v4.1/prcm-dts.
      
      * tag 'omap-for-v4.1/prcm-dts-mfd-syscon-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
        ARM: OMAP2+: Fix booting with configs that don't have MFD_SYSCON
      Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
      48c10785
    • Linus Torvalds's avatar
      Merge branch 'parisc-4.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · f614c817
      Linus Torvalds authored
      Pull parisc fixes from Helge Deller:
       "The patch by Guenter Roeck fixes the build on parisc which got broken
        because of commit f24ffde4 ("parisc: expose number of page table
        levels on Kconfig level") and the patch from Matthew Wilcox converts
        our code to use the generic scatterlist.h header file"
      
      * 'parisc-4.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: Replace PT_NLEVELS with CONFIG_PGTABLE_LEVELS
        parisc: Eliminate sg_virt_addr() and private scatterlist.h
      f614c817
  2. 21 Apr, 2015 14 commits
    • Eran Ben Elisha's avatar
      net/mlx4_core: Fix reading HCA max message size in mlx4_QUERY_DEV_CAP · fab9adfb
      Eran Ben Elisha authored
      Currently we parse max_msg_sz from the wrong offset in QUERY_DEV_CAP,
      fix to use the right offset.
      
      Fixes: 0b131561 ('net/mlx4_en: Add Flow control statistics [..]')
      Signed-off-by: default avatarEran Ben Elisha <eranbe@mellanox.com>
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      fab9adfb
    • Sowmini Varadhan's avatar
      sparc: Use GFP_ATOMIC in ldc_alloc_exp_dring() as it can be called in softirq context · 0edfad59
      Sowmini Varadhan authored
      Since it is possible for vnet_event_napi to end up doing
      vnet_control_pkt_engine -> ... -> vnet_send_attr ->
      vnet_port_alloc_tx_ring -> ldc_alloc_exp_dring -> kzalloc()
      (i.e., in softirq context), kzalloc() should be called with
      GFP_ATOMIC from ldc_alloc_exp_dring.
      Signed-off-by: default avatarSowmini Varadhan <sowmini.varadhan@oracle.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      0edfad59
    • David S. Miller's avatar
      sparc64: Use M7 PMC write on all chips T4 and onward. · df386375
      David S. Miller authored
      They both work equally well, and the M7 implementation is
      simpler and cheaper (less register writes).
      
      With help from David Ahern.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      df386375
    • Guenter Roeck's avatar
      parisc: Replace PT_NLEVELS with CONFIG_PGTABLE_LEVELS · c19edb69
      Guenter Roeck authored
      The following warning is seen when compiling parisc images
      
      ./arch/parisc/include/asm/pgalloc.h: In function 'pgd_alloc':
      ./arch/parisc/include/asm/pgalloc.h:29:5: warning: "PT_NLEVELS" is not defined
      
      Some definitions of PT_NLEVELS were missed with the conversion to
      CONFIG_PGTABLE_LEVELS.
      
      Fixes: f24ffde4 ("parisc: expose number of page table levels
      	on Kconfig level")
      Cc: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
      Acked-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      c19edb69
    • Matthew Wilcox's avatar
      parisc: Eliminate sg_virt_addr() and private scatterlist.h · 8bf8a1d1
      Matthew Wilcox authored
      The only reason to keep parisc's private asm/scatterlist.h was that it
      had the macro sg_virt_addr().  Convert all callers to use something else
      (sometimes just sg->offset was enough, others should use sg_virt()), and
      we can just use the asm-generic scatterlist.h instead.
      Signed-off-by: default avatarMatthew Wilcox <willy@linux.intel.com>
      Signed-off-by: default avatarDave Anglin <dave.anglin@bell.net>
      Signed-off-by: default avatarHelge Deller <deller@gmx.de>
      8bf8a1d1
    • jbaron@akamai.com's avatar
      tcp: add memory barriers to write space paths · 3c715127
      jbaron@akamai.com authored
      Ensure that we either see that the buffer has write space
      in tcp_poll() or that we perform a wakeup from the input
      side. Did not run into any actual problem here, but thought
      that we should make things explicit.
      Signed-off-by: default avatarJason Baron <jbaron@akamai.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      3c715127
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input · b8ce8d72
      Linus Torvalds authored
      Pull more input subsystem updates from Dmitry Torokhov:
      
       - an update to Atmel MXT driver that makes it functional on Google
         Pixel 2 boxes (both touchpad and touchscreen)
      
       - a new VMware VMMouse driver that should allow us drop X vmmouse
         driver that requires root privileges (since it accesses ioports)
      
       - XBox One controllers now support force feedback (rumble)
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Input: lm8333 - fix broken email address
        Input: cyapa - fix setting suspend scan rate
        Input: elan_i2c - fix calculating number of x and y traces.
        Input: elan_i2c - report hovering contacts
        Input: elants_i2c - zero-extend hardware ID in firmware name
        Input: alps - document separate pointstick button bits for V2 devices
        Input: atmel_mxt_ts - add support for Google Pixel 2
        Input: xpad - add rumble support for Xbox One controller
        Input: ff-core - use new debug macros
        Input: add vmmouse driver
        Input: elan_i2c - adjust for newer firmware pressure reporting
      b8ce8d72
    • Linus Torvalds's avatar
      media: remove unused variable that causes a warning · 1d11437f
      Linus Torvalds authored
      My 'allmodconfig' build is _almost_ free of warnings, and most of the
      remaining ones are for legacy drivers that just do bad things that I
      can't find it in my black heart to care too much about.  But this one
      was just annoying me:
      
         drivers/media/v4l2-core/videobuf2-core.c:3256:26: warning: unused variable ‘fileio’ [-Wunused-variable]
      
      because commit 0e661006 ("[media] vb2: fix 'UNBALANCED' warnings
      when calling vb2_thread_stop()") removed all users of 'fileio' and
      instead calls "__vb2_cleanup_fileio(q)" to clean up q->fileio.  But the
      now unused 'fileio' variable was left around.
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      1d11437f
    • Dmitry Torokhov's avatar
      Merge branch 'next' into for-linus · 48853389
      Dmitry Torokhov authored
      Prepare second round of updates for 4.1 merge window.
      48853389
    • Linus Torvalds's avatar
      Merge tag 'media/v4.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · 0c8027d5
      Linus Torvalds authored
      Pull media updates from Mauro Carvalho Chehab:
      
       - a new frontend driver for new ATSC devices: lgdt3306a
      
       - a new sensor driver: ov2659
      
       - a new platform driver: xilinx
      
       - the m88ts2022 tuner driver was merged at ts2020 driver
      
       - the media controller gained experimental support for DVB and hybrid
         devices
      
       - lots of random cleanups, fixes and improvements on media drivers
      
      * tag 'media/v4.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (404 commits)
        [media] uvcvideo: add support for VIDIOC_QUERY_EXT_CTRL
        [media] uvcvideo: fix cropcap v4l2-compliance failure
        [media] media: omap3isp: remove unused clkdev
        [media] coda: Add tracing support
        [media] coda: drop dma_sync_single_for_device in coda_bitstream_queue
        [media] coda: fix fill bitstream errors in nonstreaming case
        [media] coda: call SEQ_END when the first queue is stopped
        [media] coda: fail to start streaming if userspace set invalid formats
        [media] coda: remove duplicate error messages for buffer allocations
        [media] coda: move parameter buffer in together with context buffer allocation
        [media] coda: allocate bitstream buffer from REQBUFS, size depends on the format
        [media] coda: allocate per-context buffers from REQBUFS
        [media] coda: use strlcpy instead of snprintf
        [media] coda: bitstream payload is unsigned
        [media] coda: fix double call to debugfs_remove
        [media] coda: check kasprintf return value in coda_open
        [media] coda: bitrate can only be set in kbps steps
        [media] v4l2-mem2mem: no need to initialize b in v4l2_m2m_next_buf and v4l2_m2m_buf_remove
        [media] s5p-mfc: set allow_zero_bytesused flag for vb2_queue_init
        [media] coda: set allow_zero_bytesused flag for vb2_queue_init
        ...
      0c8027d5
    • Linus Torvalds's avatar
      Merge tag 'char-misc-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 1fc14993
      Linus Torvalds authored
      Pull char/misc driver updates from Greg KH:
       "Here's the big char/misc driver patchset for 4.1-rc1.
      
        Lots of different driver subsystem updates here, nothing major, full
        details are in the shortlog.
      
        All of this has been in linux-next for a while"
      
      * tag 'char-misc-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (133 commits)
        mei: trace: remove unused TRACE_SYSTEM_STRING
        DTS: ARM: OMAP3-N900: Add lis3lv02d support
        Documentation: DT: lis302: update wakeup binding
        lis3lv02d: DT: add wakeup unit 2 and wakeup threshold
        lis3lv02d: DT: use s32 to support negative values
        Drivers: hv: hv_balloon: correctly handle num_pages>INT_MAX case
        Drivers: hv: hv_balloon: correctly handle val.freeram<num_pages case
        mei: replace check for connection instead of transitioning
        mei: use mei_cl_is_connected consistently
        mei: fix mei_poll operation
        hv_vmbus: Add gradually increased delay for retries in vmbus_post_msg()
        Drivers: hv: hv_balloon: survive ballooning request with num_pages=0
        Drivers: hv: hv_balloon: eliminate jumps in piecewiese linear floor function
        Drivers: hv: hv_balloon: do not online pages in offline blocks
        hv: remove the per-channel workqueue
        hv: don't schedule new works in vmbus_onoffer()/vmbus_onoffer_rescind()
        hv: run non-blocking message handlers in the dispatch tasklet
        coresight: moving to new "hwtracing" directory
        coresight-tmc: Adding a status interface to sysfs
        coresight: remove the unnecessary configuration coresight-default-sink
        ...
      1fc14993
    • Linus Torvalds's avatar
      Merge tag 'tty-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 41d5e08e
      Linus Torvalds authored
      Pull tty/serial updates from Greg KH:
       "Here's the big tty/serial driver update for 4.1-rc1.
      
        It was delayed for a bit due to some questions surrounding some of the
        console command line parsing changes that are in here.  There's still
        one tiny regression for people who were previously putting multiple
        console command lines and expecting them all to be ignored for some
        odd reason, but Peter is working on fixing that.  If not, I'll send a
        revert for the offending patch, but I have faith that Peter can
        address it.
      
        Other than the console work here, there's the usual serial driver
        updates and changes, and a buch of 8250 reworks to try to make that
        driver easier to maintain over time, and have it support more devices
        in the future.
      
        All of these have been in linux-next for a while"
      
      * tag 'tty-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (119 commits)
        n_gsm: Drop unneeded cast on netdev_priv
        sc16is7xx: expose RTS inversion in RS-485 mode
        serial: 8250_pci: port failed after wakeup from S3
        earlycon: 8250: Document kernel command line options
        earlycon: 8250: Fix command line regression
        earlycon: Fix __earlycon_table stride
        tty: clean up the tty time logic a bit
        serial: 8250_dw: only get the clock rate in one place
        serial: 8250_dw: remove useless ACPI ID check
        dmaengine: hsu: move memory allocation to GFP_NOWAIT
        dmaengine: hsu: remove redundant pieces of code
        serial: 8250_pci: add Intel Tangier support
        dmaengine: hsu: add Intel Tangier PCI ID
        serial: 8250_pci: replace switch-case by formula for Intel MID
        serial: 8250_pci: replace switch-case by formula
        tty: cpm_uart: replace CONFIG_8xx by CONFIG_CPM1
        serial: jsm: some off by one bugs
        serial: xuartps: Fix check in console_setup().
        serial: xuartps: Get rid of register access macros.
        serial: xuartps: Fix iobase use.
        ...
      41d5e08e
    • Linus Torvalds's avatar
      Merge tag 'pinctrl-v4.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · 8d582b94
      Linus Torvalds authored
      Pull pincontrol Kconfig fix from Linus Walleij:
       "This fixes the annoying Kconfig noise from pin control.  Mea Culpa"
      
      * tag 'pinctrl-v4.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
        pinctrl: fix allmodconfig noise
      8d582b94
    • Linus Torvalds's avatar
      Merge tag 'clk-for-linus-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · e98bf5ce
      Linus Torvalds authored
      Pull clock framework updates from Michael Turquette:
       "The changes to the common clock framework for 4.0 are mostly new clock
        drivers and updates to existing ones for feature enhancements and bug
        fixes.
      
        There is more churn than usual in the framework core due to the change
        to introduce per-user unique struct clk pointers in 4.0.  This caused
        several regressions to surface, some of which were sent as fixes to
        4.0.  New generic clock drivers were added for GPIO- and PWM-based
        clock controllers.
      
        Additionally the common clk-divider code recieved several fixes to the
        way it rounds rates"
      
      * tag 'clk-for-linus-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (91 commits)
        clk: check ->determine/round_rate() return value in clk_calc_new_rates
        clk: at91: usb: propagate rate modification to the parent clk
        clk: samsung: exynos4: Disable ARMCLK down feature on Exynos4210 SoC
        clk: don't use __initconst for non-const arrays
        clk: at91: change to using endian agnositc IO
        clk: clk-gpio-gate: Fix active low
        clk: Add PWM clock driver
        clk: Add clock driver for mb86s7x
        clk: pxa: pxa3xx: add missing os timer clock
        clk: tegra: Use the proper parent for plld_dsi
        clk: tegra: Use generic tegra_osc_clk_init() on Tegra114
        clk: tegra: Model oscillator as clock
        clk: tegra: Add peripheral registers for bank Y
        clk: tegra: Register the proper number of resets
        clk: tegra: Remove needless initializations
        clk: tegra: Use consistent indentation
        clk: tegra: Various whitespace cleanups
        clk: tegra: Enable HDA to HDMI clocks on Tegra124
        clk: tegra: Fix a bunch of sparse warnings
        clk: tegra: Fix typo tabel -> table
        ...
      e98bf5ce