[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-linus bisection] complete test-armhf-armhf-xl-xsm



branch xen-unstable
xen branch xen-unstable
job test-armhf-armhf-xl-xsm
test xen-boot

Tree: linux git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
Tree: qemuu git://xenbits.xen.org/staging/qemu-upstream-unstable.git
Tree: xen git://xenbits.xen.org/xen.git

*** Found and reproduced problem changeset ***

  Bug is in tree:  linux 
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
  Bug introduced:  049e6dde7e57f0054fdc49102e7ef4830c698b46
  Bug not present: 64291f7db5bd8150a74ad2036f1037e6a0428df2


  commit 049e6dde7e57f0054fdc49102e7ef4830c698b46
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Oct 4 16:57:17 2015 +0100

      Linux 4.3-rc4

  commit 30c44659f4a3e7e1f9f47e895591b4b40bf62671
  Merge: 15ecf9a 30059d4
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Oct 4 16:31:13 2015 +0100

      Merge branch 'strscpy' of 
git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile

      Pull strscpy string copy function implementation from Chris Metcalf.

      Chris sent this during the merge window, but I waffled back and forth on
      the pull request, which is why it's going in only now.

      The new "strscpy()" function is definitely easier to use and more secure
      than either strncpy() or strlcpy(), both of which are horrible nasty
      interfaces that have serious and irredeemable problems.

      strncpy() has a useless return value, and doesn't NUL-terminate an
      overlong result.  To make matters worse, it pads a short result with
      zeroes, which is a performance disaster if you have big buffers.

      strlcpy(), by contrast, is a mis-designed "fix" for strlcpy(), lacking
      the insane NUL padding, but having a differently broken return value
      which returns the original length of the source string.  Which means
      that it will read characters past the count from the source buffer, and
      you have to trust the source to be properly terminated.  It also makes
      error handling fragile, since the test for overflow is unnecessarily
      subtle.

      strscpy() avoids both these problems, guaranteeing the NUL termination
      (but not excessive padding) if the destination size wasn't zero, and
      making the overflow condition very obvious by returning -E2BIG.  It also
      doesn't read past the size of the source, and can thus be used for
      untrusted source data too.

      So why did I waffle about this for so long?

      Every time we introduce a new-and-improved interface, people start doing
      these interminable series of trivial conversion patches.

      And every time that happens, somebody does some silly mistake, and the
      conversion patch to the improved interface actually makes things worse.
      Because the patch is mindnumbing and trivial, nobody has the attention
      span to look at it carefully, and it's usually done over large swatches
      of source code which means that not every conversion gets tested.

      So I'm pulling the strscpy() support because it *is* a better interface.
      But I will refuse to pull mindless conversion patches.  Use this in
      places where it makes sense, but don't do trivial patches to fix things
      that aren't actually known to be broken.

      * 'strscpy' of 
git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
        tile: use global strscpy() rather than private copy
        string: provide strscpy()
        Make asm/word-at-a-time.h available on all architectures

  commit 15ecf9a986e2678f5de36ead23b89235612fc03f
  Merge: 0d87708 da6fb7a
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Oct 4 11:47:28 2015 +0100

      Merge tag 'md/4.3-fixes' of git://neil.brown.name/md

      Pull md fixes from Neil Brown:
       "Assorted fixes for md in 4.3-rc.

        Two tagged for -stable, and one is really a cleanup to match and
        improve kmemcache interface.

      * tag 'md/4.3-fixes' of git://neil.brown.name/md:
        md/bitmap: don't pass -1 to bitmap_storage_alloc.
        md/raid1: Avoid raid1 resync getting stuck
        md: drop null test before destroy functions
        md: clear CHANGE_PENDING in readonly array
        md/raid0: apply base queue limits *before* disk_stack_limits
        md/raid5: don't index beyond end of array in need_this_block().
        raid5: update analysis state for failed stripe
        md: wait for pending superblock updates before switching to read-only

  commit 0d8770815f70cf41b69a82ede272b026dbb2df7d
  Merge: 3e519dd d218af7
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Oct 4 11:41:58 2015 +0100

      Merge branch 'upstream' of 
git://git.linux-mips.org/pub/scm/ralf/upstream-linus

      Pull MIPS updates from Ralf Baechle:
       "This week's round of MIPS fixes:
         - Fix JZ4740 build
         - Fix fallback to GFP_DMA
         - FP seccomp in case of ENOSYS
         - Fix bootmem panic
         - A number of FP and CPS fixes
         - Wire up new syscalls
         - Make sure BPF assembler objects can properly be disassembled
         - Fix BPF assembler code for MIPS I"

      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus:
        MIPS: scall: Always run the seccomp syscall filters
        MIPS: Octeon: Fix kernel panic on startup from memory corruption
        MIPS: Fix R2300 FP context switch handling
        MIPS: Fix octeon FP context switch handling
        MIPS: BPF: Fix load delay slots.
        MIPS: BPF: Do all exports of symbols with FEXPORT().
        MIPS: Fix the build on jz4740 after removing the custom gpio.h
        MIPS: CPS: #ifdef on CONFIG_MIPS_MT_SMP rather than CONFIG_MIPS_MT
        MIPS: CPS: Don't include MT code in non-MT kernels.
        MIPS: CPS: Stop dangling delay slot from has_mt.
        MIPS: dma-default: Fix 32-bit fall back to GFP_DMA
        MIPS: Wire up userfaultfd and membarrier syscalls.

  commit 3e519dde1e8a73e59b0eab52575a14a2986283b6
  Merge: 2cf3082 791c76d
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Oct 4 11:40:09 2015 +0100

      Merge branch 'irq-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull irq fixes from Thomas Gleixner:
       "This update contains:

         - Fix for a long standing race affecting /proc/irq/NNN

         - One line fix for ARM GICV3-ITS counting the wrong data

         - Warning silencing in ARM GICV3-ITS.  Another GCC trying to be
           overly clever issue"

      * 'irq-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        irqchip/gic-v3-its: Count additional LPIs for the aliased devices
        irqchip/gic-v3-its: Silence warning when its_lpi_alloc_chunks gets 
inlined
        genirq: Fix race in register_irq_proc()

  commit d218af78492a36a4ae607c08fedfb59258440314
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Fri Sep 25 08:17:42 2015 +0100

      MIPS: scall: Always run the seccomp syscall filters

      The MIPS syscall handler code used to return -ENOSYS on invalid
      syscalls. Whilst this is expected, it caused problems for seccomp
      filters because the said filters never had the change to run since
      the code returned -ENOSYS before triggering them. This caused
      problems on the chromium testsuite for filters looking for invalid
      syscalls. This has now changed and the seccomp filters are always
      run even if the syscall is invalid. We return -ENOSYS once we
      return from the seccomp filters. Moreover, similar codepaths have
      been merged in the process which simplifies somewhat the overall
      syscall code.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/11236/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 2cf30826bbc6c940568be07e8fab0aee02165cf8
  Merge: 37cc7ab f4b4aae
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Oct 3 10:53:05 2015 -0400

      Merge branch 'x86-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull x86 fixes from Ingo Molnar:
       "Fixes all around the map: W+X kernel mapping fix, WCHAN fixes, two
        build failure fixes for corner case configs, x32 header fix and a
        speling fix"

      * 'x86-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/headers/uapi: Fix __BITS_PER_LONG value for x32 builds
        x86/mm: Set NX on gap between __ex_table and rodata
        x86/kexec: Fix kexec crash in syscall kexec_file_load()
        x86/process: Unify 32bit and 64bit implementations of get_wchan()
        x86/process: Add proper bound checks in 64bit get_wchan()
        x86, efi, kasan: Fix build failure on !KASAN && KMEMCHECK=y kernels
        x86/hyperv: Fix the build in the !CONFIG_KEXEC_CORE case
        x86/cpufeatures: Correct spelling of the HWP_NOTIFY flag

  commit 37cc7ab1d2c317cc989b8aa0224cfc5f0478ccbd
  Merge: a758379 67dfae0
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Oct 3 10:51:41 2015 -0400

      Merge branch 'timers-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull timer fixes from Ingo Molnar:
       "An abs64() fix in the watchdog driver, and two clocksource driver
        NO_IRQ assumption fixes"

      * 'timers-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        clocksource: Fix abs() usage w/ 64bit values
        clocksource/drivers/keystone: Fix bad NO_IRQ usage
        clocksource/drivers/rockchip: Fix bad NO_IRQ usage

  commit a758379b031f50b9def094aad071ef547a5cb335
  Merge: 14f97d9 0ce3cc0
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Oct 3 10:46:41 2015 -0400

      Merge branch 'core-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull EFI fixes from Ingo Molnar:
       "Two EFI fixes: one for x86, one for ARM, fixing a boot crash bug that
        can trigger under newer EFI firmware"

      * 'core-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        arm64/efi: Fix boot crash by not padding between EFI_MEMORY_RUNTIME 
regions
        x86/efi: Fix boot crash by mapping EFI memmap entries bottom-up at 
runtime, instead of top-down

  commit 14f97d9713283adfadf2193e287e21d079f72ee7
  Merge: 978ab6a ccf03d6
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Oct 3 10:39:31 2015 -0400

      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux

      Pull drm fixes from Dave Airlie:
       "Bunch of fixes all over the place, all pretty small: amdgpu, i915,
        exynos, one qxl and one vmwgfx.

        There is also a bunch of mst fixes, I left some cleanups in the series
        as I didn't think it was worth splitting up the tested series"

      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: (37 commits)
        drm/dp/mst: add some defines for logical/physical ports
        drm/dp/mst: drop cancel work sync in the mstb destroy path (v2)
        drm/dp/mst: split connector registration into two parts (v2)
        drm/dp/mst: update the link_address_sent before sending the link 
address (v3)
        drm/dp/mst: fixup handling hotplug on port removal.
        drm/dp/mst: don't pass port into the path builder function
        drm/radeon: drop radeon_fb_helper_set_par
        drm: handle cursor_set2 in restore_fbdev_mode
        drm/exynos: Staticize local function in exynos_drm_gem.c
        drm/exynos: fimd: actually disable dp clock
        drm/exynos: dp: remove suspend/resume functions
        drm/qxl: recreate the primary surface when the bo is not primary
        drm/amdgpu: only print meaningful VM faults
        drm/amdgpu/cgs: remove import_gpu_mem
        drm/i915: Call non-locking version of drm_kms_helper_poll_enable(), v2
        drm: Add a non-locking version of drm_kms_helper_poll_enable(), v2
        drm/vmwgfx: Fix a command submission hang regression
        drm/exynos: remove unused mode_fixup() code
        drm/exynos: remove decon_mode_fixup()
        drm/exynos: remove fimd_mode_fixup()
        ...

  commit 978ab6a009e6691375a0b6f8a44ebbb471a64b6d
  Merge: 5634347 62d7846
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Oct 2 17:53:25 2015 -0400

      Merge branch 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input

      Pull input layer fixes from Dmitry Torokhov:
       "Fixes for two recent regressions (in Synaptics PS/2 and uinput
        drivers) and some more driver fixups"

      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Revert "Input: synaptics - fix handling of disabling gesture mode"
        Input: psmouse - fix data race in __ps2_command
        Input: elan_i2c - add all valid ic type for i2c/smbus
        Input: zhenhua - ensure we have BITREVERSE
        Input: omap4-keypad - fix memory leak
        Input: serio - fix blocking of parport
        Input: uinput - fix crash when using ABS events
        Input: elan_i2c - expand maximum product_id form 0xFF to 0xFFFF
        Input: elan_i2c - add ic type 0x03
        Input: elan_i2c - don't require known iap version
        Input: imx6ul_tsc - fix controller name
        Input: imx6ul_tsc - use the preferred method for kzalloc()
        Input: imx6ul_tsc - check for negative return value
        Input: imx6ul_tsc - propagate the errors
        Input: walkera0701 - fix abs() calculations on 64 bit values
        Input: mms114 - remove unneded semicolons
        Input: pm8941-pwrkey - remove unneded semicolon
        Input: fix typo in MT documentation
        Input: cyapa - fix address of Gen3 devices in device tree documentation

  commit 67dfae0cd72fec5cd158b6e5fb1647b7dbe0834c
  Author: John Stultz <john.stultz@xxxxxxxxxx>
  Date:   Mon Sep 14 18:05:20 2015 -0700

      clocksource: Fix abs() usage w/ 64bit values

      This patch fixes one cases where abs() was being used with 64-bit
      nanosecond values, where the result may be capped at 32-bits.

      This potentially could cause watchdog false negatives on 32-bit
      systems, so this patch addresses the issue by using abs64().

      Signed-off-by: John Stultz <john.stultz@xxxxxxxxxx>
      Cc: Prarit Bhargava <prarit@xxxxxxxxxx>
      Cc: Richard Cochran <richardcochran@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1442279124-7309-2-git-send-email-john.stultz@xxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 5634347dee31373a8faf084f4cdbf6d5ea0b03a4
  Merge: b55a97e ee556d0
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Oct 2 14:54:16 2015 -0400

      Merge tag 'arm64-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux

      Pull arm64 fixes from Catalin Marinas:

       - Fix for transparent huge page change_protection() logic which was
         inadvertently changing a huge pmd page into a pmd table entry.

       - Function graph tracer panic fix caused by the return_to_handler code
         corrupting the multi-regs function return value (composite types).

      * tag 'arm64-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: ftrace: fix function_graph tracer panic
        arm64: Fix THP protection change logic

  commit b55a97e759c9e9efdce0470f520026383c514a13
  Merge: 83dc311 95bc06e
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Oct 2 14:51:46 2015 -0400

      Merge branch 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k

      Pull m68k updates from Geert Uytterhoeven:
       "Summary:
         - Fix for accidental modification of arguments of syscall functions
         - Wire up new syscalls
         - Update defconfigs"

      * 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
        m68k/defconfig: Update defconfigs for v4.3-rc1
        m68k: Define asmlinkage_protect
        m68k: Wire up membarrier
        m68k: Wire up userfaultfd
        m68k: Wire up direct socket calls

  commit 791c76d58465a248cbd1ee422c8075cb90fa615f
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Fri Oct 2 16:44:06 2015 +0100

      irqchip/gic-v3-its: Count additional LPIs for the aliased devices

      When configuring the interrupt mapping for a new device, we
      iterate over all the possible aliases to account for their
      maximum MSI allocation. This was introduced by e8137f4f5088
      ("irqchip: gicv3-its: Iterate over PCI aliases to generate ITS 
configuration").

      Turns out that the code doing that is a bit braindead, and repeatedly
      accounts for the same device over and over.

      Fix this by counting the actual alias that is passed to us by the
      core code.

      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: Alex Shi <alex.shi@xxxxxxxxxx>
      Cc: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Cc: David Daney <ddaney.cavm@xxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1443800646-8074-3-git-send-email-marc.zyngier@xxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit c8415b9470727f70afce8607d4fe521789aa6c1c
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Fri Oct 2 16:44:05 2015 +0100

      irqchip/gic-v3-its: Silence warning when its_lpi_alloc_chunks gets inlined

      More agressive inlining in recent versions of GCC have uncovered
      a new set of warnings:

       drivers/irqchip/irq-gic-v3-its.c: In function its_msi_prepare:
        drivers/irqchip/irq-gic-v3-its.c:1148:26: warning: lpi_base may be used
          uninitialized in this function [-Wmaybe-uninitialized]
           dev->event_map.lpi_base = lpi_base;
                                ^
       drivers/irqchip/irq-gic-v3-its.c:1116:6: note: lpi_base was declared here
        int lpi_base;
              ^
       drivers/irqchip/irq-gic-v3-its.c:1149:25: warning: nr_lpis may be used
        uninitialized in this function [-Wmaybe-uninitialized]
         dev->event_map.nr_lpis = nr_lpis;
                                 ^
       drivers/irqchip/irq-gic-v3-its.c:1117:6: note: nr_lpis was declared here
        int nr_lpis;
              ^
      The warning is fairly benign (there is no code path that could
      actually use uninitialized variables), but let's silence it anyway
      by zeroing the variables on the error path.

      Reported-by: Alex Shi <alex.shi@xxxxxxxxxx>
      Tested-by: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: David Daney <ddaney.cavm@xxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1443800646-8074-2-git-send-email-marc.zyngier@xxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 83dc311ce0b430ee8e37e62976e6753bfd022004
  Merge: 27728bf 7b09a1b
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Oct 2 14:46:15 2015 -0400

      Merge tag 'dmaengine-fix-4.3-rc4' of 
git://git.infradead.org/users/vkoul/slave-dma

      Pull dmaengine fixes from Vinod Koul:
       "This contains fixes spread throughout the drivers, and also fixes one
        more instance of privatecnt in dmaengine.

        Driver fixes summary:
         - bunch of pxa_dma fixes for reuse of descriptor issue, residue and
           no-requestor
         - odd fixes in xgene, idma, sun4i and zxdma
         - at_xdmac fixes for cleaning descriptor and block addr mode"

      * tag 'dmaengine-fix-4.3-rc4' of 
git://git.infradead.org/users/vkoul/slave-dma:
        dmaengine: pxa_dma: fix residue corner case
        dmaengine: pxa_dma: fix the no-requestor case
        dmaengine: zxdma: Fix off-by-one for testing valid pchan request
        dmaengine: at_xdmac: clean used descriptor
        dmaengine: at_xdmac: change block increment addressing mode
        dmaengine: dw: properly read DWC_PARAMS register
        dmaengine: xgene-dma: Fix overwritting DMA tx ring
        dmaengine: fix balance of privatecnt
        dmaengine: sun4i: fix unsafe list iteration
        dmaengine: idma64: improve residue estimation
        dmaengine: xgene-dma: fix handling xgene_dma_get_ring_size result
        dmaengine: pxa_dma: fix initial list move

  commit 27728bf04b99a0abc5c27343c06e18379f57c726
  Merge: 36f8daf 0bf6cd5
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Oct 2 14:40:57 2015 -0400

      Merge branch 'for-linus' of git://git.kernel.dk/linux-block

      Pull block fixes from Jens Axboe:
       "Another week, another round of fixes.

        These have been brewing for a bit and in various iterations, but I
        feel pretty comfortable about the quality of them.  They fix real
        issues.  The pull request is mostly blk-mq related, and the only one
        not fixing a real bug, is the tag iterator abstraction from Christoph.
        But it's pretty trivial, and we'll need it for another fix soon.

        Apart from the blk-mq fixes, there's an NVMe affinity fix from Keith,
        and a single fix for xen-blkback from Roger fixing failure to free
        requests on disconnect"

      * 'for-linus' of git://git.kernel.dk/linux-block:
        blk-mq: factor out a helper to iterate all tags for a request_queue
        blk-mq: fix racy updates of rq->errors
        blk-mq: fix deadlock when reading cpu_list
        blk-mq: avoid inserting requests before establishing new mapping
        blk-mq: fix q->mq_usage_counter access race
        blk-mq: Fix use after of free q->mq_map
        blk-mq: fix sysfs registration/unregistration race
        blk-mq: avoid setting hctx->tags->cpumask before allocation
        NVMe: Set affinity after allocating request queues
        xen/blkback: free requests on disconnection

  commit 62d78461447198b49383f20301aaa15fe97dfa4f
  Author: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
  Date:   Fri Oct 2 10:31:32 2015 -0700

      Revert "Input: synaptics - fix handling of disabling gesture mode"

      This reverts commit e51e38494a8ecc18650efb0c840600637891de2c: we
      actually do want the device to work in extended W mode, as this is the
      mode that allows us receiving multiple contact information.

      Cc: stable@xxxxxxxxxxxxxxx

  commit 66803dd9198cb57a4b7ed4a6846a63ab1d59a2e0
  Author: Matt Bennett <matt.bennett@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 30 17:40:42 2015 +1300

      MIPS: Octeon: Fix kernel panic on startup from memory corruption

      During development it was found that a number of builds would panic
      during the kernel init process, more specifically in 'delayed_fput()'.
      The panic showed the kernel trying to access a memory address of
      '0xb7fdc00' while traversing the 'delayed_fput_list' structure.
      Comparing this memory address to the value of the pointer used on
      builds that did not panic confirmed that the pointer on crashing
      builds must have been corrupted at some stage earlier in the init
      process.

      By traversing the list earlier and earlier in the code it was found
      that 'plat_mem_setup()' was responsible for corrupting the list.
      Specifically the line:

          memory = cvmx_bootmem_phy_alloc(mem_alloc_size,
                        __pa_symbol(&__init_end), -1,
                        0x100000,
                        CVMX_BOOTMEM_FLAG_NO_LOCKING);

      Which would eventually call:

          cvmx_bootmem_phy_set_size(new_ent_addr,
                cvmx_bootmem_phy_get_size
                (ent_addr) -
                (desired_min_addr -
                        ent_addr));

      Where 'new_ent_addr'=0x4800000 (the address of 'delayed_fput_list')
      and the second argument (size)=0xb7fdc00 (the address causing the
      kernel panic). The job of this part of 'plat_mem_setup()' is to
      allocate chunks of memory for the kernel to use. At the start of
      each chunk of memory the size of the chunk is written, hence the
      value 0xb7fdc00 is written onto memory at 0x4800000, therefore the
      kernel panics when it goes back to access 'delayed_fput_list' later
      on in the initialisation process.

      On builds that were not crashing it was found that the compiler had
      placed 'delayed_fput_list' at 0x4800008, meaning it wasn't corrupted
      (but something else in memory was overwritten).

      As can be seen in the first function call above the code begins to
      allocate chunks of memory beginning from the symbol '__init_end'.
      The MIPS linker script (vmlinux.lds.S) however defines the .bss
      section to begin after '__init_end'. Therefore memory within the
      .bss section is allocated to the kernel to use (System.map shows
      'delayed_fput_list' and other kernel structures to be in .bss).

      To stop the kernel panic (and the .bss section being corrupted)
      memory should begin being allocated from the symbol '_end'.

      Signed-off-by: Matt Bennett <matt.bennett@xxxxxxxxxxxxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: aleksey.makarov@xxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/11251/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 085c2f25d36ef4a69bb1dab933daee0692426f15
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Sep 21 10:07:42 2015 -0700

      MIPS: Fix R2300 FP context switch handling

      Commit 1a3d59579b9f ("MIPS: Tidy up FPU context switching") removed FP
      context saving from the asm-written resume function in favour of reusing
      existing code to perform the same task. However it only removed the FP
      context saving code from the r4k_switch.S implementation of resume.
      Remove it from the r2300_switch.S implementation too in order to prevent
      attempting to save the FP context twice, which would likely lead to an
      exception from the second save because the FPU had already been disabled
      by the first save.

      This patch has only been build tested, using rbtx49xx_defconfig.

      Fixes: 1a3d59579b9f ("MIPS: Tidy up FPU context switching")
      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Manuel Lauss <manuel.lauss@xxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/11167/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 0fa24340f7c88d2814547d8d24d5e3a1803009cc
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Sep 21 10:07:41 2015 -0700

      MIPS: Fix octeon FP context switch handling

      Commit 1a3d59579b9f ("MIPS: Tidy up FPU context switching") removed FP
      context saving from the asm-written resume function in favour of reusing
      existing code to perform the same task. However it only removed the FP
      context saving code from the r4k_switch.S implementation of resume.
      Octeon uses its own implementation in octeon_switch.S, so remove FP
      context saving there too in order to prevent attempting to save context
      twice. That formerly led to an exception from the second save as follows
      because the FPU had already been disabled by the first save:

          do_cpu invoked from kernel context![#1]:
          CPU: 0 PID: 2 Comm: kthreadd Not tainted 4.3.0-rc2-dirty #2
          task: 800000041f84a008 ti: 800000041f864000 task.ti: 800000041f864000
          $ 0   : 0000000000000000 0000000010008ce1 0000000000100000 
ffffffffbfffffff
          $ 4   : 800000041f84a008 800000041f84ac08 800000041f84c000 
0000000000000004
          $ 8   : 0000000000000001 0000000000000000 0000000000000000 
0000000000000001
          $12   : 0000000010008ce3 0000000000119c60 0000000000000036 
800000041f864000
          $16   : 800000041f84ac08 800000000792ce80 800000041f84a008 
ffffffff81758b00
          $20   : 0000000000000000 ffffffff8175ae50 0000000000000000 
ffffffff8176c740
          $24   : 0000000000000006 ffffffff81170300
          $28   : 800000041f864000 800000041f867d90 0000000000000000 
ffffffff815f3fa0
          Hi    : 0000000000fa8257
          Lo    : ffffffffe15cfc00
          epc   : ffffffff8112821c resume+0x9c/0x200
          ra    : ffffffff815f3fa0 __schedule+0x3f0/0x7d8
          Status: 10008ce2        KX SX UX KERNEL EXL
          Cause : 1080002c (ExcCode 0b)
          PrId  : 000d0601 (Cavium Octeon+)
          Modules linked in:
          Process kthreadd (pid: 2, threadinfo=800000041f864000, 
task=800000041f84a008, tls=0000000000000000)
          Stack : ffffffff81604218 ffffffff815f7e08 800000041f84a008 
ffffffff811681b0
                    800000041f84a008 ffffffff817e9878 0000000000000000 
ffffffff81770000
                    ffffffff81768340 ffffffff81161398 0000000000000001 
0000000000000000
                    0000000000000000 ffffffff815f4424 0000000000000000 
ffffffff81161d68
                    ffffffff81161be8 0000000000000000 0000000000000000 
0000000000000000
                    0000000000000000 0000000000000000 0000000000000000 
ffffffff8111e16c
                    0000000000000000 0000000000000000 0000000000000000 
0000000000000000
                    0000000000000000 0000000000000000 0000000000000000 
0000000000000000
                    0000000000000000 0000000000000000 0000000000000000 
0000000000000000
                    0000000000000000 0000000000000000 0000000000000000 
0000000000000000
                    ...
          Call Trace:
          [<ffffffff8112821c>] resume+0x9c/0x200
          [<ffffffff815f3fa0>] __schedule+0x3f0/0x7d8
          [<ffffffff815f4424>] schedule+0x34/0x98
          [<ffffffff81161d68>] kthreadd+0x180/0x198
          [<ffffffff8111e16c>] ret_from_kernel_thread+0x14/0x1c

      Tested using cavium_octeon_defconfig on an EdgeRouter Lite.

      Fixes: 1a3d59579b9f ("MIPS: Tidy up FPU context switching")
      Reported-by: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Aleksey Makarov <aleksey.makarov@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Chandrakala Chavva <cchavva@xxxxxxxxxxxxxxxxxx>
      Cc: David Daney <david.daney@xxxxxxxxxx>
      Cc: Leonid Rosenboim <lrosenboim@xxxxxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/11166/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 36f8dafe52b0d0726edd5102900e37192f1d3c65
  Merge: 8c25ab8 031277d
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Oct 2 08:03:04 2015 -0400

      Merge tag 'mmc-v4.3-rc3' of git://git.linaro.org/people/ulf.hansson/mmc

      Pull MMC fixes from Ulf Hansson:
       "Here are some mmc fixes intended for v4.3 rc4:

        MMC core:
         - Allow users of mmc_of_parse() to succeed when CONFIG_GPIOLIB is
           unset
         - Prevent infinite loop of re-tuning for CRC-errors for CMD19 and
           CMD21

         MMC host:
         - pxamci: Fix issues with card detect
         - sunxi: Fix clk-delay settings"

      * tag 'mmc-v4.3-rc3' of git://git.linaro.org/people/ulf.hansson/mmc:
        mmc: core: fix dead loop of mmc_retune
        mmc: pxamci: fix card detect with slot-gpio API
        mmc: sunxi: Fix clk-delay settings
        mmc: core: Don't return an error for CD/WP GPIOs when GPIOLIB is unset

  commit 8c25ab8b5a04a7c559aa8fd4cabe5fc4463b8ada
  Merge: bde17b9 15bbdec
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Oct 2 07:59:29 2015 -0400

      Merge git://git.infradead.org/intel-iommu

      Pull IOVA fixes from David Woodhouse:
       "The main fix here is the first one, fixing the over-allocation of
         size-aligned requests.  The other patches simply make the existing
        IOVA code available to users other than the Intel VT-d driver, with no
        functional change.

        I concede the latter really *should* have been submitted during the
        merge window, but since it's basically risk-free and people are
        waiting to build on top of it and it's my fault I didn't get it in, I
        (and they) would be grateful if you'd take it"

      * git://git.infradead.org/intel-iommu:
        iommu: Make the iova library a module
        iommu: iova: Export symbols
        iommu: iova: Move iova cache management to the iova library
        iommu/iova: Avoid over-allocating when size-aligned

  commit ee556d00cf20012e889344a0adbbf809ab5015a3
  Author: Li Bin <huawei.libin@xxxxxxxxxx>
  Date:   Wed Sep 30 10:49:55 2015 +0800

      arm64: ftrace: fix function_graph tracer panic

      When function graph tracer is enabled, the following operation
      will trigger panic:

      mount -t debugfs nodev /sys/kernel
      echo next_tgid > /sys/kernel/tracing/set_ftrace_filter
      echo function_graph > /sys/kernel/tracing/current_tracer
      ls /proc/

      ------------[ cut here ]------------
      [  198.501417] Unable to handle kernel paging request at virtual address 
cb88537fdc8ba316
      [  198.506126] pgd = ffffffc008f79000
      [  198.509363] [cb88537fdc8ba316] *pgd=00000000488c6003, 
*pud=00000000488c6003, *pmd=0000000000000000
      [  198.517726] Internal error: Oops: 94000005 [#1] SMP
      [  198.518798] Modules linked in:
      [  198.520582] CPU: 1 PID: 1388 Comm: ls Tainted: G
      [  198.521800] Hardware name: linux,dummy-virt (DT)
      [  198.522852] task: ffffffc0fa9e8000 ti: ffffffc0f9ab0000 task.ti: 
ffffffc0f9ab0000
      [  198.524306] PC is at next_tgid+0x30/0x100
      [  198.525205] LR is at return_to_handler+0x0/0x20
      [  198.526090] pc : [<ffffffc0002a1070>] lr : [<ffffffc0000907c0>] 
pstate: 60000145
      [  198.527392] sp : ffffffc0f9ab3d40
      [  198.528084] x29: ffffffc0f9ab3d40 x28: ffffffc0f9ab0000
      [  198.529406] x27: ffffffc000d6a000 x26: ffffffc000b786e8
      [  198.530659] x25: ffffffc0002a1900 x24: ffffffc0faf16c00
      [  198.531942] x23: ffffffc0f9ab3ea0 x22: 0000000000000002
      [  198.533202] x21: ffffffc000d85050 x20: 0000000000000002
      [  198.534446] x19: 0000000000000002 x18: 0000000000000000
      [  198.535719] x17: 000000000049fa08 x16: ffffffc000242efc
      [  198.537030] x15: 0000007fa472b54c x14: ffffffffff000000
      [  198.538347] x13: ffffffc0fada84a0 x12: 0000000000000001
      [  198.539634] x11: ffffffc0f9ab3d70 x10: ffffffc0f9ab3d70
      [  198.540915] x9 : ffffffc0000907c0 x8 : ffffffc0f9ab3d40
      [  198.542215] x7 : 0000002e330f08f0 x6 : 0000000000000015
      [  198.543508] x5 : 0000000000000f08 x4 : ffffffc0f9835ec0
      [  198.544792] x3 : cb88537fdc8ba316 x2 : cb88537fdc8ba306
      [  198.546108] x1 : 0000000000000002 x0 : ffffffc000d85050
      [  198.547432]
      [  198.547920] Process ls (pid: 1388, stack limit = 0xffffffc0f9ab0020)
      [  198.549170] Stack: (0xffffffc0f9ab3d40 to 0xffffffc0f9ab4000)
      [  198.582568] Call trace:
      [  198.583313] [<ffffffc0002a1070>] next_tgid+0x30/0x100
      [  198.584359] [<ffffffc0000907bc>] ftrace_graph_caller+0x6c/0x70
      [  198.585503] [<ffffffc0000907bc>] ftrace_graph_caller+0x6c/0x70
      [  198.586574] [<ffffffc0000907bc>] ftrace_graph_caller+0x6c/0x70
      [  198.587660] [<ffffffc0000907bc>] ftrace_graph_caller+0x6c/0x70
      [  198.588896] Code: aa0003f5 2a0103f4 b4000102 91004043 (885f7c60)
      [  198.591092] ---[ end trace 6a346f8f20949ac8 ]---

      This is because when using function graph tracer, if the traced
      function return value is in multi regs ([x0-x7]), return_to_handler
      may corrupt them. So in return_to_handler, the parameter regs should
      be protected properly.

      Cc: <stable@xxxxxxxxxxxxxxx> # 3.18+
      Signed-off-by: Li Bin <huawei.libin@xxxxxxxxxx>
      Acked-by: AKASHI Takahiro <takahiro.akashi@xxxxxxxxxx>
      Signed-off-by: Catalin Marinas <catalin.marinas@xxxxxxx>

  commit 0c5d187828588dd1b36cb93b4481a8db467ef3e8
  Author: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
  Date:   Fri Oct 2 09:48:57 2015 +0200

      MIPS: BPF: Fix load delay slots.

      The entire bpf_jit_asm.S is written in noreorder mode because "we know
      better" according to a comment.  This also prevented the assembler from
      throwing in the required NOPs for MIPS I processors which have no
      load-use interlock, thus the load's consumer might end up using the
      old value of the register from prior to the load.

      Fixed by putting the assembler in reorder mode for just the affected
      load instructions.  This is not enough for gas to actually try to be
      clever by looking at the next instruction and inserting a nop only
      when needed but as the comment said "we know better", so getting gas
      to unconditionally emit a NOP is just right in this case and prevents
      adding further ifdefery.

      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit f4b4aae1828855db761bf998ce37d3062b1d6446
  Author: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
  Date:   Thu Oct 1 01:40:43 2015 +0100

      x86/headers/uapi: Fix __BITS_PER_LONG value for x32 builds

      On x32, gcc predefines __x86_64__ but long is only 32-bit.  Use
      __ILP32__ to distinguish x32.

      Fixes this compiler error in perf:

        tools/include/asm-generic/bitops/__ffs.h: In function '__ffs':
        tools/include/asm-generic/bitops/__ffs.h:19:8: error: right shift count 
>= width of type [-Werror=shift-count-overflow]
          word >>= 32;
               ^

      This isn't sufficient to build perf for x32, though.

      Signed-off-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Mike Galbraith <efault@xxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Link: http://lkml.kernel.org/r/1443660043.2730.15.camel@xxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit da6fb7a9e5bd6f04f7e15070f630bdf1ea502841
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Thu Oct 1 16:03:38 2015 +1000

      md/bitmap: don't pass -1 to bitmap_storage_alloc.

      Passing -1 to bitmap_storage_alloc() causes page->index to be set to
      -1, which is quite problematic.

      So only pass ->cluster_slot if mddev_is_clustered().

      Fixes: b97e92574c0b ("Use separate bitmaps for each nodes in the cluster")
      Cc: stable@xxxxxxxxxxxxxxx (v4.1+)
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit e8ff8bf09ff49733534ff3cee91bde030186055f
  Author: Jes Sorensen <Jes.Sorensen@xxxxxxxxxx>
  Date:   Wed Sep 16 10:20:05 2015 -0400

      md/raid1: Avoid raid1 resync getting stuck

      close_sync() needs to set conf->next_resync to a large, but safe value
      below MaxSector and use it to determine whether or not to set
      start_next_window in wait_barrier()

      Solution suggested by Neil Brown.

      Reported-by: Nate Dailey <nate.dailey@xxxxxxxxxxx>
      Tested-by: Xiao Ni <xni@xxxxxxxxxx>
      Signed-off-by: Jes Sorensen <Jes.Sorensen@xxxxxxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 644df1a85fc4b0c7a16800f55717261546f4e651
  Author: Julia Lawall <Julia.Lawall@xxxxxxx>
  Date:   Sun Sep 13 14:15:10 2015 +0200

      md: drop null test before destroy functions

      Remove unneeded NULL test.

      The semantic patch that makes this change is as follows:
      (http://coccinelle.lip6.fr/)

      // <smpl>
      @@ expression x; @@
      -if (x != NULL)
        \(kmem_cache_destroy\|mempool_destroy\|dma_pool_destroy\)(x);
      // </smpl>

      Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit d4929add83ad4660b1824a9282ab5dd4d60140fa
  Author: Shaohua Li <shli@xxxxxx>
  Date:   Fri Sep 18 10:20:12 2015 -0700

      md: clear CHANGE_PENDING in readonly array

      If faulty disks of an array are more than allowed degraded number, the
      array enters error handling. It will be marked as read-only with
      MD_CHANGE_PENDING/RECOVERY_NEEDED set. But currently recovery doesn't
      clear CHANGE_PENDING bit for read-only array.  If MD_CHANGE_PENDING is
      set for a raid5 array, all returned IO will be hold on a list till the
      bit is clear. But recovery nevery clears this bit, the IO is always in
      pending state and nevery finish. This has bad effects like upper layer
      can't get an IO error and the array can't be stopped.

      Fixes: c3cce6cda162 ("md/raid5: ensure device failure recorded before 
write request returns.")
      Signed-off-by: Shaohua Li <shli@xxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 66eefe5de11db1e0d8f2edc3880d50e7c36a9d43
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Thu Sep 24 15:47:47 2015 +1000

      md/raid0: apply base queue limits *before* disk_stack_limits

      Calling e.g. blk_queue_max_hw_sectors() after calls to
      disk_stack_limits() discards the settings determined by
      disk_stack_limits().
      So we need to make those calls first.

      Fixes: 199dc6ed5179 ("md/raid0: update queue parameter in a safer 
location.")
      Cc: stable@xxxxxxxxxxxxxxx (v2.6.35+ - please apply with 199dc6ed5179).
      Reported-by: Jes Sorensen <Jes.Sorensen@xxxxxxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 36707bb2e7c6730d79d6cdc6d1475d3d7e94c518
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Thu Sep 24 15:25:36 2015 +1000

      md/raid5: don't index beyond end of array in need_this_block().

      When need_this_block probably shouldn't be called when there
      are more than 2 failed devices, we really don't want it to try
      indexing beyond the end of the failed_num[] of fdev[] arrays.

      So limit the loops to at most 2 iterations.

      Reported-by: Shaohua Li <shli@xxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxx>

  commit ebda780bce8d58ec0abab157397c9e099c41a05f
  Author: Shaohua Li <shli@xxxxxx>
  Date:   Fri Sep 18 10:20:13 2015 -0700

      raid5: update analysis state for failed stripe

      handle_failed_stripe() makes the stripe fail, eg, all IO will return
      with a failure, but it doesn't update stripe_head_state. Later
      handle_stripe() has special handling for raid6 for handle_stripe_fill().
      That check before handle_stripe_fill() doesn't skip the failed stripe
      and we get a kernel crash in need_this_block.  This patch clear the
      analysis state to make sure no functions wrongly called after
      handle_failed_stripe()

      Signed-off-by: Shaohua Li <shli@xxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 88724bfa68be792c1487d759e87568c36ac1a1cc
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Thu Sep 24 14:00:51 2015 +1000

      md: wait for pending superblock updates before switching to read-only

      If a superblock update is pending, wait for it to complete before
      letting md_set_readonly() switch to readonly.
      Otherwise we might lose important information about a device having
      failed.

      For external arrays, waiting for superblock updates can wait on
      user-space, so in that case, just return an error.

      Reported-and-tested-by: Shaohua Li <shli@xxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit ab76f7b4ab2397ffdd2f1eb07c55697d19991d10
  Author: Stephen Smalley <sds@xxxxxxxxxxxxx>
  Date:   Thu Oct 1 09:04:22 2015 -0400

      x86/mm: Set NX on gap between __ex_table and rodata

      Unused space between the end of __ex_table and the start of
      rodata can be left W+x in the kernel page tables.  Extend the
      setting of the NX bit to cover this gap by starting from
      text_end rather than rodata_start.

        Before:
        ---[ High Kernel Mapping ]---
        0xffffffff80000000-0xffffffff81000000          16M                      
         pmd
        0xffffffff81000000-0xffffffff81600000           6M     ro         PSE   
  GLB x  pmd
        0xffffffff81600000-0xffffffff81754000        1360K     ro               
  GLB x  pte
        0xffffffff81754000-0xffffffff81800000         688K     RW               
  GLB x  pte
        0xffffffff81800000-0xffffffff81a00000           2M     ro         PSE   
  GLB NX pmd
        0xffffffff81a00000-0xffffffff81b3b000        1260K     ro               
  GLB NX pte
        0xffffffff81b3b000-0xffffffff82000000        4884K     RW               
  GLB NX pte
        0xffffffff82000000-0xffffffff82200000           2M     RW         PSE   
  GLB NX pmd
        0xffffffff82200000-0xffffffffa0000000         478M                      
         pmd

        After:
        ---[ High Kernel Mapping ]---
        0xffffffff80000000-0xffffffff81000000          16M                      
         pmd
        0xffffffff81000000-0xffffffff81600000           6M     ro         PSE   
  GLB x  pmd
        0xffffffff81600000-0xffffffff81754000        1360K     ro               
  GLB x  pte
        0xffffffff81754000-0xffffffff81800000         688K     RW               
  GLB NX pte
        0xffffffff81800000-0xffffffff81a00000           2M     ro         PSE   
  GLB NX pmd
        0xffffffff81a00000-0xffffffff81b3b000        1260K     ro               
  GLB NX pte
        0xffffffff81b3b000-0xffffffff82000000        4884K     RW               
  GLB NX pte
        0xffffffff82000000-0xffffffff82200000           2M     RW         PSE   
  GLB NX pmd
        0xffffffff82200000-0xffffffffa0000000         478M                      
         pmd

      Signed-off-by: Stephen Smalley <sds@xxxxxxxxxxxxx>
      Acked-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Mike Galbraith <efault@xxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1443704662-3138-1-git-send-email-sds@xxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit e3c41e37b0f4b18cbd4dac76cbeece5a7558b909
  Author: Lee, Chun-Yi <joeyli.kernel@xxxxxxxxx>
  Date:   Tue Sep 29 20:58:57 2015 +0800

      x86/kexec: Fix kexec crash in syscall kexec_file_load()

      The original bug is a page fault crash that sometimes happens
      on big machines when preparing ELF headers:

          BUG: unable to handle kernel paging request at ffffc90613fc9000
          IP: [<ffffffff8103d645>] 
prepare_elf64_ram_headers_callback+0x165/0x260

      The bug is caused by us under-counting the number of memory ranges
      and subsequently not allocating enough ELF header space for them.
      The bug is typically masked on smaller systems, because the ELF header
      allocation is rounded up to the next page.

      This patch modifies the code in fill_up_crash_elf_data() by using
      walk_system_ram_res() instead of walk_system_ram_range() to correctly
      count the max number of crash memory ranges. That's because the
      walk_system_ram_range() filters out small memory regions that
      reside in the same page, but walk_system_ram_res() does not.

      Here's how I found the bug:

      After tracing prepare_elf64_headers() and 
prepare_elf64_ram_headers_callback(),
      the code uses walk_system_ram_res() to fill-in crash memory regions 
information
      to the program header, so it counts those small memory regions that
      reside in a page area.

      But, when the kernel was using walk_system_ram_range() in
      fill_up_crash_elf_data() to count the number of crash memory regions,
      it filters out small regions.

      I printed those small memory regions, for example:

        kexec: Get nr_ram ranges. vaddr=0xffff880077592258 paddr=0x77592258, 
sz=0xdc0

      Based on the code in walk_system_ram_range(), this memory region
      will be filtered out:

        pfn = (0x77592258 + 0x1000 - 1) >> 12 = 0x77593
        end_pfn = (0x77592258 + 0xfc0 -1 + 1) >> 12 = 0x77593
        end_pfn - pfn = 0x77593 - 0x77593 = 0  <=== if (end_pfn > pfn) is FALSE

      So, the max_nr_ranges that's counted by the kernel doesn't include
      small memory regions - causing us to under-allocate the required space.
      That causes the page fault crash that happens in a later code path
      when preparing ELF headers.

      This bug is not easy to reproduce on small machines that have few
      CPUs, because the allocated page aligned ELF buffer has more free
      space to cover those small memory regions' PT_LOAD headers.

      Signed-off-by: Lee, Chun-Yi <jlee@xxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: Baoquan He <bhe@xxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Mike Galbraith <efault@xxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      Cc: Takashi Iwai <tiwai@xxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: kexec@xxxxxxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: <stable@xxxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1443531537-29436-1-git-send-email-jlee@xxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit ccf03d6995fa4b784f5b987726ba98f4859bf326
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Thu Oct 1 16:28:25 2015 +1000

      drm/dp/mst: add some defines for logical/physical ports

      This just removes the magic number.

      Acked-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit 274d83524895fe41ca8debae4eec60ede7252bb5
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Wed Sep 30 10:39:42 2015 +1000

      drm/dp/mst: drop cancel work sync in the mstb destroy path (v2)

      Since 9eb1e57f564d4e6e10991402726cc83fe0b9172f
      drm/dp/mst: make sure mst_primary mstb is valid in work function

      we validate the mstb structs in the work function, and doing
      that takes a reference. So we should never get here with the
      work function running using the mstb device, only if the work
      function hasn't run yet or is running for another mstb.

      So we don't need to sync the work here, this was causing
      lockdep spew as below.

      [  +0.000160] =============================================
      [  +0.000001] [ INFO: possible recursive locking detected ]
      [  +0.000002] 3.10.0-320.el7.rhel72.stable.backport.3.x86_64.debug #1 
Tainted: G        W      ------------
      [  +0.000001] ---------------------------------------------
      [  +0.000001] kworker/4:2/1262 is trying to acquire lock:
      [  +0.000001]  ((&mgr->work)){+.+.+.}, at: [<ffffffff810b29a5>] 
flush_work+0x5/0x2e0
      [  +0.000007]
      but task is already holding lock:
      [  +0.000001]  ((&mgr->work)){+.+.+.}, at: [<ffffffff810b57e4>] 
process_one_work+0x1b4/0x710
      [  +0.000004]
      other info that might help us debug this:
      [  +0.000001]  Possible unsafe locking scenario:

      [  +0.000002]        CPU0
      [  +0.000000]        ----
      [  +0.000001]   lock((&mgr->work));
      [  +0.000002]   lock((&mgr->work));
      [  +0.000001]
       *** DEADLOCK ***

      [  +0.000001]  May be due to missing lock nesting notation

      [  +0.000002] 2 locks held by kworker/4:2/1262:
      [  +0.000001]  #0:  (events_long){.+.+.+}, at: [<ffffffff810b57e4>] 
process_one_work+0x1b4/0x710
      [  +0.000004]  #1:  ((&mgr->work)){+.+.+.}, at: [<ffffffff810b57e4>] 
process_one_work+0x1b4/0x710
      [  +0.000003]
      stack backtrace:
      [  +0.000003] CPU: 4 PID: 1262 Comm: kworker/4:2 Tainted: G        W      
------------   3.10.0-320.el7.rhel72.stable.backport.3.x86_64.debug #1
      [  +0.000001] Hardware name: LENOVO 20EGS0R600/20EGS0R600, BIOS GNET71WW 
(2.19 ) 02/05/2015
      [  +0.000008] Workqueue: events_long drm_dp_mst_link_probe_work 
[drm_kms_helper]
      [  +0.000001]  ffffffff82c26c90 00000000a527b914 ffff88046399bae8 
ffffffff816fe04d
      [  +0.000004]  ffff88046399bb58 ffffffff8110f47f ffff880461438000 
0001009b840fc003
      [  +0.000002]  ffff880461438a98 0000000000000000 0000000804dc26e1 
ffffffff824a2c00
      [  +0.000003] Call Trace:
      [  +0.000004]  [<ffffffff816fe04d>] dump_stack+0x19/0x1b
      [  +0.000004]  [<ffffffff8110f47f>] __lock_acquire+0x115f/0x1250
      [  +0.000002]  [<ffffffff8110fd49>] lock_acquire+0x99/0x1e0
      [  +0.000002]  [<ffffffff810b29a5>] ? flush_work+0x5/0x2e0
      [  +0.000002]  [<ffffffff810b29ee>] flush_work+0x4e/0x2e0
      [  +0.000002]  [<ffffffff810b29a5>] ? flush_work+0x5/0x2e0
      [  +0.000004]  [<ffffffff81025905>] ? native_sched_clock+0x35/0x80
      [  +0.000002]  [<ffffffff81025959>] ? sched_clock+0x9/0x10
      [  +0.000002]  [<ffffffff810da1f5>] ? local_clock+0x25/0x30
      [  +0.000002]  [<ffffffff8110dca9>] ? mark_held_locks+0xb9/0x140
      [  +0.000003]  [<ffffffff810b4ed5>] ? __cancel_work_timer+0x95/0x160
      [  +0.000002]  [<ffffffff810b4ee8>] __cancel_work_timer+0xa8/0x160
      [  +0.000002]  [<ffffffff810b4fb0>] cancel_work_sync+0x10/0x20
      [  +0.000007]  [<ffffffffa0160d17>] 
drm_dp_destroy_mst_branch_device+0x27/0x120 [drm_kms_helper]
      [  +0.000006]  [<ffffffffa0163968>] drm_dp_mst_link_probe_work+0x78/0xa0 
[drm_kms_helper]
      [  +0.000002]  [<ffffffff810b5850>] process_one_work+0x220/0x710
      [  +0.000002]  [<ffffffff810b57e4>] ? process_one_work+0x1b4/0x710
      [  +0.000005]  [<ffffffff810b5e5b>] worker_thread+0x11b/0x3a0
      [  +0.000003]  [<ffffffff810b5d40>] ? process_one_work+0x710/0x710
      [  +0.000002]  [<ffffffff810beced>] kthread+0xed/0x100
      [  +0.000003]  [<ffffffff810bec00>] ? insert_kthread_work+0x80/0x80
      [  +0.000003]  [<ffffffff817121d8>] ret_from_fork+0x58/0x90

      v2: add flush_work.

      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit d9515c5ec1a20c77d83471e634ad9bb12deb0eac
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Wed Sep 16 17:55:23 2015 +1000

      drm/dp/mst: split connector registration into two parts (v2)

      In order to cache the EDID properly for tiled displays, we
      need to retrieve it before we register the connector with
      userspace, otherwise userspace can call get resources
      and try and get the edid before we've even cached it.

      This fixes some problems when hotplugging mst monitors,
      with X/mutter running. As mutter seems to get 0 modes
      for one of the monitors in the tile.

      v2: fix warning in radeon
      handle tile setting in cached path rather than
      get edid path.

      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit 68d8c9fc91a0f63a2a10ccf7adf56f69125c11c1
  Author: Dave Airlie <airlied@xxxxxxxxx>
  Date:   Sun Sep 6 18:53:00 2015 +1000

      drm/dp/mst: update the link_address_sent before sending the link address 
(v3)

      Update the state before sending the msg to close it.

      v2: reset value if return indicates we haven't send the msg.
      v3: just clean the code up.
      Pointed out by Adam J Richter on

      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91481

      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit df4839fdc9b3c922586b945f062f38cbbda022bb
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Wed Sep 16 10:37:28 2015 +1000

      drm/dp/mst: fixup handling hotplug on port removal.

      output ports should always have a connector, unless
      in the rare case connector allocation fails in the
      driver.

      In this case we only need to teardown the pdt,
      and free the struct, and there is no need to
      send a hotplug msg.

      In the case were we add the port to the destroy
      list we need to send a hotplug if we destroy
      any connectors, so userspace knows to reprobe
      stuff.

      this patch also handles port->connector allocation
      failing which should be a rare event, but makes
      the code consistent.

      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit 1c960876be7cffd2798a9e2be090e0a5afaee895
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Wed Sep 16 11:04:49 2015 +1000

      drm/dp/mst: don't pass port into the path builder function

      This is unnecessary and it makes it easier to see what is needed
      from port.

      also add blank line to make things nicer.

      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit 0c6dadbe79c54818ed4c268297b663f0c4d1ef98
  Author: Alex Deucher <alexdeucher@xxxxxxxxx>
  Date:   Wed Sep 30 14:47:38 2015 -0400

      drm/radeon: drop radeon_fb_helper_set_par

      It was just a wrapper around drm_fb_helper_set_par that
      called cursor_set2 in addition.  Now that the core handles
      this, drop this radeon specific version.

      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Michel Dänzer <michel.daenzer@xxxxxxx>
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit 03f9abb28c3e10a1d0e08df8bca69e0606b23ea6
  Author: Alex Deucher <alexdeucher@xxxxxxxxx>
  Date:   Wed Sep 30 14:47:37 2015 -0400

      drm: handle cursor_set2 in restore_fbdev_mode

      If a driver uses the cursor_set2 crtc callback rather than
      cursor_set, use that.  This fixes the fbdev helper for drivers
      that use cursor_set2.

      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Michel Dänzer <michel.daenzer@xxxxxxx>
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit bde17b90dd9712cb61a7ab0c1ccd0f7f6aa57957
  Merge: 1bca100 676bd99
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Oct 1 22:20:11 2015 -0400

      Merge branch 'akpm' (patches from Andrew)

      Merge misc fixes from Andrew Morton:
       "12 fixes"

      * emailed patches from Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>:
        dmapool: fix overflow condition in pool_find_page()
        thermal: avoid division by zero in power allocator
        memcg: remove pcp_counter_lock
        kprobes: use _do_fork() in samples to make them work again
        drivers/input/joystick/Kconfig: zhenhua.c needs BITREVERSE
        memcg: make mem_cgroup_read_stat() unsigned
        memcg: fix dirty page migration
        dax: fix NULL pointer in __dax_pmd_fault()
        mm: hugetlbfs: skip shared VMAs when unmapping private pages to satisfy 
a fault
        mm/slab: fix unexpected index mapping result of 
kmalloc_size(INDEX_NODE+1)
        userfaultfd: remove kernel header include from uapi header
        arch/x86/include/asm/efi.h: fix build failure

  commit 1bca1000fa71a1092947b4a51928abe80a3316d2
  Merge: 3deaa4f eb6d1c2
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Oct 1 22:06:40 2015 -0400

      Merge tag 'pm+acpi-4.3-rc4' of 
git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

      Pull power management and ACPI fixes from Rafael Wysocki:
       "These are fixes mostly, for a few changes made in this cycle (the
        intel_idle driver, the OPP library, the ACPI EC driver, turbostat) and
        for some issues that have just been discovered (ACPI PCI IRQ
        management, PCI power management documentation, turbostat), with a
        couple of cleanups on top of them.

        Specifics:

         - intel_idle driver fixup for the recently added Skylake chips
           support (Len Brown).

         - Operating Performance Points (OPP) library fix related to the
           recently added support for new DT bindings and a fix for a typo in
           a comment (Viresh Kumar, Stephen Boyd).

         - ACPI EC driver fix for a recently introduced memory leak in an
           error code path (Lv Zheng).

         - ACPI PCI IRQ management fix for the issue where an ISA IRQ is
           shared with a PCI device which requires it to be configured in a
           different way and may cause an interrupt storm to happen as a
           result with an extra ACPI SCI IRQ handling simplification on top of
           it (Jiang Liu).

         - Update of the PCI power management documentation that became
           outdated and started to actively confuse the readers to make it
           actually reflect the code (Rafael J Wysocki).

         - turbostat fixes including an IVB Xeon regression fix (related to
           the --debug command line option), Skylake adjustment for the TSC
           running at a frequency that doesn't match the base one exactly, and
           a Knights Landing quirk to account for the fact that it only
           updates APERF and MPERF every 1024 clock cycles plus bumping up the
           turbostat version number (Len Brown, Hubert Chrzaniuk)"

      * tag 'pm+acpi-4.3-rc4' of 
git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        tools/power turbosat: update version number
        tools/power turbostat: SKL: Adjust for TSC difference from base 
frequency
        tools/power turbostat: KNL workaround for %Busy and Avg_MHz
        tools/power turbostat: IVB Xeon: fix --debug regression
        ACPI / PCI: Remove duplicated penalty on SCI IRQ
        ACPI, PCI, irq: Do not share PCI IRQ with ISA IRQ
        ACPI / EC: Fix a memory leak issue in acpi_ec_query()
        PM / OPP: Fix typo modifcation -> modification
        PCI / PM: Update runtime PM documentation for PCI devices
        PM / OPP: of_property_count_u32_elems() can return errors
        intel_idle: Skylake Client Support - updated

  commit 3deaa4f531506a12ac4860ccd83cb6cbcb15a7eb
  Merge: ccf70dd b84f787
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Oct 1 21:55:35 2015 -0400

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

      Pull networking fixes from David Miller:

      1) Fix regression in SKB partial checksum handling, from Pravin B
         Shalar.

      2) Fix VLAN inside of VXLAN handling in i40e driver, from Jesse
         Brandeburg.

      3) Cure softlockups during accept() in SCTP, from Karl Heiss.

      4) MSG_PEEK should return multiple SKBs worth of data in AF_UNIX, from
         Aaron Conole.

      5) IPV6 erroneously ignores output interface specifier in lookup key for
         route lookups, fix from David Ahern.

      6) In Marvell DSA driver, forward unknown frames to CPU port, from
         Andrew Lunn.

      7) Mission flow flag initializations in some code paths, from David
         Ahern.

      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
        net: Initialize flow flags in input path
        net: dsa: fix preparation of a port STP update
        testptp: Silence compiler warnings on ppc64
        net/mlx4: Handle return codes in mlx4_qp_attach_common
        dsa: mv88e6xxx: Enable forwarding for unknown to the CPU port
        skbuff: Fix skb checksum partial check.
        net: ipv6: Add RT6_LOOKUP_F_IFACE flag if oif is set
        net sysfs: Print link speed as signed integer
        bna: fix error handling
        af_unix: return data from multiple SKBs on recv() with MSG_PEEK flag
        af_unix: Convert the unix_sk macro to an inline function for type safety
        net: sctp: Don't use 64 kilobyte lookup table for four elements
        l2tp: protect tunnel->del_work by ref_count
        net/ibm/emac: bump version numbers for correct work with ethtool
        sctp: Prevent soft lockup when sctp_accept() is called during a timeout 
event
        sctp: Whitespace fix
        i40e/i40evf: check for stopped admin queue
        i40e: fix VLAN inside VXLAN
        r8169: fix handling rtl_readphy result
        net: hisilicon: fix handling platform_get_irq result

  commit 676bd99178cd962ed24ffdad222b7069d330a969
  Author: Robin Murphy <robin.murphy@xxxxxxx>
  Date:   Thu Oct 1 15:37:19 2015 -0700

      dmapool: fix overflow condition in pool_find_page()

      If a DMA pool lies at the very top of the dma_addr_t range (as may
      happen with an IOMMU involved), the calculated end address of the pool
      wraps around to zero, and page lookup always fails.

      Tweak the relevant calculation to be overflow-proof.

      Signed-off-by: Robin Murphy <robin.murphy@xxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      Cc: Sumit Semwal <sumit.semwal@xxxxxxxxxx>
      Cc: Sakari Ailus <sakari.ailus@xxxxxx>
      Cc: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 44241628bb207ec211bebd156aaf69470d90c209
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Thu Oct 1 15:37:16 2015 -0700

      thermal: avoid division by zero in power allocator

      During boot I get a div by zero Oops regression starting in v4.3-rc3.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Reviewed-by: Javi Merino <javi.merino@xxxxxxx>
      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: Eduardo Valentin <edubezval@xxxxxxxxx>
      Cc: Daniel Kurtz <djkurtz@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ef510194cefe0cd369ef73419cd65b0a5bb4fb5b
  Author: Greg Thelen <gthelen@xxxxxxxxxx>
  Date:   Thu Oct 1 15:37:13 2015 -0700

      memcg: remove pcp_counter_lock

      Commit 733a572e66d2 ("memcg: make mem_cgroup_read_{stat|event}() iterate
      possible cpus instead of online") removed the last use of the per memcg
      pcp_counter_lock but forgot to remove the variable.

      Kill the vestigial variable.

      Signed-off-by: Greg Thelen <gthelen@xxxxxxxxxx>
      Acked-by: Michal Hocko <mhocko@xxxxxxxx>
      Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 54aea4542980a3ed580426a81c5af799df4d610d
  Author: Petr Mladek <pmladek@xxxxxxxx>
  Date:   Thu Oct 1 15:37:11 2015 -0700

      kprobes: use _do_fork() in samples to make them work again

      Commit 3033f14ab78c ("clone: support passing tls argument via C rather
      than pt_regs magic") introduced _do_fork() that allowed to pass @tls
      parameter.

      The old do_fork() is defined only for architectures that are not ready
      to use this way and do not define HAVE_COPY_THREAD_TLS.

      Let's use _do_fork() in the kprobe examples to make them work again on
      all architectures.

      Signed-off-by: Petr Mladek <pmladek@xxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Thiago Macieira <thiago.macieira@xxxxxxxxx>
      Cc: Jiri Kosina <jkosina@xxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 09a59a9d57a9d6f49510c93304d6e105deb83b93
  Author: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Oct 1 15:37:08 2015 -0700

      drivers/input/joystick/Kconfig: zhenhua.c needs BITREVERSE

      It uses bitrev8(), so it must ensure that lib/bitrev.o gets included in
      vmlinux.

      Cc: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Cc: yalin wang <yalin.wang2010@xxxxxxxxx>
      Cc: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 484ebb3b8c8b27dd2171696462a3116edb9ff801
  Author: Greg Thelen <gthelen@xxxxxxxxxx>
  Date:   Thu Oct 1 15:37:05 2015 -0700

      memcg: make mem_cgroup_read_stat() unsigned

      mem_cgroup_read_stat() returns a page count by summing per cpu page
      counters.  The summing is racy wrt.  updates, so a transient negative
      sum is possible.  Callers don't want negative values:

       - mem_cgroup_wb_stats() doesn't want negative nr_dirty or nr_writeback.
         This could confuse dirty throttling.

       - oom reports and memory.stat shouldn't show confusing negative usage.

       - tree_usage() already avoids negatives.

      Avoid returning negative page counts from mem_cgroup_read_stat() and
      convert it to unsigned.

      [akpm@xxxxxxxxxxxxxxxxxxxx: fix old typo while we're in there]
      Signed-off-by: Greg Thelen <gthelen@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Acked-by: Michal Hocko <mhocko@xxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>      [4.2+]
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 0610c25daa3e76e38ad5a8fae683a89ff9f71798
  Author: Greg Thelen <gthelen@xxxxxxxxxx>
  Date:   Thu Oct 1 15:37:02 2015 -0700

      memcg: fix dirty page migration

      The problem starts with a file backed dirty page which is charged to a
      memcg.  Then page migration is used to move oldpage to newpage.

      Migration:
       - copies the oldpage's data to newpage
       - clears oldpage.PG_dirty
       - sets newpage.PG_dirty
       - uncharges oldpage from memcg
       - charges newpage to memcg

      Clearing oldpage.PG_dirty decrements the charged memcg's dirty page
      count.

      However, because newpage is not yet charged, setting newpage.PG_dirty
      does not increment the memcg's dirty page count.  After migration
      completes newpage.PG_dirty is eventually cleared, often in
      account_page_cleaned().  At this time newpage is charged to a memcg so
      the memcg's dirty page count is decremented which causes underflow
      because the count was not previously incremented by migration.  This
      underflow causes balance_dirty_pages() to see a very large unsigned
      number of dirty memcg pages which leads to aggressive throttling of
      buffered writes by processes in non root memcg.

      This issue:
       - can harm performance of non root memcg buffered writes.
       - can report too small (even negative) values in
         memory.stat[(total_)dirty] counters of all memcg, including the root.

      To avoid polluting migrate.c with #ifdef CONFIG_MEMCG checks, introduce
      page_memcg() and set_page_memcg() helpers.

      Test:
          0) setup and enter limited memcg
          mkdir /sys/fs/cgroup/test
          echo 1G > /sys/fs/cgroup/test/memory.limit_in_bytes
          echo $$ > /sys/fs/cgroup/test/cgroup.procs

          1) buffered writes baseline
          dd if=/dev/zero of=/data/tmp/foo bs=1M count=1k
          sync
          grep ^dirty /sys/fs/cgroup/test/memory.stat

          2) buffered writes with compaction antagonist to induce migration
          yes 1 > /proc/sys/vm/compact_memory &
          rm -rf /data/tmp/foo
          dd if=/dev/zero of=/data/tmp/foo bs=1M count=1k
          kill %
          sync
          grep ^dirty /sys/fs/cgroup/test/memory.stat

          3) buffered writes without antagonist, should match baseline
          rm -rf /data/tmp/foo
          dd if=/dev/zero of=/data/tmp/foo bs=1M count=1k
          sync
          grep ^dirty /sys/fs/cgroup/test/memory.stat

                             (speed, dirty residue)
                   unpatched                       patched
          1) 841 MB/s 0 dirty pages          886 MB/s 0 dirty pages
          2) 611 MB/s -33427456 dirty pages  793 MB/s 0 dirty pages
          3) 114 MB/s -33427456 dirty pages  891 MB/s 0 dirty pages

          Notice that unpatched baseline performance (1) fell after
          migration (3): 841 -> 114 MB/s.  In the patched kernel, post
          migration performance matches baseline.

      Fixes: c4843a7593a9 ("memcg: add per cgroup dirty page accounting")
      Signed-off-by: Greg Thelen <gthelen@xxxxxxxxxx>
      Reported-by: Dave Hansen <dave.hansen@xxxxxxxxx>
      Acked-by: Michal Hocko <mhocko@xxxxxxxx>
      Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>      [4.2+]
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 8346c416d17bf5b4ea1508662959bb62e73fd6a5
  Author: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
  Date:   Thu Oct 1 15:36:59 2015 -0700

      dax: fix NULL pointer in __dax_pmd_fault()

      Commit 46c043ede471 ("mm: take i_mmap_lock in unmap_mapping_range() for
      DAX") moved some code in __dax_pmd_fault() that was responsible for
      zeroing newly allocated PMD pages.  The new location didn't properly set
      up 'kaddr', so when run this code resulted in a NULL pointer BUG.

      Fix this by getting the correct 'kaddr' via bdev_direct_access().

      Signed-off-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Reported-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Reviewed-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Cc: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx>
      Cc: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Dave Chinner <david@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 2f84a8990ebbe235c59716896e017c6b2ca1200f
  Author: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Oct 1 15:36:57 2015 -0700

      mm: hugetlbfs: skip shared VMAs when unmapping private pages to satisfy a 
fault

      SunDong reported the following on

        https://bugzilla.kernel.org/show_bug.cgi?id=103841

        I think I find a linux bug, I have the test cases is constructed. I
        can stable recurring problems in fedora22(4.0.4) kernel version,
        arch for x86_64.  I construct transparent huge page, when the parent
        and child process with MAP_SHARE, MAP_PRIVATE way to access the same
        huge page area, it has the opportunity to lead to huge page copy on
        write failure, and then it will munmap the child corresponding mmap
        area, but then the child mmap area with VM_MAYSHARE attributes, child
        process munmap this area can trigger VM_BUG_ON in set_vma_resv_flags
        functions (vma - > vm_flags & VM_MAYSHARE).

      There were a number of problems with the report (e.g.  it's hugetlbfs that
      triggers this, not transparent huge pages) but it was fundamentally
      correct in that a VM_BUG_ON in set_vma_resv_flags() can be triggered that
      looks like this

         vma ffff8804651fd0d0 start 00007fc474e00000 end 00007fc475e00000
         next ffff8804651fd018 prev ffff8804651fd188 mm ffff88046b1b1800
         prot 8000000000000027 anon_vma           (null) vm_ops ffffffff8182a7a0
         pgoff 0 file ffff88106bdb9800 private_data           (null)
         flags: 
0x84400fb(read|write|shared|mayread|maywrite|mayexec|mayshare|dontexpand|hugetlb)
         ------------
         kernel BUG at mm/hugetlb.c:462!
         SMP
         Modules linked in: xt_pkttype xt_LOG xt_limit [..]
         CPU: 38 PID: 26839 Comm: map Not tainted 4.0.4-default #1
         Hardware name: Dell Inc. PowerEdge R810/0TT6JF, BIOS 2.7.4 04/26/2012
         set_vma_resv_flags+0x2d/0x30

      The VM_BUG_ON is correct because private and shared mappings have
      different reservation accounting but the warning clearly shows that the
      VMA is shared.

      When a private COW fails to allocate a new page then only the process
      that created the VMA gets the page -- all the children unmap the page.
      If the children access that data in the future then they get killed.

      The problem is that the same file is mapped shared and private.  During
      the COW, the allocation fails, the VMAs are traversed to unmap the other
      private pages but a shared VMA is found and the bug is triggered.  This
      patch identifies such VMAs and skips them.

      Signed-off-by: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx>
      Reported-by: SunDong <sund_sky@xxxxxxx>
      Reviewed-by: Michal Hocko <mhocko@xxxxxxxx>
      Cc: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 03a2d2a3eafe4015412cf4e9675ca0e2d9204074
  Author: Joonsoo Kim <js1304@xxxxxxxxx>
  Date:   Thu Oct 1 15:36:54 2015 -0700

      mm/slab: fix unexpected index mapping result of kmalloc_size(INDEX_NODE+1)

      Commit description is copied from the original post of this bug:

        http://comments.gmane.org/gmane.linux.kernel.mm/135349

      Kernels after v3.9 use kmalloc_size(INDEX_NODE + 1) to get the next
      larger cache size than the size index INDEX_NODE mapping.  In kernels
      3.9 and earlier we used malloc_sizes[INDEX_L3 + 1].cs_size.

      However, sometimes we can't get the right output we expected via
      kmalloc_size(INDEX_NODE + 1), causing a BUG().

      The mapping table in the latest kernel is like:
          index = {0,   1,  2 ,  3,  4,   5,   6,   n}
           size = {0,   96, 192, 8, 16,  32,  64,   2^n}
      The mapping table before 3.10 is like this:
          index = {0 , 1 , 2,   3,  4 ,  5 ,  6,   n}
          size  = {32, 64, 96, 128, 192, 256, 512, 2^(n+3)}

      The problem on my mips64 machine is as follows:

      (1) When configured DEBUG_SLAB && DEBUG_PAGEALLOC && DEBUG_LOCK_ALLOC
          && DEBUG_SPINLOCK, the sizeof(struct kmem_cache_node) will be "150",
          and the macro INDEX_NODE turns out to be "2": #define INDEX_NODE
          kmalloc_index(sizeof(struct kmem_cache_node))

      (2) Then the result of kmalloc_size(INDEX_NODE + 1) is 8.

      (3) Then "if(size >= kmalloc_size(INDEX_NODE + 1)" will lead to "size
          = PAGE_SIZE".

      (4) Then "if ((size >= (PAGE_SIZE >> 3))" test will be satisfied and
          "flags |= CFLGS_OFF_SLAB" will be covered.

      (5) if (flags & CFLGS_OFF_SLAB)" test will be satisfied and will go to
          "cachep->slabp_cache = kmalloc_slab(slab_size, 0u)", and the result
          here may be NULL while kernel bootup.

      (6) Finally,"BUG_ON(ZERO_OR_NULL_PTR(cachep->slabp_cache));" causes the
          BUG info as the following shows (may be only mips64 has this problem):

      This patch fixes the problem of kmalloc_size(INDEX_NODE + 1) and removes
      the BUG by adding 'size >= 256' check to guarantee that all necessary
      small sized slabs are initialized regardless sequence of slab size in
      mapping table.

      Fixes: e33660165c90 ("slab: Use common kmalloc_index/kmalloc_size...")
      Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Reported-by: Liuhailong <liu.hailong6@xxxxxxxxxx>
      Acked-by: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Pekka Enberg <penberg@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 9ff42d10c3b3e26d9555878f31b9a2e5c24efa57
  Author: Andre Przywara <andre.przywara@xxxxxxx>
  Date:   Thu Oct 1 15:36:51 2015 -0700

      userfaultfd: remove kernel header include from uapi header

      As include/uapi/linux/userfaultfd.h is a user visible header file, it
      should not include kernel-exclusive header files.

      So trying to build the userfaultfd test program from the selftests
      directory fails, since it contains a reference to linux/compiler.h.  As
      it turns out, that header is not really needed there, so we can simply
      remove it to fix that issue.

      Signed-off-by: Andre Przywara <andre.przywara@xxxxxxx>
      Cc: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit a523841ee4e506fa1f05ff3a85b1e6d8176a3d4d
  Author: Andrey Ryabinin <ryabinin.a.a@xxxxxxxxx>
  Date:   Thu Oct 1 15:36:48 2015 -0700

      arch/x86/include/asm/efi.h: fix build failure

      With KMEMCHECK=y, KASAN=n:

        arch/x86/platform/efi/efi.c:673:3: error: implicit declaration of 
function `memcpy' [-Werror=implicit-function-declaration]
        arch/x86/platform/efi/efi_64.c:139:2: error: implicit declaration of 
function `memcpy' [-Werror=implicit-function-declaration]
        arch/x86/include/asm/desc.h:121:2: error: implicit declaration of 
function `memcpy' [-Werror=implicit-function-declaration]

      Don't #undef memcpy if KASAN=n.

      Fixes: 769a8089c1fd ("x86, efi, kasan: #undef memset/memcpy/memmove per 
arch")
      Signed-off-by: Andrey Ryabinin <ryabinin.a.a@xxxxxxxxx>
      Reported-by: Ingo Molnar <mingo@xxxxxxxxxx>
      Reported-by: Sedat Dilek <sedat.dilek@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ec403b89e3152f93199b7b1813148bcdf6829311
  Merge: 62886a3 b94be97
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Oct 2 10:47:29 2015 +1000

      Merge tag 'drm-intel-fixes-2015-10-01' of 
git://anongit.freedesktop.org/drm-intel into drm-fixes

      a few i915 fixes for v4.3.

      * tag 'drm-intel-fixes-2015-10-01' of 
git://anongit.freedesktop.org/drm-intel:
        drm/i915: Call non-locking version of drm_kms_helper_poll_enable(), v2
        drm: Add a non-locking version of drm_kms_helper_poll_enable(), v2
        drm/i915: Consider HW CSB write pointer before resetting the sw read 
pointer
        drm/i915/skl: Don't call intel_prepare_ddi when encoder list isn't yet 
initialized.

  commit 62886a367b59d7740f9db89fd418ab3e450ab7c7
  Merge: 8e592ea 575f9c8
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Oct 2 10:46:51 2015 +1000

      Merge tag 'vmwgfx-fixes-4.3-151001' of 
git://people.freedesktop.org/~thomash/linux into drm-fixes

      A single commit to fix a command submission hang regression.

      Pull request of 2015-10-01

      * tag 'vmwgfx-fixes-4.3-151001' of 
git://people.freedesktop.org/~thomash/linux:
        drm/vmwgfx: Fix a command submission hang regression

  commit 8e592eab0401bd70a8ba8534b903145855a7b703
  Merge: 5b63864 cda3742
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Oct 2 10:46:18 2015 +1000

      Merge branch 'exynos-drm-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos into drm-fixes

         This pull request includes regression fixups, build warnings, and
         trivial cleanups which mostly remove some codes not used anymore.

      * 'exynos-drm-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos:
        drm/exynos: Staticize local function in exynos_drm_gem.c
        drm/exynos: fimd: actually disable dp clock
        drm/exynos: dp: remove suspend/resume functions
        drm/exynos: remove unused mode_fixup() code
        drm/exynos: remove decon_mode_fixup()
        drm/exynos: remove fimd_mode_fixup()
        drm/exynos: rotator: Clock control is unused if !PM
        drm/exynos: fimc: Clock control is unused if !PM
        drm/exynos: Suspend/resume is unused if !PM
        drm/exynos: create a fake mmap offset with gem creation
        drm/exynos: remove call to drm_gem_free_mmap_offset()
        drm/exynos: Remove useless EXPORT_SYMBOL_GPLs
        drm/exynos: cleanup line feed in exynos_drm_gem_get_ioctl
        drm/exynos: cleanup function calling written twice
        drm/exynos: staticize exynos_drm_gem_init()
        drm/exynos: remove unnecessary NULL assignment
        drm/exynos: fix missed calling of drm_prime_gem_destroy()
        drm/exynos: fix layering violation of address

  commit 5b6386419c4f78526afe1615668b6444d7b66fd7
  Merge: 8d0d940 3e4e380
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Oct 2 10:35:22 2015 +1000

      Merge branch 'drm-fixes-4.3' of git://people.freedesktop.org/~agd5f/linux 
into drm-fixes

      radeon and amdgpu fixes for 4.3.
      - backlight s/r fixes
      - typo fix from Dan
      - vm debugging fix
      - remove import_gpu_mem after discussion with Daniel

      * 'drm-fixes-4.3' of git://people.freedesktop.org/~agd5f/linux:
        drm/amdgpu: only print meaningful VM faults
        drm/amdgpu/cgs: remove import_gpu_mem
        drm/amdgpu:  Restore LCD backlight level on resume
        drm/radeon: Restore LCD backlight level on resume (>= R5xx)
        drm/amdgpu: signedness bug in amdgpu_cs_parser_init()

  commit ccf70ddcbe9984cee406be2bacfedd5e4776919d
  Merge: 46c8217 d292242
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Oct 1 16:43:25 2015 -0400

      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

      Pull KVM fixes from Paolo Bonzini:
       "(Relatively) a lot of reverts, mostly.

        Bugs have trickled in for a new feature in 4.2 (MTRR support in
        guests) so I'm reverting it all; let's not make this -rc period busier
        for KVM than it's been so far.  This covers the four reverts from me.

        The fifth patch is being reverted because Radim found a bug in the
        implementation of stable scheduler clock, *but* also managed to
        implement the feature entirely without hypervisor support.  So instead
        of fixing the hypervisor side we can remove it completely; 4.4 will
        get the new implementation"

      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        Use WARN_ON_ONCE for missing X86_FEATURE_NRIPS
        Update KVM homepage Url
        Revert "KVM: SVM: use NPT page attributes"
        Revert "KVM: svm: handle KVM_X86_QUIRK_CD_NW_CLEARED in svm_get_mt_mask"
        Revert "KVM: SVM: Sync g_pat with guest-written PAT value"
        Revert "KVM: x86: apply guest MTRR virtualization on host reserved 
pages"
        Revert "KVM: x86: zero kvmclock_offset when vcpu0 initializes kvmclock 
system MSR"

  commit 46c8217c4a54c17dd4c000ad804fa1e223a10578
  Merge: f97b870 2866196
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Oct 1 16:38:52 2015 -0400

      Merge tag 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma

      Pull rdma fixes from Doug Ledford:
       - Fixes for mlx5 related issues
       - Fixes for ipoib multicast handling

      * tag 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma:
        IB/ipoib: increase the max mcast backlog queue
        IB/ipoib: Make sendonly multicast joins create the mcast group
        IB/ipoib: Expire sendonly multicast joins
        IB/mlx5: Remove pa_lkey usages
        IB/mlx5: Remove support for IB_DEVICE_LOCAL_DMA_LKEY
        IB/iser: Add module parameter for always register memory
        xprtrdma: Replace global lkey with lkey local to PD

  commit eb6d1c287ae1f7221248d5be26a5b1560073c09e
  Merge: 01351eb e9a7bed e1a2d49 a9062dc
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Thu Oct 1 22:30:47 2015 +0200

      Merge branches 'pm-cpuidle', 'pm-opp' and 'pm-tools'

      * pm-cpuidle:
        intel_idle: Skylake Client Support - updated

      * pm-opp:
        PM / OPP: Fix typo modifcation -> modification
        PM / OPP: of_property_count_u32_elems() can return errors

      * pm-tools:
        tools/power turbosat: update version number
        tools/power turbostat: SKL: Adjust for TSC difference from base 
frequency
        tools/power turbostat: KNL workaround for %Busy and Avg_MHz
        tools/power turbostat: IVB Xeon: fix --debug regression

  commit 01351eb23c5047895c14c91a898546c289a3c35c
  Merge: dd953d3 15b94fa
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Thu Oct 1 22:30:35 2015 +0200

      Merge branch 'acpi-ec'

      * acpi-ec:
        ACPI / EC: Fix a memory leak issue in acpi_ec_query()

  commit dd953d318daad9a3c1f9a6bf31430bf40163051e
  Merge: 9ffecb1 a836006 d323efc
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Thu Oct 1 22:30:12 2015 +0200

      Merge branches 'pm-pci' and 'acpi-pci'

      * pm-pci:
        PCI / PM: Update runtime PM documentation for PCI devices

      * acpi-pci:
        ACPI / PCI: Remove duplicated penalty on SCI IRQ
        ACPI, PCI, irq: Do not share PCI IRQ with ISA IRQ

  commit 1a541b4e3cd6f5795022514114854b3e1345f24e
  Author: Steve Capper <steve.capper@xxxxxxxxxx>
  Date:   Thu Oct 1 13:06:07 2015 +0100

      arm64: Fix THP protection change logic

      6910fa1 ("arm64: enable PTE type bit in the mask for pte_modify") fixes
      a problem whereby a large block of PROT_NONE mapped memory is
      incorrectly mapped as block descriptors when mprotect is called.

      Unfortunately, a subtle bug was introduced by this fix to the THP logic.

      If one mmaps a large block of memory, then faults it such that it is
      collapsed into THPs; resulting calls to mprotect on this area of memory
      will lead to incorrect table descriptors being written instead of block
      descriptors. This is because pmd_modify calls pte_modify which is now
      allowed to modify the type of the page table entry.

      This patch reverts commit 6910fa16dbe142f6a0fd0fd7c249f9883ff7fc8a, and
      fixes the problem it was trying to address by adjusting PAGE_NONE to
      represent a table entry. Thus no change in pte type is required when
      moving from PROT_NONE to a different protection.

      Fixes: 6910fa16dbe1 ("arm64: enable PTE type bit in the mask for 
pte_modify")
      Cc: <stable@xxxxxxxxxxxxxxx> # 4.0+
      Cc: Feng Kan <fkan@xxxxxxx>
      Reported-by: Ganapatrao Kulkarni <Ganapatrao.Kulkarni@xxxxxxxxxxxxxxxxxx>
      Tested-by: Ganapatrao Kulkarni <gkulkarni@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Catalin Marinas <catalin.marinas@xxxxxxx>
      Signed-off-by: Steve Capper <steve.capper@xxxxxxxxxx>
      Signed-off-by: Catalin Marinas <catalin.marinas@xxxxxxx>

  commit 1e16a8f11669c98a0adf5fb5f8522aebc1f69f71
  Author: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
  Date:   Thu Oct 1 15:45:44 2015 +0200

      MIPS: BPF: Do all exports of symbols with FEXPORT().

      FEXPORT also marks the symbol as code using .type symbol, @function.
      Without objdump -d will output only a hexdump for code following the
      affected symbols.

      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit d2922422c48df93f3edff7d872ee4f3191fefb08
  Author: Dirk Müller <dmueller@xxxxxxxx>
  Date:   Thu Oct 1 13:43:42 2015 +0200

      Use WARN_ON_ONCE for missing X86_FEATURE_NRIPS

      The cpu feature flags are not ever going to change, so warning
      everytime can cause a lot of kernel log spam
      (in our case more than 10GB/hour).

      The warning seems to only occur when nested virtualization is
      enabled, so it's probably triggered by a KVM bug.  This is a
      sensible and safe change anyway, and the KVM bug fix might not
      be suitable for stable releases anyway.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Dirk Mueller <dmueller@xxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 038161dea1eaeee80341134e2675b24656a71b59
  Author: Dirk Müller <dmueller@xxxxxxxx>
  Date:   Thu Oct 1 13:46:01 2015 +0200

      Update KVM homepage Url

      The old one appears to be a generic catch all page, which
      is unhelpful.

      Signed-off-by: Dirk Mueller <dmueller@xxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit f97b870eced0ec562f953d32eda03906c7dacad6
  Merge: 9522f47 7c7feb2
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Oct 1 07:57:27 2015 -0400

      Merge tag 'upstream-4.3-rc4' of git://git.infradead.org/linux-ubifs

      Pull UBI/UBIFS fixes from Richard Weinberger:
       "This contains three bug fixes for both UBI and UBIFS"

      * tag 'upstream-4.3-rc4' of git://git.infradead.org/linux-ubifs:
        UBI: return ENOSPC if no enough space available
        UBI: Validate data_size
        UBIFS: Kill unneeded locking in ubifs_init_security

  commit 9522f476d932eb23ebf8dbbc6b4e2f966f3fe911
  Merge: dd36d73 0266715
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Oct 1 07:50:08 2015 -0400

      Merge branch 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security

      Pull key signing fixes from James Morris:
       "Keyrings and modsign fixes from David Howells"

      * 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
        MODSIGN: Change from CMS to PKCS#7 signing if the openssl is too old
        X.509: Don't strip leading 00's from key ID when constructing key 
description
        KEYS: Remove unnecessary header #inclusions from extract-cert.c
        KEYS: Fix race between key destruction and finding a keyring by name

  commit fc07e76ac7ffa3afd621a1c3858a503386a14281
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Thu Oct 1 13:20:22 2015 +0200

      Revert "KVM: SVM: use NPT page attributes"

      This reverts commit 3c2e7f7de3240216042b61073803b61b9b3cfb22.
      Initializing the mapping from MTRR to PAT values was reported to
      fail nondeterministically, and it also caused extremely slow boot
      (due to caching getting disabled---bug 103321) with assigned devices.

      Reported-by: Markus Trippelsdorf <markus@xxxxxxxxxxxxxxx>
      Reported-by: Sebastian Schuette <dracon@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # 4.2+
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit bcf166a9942c3aabd8b752a7c38a49f57c54cfb8
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Thu Oct 1 13:19:55 2015 +0200

      Revert "KVM: svm: handle KVM_X86_QUIRK_CD_NW_CLEARED in svm_get_mt_mask"

      This reverts commit 5492830370171b6a4ede8a3bfba687a8d0f25fa5.
      It builds on the commit that is being reverted next.

      Cc: stable@xxxxxxxxxxxxxxx # 4.2+
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 625422f60c55bbc368b8568ff925770b36bfc189
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Thu Oct 1 13:28:15 2015 +0200

      Revert "KVM: SVM: Sync g_pat with guest-written PAT value"

      This reverts commit e098223b789b4a618dacd79e5e0dad4a9d5018d1,
      which has a dependency on other commits being reverted.

      Cc: stable@xxxxxxxxxxxxxxx # 4.2+
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 606decd67049217684e3cb5a54104d51ddd4ef35
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Thu Oct 1 13:12:47 2015 +0200

      Revert "KVM: x86: apply guest MTRR virtualization on host reserved pages"

      This reverts commit fd717f11015f673487ffc826e59b2bad69d20fe5.
      It was reported to cause Machine Check Exceptions (bug 104091).

      Reported-by: harn-solo@xxxxxx
      Cc: stable@xxxxxxxxxxxxxxx # 4.2+
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 0ce3cc008ec04258b6a6314b09f1a6012810881a
  Author: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
  Date:   Fri Sep 25 23:02:19 2015 +0100

      arm64/efi: Fix boot crash by not padding between EFI_MEMORY_RUNTIME 
regions

      The new Properties Table feature introduced in UEFIv2.5 may
      split memory regions that cover PE/COFF memory images into
      separate code and data regions. Since these regions only differ
      in the type (runtime code vs runtime data) and the permission
      bits, but not in the memory type attributes (UC/WC/WT/WB), the
      spec does not require them to be aligned to 64 KB.

      Since the relative offset of PE/COFF .text and .data segments
      cannot be changed on the fly, this means that we can no longer
      pad out those regions to be mappable using 64 KB pages.
      Unfortunately, there is no annotation in the UEFI memory map
      that identifies data regions that were split off from a code
      region, so we must apply this logic to all adjacent runtime
      regions whose attributes only differ in the permission bits.

      So instead of rounding each memory region to 64 KB alignment at
      both ends, only round down regions that are not directly
      preceded by another runtime region with the same type
      attributes. Since the UEFI spec does not mandate that the memory
      map be sorted, this means we also need to sort it first.

      Note that this change will result in all EFI_MEMORY_RUNTIME
      regions whose start addresses are not aligned to the OS page
      size to be mapped with executable permissions (i.e., on kernels
      compiled with 64 KB pages). However, since these mappings are
      only active during the time that UEFI Runtime Services are being
      invoked, the window for abuse is rather small.

      Tested-by: Mark Salter <msalter@xxxxxxxxxx>
      Tested-by: Mark Rutland <mark.rutland@xxxxxxx> [UEFI 2.4 only]
      Signed-off-by: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Signed-off-by: Matt Fleming <matt.fleming@xxxxxxxxx>
      Reviewed-by: Mark Salter <msalter@xxxxxxxxxx>
      Reviewed-by: Mark Rutland <mark.rutland@xxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # v4.0+
      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Leif Lindholm <leif.lindholm@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Mike Galbraith <efault@xxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1443218539-7610-3-git-send-email-matt@xxxxxxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit a5caa209ba9c29c6421292e7879d2387a2ef39c9
  Author: Matt Fleming <matt.fleming@xxxxxxxxx>
  Date:   Fri Sep 25 23:02:18 2015 +0100

      x86/efi: Fix boot crash by mapping EFI memmap entries bottom-up at 
runtime, instead of top-down

      Beginning with UEFI v2.5 EFI_PROPERTIES_TABLE was introduced
      that signals that the firmware PE/COFF loader supports splitting
      code and data sections of PE/COFF images into separate EFI
      memory map entries. This allows the kernel to map those regions
      with strict memory protections, e.g. EFI_MEMORY_RO for code,
      EFI_MEMORY_XP for data, etc.

      Unfortunately, an unwritten requirement of this new feature is
      that the regions need to be mapped with the same offsets
      relative to each other as observed in the EFI memory map. If
      this is not done crashes like this may occur,

        BUG: unable to handle kernel paging request at fffffffefe6086dd
        IP: [<fffffffefe6086dd>] 0xfffffffefe6086dd
        Call Trace:
         [<ffffffff8104c90e>] efi_call+0x7e/0x100
         [<ffffffff81602091>] ? virt_efi_set_variable+0x61/0x90
         [<ffffffff8104c583>] efi_delete_dummy_variable+0x63/0x70
         [<ffffffff81f4e4aa>] efi_enter_virtual_mode+0x383/0x392
         [<ffffffff81f37e1b>] start_kernel+0x38a/0x417
         [<ffffffff81f37495>] x86_64_start_reservations+0x2a/0x2c
         [<ffffffff81f37582>] x86_64_start_kernel+0xeb/0xef

      Here 0xfffffffefe6086dd refers to an address the firmware
      expects to be mapped but which the OS never claimed was mapped.
      The issue is that included in these regions are relative
      addresses to other regions which were emitted by the firmware
      toolchain before the "splitting" of sections occurred at
      runtime.

      Needless to say, we don't satisfy this unwritten requirement on
      x86_64 and instead map the EFI memory map entries in reverse
      order. The above crash is almost certainly triggerable with any
      kernel newer than v3.13 because that's when we rewrote the EFI
      runtime region mapping code, in commit d2f7cbe7b26a ("x86/efi:
      Runtime services virtual mapping"). For kernel versions before
      v3.13 things may work by pure luck depending on the
      fragmentation of the kernel virtual address space at the time we
      map the EFI regions.

      Instead of mapping the EFI memory map entries in reverse order,
      where entry N has a higher virtual address than entry N+1, map
      them in the same order as they appear in the EFI memory map to
      preserve this relative offset between regions.

      This patch has been kept as small as possible with the intention
      that it should be applied aggressively to stable and
      distribution kernels. It is very much a bugfix rather than
      support for a new feature, since when EFI_PROPERTIES_TABLE is
      enabled we must map things as outlined above to even boot - we
      have no way of asking the firmware not to split the code/data
      regions.

      In fact, this patch doesn't even make use of the more strict
      memory protections available in UEFI v2.5. That will come later.

      Suggested-by: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Reported-by: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Signed-off-by: Matt Fleming <matt.fleming@xxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: Chun-Yi <jlee@xxxxxxxx>
      Cc: Dave Young <dyoung@xxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: James Bottomley <JBottomley@xxxxxxxx>
      Cc: Lee, Chun-Yi <jlee@xxxxxxxx>
      Cc: Leif Lindholm <leif.lindholm@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Matthew Garrett <mjg59@xxxxxxxxxxxxx>
      Cc: Mike Galbraith <efault@xxxxxx>
      Cc: Peter Jones <pjones@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1443218539-7610-2-git-send-email-matt@xxxxxxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 95c2b17534654829db428f11bcf4297c059a2a7e
  Author: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
  Date:   Sat Sep 26 12:23:56 2015 +0100

      genirq: Fix race in register_irq_proc()

      Per-IRQ directories in procfs are created only when a handler is first
      added to the irqdesc, not when the irqdesc is created.  In the case of
      a shared IRQ, multiple tasks can race to create a directory.  This
      race condition seems to have been present forever, but is easier to
      hit with async probing.

      Signed-off-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
      Link: http://lkml.kernel.org/r/1443266636.2004.2.camel@xxxxxxxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 0bf6cd5b9531bcc29c0a5e504b6ce2984c6fd8d8
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Sun Sep 27 21:01:51 2015 +0200

      blk-mq: factor out a helper to iterate all tags for a request_queue

      And replace the blk_mq_tag_busy_iter with it - the driver use has been
      replaced with a new helper a while ago, and internal to the block we
      only need the new version.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit f4829a9b7a61e159367350008a608b062c4f6840
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Sun Sep 27 21:01:50 2015 +0200

      blk-mq: fix racy updates of rq->errors

      blk_mq_complete_request may be a no-op if the request has already
      been completed by others means (e.g. a timeout or cancellation), but
      currently drivers have to set rq->errors before calling
      blk_mq_complete_request, which might leave us with the wrong error value.

      Add an error parameter to blk_mq_complete_request so that we can
      defer setting rq->errors until we known we won the race to complete the
      request.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Reviewed-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 5b235dc2647e4977b17b5c41d959d0f455831c3f
  Author: Alban Bedel <albeu@xxxxxxx>
  Date:   Fri Sep 4 14:29:16 2015 +0200

      MIPS: Fix the build on jz4740 after removing the custom gpio.h

      Somehow the wrong version of the patch to remove the use of custom
      gpio.h on mips has been merged. This patch add the missing fixes for a
      build error on jz4740 because linux/gpio.h doesn't provide any machine
      specfics definitions anymore.

      Signed-off-by: Alban Bedel <albeu@xxxxxxx>
      Cc: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: Lars-Peter Clausen <lars@xxxxxxxxxx>
      Cc: Brian Norris <computersforpeace@xxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/11089/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 95c632f4e4e6365a20397f4fd04dcf27aab02958
  Merge: 4ac86a6 7ba7805
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Thu Oct 1 09:02:11 2015 +0200

      Merge remote-tracking branch 'tglx/x86/urgent' into x86/urgent

      Pick up the WCHAN fixes from Thomas.

      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit cda374253f862bd0f43edda6935a48294fe8ed3e
  Author: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
  Date:   Thu Oct 1 14:21:40 2015 +0900

      drm/exynos: Staticize local function in exynos_drm_gem.c

      The exynos_drm_gem_mmap_buffer() is not used outside so make it static.

      Signed-off-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 3c79fb8c9424a24bf812b9a8cb4f19b781052b0b
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 30 18:40:54 2015 -0300

      drm/exynos: fimd: actually disable dp clock

      fimd_dp_clock_enable() was setting the always to enabled,
      this patch fix this to actually use the value that is set to 'val'.

      Reported-by: Emilio López <emilio.lopez@xxxxxxxxxxxxxxx>
      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 148ba09c465cc54d8e68f041bf9a30332b315c39
  Author: Inki Dae <inki.dae@xxxxxxxxxxx>
  Date:   Wed Sep 30 20:12:29 2015 +0900

      drm/exynos: dp: remove suspend/resume functions

      This patch removes unnecessary pm suspend/resume functions.

      All kms sub drivers will be controlled by top of Exynos drm driver
      and connector dpms so these sub drivers shouldn't have their own
      pm interfaces.

      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>
      Reviewed-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>

  commit 8d0d94015e96b8853c4f7f06eac3f269e1b3d866
  Author: Fabiano Fidêncio <fidencio@xxxxxxxxxx>
  Date:   Thu Sep 24 15:18:34 2015 +0200

      drm/qxl: recreate the primary surface when the bo is not primary

      When disabling/enabling a crtc the primary area must be updated
      independently of which crtc has been disabled/enabled.

      Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1264735

      Signed-off-by: Fabiano Fidêncio <fidencio@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit 7b09a1bba4091a9d208481d7831682a1f3061ab9
  Author: Robert Jarzmik <robert.jarzmik@xxxxxxx>
  Date:   Wed Sep 30 19:42:15 2015 +0200

      dmaengine: pxa_dma: fix residue corner case

      A very tiny temporal window exists in the residue calculation where :
       - upon entering residue calculation, the transfer is ongoing
       - when reading the current transfer pointer, it just changed to
         the "finisher/linker" descriptor

      In this case, the residue returned is the whole transfer length instead
      of 0. Fix it.

      This appears almost in one extreme case, where the driver is used
      by older clients which inquire for residue in interrupt context, such
      as the smsc91x ethernet driver, in a tight loop :
        interrupt_handler()
          dmaengine_submit()
          do {
            dmaengine_tx_status()
          } while (residue > 0 || status != DMA_ERROR)

      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit e87ffbdf06971a80ad2a11217200bdd936195af1
  Author: Robert Jarzmik <robert.jarzmik@xxxxxxx>
  Date:   Wed Sep 30 19:42:14 2015 +0200

      dmaengine: pxa_dma: fix the no-requestor case

      A very small number of devices don't use the flow control offered by
      requestor lines. In these specific cases, the pxa dma driver should be
      aware of that and not try to use a requestor line.

      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit aa3ee5f569fda51e54c224c0df60e187e9c5e582
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Sat Sep 26 17:15:47 2015 +0800

      dmaengine: zxdma: Fix off-by-one for testing valid pchan request

      The valid pchan range is 0 ~ d->dma_requests - 1.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Reviewed-by: Jun Nie <jun.nie@xxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 0be2136b67067617b36c70e525d7534108361e36
  Author: Ludovic Desroches <ludovic.desroches@xxxxxxxxx>
  Date:   Tue Sep 15 15:39:11 2015 +0200

      dmaengine: at_xdmac: clean used descriptor

      When putting back a descriptor to the free descs list, some fields are
      not set to 0, it can cause bugs if someone uses it without having this
      in mind.
      Descriptor are not put back one by one so it is easier to clean
      descriptors when we request them.

      Signed-off-by: Ludovic Desroches <ludovic.desroches@xxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx #4.2
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit a1cf09031e641d3cceaca4a4dd20ef6a785bc9b3
  Author: Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 15 15:36:00 2015 +0200

      dmaengine: at_xdmac: change block increment addressing mode

      The addressing mode we were using was not only incrementing the address at
      each microblock, but also at each data boundary, which was severely 
slowing
      the transfer, without any benefit since we were not using the data stride.

      Switch to the micro block increment only in order to get back to an
      acceptable performance level.

      Signed-off-by: Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Ludovic Desroches <ludovic.desroches@xxxxxxxxx>
      Fixes: 6007ccb57744 ("dmaengine: xdmac: Add interleaved transfer support")
      Cc: stable@xxxxxxxxxxxxxxx #4.2
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 7ba78053aacb89998a052843e3c56983c31d57f0
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Wed Sep 30 08:38:23 2015 +0000

      x86/process: Unify 32bit and 64bit implementations of get_wchan()

      The stack layout and the functionality is identical. Use the 64bit
      version for all of x86.

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Reviewed-by: Borislav Petkov <bp@xxxxxxxxx>
      Reviewed-by: Dmitry Vyukov <dvyukov@xxxxxxxxxx>
      Cc: Andrey Ryabinin <ryabinin.a.a@xxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Andrey Konovalov <andreyknvl@xxxxxxxxxx>
      Cc: Kostya Serebryany <kcc@xxxxxxxxxx>
      Cc: Alexander Potapenko <glider@xxxxxxxxxx>
      Cc: kasan-dev <kasan-dev@xxxxxxxxxxxxxxxx>
      Cc: Denys Vlasenko <dvlasenk@xxxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Cc: Wolfram Gloger <wmglo@xxxxxxxxxxxxxxxxxxxxxxxx>
      Link: http://lkml.kernel.org/r/20150930083302.779694618@xxxxxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit eddd3826a1a0190e5235703d1e666affa4d13b96
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Wed Sep 30 08:38:22 2015 +0000

      x86/process: Add proper bound checks in 64bit get_wchan()

      Dmitry Vyukov reported the following using trinity and the memory
      error detector AddressSanitizer
      
(https://code.google.com/p/address-sanitizer/wiki/AddressSanitizerForKernel).

      [ 124.575597] ERROR: AddressSanitizer: heap-buffer-overflow on
      address ffff88002e280000
      [ 124.576801] ffff88002e280000 is located 131938492886538 bytes to
      the left of 28857600-byte region [ffffffff81282e0a, ffffffff82e0830a)
      [ 124.578633] Accessed by thread T10915:
      [ 124.579295] inlined in describe_heap_address
      ./arch/x86/mm/asan/report.c:164
      [ 124.579295] #0 ffffffff810dd277 in asan_report_error
      ./arch/x86/mm/asan/report.c:278
      [ 124.580137] #1 ffffffff810dc6a0 in asan_check_region
      ./arch/x86/mm/asan/asan.c:37
      [ 124.581050] #2 ffffffff810dd423 in __tsan_read8 ??:0
      [ 124.581893] #3 ffffffff8107c093 in get_wchan
      ./arch/x86/kernel/process_64.c:444

      The address checks in the 64bit implementation of get_wchan() are
      wrong in several ways:

       - The lower bound of the stack is not the start of the stack
         page. It's the start of the stack page plus sizeof (struct
         thread_info)

       - The upper bound must be:

             top_of_stack - TOP_OF_KERNEL_STACK_PADDING - 2 * sizeof(unsigned 
long).

         The 2 * sizeof(unsigned long) is required because the stack pointer
         points at the frame pointer. The layout on the stack is: ... IP FP
         ... IP FP. So we need to make sure that both IP and FP are in the
         bounds.

      Fix the bound checks and get rid of the mix of numeric constants, u64
      and unsigned long. Making all unsigned long allows us to use the same
      function for 32bit as well.

      Use READ_ONCE() when accessing the stack. This does not prevent a
      concurrent wakeup of the task and the stack changing, but at least it
      avoids TOCTOU.

      Also check task state at the end of the loop. Again that does not
      prevent concurrent changes, but it avoids walking for nothing.

      Add proper comments while at it.

      Reported-by: Dmitry Vyukov <dvyukov@xxxxxxxxxx>
      Reported-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Based-on-patch-from: Wolfram Gloger <wmglo@xxxxxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Reviewed-by: Borislav Petkov <bp@xxxxxxxxx>
      Reviewed-by: Dmitry Vyukov <dvyukov@xxxxxxxxxx>
      Cc: Andrey Ryabinin <ryabinin.a.a@xxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Andrey Konovalov <andreyknvl@xxxxxxxxxx>
      Cc: Kostya Serebryany <kcc@xxxxxxxxxx>
      Cc: Alexander Potapenko <glider@xxxxxxxxxx>
      Cc: kasan-dev <kasan-dev@xxxxxxxxxxxxxxxx>
      Cc: Denys Vlasenko <dvlasenk@xxxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: Wolfram Gloger <wmglo@xxxxxxxxxxxxxxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Link: http://lkml.kernel.org/r/20150930083302.694788319@xxxxxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit dd36d7393d6310b0c1adefb22fba79c3cf8a577c
  Merge: d4e842b 3cef072
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 30 13:13:55 2015 -0400

      Merge git://www.linux-watchdog.org/linux-watchdog

      Pull watchdog fixes from Wim Van Sebroeck:
       "This fixes:

         - module autoload for 3 OF platform drivers
         - poweroff behaviour on bcm2835 watchdog device
         - I2C dependencies for iTCO_wdt.c"

      * git://www.linux-watchdog.org/linux-watchdog:
        watchdog: iTCO: Fix dependencies on I2C
        watchdog: bcm2835: Fix poweroff behaviour
        watchdog: Fix module autoload for OF platform driver

  commit d4e842be2b697eb61c8863fe4b080bf0688198a2
  Merge: 70c8a00 f491e70
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 30 13:11:42 2015 -0400

      Merge tag 'hwmon-for-linus-v4.3-rc4' of 
git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging

      Pull hwmin fixes from Guenter Roeck:
       "Fix module autoload for various drivers"

      * tag 'hwmon-for-linus-v4.3-rc4' of 
git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (pwm-fan) Fix module autoload for OF platform driver
        hwmon: (gpio-fan) Fix module autoload for OF platform driver
        hwmon: (abx500) Fix module autoload for OF platform driver

  commit 70c8a00a09076ca2683ef24356fad2e55f93a427
  Merge: b9a5322 7c4f1c6
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 30 13:01:35 2015 -0400

      Merge branch 'core-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull RCU fixes from Ingo Molnar:
       "Two RCU fixes:

         - work around bug with recent GCC versions.

         - fix false positive lockdep splat"

      * 'core-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        rcu: Suppress lockdep false positive for rcp->exp_funnel_mutex
        rcu: Change _wait_rcu_gp() to work around GCC bug 67055

  commit b9a532277938798b53178d5a66af6e2915cb27cf
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 30 12:48:40 2015 -0400

      Initialize msg/shm IPC objects before doing ipc_addid()

      As reported by Dmitry Vyukov, we really shouldn't do ipc_addid() before
      having initialized the IPC object state.  Yes, we initialize the IPC
      object in a locked state, but with all the lockless RCU lookup work,
      that IPC object lock no longer means that the state cannot be seen.

      We already did this for the IPC semaphore code (see commit e8577d1f0329:
      "ipc/sem.c: fully initialize sem_array before making it visible") but we
      clearly forgot about msg and shm.

      Reported-by: Dmitry Vyukov <dvyukov@xxxxxxxxxx>
      Cc: Manfred Spraul <manfred@xxxxxxxxxxxxxxxx>
      Cc: Davidlohr Bueso <dbueso@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3e4e3805643445b71b7ee1b84892e43d004e24e2
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Sep 10 15:00:39 2015 +0200

      drm/amdgpu: only print meaningful VM faults

      Port of radeon commit 9b7d786b900baf7c0d1a7e211570aef1cb27590f.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 2392eec65c493c3f49a1f23f4af713e3c68cf6f5
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Tue Sep 29 10:35:45 2015 -0400

      drm/amdgpu/cgs: remove import_gpu_mem

      It was added for completeness, but we don't have any users
      for it yet.  Daniel noted that it may be racy. Remove it.

      Change-Id: I5f5546f8911a4f294008a62dc86a73f3face38d1
      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 7a63076d9a31a6c2073da45021eeb4f89d2a8b56
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Wed Aug 5 15:42:38 2015 -0700

      MIPS: CPS: #ifdef on CONFIG_MIPS_MT_SMP rather than CONFIG_MIPS_MT

      The CONFIG_MIPS_MT symbol can be selected by CONFIG_MIPS_VPE_LOADER in
      addition to CONFIG_MIPS_MT_SMP. We only want MT code in the CPS SMP boot
      vector if we're using MT for SMP. Thus switch the config symbol we ifdef
      against to CONFIG_MIPS_MT_SMP.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # 3.16+
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10867/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit a5b0f6db0e6cf6224e50f6585e9c8f0c2d38a8f8
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Wed Aug 5 15:42:37 2015 -0700

      MIPS: CPS: Don't include MT code in non-MT kernels.

      The MT-specific code in mips_cps_boot_vpes can safely be omitted from
      kernels which don't support MT, with the default VPE==0 case being used
      as it would be after the has_mt (Config3.MT) check failed at runtime.
      Discarding the code entirely will save us a few bytes & allow cleaner
      handling of MT ASE instructions by later patches.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # 3.16+
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10866/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 1e5fb282f8eda889776ee83f9214d5df9edaa26d
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Wed Aug 5 15:42:36 2015 -0700

      MIPS: CPS: Stop dangling delay slot from has_mt.

      The has_mt macro ended with a branch, leaving its callers with a delay
      slot that would be executed if Config3.MT is not set. However it would
      not be executed if Config3 (or earlier Config registers) don't exist
      which makes it somewhat inconsistent at best. Fill the delay slot in the
      macro & fix the mips_cps_boot_vpes caller appropriately.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # 3.16+
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10865/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 53960059d56ecef67d4ddd546731623641a3d2d1
  Author: James Hogan <james.hogan@xxxxxxxxxx>
  Date:   Fri Mar 27 08:33:43 2015 +0000

      MIPS: dma-default: Fix 32-bit fall back to GFP_DMA

      If there is a DMA zone (usually 24bit = 16MB I believe), but no DMA32
      zone, as is the case for some 32-bit kernels, then massage_gfp_flags()
      will cause DMA memory allocated for devices with a 32..63-bit
      coherent_dma_mask to fall back to using __GFP_DMA, even though there may
      only be 32-bits of physical address available anyway.

      Correct that case to compare against a mask the size of phys_addr_t
      instead of always using a 64-bit mask.

      Signed-off-by: James Hogan <james.hogan@xxxxxxxxxx>
      Fixes: a2e715a86c6d ("MIPS: DMA: Fix computation of DMA flags from 
device's coherent_dma_mask.")
      Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: <stable@xxxxxxxxxxxxxxx> # 2.6.36+
      Patchwork: https://patchwork.linux-mips.org/patch/9610/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit b94be972538f4523f09243af7c726158f0bfae33
  Author: Egbert Eich <eich@xxxxxxx>
  Date:   Wed Sep 23 16:13:01 2015 +0200

      drm/i915: Call non-locking version of drm_kms_helper_poll_enable(), v2

      drm_kms_helper_poll_enable() is called from a context in
      intel_hpd_irq_storm_disable() where the the mode_config mutex is
      already locked.
      When this function was converted to lock this mutex in
      commit 8c4ccc4ab6f6 ("drm/probe-helper: Grab mode_config.mutex
      in poll_init/enable") a deadlock occurred.
      Call the newly implemented non-locking version of this function.

      Changes since v1:
      - use function name suffix '_locked' for the function that
        is to be called from a locked context.

      Signed-off-by: Egbert Eich <eich@xxxxxxx>
      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 4ad640e99e5e5514d623210bc937e665ffd8f43f
  Author: Egbert Eich <eich@xxxxxxx>
  Date:   Wed Sep 23 16:13:00 2015 +0200

      drm: Add a non-locking version of drm_kms_helper_poll_enable(), v2

      drm_kms_helper_poll_enable() was converted to lock the mode_config
      mutex in commit 8c4ccc4ab6f64e859d4ff8d7c02c2ed2e956e07f
      ("drm/probe-helper: Grab mode_config.mutex in poll_init/enable").

      This disregarded the cases where this function is called from a context
      where this mutex is already locked.

      Add a non-locking version as well.

      Changes since v1:
      - use function name suffix '_locked' for the function that
        is to be called from a locked context.

      Signed-off-by: Egbert Eich <eich@xxxxxxx>
      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 031277d4d33d33f0174fbb569ca8f68238175617
  Author: Chaotian Jing <chaotian.jing@xxxxxxxxxxxx>
  Date:   Wed Sep 30 17:37:18 2015 +0800

      mmc: core: fix dead loop of mmc_retune

      When get a CRC error, start the mmc_retune, it will issue CMD19/CMD21
      to do tune, assume there were 10 clock phase need to try, phase 0 to
      phase 6 is ok, phase 7 to phase 9 is NG, we try it from 0 to 9, so
      the last CMD19/CMD21 will get CRC error, host->need_retune was set and
      cause mmc_retune was called, then dead loop of mmc_retune

      Signed-off-by: Chaotian Jing <chaotian.jing@xxxxxxxxxxxx>
      Acked-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Fixes: bd11e8bd03ca ("mmc: core: Flag re-tuning is needed on CRC errors")
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 575f9c8604e0b4c7b36fb41fc5fd280a3c336906
  Author: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
  Date:   Tue Sep 29 07:49:56 2015 -0700

      drm/vmwgfx: Fix a command submission hang regression

      When we're out of command buffer space, we turn on the command buffer
      processed irq without re-checking for finished command buffers afterwards.
      This might lead to a missed irq and the command submission process waiting
      forever for space.

      Fix this by rerunning the command buffer submission handler whenever we're
      out of command space. This ensures both that we don't needlessly turn on
      the irq, and that if we decide to turn on the irq, we recheck for finished
      command buffers before going to sleep.

      Reported-and-tested-by: Bryan Li <ldexin@xxxxxxxxxx>
      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
      Reviewed-by: Sinclair Yeh <syeh@xxxxxxxxxx>

  commit 96fc7a9cee671f10e14aaca44833696a71f1ebdb
  Author: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
  Date:   Wed Sep 30 14:24:31 2015 +0200

      MIPS: Wire up userfaultfd and membarrier syscalls.

      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 6bea0f6d1c47b07be88dfd93f013ae05fcb3d8bf
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Mon Sep 28 18:57:03 2015 +0300

      dmaengine: dw: properly read DWC_PARAMS register

      In case we have less than maximum allowed channels (8) and 
autoconfiguration is
      enabled the DWC_PARAMS read is wrong because it uses different arithmetic 
to
      what is needed for channel priority setup.

      Re-do the caclulations properly. This now works on AVR32 board well.

      Fixes: fed2574b3c9f (dw_dmac: introduce software emulation of LLP 
transfers)
      Cc: yitian.bu@xxxxxxxxxxxxxx
      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 10d97d5869f9a50eb3142c7ee562ecc5b5b33f5b
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 29 17:59:19 2015 -0300

      drm/exynos: remove unused mode_fixup() code

      CRTC's mode_fixup() isn't used anymore in exynos, remove it.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 208d7ee3c89e5e94627aa33331b15dd4df814707
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 29 17:59:18 2015 -0300

      drm/exynos: remove decon_mode_fixup()

      The only thing mode_fixup was doing was set the adjusted_mode->vrefresh to
      60, but it already has the value of 60 when the decon_mode_fixup() is
      called. That means this call is actually pointless and can be removed.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 50bbfbffa5c894def440ce8157dfe53e60960d35
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 29 17:59:17 2015 -0300

      drm/exynos: remove fimd_mode_fixup()

      The only thing mode_fixup was doing was set the adjusted_mode->vrefresh to
      60, but it already has the value of 60 when the fimd_mode_fixup() is
      called. That means this call is actually pointless and can be removed.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit ee08b59d47d859ed0a11ab331a3fbc5ab3b56100
  Author: Rameshwar Prasad Sahu <rsahu@xxxxxxx>
  Date:   Wed Sep 16 13:33:23 2015 +0530

      dmaengine: xgene-dma: Fix overwritting DMA tx ring

      This patch fixes an over flow issue with the TX ring descriptor. Each
      descriptor is 32B in size and an operation requires 2 of these
      descriptors.

      Signed-off-by: Rameshwar Prasad Sahu <rsahu@xxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 214fc4e423ff38b41b60db2209cf49b4e9a7209b
  Author: Peter Ujfalusi <peter.ujfalusi@xxxxxx>
  Date:   Thu Sep 24 12:03:35 2015 +0300

      dmaengine: fix balance of privatecnt

      dma_release_channel() decrements privatecnt counter and almost all 
dma_get*
      function increments it with the exception of dma_get_slave_channel().
      In most cases this does not cause issue since normally the channel is not
      requested and released, but if a driver requests DMA channel via
      dma_get_slave_channel() and releases the channel the privatecnt will be
      unbalanced and this will prevent for example getting channel for memcpy.

      Signed-off-by: Peter Ujfalusi <peter.ujfalusi@xxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 85a82038b2744f87cb297f93ddecd04a8c2979bd
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Thu Sep 24 12:14:15 2015 +0200

      drm/exynos: rotator: Clock control is unused if !PM

      Protect the rotator_clk_crtl() function with an #ifdef CONFIG_PM guard
      to avoid "defined but not used" warnings.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Reviewed-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 641a2fef39369c27df887e82cd63aee3de93f511
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Thu Sep 24 12:14:14 2015 +0200

      drm/exynos: fimc: Clock control is unused if !PM

      Protect the fimc_clk_ctrl() function with an #ifdef CONFIG_PM guard to
      avoid "defined but not used" warnings.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Reviewed-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 7082947eff3b1ddbb5d320331c846a5a2fc88261
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Thu Sep 24 12:14:13 2015 +0200

      drm/exynos: Suspend/resume is unused if !PM

      Protect the suspend and resume callbacks with an #ifdef CONFIG_PM_SLEEP
      guard to avoid "defined but not used" warnings.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 48cf53f4343ae12ddc1c60dbe116161ecf7a2885
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Jul 28 17:53:23 2015 +0900

      drm/exynos: create a fake mmap offset with gem creation

      Don't create a fake mmap offset in exynos_drm_gem_dumb_map_offset. If
      not, it will call drm_gem_create_mmap_offset whenever user requests
      DRM_IOCTL_MODE_MAP_DUMB ioctl.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 8755556fbbdd1a6af21a3c4d9ce8f451e999e457
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Fri Sep 25 18:10:32 2015 +0900

      drm/exynos: remove call to drm_gem_free_mmap_offset()

      The drm_gem_object_release() function already performs this cleanup,
      so there is no reason to do it explicitly.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit b9e71911f34616276399da3dc1abc47797be2396
  Author: Daniel Kurtz <djkurtz@xxxxxxxxxxxx>
  Date:   Wed Sep 9 12:55:25 2015 -0300

      drm/exynos: Remove useless EXPORT_SYMBOL_GPLs

      All the user of these functions are inside exynos-drm driver and
      you don't need to export the symbols for that case.

      Signed-off-by: Daniel Kurtz <djkurtz@xxxxxxxxxxxx>
      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit b4cfd4ddfb555c8cda7b0aa55c0e37522f8e01e4
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Wed Sep 16 14:29:35 2015 +0900

      drm/exynos: cleanup line feed in exynos_drm_gem_get_ioctl

      The beginning of statement in function is next line of a brace.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 333e8e58b0bed137e940ac92c2af3f3aa4603504
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Wed Sep 16 14:29:34 2015 +0900

      drm/exynos: cleanup function calling written twice

      By if statment, some function callings are written twice. It needs
      several line feed by indentation in if statment. Make to one function
      calling from outside if statment.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit b319dc6a61518cc02ae21afb383901236009aab1
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Wed Sep 16 14:29:33 2015 +0900

      drm/exynos: staticize exynos_drm_gem_init()

      The exynos_drm_gem_init() is used only in exynos_drm_gem.c file. Make it
      static and don't export it.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 0269b1a17f8f887c02ae37affef884e1ffda3df6
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Wed Sep 16 14:29:32 2015 +0900

      drm/exynos: remove unnecessary NULL assignment

      They will be freed right or was freed already, so NULL assignment is
      unnecessary.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 7c93537a47e15e04064158ccdbe28f88ee61170c
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Wed Sep 16 14:14:54 2015 +0900

      drm/exynos: fix missed calling of drm_prime_gem_destroy()

      When obj->import_attach is existed, code calling drm_prime_gem_destroy()
      was removed from commit 67e93c808b48 ("drm/exynos: stop copying sg
      table"), and it's a fault.

      The drm_prime_gem_destroy() is cleanup function which GEM drivers need
      to call when they use drm_gem_prime_import() to import dma-bufs, so
      exynos-drm driver using drm_gem_prime_import() needs calling
      drm_prime_gem_destroy().

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 5e0fb1f9eb754eed8432392bfdc100ef295676cd
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Wed Sep 16 14:16:45 2015 +0900

      drm/exynos: fix layering violation of address

      There is no guarantee that DMA addresses are the same as physical
      addresses, but dma_to_pfn() knows how to convert a dma_addr_t to a PFN
      which can then be converted to a struct page.

      Suggested-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 4ac86a6dcec1c3878de9747bf5a2aa4455be69e3
  Author: Andrey Ryabinin <ryabinin.a.a@xxxxxxxxx>
  Date:   Tue Sep 29 19:40:14 2015 +0300

      x86, efi, kasan: Fix build failure on !KASAN && KMEMCHECK=y kernels

      With KMEMCHECK=y, KASAN=n we get this build failure:

        arch/x86/platform/efi/efi.c:673:3:    error: implicit declaration of 
function â??memcpyâ?? [-Werror=implicit-function-declaration]
        arch/x86/platform/efi/efi_64.c:139:2: error: implicit declaration of 
function â??memcpyâ?? [-Werror=implicit-function-declaration]
        arch/x86/include/asm/desc.h:121:2:    error: implicit declaration of 
function â??memcpyâ?? [-Werror=implicit-function-declaration]

      Don't #undef memcpy if KASAN=n.

      Reported-by: Ingo Molnar <mingo@xxxxxxxxxx>
      Reported-by: Sedat Dilek <sedat.dilek@xxxxxxxxx>
      Signed-off-by: Andrey Ryabinin <ryabinin.a.a@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Matt Fleming <matt.fleming@xxxxxxxxx>
      Cc: Mike Galbraith <efault@xxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Fixes: 769a8089c1fd ("x86, efi, kasan: #undef memset/memcpy/memmove per 
arch")
      Link: 
http://lkml.kernel.org/r/1443544814-20122-1-git-send-email-ryabinin.a.a@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit ccf79c238f1a06a801b4c4449b9bc8a42be2c7bc
  Merge: 1e03474 9ffecb1
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Wed Sep 30 09:29:27 2015 +0200

      Merge tag 'v4.3-rc3' into x86/urgent, before applying dependent fix

      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 40482e64b0b84388561b00b880eeca7000f72d38
  Author: Emilio López <emilio@xxxxxxxxxxxxx>
  Date:   Sun Sep 13 17:15:53 2015 -0300

      dmaengine: sun4i: fix unsafe list iteration

      Currently, sun4i_dma_free_contract iterates over lists and frees memory
      as it goes through them, causing reads to recently freed memory to
      be performed. Fix this by using the safe version of the iterator, so
      freed memory is not referenced at all.

      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Emilio López <emilio@xxxxxxxxxxxxx>
      Acked-by: Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 1e034743e918d195d339af340ae933727c072bce
  Author: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>
  Date:   Wed Sep 23 12:02:57 2015 +0200

      x86/hyperv: Fix the build in the !CONFIG_KEXEC_CORE case

      Recent changes in the Hyper-V driver:

        b4370df2b1f5 ("Drivers: hv: vmbus: add special crash handler")

      broke the build when CONFIG_KEXEC_CORE is not set:

        arch/x86/built-in.o: In function `hv_machine_crash_shutdown':
        arch/x86/kernel/cpu/mshyperv.c:112: undefined reference to 
`native_machine_crash_shutdown'

      Decorate all kexec related code with #ifdef CONFIG_KEXEC_CORE.

      Reported-by: Jim Davis <jim.epost@xxxxxxxxx>
      Reported-by: Stephen Hemminger <stephen@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: devel@xxxxxxxxxxxxxxxxxxxxxx
      Cc: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
      Cc: Haiyang Zhang <haiyangz@xxxxxxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1443002577-25370-1-git-send-email-vkuznets@xxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit b84f78782052ee4516903e5d0566a5eee365b771
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 29 19:07:07 2015 -0700

      net: Initialize flow flags in input path

      The fib_table_lookup tracepoint found 2 places where the flowi4_flags is
      not initialized.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 57a47532c4312159935c98b7f1cf0e62296b9171
  Author: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 29 14:17:54 2015 -0400

      net: dsa: fix preparation of a port STP update

      Because of the default 0 value of ret in dsa_slave_port_attr_set, a
      driver may return -EOPNOTSUPP from the commit phase of a STP state,
      which triggers a WARN() from switchdev.

      This happened on a 6185 switch which does not support hardware bridging.

      Fixes: 3563606258cf ("switchdev: convert STP update to switchdev attr 
set")
      Reported-by: Andrew Lunn <andrew@xxxxxxx>
      Signed-off-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9ae6d4935e3df35a23bbbe531c6b9ff314e7fd0f
  Author: Thomas Huth <thuth@xxxxxxxxxx>
  Date:   Tue Sep 29 17:45:28 2015 +0200

      testptp: Silence compiler warnings on ppc64

      When compiling Documentation/ptp/testptp.c the following compiler
      warnings are printed out:

      Documentation/ptp/testptp.c: In function â??mainâ??:
      Documentation/ptp/testptp.c:367:11: warning: format â??%lldâ?? expects 
argument
          of type â??long long intâ??, but argument 3 has type â??__s64â?? 
[-Wformat=]
                 event.t.sec, event.t.nsec);
                 ^
      Documentation/ptp/testptp.c:505:5: warning: format â??%lldâ?? expects 
argument
          of type â??long long intâ??, but argument 2 has type â??__s64â?? 
[-Wformat=]
           (pct+2*i)->sec, (pct+2*i)->nsec);
           ^
      Documentation/ptp/testptp.c:507:5: warning: format â??%lldâ?? expects 
argument
          of type â??long long intâ??, but argument 2 has type â??__s64â?? 
[-Wformat=]
           (pct+2*i+1)->sec, (pct+2*i+1)->nsec);
           ^
      Documentation/ptp/testptp.c:509:5: warning: format â??%lldâ?? expects 
argument
          of type â??long long intâ??, but argument 2 has type â??__s64â?? 
[-Wformat=]
           (pct+2*i+2)->sec, (pct+2*i+2)->nsec);

      This happens because __s64 is by default defined as "long" on ppc64,
      not as "long long". However, to fix these warnings, it's possible to
      define the __SANE_USERSPACE_TYPES__ so that __s64 gets defined to
      "long long" on ppc64, too.

      Signed-off-by: Thomas Huth <thuth@xxxxxxxxxx>
      Acked-by: Richard Cochran <richardcochran@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 23860f103b53e764a3cbbf615d08f88362a28295
  Author: Robb Manes <rmanes@xxxxxxxxxx>
  Date:   Tue Sep 29 11:03:37 2015 -0400

      net/mlx4: Handle return codes in mlx4_qp_attach_common

      Both new_steering_entry() and existing_steering_entry() return values
      based on their success or failure, but currently they fall through
      silently.  This can make troubleshooting difficult, as we were unable
      to tell which one of these two functions returned errors or
      specifically what code was returned.  This patch remedies that
      situation by passing the return codes to err, which is returned by
      mlx4_qp_attach_common() itself.

      This also addresses a leak in the call to mlx4_bitmap_free() as well.

      Signed-off-by: Robb Manes <rmanes@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c047a1f918af75e572a19ba0581c3e3e202ed698
  Author: Andrew Lunn <andrew@xxxxxxx>
  Date:   Tue Sep 29 01:50:56 2015 +0200

      dsa: mv88e6xxx: Enable forwarding for unknown to the CPU port

      Frames destined to an unknown address must be forwarded to the CPU
      port. Otherwise incoming ARP, dhcp leases, etc, do not work.

      Signed-off-by: Andrew Lunn <andrew@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 31b33dfb0a144469dd805514c9e63f4993729a48
  Author: Pravin B Shelar <pshelar@xxxxxxxxxx>
  Date:   Mon Sep 28 17:24:25 2015 -0700

      skbuff: Fix skb checksum partial check.

      Earlier patch 6ae459bda tried to detect void ckecksum partial
      skb by comparing pull length to checksum offset. But it does
      not work for all cases since checksum-offset depends on
      updates to skb->data.

      Following patch fixes it by validating checksum start offset
      after skb-data pointer is updated. Negative value of checksum
      offset start means there is no need to checksum.

      Fixes: 6ae459bda ("skbuff: Fix skb checksum flag on skb pull")
      Reported-by: Andrew Vagin <avagin@xxxxxxxx>
      Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 218c1f76b8b25d6dc9d01443f071cb618e206b0c
  Author: Dmitry Vyukov <dvyukov@xxxxxxxxxx>
  Date:   Tue Sep 29 15:54:58 2015 -0700

      Input: psmouse - fix data race in __ps2_command

      The data race happens on ps2dev->cmdcnt and ps2dev->cmdbuf contents.
      __ps2_command reads that data concurrently with the interrupt handler. As
      the result, for example, if a response arrives just after the timeout,
      __ps2_command can copy out garbage from ps2dev->cmdbuf but then see that
      ps2dev->cmdcnt is 0 and return success.

      Stop the interrupt handler with serio_pause_rx() before reading the
      results.

      The data race was found with KernelThreadSanitizer (KTSAN).

      Signed-off-by: Dmitry Vyukov <dvyukov@xxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 741a11d9e4103a8e1c590ef1280143fe654e4e33
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Sep 28 10:12:13 2015 -0700

      net: ipv6: Add RT6_LOOKUP_F_IFACE flag if oif is set

      Wolfgang reported that IPv6 stack is ignoring oif in output route lookups:

          With ipv6, ip -6 route get always returns the specific route.

          $ ip -6 r
          2001:db8:e2::1 dev enp2s0  proto kernel  metric 256
          2001:db8:e2::/64 dev enp2s0  metric 1024
          2001:db8:e3::1 dev enp3s0  proto kernel  metric 256
          2001:db8:e3::/64 dev enp3s0  metric 1024
          fe80::/64 dev enp3s0  proto kernel  metric 256
          default via 2001:db8:e3::255 dev enp3s0  metric 1024

          $ ip -6 r get 2001:db8:e2::100
          2001:db8:e2::100 from :: dev enp2s0  src 2001:db8:e3::1  metric 0
              cache

          $ ip -6 r get 2001:db8:e2::100 oif enp3s0
          2001:db8:e2::100 from :: dev enp2s0  src 2001:db8:e3::1  metric 0
              cache

      The stack does consider the oif but a mismatch in rt6_device_match is not
      considered fatal because RT6_LOOKUP_F_IFACE is not set in the flags.

      Cc: Wolfgang Nothdurft <netdev@xxxxxxxxxxxxx>
      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 75c261b51ba19f0791de608f0acfb94956f78c76
  Author: Alexander Stein <alexander.stein@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Sep 28 15:05:33 2015 +0200

      net sysfs: Print link speed as signed integer

      Otherwise 4294967295 (MBit/s) (-1) will be printed when there is no link.
      Documentation/ABI/testing/sysfs-class-net does not state if this shall be
      signed or unsigned.
      Also remove the now unused variable fmt_udec.

      Signed-off-by: Alexander Stein <alexander.stein@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4c52b1da538800a30f030eeb697366c23daf2ef3
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Mon Sep 28 10:49:48 2015 +0200

      bna: fix error handling

      Several functions can return negative value in case of error,
      so their return type should be fixed as well as type of variables
      to which this value is assigned.

      The problem has been detected using proposed semantic patch
      scripts/coccinelle/tests/assign_signed_to_unsigned.cocci [1].

      [1]: http://permalink.gmane.org/gmane.linux.kernel/2046107

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3504bb639ec793c181de6e33a205fc8ca6cf32bf
  Merge: 2103d6b 9f389e3
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Sep 29 13:47:08 2015 -0700

      Merge branch 'af_unix_MSG_PEEK'

      Aaron Conole says:

      ====================
      af_unix: return data from multiple SKBs on recv() with MSG_PEEK flag

      This patch set implements a bugfix for kernel.org bugzilla #12323, 
allowing
      MSG_PEEK to return all queued data on the unix domain socket, not just the
      data contained in a single SKB.

      This is the v3 version of this patch, which includes a suggested 
modification
      by Eric Dumazet to convert the unix_sk() conversion macro to a static 
inline
      function. These patches are independent and can be applied separately.

      This set was tested over a 24-hour period, utilizing a loop continually
      executing the bugzilla issue attached python code. It was instrumented 
with
      a pr_err_once() ([   13.798683] unix: went there at least one time).

      v2->v3:
       - Added Eric Dumazet's suggestion for #define to static inline
       - Fixed an issue calling unix_state_lock() with an invalid argument

      v3->v4:
       - Eliminated an XXX comment
       - Changed from goto unlock to explicit unix_state_unlock() and break
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9f389e35674f5b086edd70ed524ca0f287259725
  Author: Aaron Conole <aconole@xxxxxxxxxx>
  Date:   Sat Sep 26 18:50:43 2015 -0400

      af_unix: return data from multiple SKBs on recv() with MSG_PEEK flag

      AF_UNIX sockets now return multiple skbs from recv() when MSG_PEEK flag
      is set.

      This is referenced in kernel bugzilla #12323 @
      https://bugzilla.kernel.org/show_bug.cgi?id=12323

      As described both in the BZ and lkml thread @
      http://lkml.org/lkml/2008/1/8/444 calling recv() with MSG_PEEK on an
      AF_UNIX socket only reads a single skb, where the desired effect is
      to return as much skb data has been queued, until hitting the recv
      buffer size (whichever comes first).

      The modified MSG_PEEK path will now move to the next skb in the tree
      and jump to the again: label, rather than following the natural loop
      structure. This requires duplicating some of the loop head actions.

      This was tested using the python socketpair python code attached to
      the bugzilla issue.

      Signed-off-by: Aaron Conole <aconole@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4613012db1d911f80897f9446a49de817b2c4c47
  Author: Aaron Conole <aconole@xxxxxxxxxx>
  Date:   Sat Sep 26 18:50:42 2015 -0400

      af_unix: Convert the unix_sk macro to an inline function for type safety

      As suggested by Eric Dumazet this change replaces the
      #define with a static inline function to enjoy
      complaints by the compiler when misusing the API.

      Signed-off-by: Aaron Conole <aconole@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 74b3112e95073b351e3b0b9799795bc76f8415fa
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Tue Sep 29 13:53:30 2015 -0400

      drm/amdgpu:  Restore LCD backlight level on resume

      Instead of only enabling the backlight (which seems to set it to max
      brightness), just re-set the current backlight level, which also takes
      care of enabling the backlight if necessary.

      Port of radeon commit:
      drm/radeon: Restore LCD backlight level on resume (>= R5xx)

      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 4281f46ef839050d2ef60348f661eb463c21cc2e
  Author: Michel Dänzer <michel.daenzer@xxxxxxx>
  Date:   Mon Sep 28 18:16:31 2015 +0900

      drm/radeon: Restore LCD backlight level on resume (>= R5xx)

      Instead of only enabling the backlight (which seems to set it to max
      brightness), just re-set the current backlight level, which also takes
      care of enabling the backlight if necessary.

      Only the radeon_atom_encoder_dpms_dig part tested on a Kaveri laptop,
      the radeon_atom_encoder_dpms_avivo part is only compile tested.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Michel Dänzer <michel.daenzer@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 54313503f9a3c34a9e45aad7654976b7f50b9ae7
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Fri Sep 25 14:36:55 2015 +0300

      drm/amdgpu: signedness bug in amdgpu_cs_parser_init()

      The "i" variable should be signed or it leads to a crash in the error
      handling code.

      Fixes: 1d263474c441 ('drm/amdgpu: unwind properly in 
amdgpu_cs_parser_init()')
      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 60de074ba1e8f327db19bc33d8530131ac01695d
  Author: Akinobu Mita <akinobu.mita@xxxxxxxxx>
  Date:   Sun Sep 27 02:09:25 2015 +0900

      blk-mq: fix deadlock when reading cpu_list

      CPU hotplug handling for blk-mq (blk_mq_queue_reinit) acquires
      all_q_mutex in blk_mq_queue_reinit_notify() and then removes sysfs
      entries by blk_mq_sysfs_unregister().  Removing sysfs entry needs to
      be blocked until the active reference of the kernfs_node to be zero.

      On the other hand, reading blk_mq_hw_sysfs_cpu sysfs entry (e.g.
      /sys/block/nullb0/mq/0/cpu_list) acquires all_q_mutex in
      blk_mq_hw_sysfs_cpus_show().

      If these happen at the same time, a deadlock can happen.  Because one
      can wait for the active reference to be zero with holding all_q_mutex,
      and the other tries to acquire all_q_mutex with holding the active
      reference.

      The reason that all_q_mutex is acquired in blk_mq_hw_sysfs_cpus_show()
      is to avoid reading an imcomplete hctx->cpumask.  Since reading sysfs
      entry for blk-mq needs to acquire q->sysfs_lock, we can avoid deadlock
      and reading an imcomplete hctx->cpumask by protecting q->sysfs_lock
      while hctx->cpumask is being updated.

      Signed-off-by: Akinobu Mita <akinobu.mita@xxxxxxxxx>
      Reviewed-by: Ming Lei <tom.leiming@xxxxxxxxx>
      Cc: Ming Lei <tom.leiming@xxxxxxxxx>
      Cc: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 5778322e67ed34dc9f391a4a5cbcbb856071ceba
  Author: Akinobu Mita <akinobu.mita@xxxxxxxxx>
  Date:   Sun Sep 27 02:09:23 2015 +0900

      blk-mq: avoid inserting requests before establishing new mapping

      Notifier callbacks for CPU_ONLINE action can be run on the other CPU
      than the CPU which was just onlined.  So it is possible for the
      process running on the just onlined CPU to insert request and run
      hw queue before establishing new mapping which is done by
      blk_mq_queue_reinit_notify().

      This can cause a problem when the CPU has just been onlined first time
      since the request queue was initialized.  At this time ctx->index_hw
      for the CPU, which is the index in hctx->ctxs[] for this ctx, is still
      zero before blk_mq_queue_reinit_notify() is called by notifier
      callbacks for CPU_ONLINE action.

      For example, there is a single hw queue (hctx) and two CPU queues
      (ctx0 for CPU0, and ctx1 for CPU1).  Now CPU1 is just onlined and
      a request is inserted into ctx1->rq_list and set bit0 in pending
      bitmap as ctx1->index_hw is still zero.

      And then while running hw queue, flush_busy_ctxs() finds bit0 is set
      in pending bitmap and tries to retrieve requests in
      hctx->ctxs[0]->rq_list.  But htx->ctxs[0] is a pointer to ctx0, so the
      request in ctx1->rq_list is ignored.

      Fix it by ensuring that new mapping is established before onlined cpu
      starts running.

      Signed-off-by: Akinobu Mita <akinobu.mita@xxxxxxxxx>
      Reviewed-by: Ming Lei <tom.leiming@xxxxxxxxx>
      Cc: Jens Axboe <axboe@xxxxxxxxx>
      Cc: Ming Lei <tom.leiming@xxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 0e6263682014d480b8d7b8c10287f4536066b54f
  Author: Akinobu Mita <akinobu.mita@xxxxxxxxx>
  Date:   Sun Sep 27 02:09:22 2015 +0900

      blk-mq: fix q->mq_usage_counter access race

      CPU hotplug handling for blk-mq (blk_mq_queue_reinit) accesses
      q->mq_usage_counter while freezing all request queues in all_q_list.
      On the other hand, q->mq_usage_counter is deinitialized in
      blk_mq_free_queue() before deleting the queue from all_q_list.

      So if CPU hotplug event occurs in the window, percpu_ref_kill() is
      called with q->mq_usage_counter which has already been marked dead,
      and it triggers warning.  Fix it by deleting the queue from all_q_list
      earlier than destroying q->mq_usage_counter.

      Signed-off-by: Akinobu Mita <akinobu.mita@xxxxxxxxx>
      Reviewed-by: Ming Lei <tom.leiming@xxxxxxxxx>
      Cc: Ming Lei <tom.leiming@xxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit a723bab3d7529133f71fc8a5e96f86e3639a0d13
  Author: Akinobu Mita <akinobu.mita@xxxxxxxxx>
  Date:   Sun Sep 27 02:09:21 2015 +0900

      blk-mq: Fix use after of free q->mq_map

      CPU hotplug handling for blk-mq (blk_mq_queue_reinit) updates
      q->mq_map by blk_mq_update_queue_map() for all request queues in
      all_q_list.  On the other hand, q->mq_map is released before deleting
      the queue from all_q_list.

      So if CPU hotplug event occurs in the window, invalid memory access
      can happen.  Fix it by releasing q->mq_map in blk_mq_release() to make
      it happen latter than removal from all_q_list.

      Signed-off-by: Akinobu Mita <akinobu.mita@xxxxxxxxx>
      Suggested-by: Ming Lei <tom.leiming@xxxxxxxxx>
      Reviewed-by: Ming Lei <tom.leiming@xxxxxxxxx>
      Cc: Ming Lei <tom.leiming@xxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 4593fdbe7a2f44d5e64c627c715dd0bcec9bdf14
  Author: Akinobu Mita <akinobu.mita@xxxxxxxxx>
  Date:   Sun Sep 27 02:09:20 2015 +0900

      blk-mq: fix sysfs registration/unregistration race

      There is a race between cpu hotplug handling and adding/deleting
      gendisk for blk-mq, where both are trying to register and unregister
      the same sysfs entries.

      null_add_dev
          --> blk_mq_init_queue
              --> blk_mq_init_allocated_queue
                  --> add to 'all_q_list' (*)
          --> add_disk
              --> blk_register_queue
                  --> blk_mq_register_disk (++)

      null_del_dev
          --> del_gendisk
              --> blk_unregister_queue
                  --> blk_mq_unregister_disk (--)
          --> blk_cleanup_queue
              --> blk_mq_free_queue
                  --> del from 'all_q_list' (*)

      blk_mq_queue_reinit
          --> blk_mq_sysfs_unregister (-)
          --> blk_mq_sysfs_register (+)

      While the request queue is added to 'all_q_list' (*),
      blk_mq_queue_reinit() can be called for the queue anytime by CPU
      hotplug callback.  But blk_mq_sysfs_unregister (-) and
      blk_mq_sysfs_register (+) in blk_mq_queue_reinit must not be called
      before blk_mq_register_disk (++) and after blk_mq_unregister_disk (--)
      is finished.  Because '/sys/block/*/mq/' is not exists.

      There has already been BLK_MQ_F_SYSFS_UP flag in hctx->flags which can
      be used to track these sysfs stuff, but it is only fixing this issue
      partially.

      In order to fix it completely, we just need per-queue flag instead of
      per-hctx flag with appropriate locking.  So this introduces
      q->mq_sysfs_init_done which is properly protected with all_q_mutex.

      Also, we need to ensure that blk_mq_map_swqueue() is called with
      all_q_mutex is held.  Since hctx->nr_ctx is reset temporarily and
      updated in blk_mq_map_swqueue(), so we should avoid
      blk_mq_register_hctx() seeing the temporary hctx->nr_ctx value
      in CPU hotplug handling or adding/deleting gendisk .

      Signed-off-by: Akinobu Mita <akinobu.mita@xxxxxxxxx>
      Reviewed-by: Ming Lei <tom.leiming@xxxxxxxxx>
      Cc: Ming Lei <tom.leiming@xxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 1356aae08338f1c19ce1c67bf8c543a267688fc3
  Author: Akinobu Mita <akinobu.mita@xxxxxxxxx>
  Date:   Sun Sep 27 02:09:19 2015 +0900

      blk-mq: avoid setting hctx->tags->cpumask before allocation

      When unmapped hw queue is remapped after CPU topology is changed,
      hctx->tags->cpumask has to be set after hctx->tags is setup in
      blk_mq_map_swqueue(), otherwise it causes null pointer dereference.

      Fixes: f26cdc8536 ("blk-mq: Shared tag enhancements")
      Signed-off-by: Akinobu Mita <akinobu.mita@xxxxxxxxx>
      Cc: Keith Busch <keith.busch@xxxxxxxxx>
      Cc: Ming Lei <tom.leiming@xxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit bdf7344e14d826d0df438a55fc51146d179e198d
  Author: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
  Date:   Sun Sep 20 07:00:35 2015 -0700

      clocksource/drivers/keystone: Fix bad NO_IRQ usage

      The current code assumes the 'irq_of_parse_and_map' will return NO_IRQ in 
case
      of failure. Unfortunately, the NO_IRQ is not consistent across the 
different
      architectures and we must not rely on it.

      NO_IRQ is equal to '-1' on ARM and 'irq_of_parse_and_map' returns '0' in 
case
      of an error. Hence, the latter won't be detected and will lead to a crash.

      Fix this by just checking 'irq' is different from zero.

      Signed-off-by: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>

  commit ccc42592d436d021d17f86729d24806f30dbad25
  Author: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
  Date:   Sun Sep 20 07:00:10 2015 -0700

      clocksource/drivers/rockchip: Fix bad NO_IRQ usage

      The current code assumes the 'irq_of_parse_and_map' will return NO_IRQ in 
case
      of failure. Unfortunately, the NO_IRQ is not consistent across the 
different
      architectures and we must not rely on it.

      NO_IRQ is equal to '-1' on ARM and 'irq_of_parse_and_map' returns '0' in 
case
      of an error. Hence, the latter won't be detected and will lead to a crash.

      Fix this by just checking 'irq' is different from zero.

      Signed-off-by: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>

  commit 7c7feb2ebfc9c0552c51f0c050db1d1a004faac5
  Author: shengyong <shengyong1@xxxxxxxxxx>
  Date:   Mon Sep 28 17:57:19 2015 +0000

      UBI: return ENOSPC if no enough space available

      UBI: attaching mtd1 to ubi0
      UBI: scanning is finished
      UBI error: init_volumes: not enough PEBs, required 706, available 686
      UBI error: ubi_wl_init: no enough physical eraseblocks (-20, need 1)
      UBI error: ubi_attach_mtd_dev: failed to attach mtd1, error -12 <= NOT 
ENOMEM
      UBI error: ubi_init: cannot attach mtd1

      If available PEBs are not enough when initializing volumes, return -ENOSPC
      directly. If available PEBs are not enough when initializing WL, return
      -ENOSPC instead of -ENOMEM.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Sheng Yong <shengyong1@xxxxxxxxxx>
      Signed-off-by: Richard Weinberger <richard@xxxxxx>
      Reviewed-by: David Gstir <david@xxxxxxxxxxxxx>

  commit 281fda27673f833a01d516658a64d22a32c8e072
  Author: Richard Weinberger <richard@xxxxxx>
  Date:   Tue Sep 22 23:58:07 2015 +0200

      UBI: Validate data_size

      Make sure that data_size is less than LEB size.
      Otherwise a handcrafted UBI image is able to trigger
      an out of bounds memory access in ubi_compare_lebs().

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Richard Weinberger <richard@xxxxxx>
      Reviewed-by: David Gstir <david@xxxxxxxxxxxxx>

  commit cf6f54e3f133229f02a90c04fe0ff9dd9d3264b4
  Author: Richard Weinberger <richard@xxxxxx>
  Date:   Wed Jul 8 11:46:36 2015 +0200

      UBIFS: Kill unneeded locking in ubifs_init_security

      Fixes the following lockdep splat:
      [    1.244527] =============================================
      [    1.245193] [ INFO: possible recursive locking detected ]
      [    1.245193] 4.2.0-rc1+ #37 Not tainted
      [    1.245193] ---------------------------------------------
      [    1.245193] cp/742 is trying to acquire lock:
      [    1.245193]  (&sb->s_type->i_mutex_key#9){+.+.+.}, at: 
[<ffffffff812b3f69>] ubifs_init_security+0x29/0xb0
      [    1.245193]
      [    1.245193] but task is already holding lock:
      [    1.245193]  (&sb->s_type->i_mutex_key#9){+.+.+.}, at: 
[<ffffffff81198e7f>] path_openat+0x3af/0x1280
      [    1.245193]
      [    1.245193] other info that might help us debug this:
      [    1.245193]  Possible unsafe locking scenario:
      [    1.245193]
      [    1.245193]        CPU0
      [    1.245193]        ----
      [    1.245193]   lock(&sb->s_type->i_mutex_key#9);
      [    1.245193]   lock(&sb->s_type->i_mutex_key#9);
      [    1.245193]
      [    1.245193]  *** DEADLOCK ***
      [    1.245193]
      [    1.245193]  May be due to missing lock nesting notation
      [    1.245193]
      [    1.245193] 2 locks held by cp/742:
      [    1.245193]  #0:  (sb_writers#5){.+.+.+}, at: [<ffffffff811ad37f>] 
mnt_want_write+0x1f/0x50
      [    1.245193]  #1:  (&sb->s_type->i_mutex_key#9){+.+.+.}, at: 
[<ffffffff81198e7f>] path_openat+0x3af/0x1280
      [    1.245193]
      [    1.245193] stack backtrace:
      [    1.245193] CPU: 2 PID: 742 Comm: cp Not tainted 4.2.0-rc1+ #37
      [    1.245193] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), 
BIOS rel-1.7.5-0-ge51488c-20140816_022509-build35 04/01/2014
      [    1.245193]  ffffffff8252d530 ffff88007b023a38 ffffffff814f6f49 
ffffffff810b56c5
      [    1.245193]  ffff88007c30cc80 ffff88007b023af8 ffffffff810a150d 
ffff88007b023a68
      [    1.245193]  000000008101302a ffff880000000000 00000008f447e23f 
ffffffff8252d500
      [    1.245193] Call Trace:
      [    1.245193]  [<ffffffff814f6f49>] dump_stack+0x4c/0x65
      [    1.245193]  [<ffffffff810b56c5>] ? console_unlock+0x1c5/0x510
      [    1.245193]  [<ffffffff810a150d>] __lock_acquire+0x1a6d/0x1ea0
      [    1.245193]  [<ffffffff8109fa78>] ? __lock_is_held+0x58/0x80
      [    1.245193]  [<ffffffff810a1a93>] lock_acquire+0xd3/0x270
      [    1.245193]  [<ffffffff812b3f69>] ? ubifs_init_security+0x29/0xb0
      [    1.245193]  [<ffffffff814fc83b>] mutex_lock_nested+0x6b/0x3a0
      [    1.245193]  [<ffffffff812b3f69>] ? ubifs_init_security+0x29/0xb0
      [    1.245193]  [<ffffffff812b3f69>] ? ubifs_init_security+0x29/0xb0
      [    1.245193]  [<ffffffff812b3f69>] ubifs_init_security+0x29/0xb0
      [    1.245193]  [<ffffffff8128e286>] ubifs_create+0xa6/0x1f0
      [    1.245193]  [<ffffffff81198e7f>] ? path_openat+0x3af/0x1280
      [    1.245193]  [<ffffffff81195d15>] vfs_create+0x95/0xc0
      [    1.245193]  [<ffffffff8119929c>] path_openat+0x7cc/0x1280
      [    1.245193]  [<ffffffff8109ffe3>] ? __lock_acquire+0x543/0x1ea0
      [    1.245193]  [<ffffffff81088f20>] ? sched_clock_cpu+0x90/0xc0
      [    1.245193]  [<ffffffff81088c00>] ? calc_global_load_tick+0x60/0x90
      [    1.245193]  [<ffffffff81088f20>] ? sched_clock_cpu+0x90/0xc0
      [    1.245193]  [<ffffffff811a9cef>] ? __alloc_fd+0xaf/0x180
      [    1.245193]  [<ffffffff8119ac55>] do_filp_open+0x75/0xd0
      [    1.245193]  [<ffffffff814ffd86>] ? _raw_spin_unlock+0x26/0x40
      [    1.245193]  [<ffffffff811a9cef>] ? __alloc_fd+0xaf/0x180
      [    1.245193]  [<ffffffff81189bd9>] do_sys_open+0x129/0x200
      [    1.245193]  [<ffffffff81189cc9>] SyS_open+0x19/0x20
      [    1.245193]  [<ffffffff81500717>] entry_SYSCALL_64_fastpath+0x12/0x6f

      While the lockdep splat is a false positive, becuase path_openat holds 
i_mutex
      of the parent directory and ubifs_init_security() tries to acquire i_mutex
      of a new inode, it reveals that taking i_mutex in ubifs_init_security() is
      in vain because it is only being called in the inode allocation path
      and therefore nobody else can see the inode yet.

      Cc: stable@xxxxxxxxxxxxxxx # 3.20-
      Reported-and-tested-by: Boris Brezillon 
<boris.brezillon@xxxxxxxxxxxxxxxxxx>
      Reviewed-and-tested-by: Dongsheng Yang <yangds.fnst@xxxxxxxxxxxxxx>
      Signed-off-by: Richard Weinberger <richard@xxxxxx>
      Signed-off-by: dedekind1@xxxxxxxxx

  commit fd546ee6a7dc4b71ebc6d1205bf72ea3c1c7030a
  Author: Robert Jarzmik <robert.jarzmik@xxxxxxx>
  Date:   Sat Sep 26 21:41:01 2015 +0200

      mmc: pxamci: fix card detect with slot-gpio API

      Move pxamci to mmc slot-gpio API to fix interrupt request.

      It fixes the case where the card detection is on a gpio expander, on I2C
      for example on zylonite board. In this case, the card detect netsted
      interrupt is called from a threaded interrupt. The request_irq() fails,
      because a hard irq cannot be a nested interrupt from a threaded
      interrupt (set __setup_irq()).

      This was tested on zylonite and mioa701 boards.

      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Cc: Petr Cvek <petr.cvek@xxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 51424b2860670ec20e1dd5177fe70ab4b6fd7a5b
  Author: Hans de Goede <hdegoede@xxxxxxxxxx>
  Date:   Wed Sep 23 22:06:48 2015 +0200

      mmc: sunxi: Fix clk-delay settings

      In recent allwinner kernel sources the mmc clk-delay settings have been
      slightly tweaked, and for sun9i they are completely different then what
      we are using.

      This commit brings us in sync with what allwinner does, fixing problems
      accessing sdcards on some A33 devices (and likely others).

      For pre sun9i hardware this makes the following changes:
      -At 400Khz change the sample delay from 7 to 0 (introduced in A31 sdk)
      -At 50 Mhz change the sample delay from 5 to 4 (introduced in A23 sdk)

      This also drops the clk-delay calculation for clocks > 50 MHz, we do
      not need this as we've: mmc->f_max = 50000000, and the delays in the
      old code were not correct (at 100 MHz the delay must be a multiple of 60,
      at 200 MHz a multiple of 120).

      Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 43934ece2ea72c1dd279c0b0478c1a036d5d77ee
  Author: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
  Date:   Mon Sep 14 12:18:55 2015 +0200

      mmc: core: Don't return an error for CD/WP GPIOs when GPIOLIB is unset

      When CONFIG_GPIOLIB is unset, its stubs will return -ENOSYS. That means
      when the mmc core parses DT for CD/WP GPIOs via mmc_of_parse(), -ENOSYS
      becomes propagated to the caller. Typically this means that the mmc host
      driver fails to probe.

      As the CD/WP GPIOs are already treated as optional, let's extend that to
      cover the case when CONFIG_GPIOLIB is unset.

      Reported-by: Michal Simek <michal.simek@xxxxxxxxxx>
      Fixes: 16b23787fc70 ("mmc: sdhci-of-arasan: Call OF parsing for MMC")
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
      Tested-by: Michal Simek <michal.simek@xxxxxxxxxx>
      Acked-by: Venu Byravarasu <vbyravarasu@xxxxxxxxxx>

  commit 0266715155379820c5c626e2cd4b8c91751036bc
  Merge: 3225031 283e8ba
  Author: James Morris <james.l.morris@xxxxxxxxxx>
  Date:   Tue Sep 29 19:19:09 2015 +1000

      Merge tag 'keys-fixes-20150925' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs into for-linus

      Keyrings fixes from David Howells, for current Linus.

  commit 2103d6b818fcdae15ffa04cf385f770e6c3892c3
  Author: Denys Vlasenko <dvlasenk@xxxxxxxxxx>
  Date:   Mon Sep 28 14:34:04 2015 +0200

      net: sctp: Don't use 64 kilobyte lookup table for four elements

      Seemingly innocuous sctp_trans_state_to_prio_map[] array
      is way bigger than it looks, since
      "[SCTP_UNKNOWN] = 2" expands into "[0xffff] = 2" !

      This patch replaces it with switch() statement.

      Signed-off-by: Denys Vlasenko <dvlasenk@xxxxxxxxxx>
      CC: Vlad Yasevich <vyasevich@xxxxxxxxx>
      CC: Neil Horman <nhorman@xxxxxxxxxxxxx>
      CC: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
      CC: linux-sctp@xxxxxxxxxxxxxxx
      CC: netdev@xxxxxxxxxxxxxxx
      CC: linux-kernel@xxxxxxxxxxxxxxx
      Acked-by: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
      Acked-by: Neil Horman <nhorman@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 06a15f51cf3618e32a73871ee6a547ef7fd902b5
  Author: Alexander Couzens <lynxis@xxxxxxx>
  Date:   Mon Sep 28 11:32:42 2015 +0200

      l2tp: protect tunnel->del_work by ref_count

      There is a small chance that tunnel_free() is called before 
tunnel->del_work scheduled
      resulting in a zero pointer dereference.

      Signed-off-by: Alexander Couzens <lynxis@xxxxxxx>
      Acked-by: James Chapman <jchapman@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 661dfc65f7981481ba2e31aaa702371e82336e56
  Author: Ivan Mikhaylov <ivan@xxxxxxxxxx>
  Date:   Fri Sep 25 11:52:27 2015 +0400

      net/ibm/emac: bump version numbers for correct work with ethtool

      The size of the MAC register dump used to be the size specified by the
      reg property in the device tree.  Userland has no good way of finding
      out that size, and it was not specified consistently for each MAC type,
      so ethtool would end up printing junk at the end of the register dump
      if the device tree didn't match the size it assumed.

      Using the new version numbers indicates unambiguously that the size of
      the MAC register dump is dependent only on the MAC type.

      Fixes: 5369c71f7ca2 ("net/ibm/emac: fix size of emac dump memory areas")
      Signed-off-by: Ivan Mikhaylov <ivan@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 51359bfc5b7111cada4d10e71b4dcdd1085e1a8f
  Merge: 43ae93a 635682a
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Sep 28 21:03:40 2015 -0700

      Merge branch 'sctp-accept-deadlock'

      Karl Heiss says:

      ====================
      sctp: Fix SCTP deadlock

      These patches fix a deadlock during accept() of an SCTP connection.

      The first patch fixes whitespace issues.

      The second patch actually fixes the deadlock race.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 635682a14427d241bab7bbdeebb48a7d7b91638e
  Author: Karl Heiss <kheiss@xxxxxxxxx>
  Date:   Thu Sep 24 12:15:07 2015 -0400

      sctp: Prevent soft lockup when sctp_accept() is called during a timeout 
event

      A case can occur when sctp_accept() is called by the user during
      a heartbeat timeout event after the 4-way handshake.  Since
      sctp_assoc_migrate() changes both assoc->base.sk and assoc->ep, the
      bh_sock_lock in sctp_generate_heartbeat_event() will be taken with
      the listening socket but released with the new association socket.
      The result is a deadlock on any future attempts to take the listening
      socket lock.

      Note that this race can occur with other SCTP timeouts that take
      the bh_lock_sock() in the event sctp_accept() is called.

       BUG: soft lockup - CPU#9 stuck for 67s! [swapper:0]
       ...
       RIP: 0010:[<ffffffff8152d48e>]  [<ffffffff8152d48e>] _spin_lock+0x1e/0x30
       RSP: 0018:ffff880028323b20  EFLAGS: 00000206
       RAX: 0000000000000002 RBX: ffff880028323b20 RCX: 0000000000000000
       RDX: 0000000000000000 RSI: ffff880028323be0 RDI: ffff8804632c4b48
       RBP: ffffffff8100bb93 R08: 0000000000000000 R09: 0000000000000000
       R10: ffff880610662280 R11: 0000000000000100 R12: ffff880028323aa0
       R13: ffff8804383c3880 R14: ffff880028323a90 R15: ffffffff81534225
       FS:  0000000000000000(0000) GS:ffff880028320000(0000) 
knlGS:0000000000000000
       CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b
       CR2: 00000000006df528 CR3: 0000000001a85000 CR4: 00000000000006e0
       DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
       DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
       Process swapper (pid: 0, threadinfo ffff880616b70000, task 
ffff880616b6cab0)
       Stack:
       ffff880028323c40 ffffffffa01c2582 ffff880614cfb020 0000000000000000
       <d> 0100000000000000 00000014383a6c44 ffff8804383c3880 ffff880614e93c00
       <d> ffff880614e93c00 0000000000000000 ffff8804632c4b00 ffff8804383c38b8
       Call Trace:
       <IRQ>
       [<ffffffffa01c2582>] ? sctp_rcv+0x492/0xa10 [sctp]
       [<ffffffff8148c559>] ? nf_iterate+0x69/0xb0
       [<ffffffff814974a0>] ? ip_local_deliver_finish+0x0/0x2d0
       [<ffffffff8148c716>] ? nf_hook_slow+0x76/0x120
       [<ffffffff814974a0>] ? ip_local_deliver_finish+0x0/0x2d0
       [<ffffffff8149757d>] ? ip_local_deliver_finish+0xdd/0x2d0
       [<ffffffff81497808>] ? ip_local_deliver+0x98/0xa0
       [<ffffffff81496ccd>] ? ip_rcv_finish+0x12d/0x440
       [<ffffffff81497255>] ? ip_rcv+0x275/0x350
       [<ffffffff8145cfeb>] ? __netif_receive_skb+0x4ab/0x750
       ...

      With lockdep debugging:

       =====================================
       [ BUG: bad unlock balance detected! ]
       -------------------------------------
       CslRx/12087 is trying to release lock (slock-AF_INET) at:
       [<ffffffffa01bcae0>] sctp_generate_timeout_event+0x40/0xe0 [sctp]
       but there are no more locks to release!

       other info that might help us debug this:
       2 locks held by CslRx/12087:
       #0:  (&asoc->timers[i]){+.-...}, at: [<ffffffff8108ce1f>] 
run_timer_softirq+0x16f/0x3e0
       #1:  (slock-AF_INET){+.-...}, at: [<ffffffffa01bcac3>] 
sctp_generate_timeout_event+0x23/0xe0 [sctp]

      Ensure the socket taken is also the same one that is released by
      saving a copy of the socket before entering the timeout event
      critical section.

      Signed-off-by: Karl Heiss <kheiss@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f05940e61845951517eda02a28ccc091888aaab9
  Author: Karl Heiss <kheiss@xxxxxxxxx>
  Date:   Thu Sep 24 12:15:06 2015 -0400

      sctp: Whitespace fix

      Fix indentation in sctp_generate_heartbeat_event.

      Signed-off-by: Karl Heiss <kheiss@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 43ae93a93e8c95c5e6389dc8e11704712b1ab2e9
  Author: Mitch Williams <mitch.a.williams@xxxxxxxxx>
  Date:   Mon Sep 28 17:31:26 2015 -0700

      i40e/i40evf: check for stopped admin queue

      It's possible that while we are waiting for the spinlock, another
      entity (that owns the spinlock) has shut down the admin queue.
      If we then attempt to use the queue, we will panic.

      Add a check for this condition on the receive side. This matches
      an existing check on the send queue side.

      Signed-off-by: Mitch Williams <mitch.a.williams@xxxxxxxxx>
      Acked-by: Jesse Brandeburg <jesse.brandeburg@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c4bbac3913c0d649898a0d767728a585869a7d7d
  Author: Jesse Brandeburg <jesse.brandeburg@xxxxxxxxx>
  Date:   Mon Sep 28 11:21:48 2015 -0700

      i40e: fix VLAN inside VXLAN

      Previously to this patch, the hardware was removing
      VLAN tags from the inner header of VXLAN packets.  The
      hardware configuration can be changed to leave the
      packet alone since that is what the linux stack
      expects for this type of VLAN in VXLAN packet.

      Signed-off-by: Jesse Brandeburg <jesse.brandeburg@xxxxxxxxx>
      Tested-by: Andrew Bowers <andrewx.bowers@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 22ef28b43f2c70edf5618918a49cbda84795c0a5
  Author: duson <dusonlin@xxxxxxxxxx>
  Date:   Mon Sep 28 17:17:01 2015 -0700

      Input: elan_i2c - add all valid ic type for i2c/smbus

      Signed-off-by: Duson Lin <dusonlin@xxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit d3b367bc26ea2e07a83fe73f0ccbddd729cb1f9a
  Author: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Sep 28 16:38:07 2015 -0700

      Input: zhenhua - ensure we have BITREVERSE

      It uses bitrev8(), so it must ensure that lib/bitrev.o gets included in
      vmlinux.

      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit d79bdc7f004404204a6ac07785f8d6717070ecdb
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Mon Sep 28 15:59:22 2015 -0700

      Input: omap4-keypad - fix memory leak

      If omap4_keypad_parse_dt() fails we returned the error code but we
      missed releasing keypad_data.

      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 3225031fbeb1e32b269a82eccd815128267a4bfe
  Merge: 097f70b 3a48d13
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Sep 28 12:27:18 2015 -0400

      Merge branch 'stable' of 
git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile

      Pull arch/tile bugfix from Chris Metcalf:
       "This fixes a bug in 'make allmodconfig'"

      * 'stable' of 
git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
        tile: fix build failure

  commit 3a48d13d76c0088a988a2e4f5b4d94872bdf58f3
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Mon Sep 7 20:06:57 2015 +0530

      tile: fix build failure

      When building with allmodconfig the build was failing with the error:

      arch/tile/kernel/usb.c:70:1: warning: data definition has no type or 
storage class [enabled by default]
      arch/tile/kernel/usb.c:70:1: error: type defaults to 'int' in declaration 
of 'arch_initcall' [-Werror=implicit-int]
      arch/tile/kernel/usb.c:70:1: warning: parameter names (without types) in 
function declaration [enabled by default]
      arch/tile/kernel/usb.c:63:19: warning: 'tilegx_usb_init' defined but not 
used [-Wunused-function]

      Include linux/module.h to resolve the build failure.

      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Signed-off-by: Chris Metcalf <cmetcalf@xxxxxxxxxx>

  commit dfc53c5e73f8b73abf920241e45eab87335ae742
  Author: Michel Thierry <michel.thierry@xxxxxxxxx>
  Date:   Mon Sep 28 13:25:12 2015 +0100

      drm/i915: Consider HW CSB write pointer before resetting the sw read 
pointer

      A previous commit resets the Context Status Buffer (CSB) read pointer in
      ring init
          commit c0a03a2e4c4e ("drm/i915: Reset CSB read pointer in ring init")

      This is generally correct, but this pointer is not reset after
      suspend/resume in some platforms (cht). In this case, the driver should
      read the register value instead of resetting the sw read counter to 0.
      Otherwise we process old events, leading to unwanted pre-emptions or
      something worse.

      But in other platforms (bdw) and also during GPU reset or power up, the
      CSBWP is reset to 0x7 (an invalid number), and in this case the read
      pointer should be set to 5 (the interrupt code will increment this
      counter one more time, and will start reading from CSB[0]).

      v2: When the CSB registers are reset, the read pointer needs to be set
      to 5, otherwise the first write (CSB[0]) won't be read (Mika).
      Replace magic numbers with GEN8_CSB_ENTRIES (6) and GEN8_CSB_PTR_MASK
      (0x07).

      Cc: Mika Kuoppala <mika.kuoppala@xxxxxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # v4.0+
      Signed-off-by: Lei Shen <lei.shen@xxxxxxxxx>
      Signed-off-by: Deepak S <deepak.s@xxxxxxxxx>
      Signed-off-by: Michel Thierry <michel.thierry@xxxxxxxxx>
      Reviewed-by: Mika Kuoppala <mika.kuoppala@xxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 9bac175d8ed0b1dd3d3611c0713666b724eeace3
  Author: Radim KrÄ?máÅ? <rkrcmar@xxxxxxxxxx>
  Date:   Fri Sep 18 17:54:30 2015 +0200

      Revert "KVM: x86: zero kvmclock_offset when vcpu0 initializes kvmclock 
system MSR"

      Shifting pvclock_vcpu_time_info.system_time on write to KVM system time
      MSR is a change of ABI.  Probably only 2.6.16 based SLES 10 breaks due
      to its custom enhancements to kvmclock, but KVM never declared the MSR
      only for one-shot initialization.  (Doc says that only one write is
      needed.)

      This reverts commit b7e60c5aedd2b63f16ef06fde4f81ca032211bc5.
      And adds a note to the definition of PVCLOCK_COUNTS_FROM_ZERO.

      Signed-off-by: Radim KrÄ?máÅ? <rkrcmar@xxxxxxxxxx>
      Acked-by: Marcelo Tosatti <mtosatti@xxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 3cef072d3bbd4344823545e50d8cb240a6d4635d
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Fri Sep 11 06:28:08 2015 -0700

      watchdog: iTCO: Fix dependencies on I2C

      If I2C is built as module, the iTCO watchdog driver must be built as 
module
      as well. I2C_I801 must only be selected if I2C is configured.

      This fixes the following build errors, seen if I2C=m and ITCO_WDT=y.

      i2c-i801.c:(.text+0x2bf055): undefined reference to `i2c_del_adapter'
      i2c-i801.c:(.text+0x2c13e0): undefined reference to `i2c_add_adapter'
      i2c-i801.c:(.text+0x2c17bd): undefined reference to `i2c_new_device'

      Fixes: 2a7a0e9bf7b3 ("watchdog: iTCO_wdt: Add support for TCO on Intel 
Sunrisepoint")
      Reviewed-by: Matt Fleming <matt.fleming@xxxxxxxxx>
      Cc: Lee Jones <lee.jones@xxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit 898e6861ff7cfc9f539b57859a27fbd1fe4298ae
  Author: Noralf Trønnes <noralf@xxxxxxxxxxx>
  Date:   Wed Jun 17 16:04:04 2015 +0200

      watchdog: bcm2835: Fix poweroff behaviour

      Currently poweroff/halt results in a reboot on the Raspberry Pi.
      The firmware uses the RSTS register to know which partiton to
      boot from. The partiton value is spread into bits
      0, 2, 4, 6, 8, 10. Partiton 63 is a special partition used by
      the firmware to indicate halt.

      The firmware made this change in 19 Aug 2013 and was matched
      by the downstream commit:
      Changes for new NOOBS multi partition booting from gsh

      Signed-off-by: Noralf Trønnes <noralf@xxxxxxxxxxx>
      Tested-by: Stephen Warren <swarren@xxxxxxxxxxxxx>
      Acked-by: Stephen Warren <swarren@xxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit c73318f43d3967e3ce810665d9c74a7d238d24d1
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 13:06:09 2015 +0200

      watchdog: Fix module autoload for OF platform driver

      These platform drivers have a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit bc5f2ab11ca6dda4a4826e7e78d5365d7c3e1569
  Author: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
  Date:   Wed Sep 23 11:32:36 2015 -0700

      drm/i915/skl: Don't call intel_prepare_ddi when encoder list isn't yet 
initialized.

      In case something goes wrong with power well initialization we were 
calling
      intel_prepare_ddi during boot while encoder list isnt't initilized.

      [    9.618747] i915 0000:00:02.0: Invalid ROM contents
      [    9.631446] [drm] failed to find VBIOS tables
      [    9.720036] BUG: unable to handle kernel NULL pointer dereference at 
00000000
      00000058
      [    9.721986] IP: [<ffffffffa014eb72>] ddi_get_encoder_port+0x82/0x190 
[i915]
      [    9.723736] PGD 0
      [    9.724286] Oops: 0000 [#1] PREEMPT SMP
      [    9.725386] Modules linked in: intel_powerclamp snd_hda_intel(+) 
coretemp crc
      32c_intel snd_hda_codec snd_hda_core serio_raw snd_pcm snd_timer i915(+) 
parport
      _pc parport pinctrl_sunrisepoint pinctrl_intel nfsd nfs_acl
      [    9.730635] CPU: 0 PID: 497 Comm: systemd-udevd Not tainted 
4.3.0-rc2-eywa-10
      967-g72de2cfd-dirty #2
      [    9.732785] Hardware name: Intel Corporation Cannonlake Client 
platform/Skyla
      ke DT DDR4 RVP8, BIOS CNLSE2R1.R00.X021.B00.1508040310 08/04/2015
      [    9.735785] task: ffff88008a704700 ti: ffff88016a1ac000 task.ti: 
ffff88016a1a
      c000
      [    9.737584] RIP: 0010:[<ffffffffa014eb72>]  [<ffffffffa014eb72>] 
ddi_get_enco
      der_port+0x82/0x190 [i915]
      [    9.739934] RSP: 0000:ffff88016a1af710  EFLAGS: 00010296
      [    9.741184] RAX: 000000000000004e RBX: ffff88008a9edc98 RCX: 
0000000000000001
      [    9.742934] RDX: 000000000000004e RSI: ffffffff81fc1e82 RDI: 
00000000ffffffff
      [    9.744634] RBP: ffff88016a1af730 R08: 0000000000000000 R09: 
0000000000000578
      [    9.746333] R10: 0000000000001065 R11: 0000000000000578 R12: 
fffffffffffffff8
      [    9.748033] R13: ffff88016a1af7a8 R14: ffff88016a1af794 R15: 
0000000000000000
      [    9.749733] FS:  00007eff2e1e07c0(0000) GS:ffff88016fc00000(0000) 
knlGS:00000
      00000000000
      [    9.751683] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [    9.753083] CR2: 0000000000000058 CR3: 000000016922b000 CR4: 
00000000003406f0
      [    9.754782] Stack:
      [    9.755332]  ffff88008a9edc98 ffff88008a9ed800 ffffffffa01d07b0 
00000000fffb9
      09e
      [    9.757232]  ffff88016a1af7d8 ffffffffa0154ea7 0000000000000246 
ffff88016a370
      080
      [    9.759182]  ffff88016a370080 ffff88008a9ed800 0000000000000246 
ffff88008a9ed
      c98
      [    9.761132] Call Trace:
      [    9.761782]  [<ffffffffa0154ea7>] intel_prepare_ddi+0x67/0x860 [i915]
      [    9.763332]  [<ffffffff81a56996>] ? 
_raw_spin_unlock_irqrestore+0x26/0x40
      [    9.765031]  [<ffffffffa00fad01>] ? gen9_read32+0x141/0x360 [i915]
      [    9.766531]  [<ffffffffa00b43e1>] skl_set_power_well+0x431/0xa80 [i915]
      [    9.768181]  [<ffffffffa00b4a63>] skl_power_well_enable+0x13/0x20 
[i915]
      [    9.769781]  [<ffffffffa00b2188>] intel_power_well_enable+0x28/0x50 
[i915]
      [    9.771481]  [<ffffffffa00b4d52>] intel_display_power_get+0x92/0xc0 
[i915]
      [    9.773180]  [<ffffffffa00b4fcb>] 
intel_display_set_init_power+0x3b/0x40 [i91
      5]
      [    9.774980]  [<ffffffffa00b5170>] 
intel_power_domains_init_hw+0x120/0x520 [i9
      15]
      [    9.776780]  [<ffffffffa0194c61>] i915_driver_load+0xb21/0xf40 [i915]

      So let's protect this case.

      My first attempt was to remove the intel_prepare_ddi, but Daniel had 
pointed out
      this is really needed to restore those registers values. And Imre pointed 
out
      that this case was without the flag protection and this was actually 
where things
      were going bad. So I've just checked and this indeed solves my issue.

      The regressing intel_prepare_ddi call was added in

      commit 1d2b9526a790d55b7ae870934a74937081f62de2
      Author: Damien Lespiau <damien.lespiau@xxxxxxxxx>
      Date:   Fri Mar 6 18:50:53 2015 +0000

          drm/i915/skl: Restore the DDI translation tables when enabling PW1

      Cc: Imre Deak <imre.deak@xxxxxxxxx>
      Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Signed-off-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
      Reviewed-by: Imre Deak <imre.deak@xxxxxxxxx>
      [Jani: regression reference]
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 95bc06ef049b808a067327bd8490b608b47e3870
  Author: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
  Date:   Sun Sep 13 11:24:02 2015 +0200

      m68k/defconfig: Update defconfigs for v4.3-rc1

      Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>

  commit 8474ba74193d302e8340dddd1e16c85cc4b98caf
  Author: Andreas Schwab <schwab@xxxxxxxxxxxxxx>
  Date:   Wed Sep 23 23:12:09 2015 +0200

      m68k: Define asmlinkage_protect

      Make sure the compiler does not modify arguments of syscall functions.
      This can happen if the compiler generates a tailcall to another
      function.  For example, without asmlinkage_protect sys_openat is compiled
      into this function:

      sys_openat:
        clr.l %d0
        move.w 18(%sp),%d0
        move.l %d0,16(%sp)
        jbra do_sys_open

      Note how the fourth argument is modified in place, modifying the register
      %d4 that gets restored from this stack slot when the function returns to
      user-space.  The caller may expect the register to be unmodified across
      system calls.

      Signed-off-by: Andreas Schwab <schwab@xxxxxxxxxxxxxx>
      Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 7f843dab134b7ce8804b67cca2271267d3a0213d
  Author: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
  Date:   Sun Sep 13 11:49:13 2015 +0200

      m68k: Wire up membarrier

      $ ./membarrier_test
      membarrier MEMBARRIER_CMD_QUERY syscall available.
      membarrier: MEMBARRIER_CMD_SHARED success.
      membarrier: tests done!
      $

      Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Acked-by: Greg Ungerer <gerg@xxxxxxxxxxx>

  commit b92858f2be96f49c483436e851a4667543ab5768
  Author: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
  Date:   Sun Sep 6 12:01:40 2015 +0200

      m68k: Wire up userfaultfd

      $ ./userfaultfd 10 99
      nr_pages: 2560, nr_pages_per_cpu: 2560
      bounces: 98, mode: racing, userfaults: 1121
      bounces: 97, mode: rnd, userfaults: 977
      bounces: 96, mode:, userfaults: 1119
      bounces: 95, mode: rnd racing ver poll, userfaults: 1040
      bounces: 94, mode: racing ver poll, userfaults: 1022
      bounces: 93, mode: rnd ver poll, userfaults: 946
      bounces: 92, mode: ver poll, userfaults: 1115
      bounces: 91, mode: rnd racing poll, userfaults: 977
      bounces: 90, mode: racing poll, userfaults: 899
      bounces: 89, mode: rnd poll, userfaults: 881
      bounces: 88, mode: poll, userfaults: 1069
      bounces: 87, mode: rnd racing ver, userfaults: 1114
      bounces: 86, mode: racing ver, userfaults: 1109
      bounces: 85, mode: rnd ver, userfaults: 1165
      bounces: 84, mode: ver, userfaults: 1107
      bounces: 83, mode: rnd racing, userfaults: 1134
      bounces: 82, mode: racing, userfaults: 1105
      bounces: 81, mode: rnd, userfaults: 1323
      bounces: 80, mode:, userfaults: 1103
      bounces: 79, mode: rnd racing ver poll, userfaults: 909
      bounces: 78, mode: racing ver poll, userfaults: 1095
      bounces: 77, mode: rnd ver poll, userfaults: 951
      bounces: 76, mode: ver poll, userfaults: 1099
      bounces: 75, mode: rnd racing poll, userfaults: 1035
      bounces: 74, mode: racing poll, userfaults: 1097
      bounces: 73, mode: rnd poll, userfaults: 1159
      bounces: 72, mode: poll, userfaults: 1042
      bounces: 71, mode: rnd racing ver, userfaults: 848
      bounces: 70, mode: racing ver, userfaults: 1093
      bounces: 69, mode: rnd ver, userfaults: 892
      bounces: 68, mode: ver, userfaults: 1091
      bounces: 67, mode: rnd racing, userfaults: 1219
      bounces: 66, mode: racing, userfaults: 1089
      bounces: 65, mode: rnd, userfaults: 988
      bounces: 64, mode:, userfaults: 1087
      bounces: 63, mode: rnd racing ver poll, userfaults: 882
      bounces: 62, mode: racing ver poll, userfaults: 984
      bounces: 61, mode: rnd ver poll, userfaults: 701
      bounces: 60, mode: ver poll, userfaults: 1071
      bounces: 59, mode: rnd racing poll, userfaults: 1137
      bounces: 58, mode: racing poll, userfaults: 1032
      bounces: 57, mode: rnd poll, userfaults: 911
      bounces: 56, mode: poll, userfaults: 1079
      bounces: 55, mode: rnd racing ver, userfaults: 1106
      bounces: 54, mode: racing ver, userfaults: 1077
      bounces: 53, mode: rnd ver, userfaults: 886
      bounces: 52, mode: ver, userfaults: 1075
      bounces: 51, mode: rnd racing, userfaults: 1101
      bounces: 50, mode: racing, userfaults: 1073
      bounces: 49, mode: rnd, userfaults: 1070
      bounces: 48, mode:, userfaults: 1071
      bounces: 47, mode: rnd racing ver poll, userfaults: 1077
      bounces: 46, mode: racing ver poll, userfaults: 910
      bounces: 45, mode: rnd ver poll, userfaults: 1063
      bounces: 44, mode: ver poll, userfaults: 1028
      bounces: 43, mode: rnd racing poll, userfaults: 1043
      bounces: 42, mode: racing poll, userfaults: 1065
      bounces: 41, mode: rnd poll, userfaults: 912
      bounces: 40, mode: poll, userfaults: 1063
      bounces: 39, mode: rnd racing ver, userfaults: 880
      bounces: 38, mode: racing ver, userfaults: 1061
      bounces: 37, mode: rnd ver, userfaults: 1144
      bounces: 36, mode: ver, userfaults: 1059
      bounces: 35, mode: rnd racing, userfaults: 967
      bounces: 34, mode: racing, userfaults: 1057
      bounces: 33, mode: rnd, userfaults: 1076
      bounces: 32, mode:, userfaults: 1055
      bounces: 31, mode: rnd racing ver poll, userfaults: 997
      bounces: 30, mode: racing ver poll, userfaults: 1053
      bounces: 29, mode: rnd ver poll, userfaults: 968
      bounces: 28, mode: ver poll, userfaults: 978
      bounces: 27, mode: rnd racing poll, userfaults: 1008
      bounces: 26, mode: racing poll, userfaults: 1049
      bounces: 25, mode: rnd poll, userfaults: 900
      bounces: 24, mode: poll, userfaults: 1047
      bounces: 23, mode: rnd racing ver, userfaults: 988
      bounces: 22, mode: racing ver, userfaults: 1045
      bounces: 21, mode: rnd ver, userfaults: 1027
      bounces: 20, mode: ver, userfaults: 1043
      bounces: 19, mode: rnd racing, userfaults: 1017
      bounces: 18, mode: racing, userfaults: 1041
      bounces: 17, mode: rnd, userfaults: 979
      bounces: 16, mode:, userfaults: 1039
      bounces: 15, mode: rnd racing ver poll, userfaults: 1134
      bounces: 14, mode: racing ver poll, userfaults: 1037
      bounces: 13, mode: rnd ver poll, userfaults: 1046
      bounces: 12, mode: ver poll, userfaults: 1035
      bounces: 11, mode: rnd racing poll, userfaults: 1060
      bounces: 10, mode: racing poll, userfaults: 1033
      bounces: 9, mode: rnd poll, userfaults: 1003
      bounces: 8, mode: poll, userfaults: 929
      bounces: 7, mode: rnd racing ver, userfaults: 964
      bounces: 6, mode: racing ver, userfaults: 1029
      bounces: 5, mode: rnd ver, userfaults: 1053
      bounces: 4, mode: ver, userfaults: 1027
      bounces: 3, mode: rnd racing, userfaults: 863
      bounces: 2, mode: racing, userfaults: 1025
      bounces: 1, mode: rnd, userfaults: 1043
      bounces: 0, mode:, userfaults: 950

      Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Acked-by: Greg Ungerer <gerg@xxxxxxxxxxx>

  commit 5b3f33eb408ad06acf59b09fe0550bf3756e320a
  Author: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
  Date:   Sun Sep 6 11:59:27 2015 +0200

      m68k: Wire up direct socket calls

      Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Acked-by: Greg Ungerer <gerg@xxxxxxxxxxx>

  commit 7c4f1c694bf84eac538bee3e411aed10ae617d46
  Merge: 9ffecb1 19a5ecd
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Mon Sep 28 08:03:52 2015 +0200

      Merge branch 'for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/urgent

      Pull RCU fixes from Paul E. McKenney, for two regressions
      introduced in this merge window:

        - Fix bug with recent GCCs.
        - Fix false positive lockdep splat.

      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 1a5e251996e1b602f2ddc9261ee9de0ca1875bfa
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Sun Sep 27 17:13:55 2015 -0700

      Input: serio - fix blocking of parport

      If parkbd_allocate_serio() fails to allocate memory we are releasing the
      parport but we missed unregistering the device. As a result this device
      with exclusive access to that parport remains registered. And no other
      device will be able to use that parport even though this driver has
      failed to load.

      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 097f70b3c4d84ffccca15195bdfde3a37c0a7c0f
  Merge: e3be426 e060f6e
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Sep 27 18:22:34 2015 -0400

      Merge branch 'upstream' of 
git://git.linux-mips.org/pub/scm/ralf/upstream-linus

      Pull MIPS fixes from Ralf Baechle:
       - Properly setup irq handling for ATH79 platforms
       - Fix bootmem mapstart calculation for contiguous maps
       - Handle little endian and older CPUs correct in BPF
       - Fix console for Fulong 2E systems
       - Handle FTLB correctly on R6 CPUs
       - Fixes for CM, GIC and MAAR support code

      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus:
        MIPS: Initialise MAARs on secondary CPUs
        MIPS: print MAAR configuration during boot
        MIPS: mm: compile maar_init unconditionally
        irqchip: mips-gic: Fix pending & mask reads for MIPS64 with 32b GIC.
        irqchip: mips-gic: Convert CPU numbers to VP IDs.
        MIPS: CM: Provide a function to map from CPU to VP ID.
        MIPS: Fix FTLB detection for R6
        MIPS: cpu-features: Add cpu_has_ftlb
        MIPS: ATH79: Add irq chip ar7240-misc-intc
        MIPS: ATH79: Set missing irq ack handler for ar7100-misc-intc irq chip
        MIPS: BPF: Fix build on pre-R2 little endian CPUs
        MIPS: BPF: Avoid unreachable code on little endian
        MIPS: bootmem: Fix mapstart calculation for contiguous maps
        MIPS: Fix console output for Fulong2e system

  commit e3be4266d3488cbbaddf7fcc661f4473db341e46
  Merge: 73f479b 2530e39
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Sep 27 12:51:39 2015 -0400

      Merge branch 'perf-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull perf fixes from Thomas Gleixner:
       "Another pile of fixes for perf:

         - Plug overflows and races in the core code

         - Sanitize the flow of the perf syscall so we error out before
           handling the more complex and hard to undo setups

         - Improve and fix Broadwell and Skylake hardware support

         - Revert a fix which broke what it tried to fix in perf tools

         - A couple of smaller fixes in various places of perf tools"

      * 'perf-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf tools: Fix copying of /proc/kcore
        perf intel-pt: Remove no_force_psb from documentation
        perf probe: Use existing routine to look for a kernel module by 
dso->short_name
        perf/x86: Change test_aperfmperf() and test_intel() to static
        tools lib traceevent: Fix string handling in heterogeneous arch 
environments
        perf record: Avoid infinite loop at buildid processing with no samples
        perf: Fix races in computing the header sizes
        perf: Fix u16 overflows
        perf: Restructure perf syscall point of no return
        perf/x86/intel: Fix Skylake FRONTEND MSR extrareg mask
        perf/x86/intel/pebs: Add PEBS frontend profiling for Skylake
        perf/x86/intel: Make the CYCLE_ACTIVITY.* constraint on Broadwell more 
specific
        perf tools: Bool functions shouldn't return -1
        tools build: Add test for presence of __get_cpuid() gcc builtin
        tools build: Add test for presence of numa_num_possible_cpus() in 
libnuma
        Revert "perf symbols: Fix mismatched declarations for elf_getphdrnum"
        perf stat: Fix per-pkg event reporting bug

  commit 73f479b243fe71a0fa82d21a21ac25d8932b88d5
  Merge: fc11a9c de9b8f5
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Sep 27 12:50:27 2015 -0400

      Merge branch 'sched-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull scheduler fix from Thomas Gleixner:
       "A single bug fix for the scheduler to prevent dequeueing of the idle
        task when setting the cpus allowed mask"

      * 'sched-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched: Fix crash trying to dequeue/enqueue the idle thread

  commit fc11a9c5dad78d2c9e8a4b7d4b386bff724d9ec3
  Merge: 9ffecb1 21199f2
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Sep 27 12:47:20 2015 -0400

      Merge branch 'locking-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull locking fix from Thomas Gleixner:
       "A single bugfix for lockdep to preserve the pinning counter when
        rebuilding the lock stack"

      * 'locking-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        locking/lockdep: Fix hlock->pin_count reset on lock stack rebuilds

  commit a9062dcec3697db5bdf064311ad097c469fd87ec
  Merge: 9ffecb1 af71b98
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Sun Sep 27 15:25:22 2015 +0200

      Merge branch 'turbostat' of 
https://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux into pm-tools

      Pull turbostat updates for v4.3 from Len Brown.

      * 'turbostat' of 
https://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux:
        tools/power turbosat: update version number
        tools/power turbostat: SKL: Adjust for TSC difference from base 
frequency
        tools/power turbostat: KNL workaround for %Busy and Avg_MHz
        tools/power turbostat: IVB Xeon: fix --debug regression

  commit e9a7bed40cbc09eee4b7a15509726a44565805be
  Merge: 9ffecb1 135919a
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Sun Sep 27 15:24:27 2015 +0200

      Merge branch 'cpuidle' of 
https://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux into pm-cpuidle

      Pull an intel_idle update for v4.3 from Len Brown.

      * 'cpuidle' of https://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux:
        intel_idle: Skylake Client Support - updated

  commit e060f6ed281669b6d2f22d8dafd664b532386918
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Fri Sep 25 08:59:38 2015 -0700

      MIPS: Initialise MAARs on secondary CPUs

      MAARs should be initialised on each CPU (or rather, core) in the system
      in order to achieve consistent behaviour & performance. Previously they
      have only been initialised on the boot CPU which leads to performance
      problems if tasks are later scheduled on a secondary CPU, particularly
      if those tasks make use of unaligned vector accesses where some CPUs
      don't handle any cases in hardware for non-speculative memory regions.
      Fix this by recording the MAAR configuration from the boot CPU and
      applying it to secondary CPUs as part of their bringup.

      Reported-by: Doug Gilmore <doug.gilmore@xxxxxxxxxx>
      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
      Cc: Steven J. Hill <Steven.Hill@xxxxxxxxxx>
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: David Hildenbrand <dahi@xxxxxxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Aaro Koskinen <aaro.koskinen@xxxxxx>
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: Hemmo Nieminen <hemmo.nieminen@xxxxxx>
      Cc: Alex Smith <alex.smith@xxxxxxxxxx>
      Cc: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/11239/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 651ca7f4dab77f07fdac9cfb68bcab6bd2b7f827
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Fri Sep 25 08:59:37 2015 -0700

      MIPS: print MAAR configuration during boot

      Verifying that the MAAR configuration is as expected is useful when
      debugging the performance of a system. Print out the memory regions
      configured via MAAR along with their attributes.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Steven J. Hill <Steven.Hill@xxxxxxxxxx>
      Cc: David Hildenbrand <dahi@xxxxxxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/11238/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit def3ab5d0a0fe53026c2495b054dcc46cf923dac
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Fri Sep 25 08:59:36 2015 -0700

      MIPS: mm: compile maar_init unconditionally

      maar_init was previously only compiled when CONFIG_NEED_MULTIPLE_NODES
      was not set, which has been fine since it is only called from the
      standard implementation of mem_init which has the same condition. In
      preparation for calling it from the SMP startup code on secondary CPUs,
      move maar_init outside of the #ifndef such that it is always compiled.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Steven J. Hill <Steven.Hill@xxxxxxxxxx>
      Cc: David Hildenbrand <dahi@xxxxxxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/11237/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit d77d5ac9c9b5abf45aeb6e12930fab832e5c81d1
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Tue Sep 22 11:29:11 2015 -0700

      irqchip: mips-gic: Fix pending & mask reads for MIPS64 with 32b GIC.

      gic_handle_shared_int reads the GIC interrupt pending & mask registers
      directly into a bitmap, which is defined as an array of unsigned longs.
      The GIC pending registers may be 32 bits wide if the CM is older than
      CM3, regardless of the bit width of the CPU, but for MIPS64 kernels
      the unsigned longs in the bitmap will be 64 bits wide. In this case we
      need to perform 2 x 32 bit reads per 64 bit unsigned long in order to
      avoid missing interrupts.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Acked-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/11213/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit ab41f6c8620a6e65df4ee19d284c97efdd3d9b63
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Tue Sep 22 11:29:10 2015 -0700

      irqchip: mips-gic: Convert CPU numbers to VP IDs.

      Make use of the mips_cm_vp_id function to convert from Linux CPU numbers
      to the VP IDs used by hardware, which are not identical in all systems.
      Without doing so we map interrupts to incorrect VP(E)s.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Acked-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/11212/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 7573b94e08aeb5b814e2f277210bdcdf21a83869
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Tue Sep 22 11:29:09 2015 -0700

      MIPS: CM: Provide a function to map from CPU to VP ID.

      The VP ID of a given CPU may not match up with the CPU number used by
      Linux. For example, if the width of the VP part of the VP ID is wider
      than log2(number of VPs per core) and the system has multiple cores then
      this will be the case. Alternatively, if a pre-r6 system implements the
      MT ASE with multiple VPEs per core and Linux is built without support
      for the MT ASE then the numbers won't match up either. Provide a
      function to convert from CPU number to VP ID.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Acked-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/11211/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 9ffecb10283508260936b96022d4ee43a7798b4c
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Sep 27 07:50:08 2015 -0400

      Linux 4.3-rc3

  commit 162e6df47c4f80c87cb617ec473eca015df454ca
  Merge: 5a6bdf0 83c133c
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Sep 27 06:51:42 2015 -0400

      Merge branch 'x86-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull x86 fixes from Thomas Gleixner:
       "Two bugfixes from Andy addressing at least some of the subtle NMI
        related wreckage which has been reported by Sasha Levin"

      * 'x86-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/nmi/64: Fix a paravirt stack-clobbering bug in the NMI code
        x86/paravirt: Replace the paravirt nop with a bona fide empty function

  commit 5a6bdf06bbd022db25d9935273b409c337c48a6b
  Merge: c905929 d32dc9a
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Sep 27 06:50:23 2015 -0400

      Merge branch 'irq-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull irq fix from Thomass Gleixner:
       "A bugfix for the atmel aic5 irq chip driver which caches the wrong
        data and thereby breaking resume"

      * 'irq-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        irqchip/atmel-aic5: Use per chip mask caches in mask/unmask()

  commit c905929ac9b94061b2c8226c5e47a26d30ed7ea1
  Merge: 685b5f1 274e91b
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Sep 27 06:48:48 2015 -0400

      Merge branch 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm

      Pull ARM fixes from Russell King:
       "Just two fixes: wire up the new system calls added during the last
        merge window, and fix another user access site"

      * 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
        ARM: alignment: fix alignment handling for uaccess changes
        ARM: wire up new syscalls

  commit 685b5f1de6405bf87e38fed7c893a1de0a8d3218
  Merge: 69ea8b8 e46fc90
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Sep 27 06:45:18 2015 -0400

      Merge tag 'armsoc-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

      Pull ARM SoC fixes from Olof Johansson:
       "Our first real batch of fixes this release cycle.  Nothing really
        concerning, and diffstat is a bit inflated due to some DT contents
        moving around on STi platforms.

        There's a collection of them here:

         - A fixup for a build breakage that hits on arm64 allmodconfig in
           QCOM SCM firmware drivers
         - MMC fixes for OMAP that had quite a bit of breakage this merge
           window.
         - Misc build/warning fixes on PXA and OMAP
         - A couple of minor fixes for Beagleboard X15 which is now starting
           to see a few more users in the wild"

      * tag 'armsoc-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (31 commits)
        ARM: sti: dt: adapt DT to fix probe/bind issues in DRM driver
        ARM: dts: fix omap2+ address translation for pbias
        firmware: qcom: scm: Add function stubs for ARM64
        ARM: dts: am57xx-beagle-x15: use palmas-usb for USB2
        ARM: omap2plus_defconfig: enable GPIO_PCA953X
        ARM: dts: omap5-uevm.dts: fix i2c5 pinctrl offsets
        ARM: OMAP2+: AM43XX: Enable autoidle for clks in am43xx_init_late
        ARM: dts: am57xx-beagle-x15: Update Phy supplies
        ARM: pxa: balloon3: Fix build error
        ARM: dts: Fixup model name for HP t410 dts
        ARM: dts: DRA7: fix a typo in ethernet
        ARM: omap2plus_defconfig: make PCF857x built-in
        ARM: dts: Use ti,pbias compatible string for pbias
        ARM: OMAP5: Cleanup options for SoC only build
        ARM: DRA7: Select missing options for SoC only build
        ARM: OMAP2+: board-generic: Remove stale of_irq macros
        ARM: OMAP4+: PM: erratum is used by OMAP5 and DRA7 as well
        ARM: dts: omap3-igep: Move eth IRQ pinmux to IGEPv2 common dtsi
        ARM: dts: am57xx-beagle-x15: Add wakeup irq for mcp79410
        ARM: dts: am335x-phycore-som: Fix mpu voltage
        ...

  commit 69ea8b857782ea56d9db01e2f57f9067abd3f013
  Merge: d8cc397 8862714
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Sep 27 06:42:54 2015 -0400

      Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6

      Pull CIFS fixes from Steve French:
       "Four fixes from testing at the recent SMB3 Plugfest including two
        important authentication ones (one fixes authentication problems to
        some popular servers when clock times differ more than two hours
        between systems, the other fixes Kerberos authentication for SMB3)"

      * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
        fix encryption error checks on mount
        [SMB3] Fix sec=krb5 on smb3 mounts
        cifs: use server timestamp for ntlmv2 authentication
        disabling oplocks/leases via module parm enable_oplocks broken for SMB3

  commit 72521ea07c0af37b8cb21228368128191c3f1a58
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Thu Sep 24 16:00:24 2015 +0200

      r8169: fix handling rtl_readphy result

      The function can return negative value.

      The problem has been detected using proposed semantic patch
      scripts/coccinelle/tests/assign_signed_to_unsigned.cocci [1].

      [1]: http://permalink.gmane.org/gmane.linux.kernel/2046107

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f26bf06beae70175eda91e893190784bd1bcc7c0
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Thu Sep 24 16:00:15 2015 +0200

      net: hisilicon: fix handling platform_get_irq result

      The function can return negative value.

      The problem has been detected using proposed semantic patch
      scripts/coccinelle/tests/assign_signed_to_unsigned.cocci [1].

      [1]: http://permalink.gmane.org/gmane.linux.kernel/2046107

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e46fc90ec2612ef7578c6e3e28ad477a116e24da
  Merge: b8ba826 385877c
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Sat Sep 26 22:23:26 2015 -0700

      Merge tag 'pxa-fixes-v4.3' of https://github.com/rjarzmik/linux into fixes

      ARM: pxa: fixes for v4.3

      These fixes are mainly regression fixes triggered by irq changes,
      common clock framework introduction and sound side-effect of
      other platforms.

      * tag 'pxa-fixes-v4.3' of https://github.com/rjarzmik/linux:
        ARM: pxa: balloon3: Fix build error
        ARM: pxa: ssp: Fix build error by removing originally incorrect DT 
binding
        ARM: pxa: fix DFI bus lockups on startup

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit b8ba826f8d9587fe830d29a0d03abb5b1e0a76e5
  Merge: fe5b275 9a5e3f2
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Sat Sep 26 22:22:31 2015 -0700

      Merge tag 'omap-for-v4.3/fixes-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into fixes

      Fixes for omaps for v4.3-rc cycle:

      - Two more patches to fix most of the MMC regressions with the
        PBIAS regulator changes. At least two MMC driver related issues
        still seems to remain for omap3 legacy booting and omap4 duovero.
        Note that the dts changes depend on a recent regulator fix, and
        are based on the regulator commit now in mainline kernel

      - Enable autoidle for am43xx clocks to prevent clocks from staying
        always on

      - Fix i2c5 pinctrl offsets for omap5-uevm

      - Enable PCA953X as that's needed for HDMI to work on omap5

      - Update phy supplies for beagle x15 beta board

      - Use palmas-usb for on beagle x15 to start using the related
        driver that recently got merged

      * tag 'omap-for-v4.3/fixes-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
        ARM: dts: fix omap2+ address translation for pbias
        ARM: dts: am57xx-beagle-x15: use palmas-usb for USB2
        ARM: omap2plus_defconfig: enable GPIO_PCA953X
        ARM: dts: omap5-uevm.dts: fix i2c5 pinctrl offsets
        ARM: OMAP2+: AM43XX: Enable autoidle for clks in am43xx_init_late
        ARM: dts: am57xx-beagle-x15: Update Phy supplies
        regulator: pbias: program pbias register offset in pbias driver
        ARM: omap2plus_defconfig: Enable MUSB DMA support
        ARM: DRA752: Add ID detect for ES2.0
        ARM: OMAP3: vc: fix 'or' always true warning
        ARM: OMAP2+: Fix booting if no timer parent clock is available
        ARM: OMAP2+: omap-device: fix race deferred probe of omap_hsmmc vs 
omap_device_late_init

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit d8cc3972b2178f9fe532306330f76bf51cb0d8bd
  Merge: c91d707 09185e2
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 26 21:05:23 2015 -0400

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6

      Pull crypto fixes from Herbert Xu:
       "This fixes the following issues:

         - check the return value of platform_get_irq as signed int in xgene.

         - skip adf_dev_restore on virtual functions in qat.

         - fix double-free with backlogged requests in marvell_cesa"

      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
        hwrng: xgene - fix handling platform_get_irq
        crypto: qat - VF should never trigger SBR on PH
        crypto: marvell - properly handle CRYPTO_TFM_REQ_MAY_BACKLOG-flagged 
requests

  commit c91d7072952993f96896c2fc9868f55924e7ba6c
  Merge: bcba282 673681ca
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 26 21:02:42 2015 -0400

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending

      Pull SCSI target fixes from Nicholas Bellinger:
       "This includes a iser-target series from Jenny + Sagi @ Mellanox that
        addresses the few remaining active I/O shutdown bugs, along with a
        patch to support zero-copy for immediate data payloads that gives a
        nice performance improvement for small block WRITEs.

        Also included are some recent >= v4.2 regression bug-fixes.  The most
        notable is a RCU conversion regression for SPC-3 PR registrations, and
        recent removal of obsolete RFC-3720 markers that introduced a login
        regression bug with MSFT iSCSI initiators.

        Thanks to everyone who has been testing + reporting bugs for v4.x"

      * git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending:
        iscsi-target: Avoid OFMarker + IFMarker negotiation
        target: Make TCM_WRITE_PROTECT failure honor D_SENSE bit
        target: Fix target_sense_desc_format NULL pointer dereference
        target: Propigate backend read-only to core_tpg_add_lun
        target: Fix PR registration + APTPL RCU conversion regression
        iser-target: Skip data copy if all the command data comes as immediate
        iser-target: Change the recv buffers posting logic
        iser-target: Fix pending connections handling in target stack shutdown 
sequnce
        iser-target: Remove np_ prefix from isert_np members
        iser-target: Remove unused variables
        iser-target: Put the reference on commands waiting for unsol data
        iser-target: remove command with state ISTATE_REMOVE

  commit bcba282ab399eec1c8b8dcb49c43a33813971913
  Merge: fb740f9 b473197
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 26 21:00:28 2015 -0400

      Merge tag 'usb-4.3-rc3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb

      Pull USB fixes from Greg KH:
       "Here are some USB driver fixes for 4.3-rc3.

        There's the usual assortment of new device ids, combined with xhci and
        gadget driver fixes.  Full details in the shortlog.  All of these have
        been in linux-next with no reported problems"

      * tag 'usb-4.3-rc3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (34 commits)
        MAINTAINERS: remove amd5536udc USB gadget driver maintainer
        USB: whiteheat: fix potential null-deref at probe
        xhci: init command timeout timer earlier to avoid deleting it 
uninitialized
        xhci: change xhci 1.0 only restrictions to support xhci 1.1
        usb: xhci: exit early in xhci_setup_device() if we're halted or dying
        usb: xhci: stop everything on the first call to xhci_stop
        usb: xhci: Clear XHCI_STATE_DYING on start
        usb: xhci: lock mutex on xhci_stop
        xhci: Move xhci_pme_quirk() behind #ifdef CONFIG_PM
        xhci: give command abortion one more chance before killing xhci
        usb: Use the USB_SS_MULT() macro to get the burst multiplier.
        usb: dwc3: gadget: Fix BUG in RT config
        usb: musb: fix cppi channel teardown for isoch transfer
        usb: phy: isp1301: Export I2C module alias information
        usb: gadget: drop null test before destroy functions
        usb: gadget: dummy_hcd: in transfer(), return data sent, not limit
        usb: gadget: dummy_hcd: fix rescan logic for transfer
        usb: gadget: dummy_hcd: fix unneeded else-if condition
        usb: gadget: dummy_hcd: emulate sending zlp in packet logic
        usb: musb: dsps: fix polling in device-only mode
        ...

  commit fb740f9bab3b3c049d6207b148e45de05163b6e5
  Merge: b11e7b8 f7a7651
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 26 20:58:38 2015 -0400

      Merge tag 'tty-4.3-rc3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty

      Pull serial driver fix from Greg KH:
       "Here is one serial driver fix for 4.3-rc3 that resolves a module
        loading issue due to splitting up of the 8250 driver into smaller
        pieces.  It's been in linux-next with no reported problems"

      * tag 'tty-4.3-rc3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
        tty: serial: Add missing module license for 8250_base.ko

  commit b11e7b81bf94f633ae44f12a3d2e198277781952
  Merge: 7c1efea 74c600e
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 26 20:56:50 2015 -0400

      Merge tag 'staging-4.3-rc3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging

      Pull staging driver fixes from Greg KH:
       "Here are some tiny staging driver and documentation fixes for 4.3-rc3.

        All of these resolve reported issues that people have found and have
        been in the linux-next tree for a while with no problems"

      * tag 'staging-4.3-rc3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
        MAINTAINERS: Update email address for Martyn Welch
        staging: ion: fix corruption of ion_import_dma_buf
        staging: dgap: Remove myself from the MAINTAINERS file
        staging: most: Add dependency to HAS_IOMEM
        staging: unisys: remove reference of visorutil
        staging: unisys: visornic: handle error return from device registration
        staging: unisys: stop device registration before visorbus registration
        staging: unisys: visorbus: Unregister driver on error
        staging: unisys: visornic: Fix receive bytes statistics
        staging: unisys: unregister netdev when create debugfs fails
        staging: fbtft: replace master->setup() with spi_setup()
        staging: fbtft: fix 9-bit SPI support detection
        staging/lustre: change Lustre URLs and mailing list
        staging/android: Update ION TODO per LPC discussion
        Staging: most: MOST and MOSTCORE should depend on HAS_DMA
        staging: most: fix HDM_USB dependencies and build errors

  commit 7c1efeae6d7d7b1ba10453e35ee4c2de1d814c2b
  Merge: 64b796e 2110d70
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 26 20:54:53 2015 -0400

      Merge tag 'driver-core-4.3-rc3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core

      Pull driver core fix from Greg KH:
       "Here is one driver core fix for 4.3-rc3 that resolves a reported oops"

      * tag 'driver-core-4.3-rc3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        cpu/cacheinfo: Fix teardown path

  commit 64b796e23172850cab313e2e411b58fd391eec95
  Merge: 518a7cb 5031403
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 26 20:53:15 2015 -0400

      Merge tag 'char-misc-4.3-rc3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc

      Pull char/misc driver fixes from Greg KH:
       "Here's some tiny char and misc driver fixes that resolve some reported
        errors for 4.3-rc3.

        All of these have been in linux-next with no problems for a while"

      * tag 'char-misc-4.3-rc3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
        extcon: Fix attached value returned by is_extcon_changed
        Drivers: hv: vmbus: fix init_vp_index() for reloading hv_netvsc
        mei: fix debugfs files leak on error path
        thunderbolt: Allow loading of module on recent Apple MacBooks with 
thunderbolt 2 controller

  commit af71b980c0d20586cc331b617c47094a8ec7e1db
  Author: Len Brown <len.brown@xxxxxxxxx>
  Date:   Sat Sep 26 09:49:55 2015 -0400

      tools/power turbosat: update version number

      Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

  commit 518a7cb6980cd640c7f979d29021ad870f60d7d7
  Merge: d4a748a bdb06cb
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 26 06:01:33 2015 -0400

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

      Pull networking fixes from David Miller:

       1) When we run a tap on netlink sockets, we have to copy mmap'd SKBs
          instead of cloning them.  From Daniel Borkmann.

       2) When converting classical BPF into eBPF, fix the setting of the
          source reg to BPF_REG_X.  From Tycho Andersen.

       3) Fix igmpv3/mldv2 report parsing in the bridge multicast code, from
          Linus Lussing.

       4) Fix dst refcounting for ipv6 tunnels, from Martin KaFai Lau.

       5) Set NLM_F_REPLACE flag properly when replacing ipv6 routes, from
          Roopa Prabhu.

       6) Add some new cxgb4 PCI device IDs, from Hariprasad Shenai.

       7) Fix headroom tests and SKB leaks in ipv6 fragmentation code, from
          Florian Westphal.

       8) Check DMA mapping errors in bna driver, from Ivan Vecera.

       9) Several 8139cp bug fixes (dev_kfree_skb_any in interrupt context,
          misclearing of interrupt status in TX timeout handler, etc.) from
          David Woodhouse.

      10) In tipc, reset SKB header pointer after skb_linearize(), from Erik
          Hugne.

      11) Fix autobind races et al. in netlink code, from Herbert Xu with
          help from Tejun Heo and others.

      12) Missing SET_NETDEV_DEV in sunvnet driver, from Sowmini Varadhan.

      13) Fix various races in timewait timer and reqsk_queue_hadh_req, from
          Eric Dumazet.

      14) Fix array overruns in mac80211, from Johannes Berg and Dan
          Carpenter.

      15) Fix data race in rhashtable_rehash_one(), from Dmitriy Vyukov.

      16) Fix race between poll_one_napi and napi_disable, from Neil Horman.

      17) Fix byte order in geneve tunnel port config, from John W Linville.

      18) Fix handling of ARP replies over lightweight tunnels, from Jiri
          Benc.

      19) We can loop when fib rule dumps cross multiple SKBs, fix from Wilson
          Kok and Roopa Prabhu.

      20) Several reference count handling bug fixes in the PHY/MDIO layer
          from Russel King.

      21) Fix lockdep splat in ppp_dev_uninit(), from Guillaume Nault.

      22) Fix crash in icmp_route_lookup(), from David Ahern.

      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (116 commits)
        net: Fix panic in icmp_route_lookup
        net: update docbook comment for __mdiobus_register()
        ppp: fix lockdep splat in ppp_dev_uninit()
        net: via/Kconfig: GENERIC_PCI_IOMAP required if PCI not selected
        phy: marvell: add link partner advertised modes
        net: fix net_device refcounting
        phy: add phy_device_remove()
        phy: fixed-phy: properly validate phy in fixed_phy_update_state()
        net: fix phy refcounting in a bunch of drivers
        of_mdio: fix MDIO phy device refcounting
        phy: add proper phy struct device refcounting
        phy: fix mdiobus module safety
        net: dsa: fix of_mdio_find_bus() device refcount leak
        phy: fix of_mdio_find_bus() device refcount leak
        ip6_tunnel: Reduce log level in ip6_tnl_err() to debug
        ip6_gre: Reduce log level in ip6gre_err() to debug
        fib_rules: fix fib rule dumps across multiple skbs
        bnx2x: byte swap rss_key to comply to Toeplitz specs
        net: revert "net_sched: move tp->root allocation into fw_init()"
        lwtunnel: remove source and destination UDP port config option
        ...

  commit 2530e39947d80901e8c56f1c1950437eb9f48354
  Merge: 7e5560a b5cabbc
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Sat Sep 26 08:15:52 2015 +0200

      Merge tag 'perf-urgent-for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent

      Pull perf/urgent fixes from Arnaldo Carvalho de Melo:

        - Fix copying of /proc/kcore made to the ~/.debug/ DSO cache to allow 
using
          objdump with kcore files. (Adrian Hunter)

        - Fix adding perf probes in kernel module functions. (Arnaldo Carvalho 
de Melo)

      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit a2b7b74945dbfe5d734eafe8aa52f9f1f8bc6931
  Author: Len Brown <len.brown@xxxxxxxxx>
  Date:   Sat Sep 26 00:12:38 2015 -0400

      tools/power turbostat: SKL: Adjust for TSC difference from base frequency

      On a Skylake with 1500MHz base frequency,
      the TSC runs at 1512MHz.

      This is because the TSC is no longer in the n*100 MHz BCLK domain,
      but is now in the m*24MHz crystal clock domain. (24 MHz * 63 = 1512 MHz)

      This adds error to several calculations in turbostat,
      unless the TSC sample sizes are adjusted for this difference.

      Note that calculations in the time domain are immune
      from this issue, as the timing sub-system has already
      calibrated the TSC against a known wall clock.

      AVG_MHz = APERF_delta/measurement_interval

        need no adjustment.  APERF_delta is in the BCLK domain,
        and measurement_interval is in the time domain.

      TSC_MHz  =  TSC_delta/measurement_interval

        needs no adjustment -- as we really do want to report
        the actual measured TSC delta here, and measurement_interval
        is in the accurate time domain.

      %Busy = MPERF_delta/TSC_delta

        needs adjustment to use TSC_BCLK_DOMAIN_delta.
        TSC_BCLK_DOMAIN_delta = TSC_delta * base_hz / tsc_hz

      Bzy_MHz = TSC_delta/APERF_delta/MPERF_delta/measurement_interval

        need adjustment as above.

      No other metrics in turbostat need to be adjusted.

      Before:

           CPU Avg_MHz   %Busy Bzy_MHz TSC_MHz
             -     550   24.84    2216    1512
             0    2191   98.73    2219    1514
             2       0    0.01    2130    1512
             1       9    0.43    2016    1512
             3       2    0.08    2016    1512

      After:

           CPU Avg_MHz   %Busy Bzy_MHz TSC_MHz
             -     550   25.05    2198    1512
             0    2190   99.62    2199    1512
             2       0    0.01    2152    1512
             1       9    0.46    2000    1512
             3       2    0.10    2000    1512

      Note that in this example, the "Before" Bzy_MHz
      was reported as exceeding the 2200 max turbo rate.
      Also, even a pinned spin loop would not be reported
      as over 99% busy.

      Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

  commit b2b34dfe4d9aa4c468fc363b3b666974783ed1f9
  Author: Hubert Chrzaniuk <hubert.chrzaniuk@xxxxxxxxx>
  Date:   Mon Sep 14 13:31:00 2015 +0200

      tools/power turbostat: KNL workaround for %Busy and Avg_MHz

      KNL increments APERF and MPERF every 1024 clocks.
      This is compliant with the architecture specification,
      which requires that only the ratio of APERF/MPERF need be valid.

      However, turbostat takes advantage of the fact that these
      two MSRs increment every un-halted clock
      at the actual and base frequency:

      AVG_MHz = APERF_delta/measurement_interval

      %Busy = MPERF_delta/TSC_delta

      This quirk is needed for these calculations to also work on KNL,
      which would otherwise show a value 1024x smaller than expected.

      Signed-off-by: Hubert Chrzaniuk <hubert.chrzaniuk@xxxxxxxxx>
      Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

  commit 756357b8e4b072fd5ee86421f794e071a348802b
  Author: Len Brown <len.brown@xxxxxxxxx>
  Date:   Fri Sep 25 21:12:39 2015 -0400

      tools/power turbostat: IVB Xeon: fix --debug regression

      Staring in Linux-4.3-rc1,
      commit 6fb3143b561c ("tools/power turbostat: dump CONFIG_TDP")
      touches MSR 0x648, which is not supported on IVB-Xeon.
      This results in "turbostat --debug" exiting on those systems:

      turbostat: /dev/cpu/2/msr offset 0x648 read failed: Input/output error

      Remove IVB-Xeon from the list of machines supporting with that MSR.

      Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

  commit bdb06cbf77cb01911694cc9076ffa8196b7b9b61
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 15:31:29 2015 -0600

      net: Fix panic in icmp_route_lookup

      Andrey reported a panic:

      [ 7249.865507] BUG: unable to handle kernel pointer dereference at 
000000b4
      [ 7249.865559] IP: [<c16afeca>] icmp_route_lookup+0xaa/0x320
      [ 7249.865598] *pdpt = 0000000030f7f001 *pde = 0000000000000000
      [ 7249.865637] Oops: 0000 [#1]
      ...
      [ 7249.866811] CPU: 0 PID: 0 Comm: swapper/0 Not tainted
      4.3.0-999-generic #201509220155
      [ 7249.866876] Hardware name: MSI MS-7250/MS-7250, BIOS 080014  08/02/2006
      [ 7249.866916] task: c1a5ab00 ti: c1a52000 task.ti: c1a52000
      [ 7249.866949] EIP: 0060:[<c16afeca>] EFLAGS: 00210246 CPU: 0
      [ 7249.866981] EIP is at icmp_route_lookup+0xaa/0x320
      [ 7249.867012] EAX: 00000000 EBX: f483ba48 ECX: 00000000 EDX: f2e18a00
      [ 7249.867045] ESI: 000000c0 EDI: f483ba70 EBP: f483b9ec ESP: f483b974
      [ 7249.867077]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
      [ 7249.867108] CR0: 8005003b CR2: 000000b4 CR3: 36ee07c0 CR4: 000006f0
      [ 7249.867141] Stack:
      [ 7249.867165]  320310ee 00000000 00000042 320310ee 00000000 c1aeca00
      f3920240 f0c69180
      [ 7249.867268]  f483ba04 f855058b a89b66cd f483ba44 f8962f4b 00000000
      e659266c f483ba54
      [ 7249.867361]  8004753c f483ba5c f8962f4b f2031140 000003c1 ffbd8fa0
      c16b0e00 00000064
      [ 7249.867448] Call Trace:
      [ 7249.867494]  [<f855058b>] ? e1000_xmit_frame+0x87b/0xdc0 [e1000e]
      [ 7249.867534]  [<f8962f4b>] ? tcp_in_window+0xeb/0xb10 [nf_conntrack]
      [ 7249.867576]  [<f8962f4b>] ? tcp_in_window+0xeb/0xb10 [nf_conntrack]
      [ 7249.867615]  [<c16b0e00>] ? icmp_send+0xa0/0x380
      [ 7249.867648]  [<c16b102f>] icmp_send+0x2cf/0x380
      [ 7249.867681]  [<f89c8126>] nf_send_unreach+0xa6/0xc0 [nf_reject_ipv4]
      [ 7249.867714]  [<f89cd0da>] reject_tg+0x7a/0x9f [ipt_REJECT]
      [ 7249.867746]  [<f88c29a7>] ipt_do_table+0x317/0x70c [ip_tables]
      [ 7249.867780]  [<f895e0a6>] ? __nf_conntrack_find_get+0x166/0x3b0
      [nf_conntrack]
      [ 7249.867838]  [<f895eea8>] ? nf_conntrack_in+0x398/0x600 [nf_conntrack]
      [ 7249.867889]  [<f84c0035>] iptable_filter_hook+0x35/0x80 
[iptable_filter]
      [ 7249.867933]  [<c16776a1>] nf_iterate+0x71/0x80
      [ 7249.867970]  [<c1677715>] nf_hook_slow+0x65/0xc0
      [ 7249.868002]  [<c1681811>] __ip_local_out_sk+0xc1/0xd0
      [ 7249.868034]  [<c1680f30>] ? ip_forward_options+0x1a0/0x1a0
      [ 7249.868066]  [<c1681836>] ip_local_out_sk+0x16/0x30
      [ 7249.868097]  [<c1684054>] ip_send_skb+0x14/0x80
      [ 7249.868129]  [<c16840f4>] ip_push_pending_frames+0x34/0x40
      [ 7249.868163]  [<c16844a2>] ip_send_unicast_reply+0x282/0x310
      [ 7249.868196]  [<c16a0863>] tcp_v4_send_reset+0x1b3/0x380
      [ 7249.868227]  [<c16a1b63>] tcp_v4_rcv+0x323/0x990
      [ 7249.868257]  [<c16776a1>] ? nf_iterate+0x71/0x80
      [ 7249.868289]  [<c167dc2b>] ip_local_deliver_finish+0x8b/0x230
      [ 7249.868322]  [<c167df4c>] ip_local_deliver+0x4c/0xa0
      [ 7249.868353]  [<c167dba0>] ? ip_rcv_finish+0x390/0x390
      [ 7249.868384]  [<c167d88c>] ip_rcv_finish+0x7c/0x390
      [ 7249.868415]  [<c167e280>] ip_rcv+0x2e0/0x420
      ...

      Prior to the VRF change the oif was not set in the flow struct, so the
      VRF support should really have only added the vrf_master_ifindex lookup.

      Fixes: 613d09b30f8b ("net: Use VRF device index for lookups on TX")
      Cc: Andrey Melnikov <temnota.am@xxxxxxxxx>
      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 59f069789c98678710ed30a4be0daa3546ec82c7
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Sep 25 11:56:56 2015 +0100

      net: update docbook comment for __mdiobus_register()

      Update the docbook comment for __mdiobus_register() to include the new
      module owner argument.  This resolves a warning found by the 0-day
      builder.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b4731977243c1ae9cfd8b3971ffc15425b7d7545
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 25 20:45:27 2015 -0700

      MAINTAINERS: remove amd5536udc USB gadget driver maintainer

      Thomas can no longer work on the driver, so he asked me to mark the
      MAINTAINER entry as "Orphan" with the hope that someone else would
      someday pick it up.

      Cc: Thomas Dahlmann <dahlmann.thomas@xxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 2866196f294954ce9fa226825c8c1eaa64c7da8a
  Author: Doug Ledford <dledford@xxxxxxxxxx>
  Date:   Fri Sep 25 22:30:24 2015 -0400

      IB/ipoib: increase the max mcast backlog queue

      When performing sendonly joins, we queue the packets that trigger
      the join until the join completes.  This may take on the order of
      hundreds of milliseconds.  It is easy to have many more than three
      packets come in during that time.  Expand the maximum queue depth
      in order to try and prevent dropped packets during the time it
      takes to join the multicast group.

      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit d323efc786910bcc0c8f8b9f97780c70544ac4df
  Author: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 14:02:46 2015 +0800

      ACPI / PCI: Remove duplicated penalty on SCI IRQ

      Now we have dedicated interface acpi_penalize_sci_irq() to penalize
      ISA IRQ used by ACPI SCI, so remove duplicated code to penalize ACPI SCI
      in acpi_irq_penalty_init().

      Signed-off-by: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Acked-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 5ebc76035303016ec41bb752bec156ea9fde7c34
  Author: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 14:02:45 2015 +0800

      ACPI, PCI, irq: Do not share PCI IRQ with ISA IRQ

      Avoid IRQs occupied by ISA IRQs when allocating IRQs for PCI link devices,
      otherwise it may cause interrupt storm due to incompatible pin attributes.

      This issue was triggered on a KVM virtual machine, which
       1) uses IRQ9 for SCI in high level mode.
       2) defines an PCI interrupt link device (LNKS) with IRQ9 as the only
          possible irq.
       3) has an PCI device referring to link device LNKS.
      So it causes interrupt storm when enabling the PCI device because PCI IRQ
      works in low level mode.

      Signed-off-by: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Acked-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 15b94fa32a422f4b97dc34e4b7060ec83d10bee5
  Author: Lv Zheng <lv.zheng@xxxxxxxxx>
  Date:   Thu Sep 24 14:54:40 2015 +0800

      ACPI / EC: Fix a memory leak issue in acpi_ec_query()

      When query handler is not found, "result" is actually stil 0, and
      "struct acpi_ec_query" is not NULL, so the deletion code of
      "struct acpi_ec_query" at the end of the function cannot be invoked.
      As a consequence, memory leak can be observed.

      The issue is introduced by this commit:
        Commit: 02b771b64b73226052d6e731a0987db3b47281e9
        Subject: ACPI / EC: Fix an issue caused by the serialized _Qxx

      This patch fixes such memory leakage.

      Fixes: 02b771b64b73 (ACPI / EC: Fix an issue caused by the serialized 
_Qxx evaluations)
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit d4a748a10e50d95992ae67677f1a1a13e2d6ed47
  Merge: 03e8f64 9badce0
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 25 16:20:55 2015 -0700

      Merge branch 'for-4.3-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup

      Pull another cgroup fix from Tejun Heo:
       "The cgroup writeback support got inadvertently enabled for traditional
        hierarchies revealing two regressions which are currently being worked
        on.  It shouldn't have been enabled on traditional hierarchies, so
        disable it on them.  This is enough to make the regressions go away
        for people who aren't experimenting with cgroup"

      * 'for-4.3-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cgroup, writeback: don't enable cgroup writeback on traditional 
hierarchies

  commit e1a2d49cd5ef551c51be95cc037033e9e582b0cd
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Sep 24 12:28:44 2015 -0700

      PM / OPP: Fix typo modifcation -> modification

      Reported-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 58a89ecaca53736aa465170530acea4f8be34ab4
  Author: Guillaume Nault <g.nault@xxxxxxxxxxxx>
  Date:   Thu Sep 24 12:54:01 2015 +0200

      ppp: fix lockdep splat in ppp_dev_uninit()

      ppp_dev_uninit() locks all_ppp_mutex while under rtnl mutex protection.
      ppp_create_interface() must then lock these mutexes in that same order
      to avoid possible deadlock.

      [  120.880011] ======================================================
      [  120.880011] [ INFO: possible circular locking dependency detected ]
      [  120.880011] 4.2.0 #1 Not tainted
      [  120.880011] -------------------------------------------------------
      [  120.880011] ppp-apitest/15827 is trying to acquire lock:
      [  120.880011]  (&pn->all_ppp_mutex){+.+.+.}, at: [<ffffffffa0145f56>] 
ppp_dev_uninit+0x64/0xb0 [ppp_generic]
      [  120.880011]
      [  120.880011] but task is already holding lock:
      [  120.880011]  (rtnl_mutex){+.+.+.}, at: [<ffffffff812e4255>] 
rtnl_lock+0x12/0x14
      [  120.880011]
      [  120.880011] which lock already depends on the new lock.
      [  120.880011]
      [  120.880011]
      [  120.880011] the existing dependency chain (in reverse order) is:
      [  120.880011]
      [  120.880011] -> #1 (rtnl_mutex){+.+.+.}:
      [  120.880011]        [<ffffffff81073a6f>] lock_acquire+0xcf/0x10e
      [  120.880011]        [<ffffffff813ab18a>] mutex_lock_nested+0x56/0x341
      [  120.880011]        [<ffffffff812e4255>] rtnl_lock+0x12/0x14
      [  120.880011]        [<ffffffff812d9d94>] register_netdev+0x11/0x27
      [  120.880011]        [<ffffffffa0147b17>] ppp_ioctl+0x289/0xc98 
[ppp_generic]
      [  120.880011]        [<ffffffff8113b367>] do_vfs_ioctl+0x4ea/0x532
      [  120.880011]        [<ffffffff8113b3fd>] SyS_ioctl+0x4e/0x7d
      [  120.880011]        [<ffffffff813ad7d7>] 
entry_SYSCALL_64_fastpath+0x12/0x6f
      [  120.880011]
      [  120.880011] -> #0 (&pn->all_ppp_mutex){+.+.+.}:
      [  120.880011]        [<ffffffff8107334e>] __lock_acquire+0xb07/0xe76
      [  120.880011]        [<ffffffff81073a6f>] lock_acquire+0xcf/0x10e
      [  120.880011]        [<ffffffff813ab18a>] mutex_lock_nested+0x56/0x341
      [  120.880011]        [<ffffffffa0145f56>] ppp_dev_uninit+0x64/0xb0 
[ppp_generic]
      [  120.880011]        [<ffffffff812d5263>] 
rollback_registered_many+0x19e/0x252
      [  120.880011]        [<ffffffff812d5381>] rollback_registered+0x29/0x38
      [  120.880011]        [<ffffffff812d53fa>] 
unregister_netdevice_queue+0x6a/0x77
      [  120.880011]        [<ffffffffa0146a94>] ppp_release+0x42/0x79 
[ppp_generic]
      [  120.880011]        [<ffffffff8112d9f6>] __fput+0xec/0x192
      [  120.880011]        [<ffffffff8112dacc>] ____fput+0x9/0xb
      [  120.880011]        [<ffffffff8105447a>] task_work_run+0x66/0x80
      [  120.880011]        [<ffffffff81001801>] 
prepare_exit_to_usermode+0x8c/0xa7
      [  120.880011]        [<ffffffff81001900>] 
syscall_return_slowpath+0xe4/0x104
      [  120.880011]        [<ffffffff813ad931>] int_ret_from_sys_call+0x25/0x9f
      [  120.880011]
      [  120.880011] other info that might help us debug this:
      [  120.880011]
      [  120.880011]  Possible unsafe locking scenario:
      [  120.880011]
      [  120.880011]        CPU0                    CPU1
      [  120.880011]        ----                    ----
      [  120.880011]   lock(rtnl_mutex);
      [  120.880011]                                lock(&pn->all_ppp_mutex);
      [  120.880011]                                lock(rtnl_mutex);
      [  120.880011]   lock(&pn->all_ppp_mutex);
      [  120.880011]
      [  120.880011]  *** DEADLOCK ***

      Fixes: 8cb775bc0a34 ("ppp: fix device unregistration upon netns deletion")
      Reported-by: Sedat Dilek <sedat.dilek@xxxxxxxxx>
      Tested-by: Sedat Dilek <sedat.dilek@xxxxxxxxx>
      Signed-off-by: Guillaume Nault <g.nault@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 21343ac21ec7d871e94e98e288f3398a4207d9c0
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Thu Sep 24 15:46:53 2015 +0530

      net: via/Kconfig: GENERIC_PCI_IOMAP required if PCI not selected

      The builds of allmodconfig of avr32 is failing with:

      drivers/net/ethernet/via/via-rhine.c:1098:2: error: implicit declaration
      of function 'pci_iomap' [-Werror=implicit-function-declaration]
      drivers/net/ethernet/via/via-rhine.c:1119:2: error: implicit declaration
      of function 'pci_iounmap' [-Werror=implicit-function-declaration]

      The generic empty pci_iomap and pci_iounmap is used only if CONFIG_PCI
      is not defined and CONFIG_GENERIC_PCI_IOMAP is defined.

      Add GENERIC_PCI_IOMAP in the dependency list for VIA_RHINE as we are
      getting build failure when CONFIG_PCI and CONFIG_GENERIC_PCI_IOMAP both
      are not defined.

      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 357cd64c18404309aabefb82019b12773de31a12
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 00:07:17 2015 +0100

      phy: marvell: add link partner advertised modes

      Read the standard link partner advertisment registers and store it in
      phydev->lp_advertising, so ethtool can report this information to
      userspace via ethtool.  Zero it as per genphy if autonegotiation is
      disabled.  Tested with a Marvell 88E1512 PHY.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Reviewed-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 03e8f644868f147e021e8660346890e731c2e435
  Merge: 101688f 2b9dbef
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 25 12:08:41 2015 -0700

      Merge branch 'for-linus-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs

      Pull btrfs fixes from Chris Mason:
       "This is an assorted set I've been queuing up:

        Jeff Mahoney tracked down a tricky one where we ended up starting IO
        on the wrong mapping for special files in btrfs_evict_inode.  A few
        people reported this one on the list.

        Filipe found (and provided a test for) a difficult bug in reading
        compressed extents, and Josef fixed up some quota record keeping with
        snapshot deletion.  Chandan killed off an accounting bug during DIO
        that lead to WARN_ONs as we freed inodes"

      * 'for-linus-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
        Btrfs: keep dropped roots in cache until transaction commit
        Btrfs: Direct I/O: Fix space accounting
        btrfs: skip waiting on ordered range for special files
        Btrfs: fix read corruption of compressed and shared extents
        Btrfs: remove unnecessary locking of cleaner_mutex to avoid deadlock
        Btrfs: don't initialize a space info as full to prevent ENOSPC

  commit c3852ab0e606212de523c1fb1e15adbf9f431619
  Author: Doug Ledford <dledford@xxxxxxxxxx>
  Date:   Fri Sep 25 14:35:01 2015 -0400

      IB/ipoib: Make sendonly multicast joins create the mcast group

      Since IPoIB should, as much as possible, emulate how multicast
      sends work on Ethernet for regular TCP/IP apps, there should be
      no requirement to subscribe to a multicast group before your
      sends are properly sent.  However, due to the difference in how
      multicast is handled on InfiniBand, we must join the appropriate
      multicast group before we can send to it.  Previously we tried
      not to trigger the auto-create feature of the subnet manager when
      doing this because we didn't have tracking of these sendonly
      groups and the auto-creation might never get undone.  The previous
      patch added timing to these sendonly joins and allows us to
      leave them after a reasonable idle expiration time.  So supply
      all of the information needed to auto-create group.

      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit bd99b2e05c4df2a428e5c9dd338289089d0e26df
  Author: Christoph Lameter <cl@xxxxxxxxx>
  Date:   Thu Sep 24 12:00:05 2015 -0500

      IB/ipoib: Expire sendonly multicast joins

      On neighbor expiration, check to see if the neighbor was actually a
      sendonly multicast join, and if so, leave the multicast group as we
      expire the neighbor.

      Signed-off-by: Christoph Lameter <cl@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 101688f534fd322520678a184fdfedc7a21741fc
  Merge: ddff42e 500d701
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 25 11:33:52 2015 -0700

      Merge tag 'nfs-for-4.3-2' of 
git://git.linux-nfs.org/projects/trondmy/linux-nfs

      Pull NFS client bugfixes from Trond Myklebust:
       "Highlights include:

        Stable patches:
         - fix v4.2 SEEK on files over 2 gigs
         - Fix a layout segment reference leak when pNFS I/O falls back to 
inband I/O.
         - Fix recovery of recalled read delegations

        Bugfixes:
         - Fix a case where NFSv4 fails to send CLOSE after a server reboot
         - Fix sunrpc to wait for connections to complete before retrying
         - Fix sunrpc races between transport connect/disconnect and shutdown
         - Fix an infinite loop when layoutget fail with BAD_STATEID
         - nfs/filelayout: Fix NULL reference caused by double freeing of 
fh_array
         - Fix a bogus WARN_ON_ONCE() in O_DIRECT when layout 
commit_through_mds is set
         - Fix layoutreturn/close ordering issues"

      * tag 'nfs-for-4.3-2' of 
git://git.linux-nfs.org/projects/trondmy/linux-nfs:
        NFS41: make close wait for layoutreturn
        NFS: Skip checking ds_cinfo.buckets when lseg's commit_through_mds is 
set
        NFSv4.x/pnfs: Don't try to recover stateids twice in layoutget
        NFSv4: Recovery of recalled read delegations is broken
        NFS: Fix an infinite loop when layoutget fail with BAD_STATEID
        NFS: Do cleanup before resetting pageio read/write to mds
        SUNRPC: xs_sock_mark_closed() does not need to trigger socket autoclose
        SUNRPC: Lock the transport layer on shutdown
        nfs/filelayout: Fix NULL reference caused by double freeing of fh_array
        SUNRPC: Ensure that we wait for connections to complete before retrying
        SUNRPC: drop null test before destroy functions
        nfs: fix v4.2 SEEK on files over 2 gigs
        SUNRPC: Fix races between socket connection and destroy code
        nfs: fix pg_test page count calculation
        Failing to send a CLOSE if file is opened WRONLY and server reboots on 
a 4.x mount

  commit ddff42e5926bc0fcfcbc7d035cdbc325c36351bc
  Merge: 966966a 7f57d80
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 25 11:25:30 2015 -0700

      Merge tag 'sound-4.3-rc3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound

      Pull sound fixes from Takashi Iwai:
       "This ended up with a larger set of fixes than wished, unfortunately.

        As diffstat shows, the majority of changes are for various ASoC
        drivers (Realtek, Wolfson codec drivers, etc), in addition to a couple
        of HD-audio regression fixes.  All these are reasonably small and
        nothing to scare much"

      * tag 'sound-4.3-rc3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (29 commits)
        ALSA: hda - Disable power_save_node for Thinkpads
        ALSA: hda/tegra - async probe for avoiding module loading deadlock
        ASoC: rt5645: Prevent the pop sound in case of playback and the jack is 
plugging
        ASoC: rt5645: Increase the delay time to remove the pop sound
        ASoC: rt5645: Use the type SOC_DAPM_SINGLE_AUTODISABLE to prevent the 
weird sound in runtime of power up
        ASoC: pxa: pxa2xx-ac97: fix dma requestor lines
        MAINTAINERS: Update website and git repo for Wolfson Microelectronics
        ASoC: fsl_ssi: Fix checking of dai format for AC97 mode
        ASoC: wm0010: fix error path
        ASoC: wm0010: fix memory leak
        ASoC: wm8960: correct the max register value of mic boost pga
        ASoC: wm8962: remove 64k sample rate support
        ASoC: davinci-mcasp: Fix devm_kasprintf format string
        ASoC: fix broken pxa SoC support
        ASoC: davinci-mcasp: Set .symmetric_rates = 1 in snd_soc_dai_driver
        ASoC: au1x: psc-i2s: Fix unused variable 'ret' warning
        ASoC: SPEAr: Make SND_SPEAR_SOC select SND_SOC_GENERIC_DMAENGINE_PCM
        ASoC: mediatek: Increase periods_min in capture
        ASoC: davinci-mcasp: Revise the FIFO threshold calculation
        ASoC: wm8960: correct gain value for input PGA and add microphone PGA
        ...

  commit 966966a630d936310ebb0f9bfe9e23a662d00454
  Merge: b6d980f de24c18
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 25 11:16:53 2015 -0700

      Merge tag 'pci-v4.3-fixes-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci

      Pull PCI fixes from Bjorn Helgaas:
       "These are fixes for things we merged for v4.3 (VPD, MSI, and bridge
        window management), and a new Renesas R8A7794 SoC device ID.

        Details:

        Resource management:
         - Revert pci_read_bridge_bases() unification (Bjorn Helgaas)
         - Clear IORESOURCE_UNSET when clipping a bridge window (Bjorn
           Helgaas)

        MSI:
         - Fix MSI IRQ domains for VFs on virtual buses (Alex Williamson)

        Renesas R-Car host bridge driver:
         - Add R8A7794 support (Sergei Shtylyov)

        Miscellaneous:
         - Fix devfn for VPD access through function 0 (Alex Williamson)
         - Use function 0 VPD only for identical functions (Alex Williamson)"

      * tag 'pci-v4.3-fixes-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
        PCI: rcar: Add R8A7794 support
        PCI: Use function 0 VPD for identical functions, regular VPD for others
        PCI: Fix devfn for VPD access through function 0
        PCI/MSI: Fix MSI IRQ domains for VFs on virtual buses
        PCI: Clear IORESOURCE_UNSET when clipping a bridge window
        PCI: Revert "PCI: Call pci_read_bridge_bases() from core instead of 
arch code"

  commit b6d980f49342cbf823ef72fee8a572e43d43bcf8
  Merge: 57cb635 920552b
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 25 10:51:40 2015 -0700

      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

      Pull KVM fixes from Paolo Bonzini:
       "AMD fixes for bugs introduced in the 4.2 merge window, and a few PPC
        bug fixes too"

      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: disable halt_poll_ns as default for s390x
        KVM: x86: fix off-by-one in reserved bits check
        KVM: x86: use correct page table format to check nested page table 
reserved bits
        KVM: svm: do not call kvm_set_cr0 from init_vmcb
        KVM: x86: trap AMD MSRs for the TSeg base and mask
        KVM: PPC: Book3S: Take the kvm->srcu lock in 
kvmppc_h_logical_ci_load/store()
        KVM: PPC: Book3S HV: Pass the correct trap argument to 
kvmhv_commence_exit
        KVM: PPC: Book3S HV: Fix handling of interrupted VCPUs
        kvm: svm: reset mmu on VCPU reset

  commit 57cb635c5cb6eea54af02aea5edd003b6b2715a7
  Merge: ced255c d6eb71a
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 25 10:11:26 2015 -0700

      Merge tag 'powerpc-4.3-3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux

      Pull powerpc fixes from Michael Ellerman:
       - Wire up sys_membarrier()
       - cxl: Fix lockdep warning while creating afu_err_buff from Vaibhav

      * tag 'powerpc-4.3-3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        cxl: Fix lockdep warning while creating afu_err_buff attribute
        powerpc: Wire up sys_membarrier()

  commit 283e8ba2dfde54f8f27d7d0f459a07de79a39d55
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Fri Sep 25 16:31:46 2015 +0100

      MODSIGN: Change from CMS to PKCS#7 signing if the openssl is too old

      The sign-file.c program actually uses CMS rather than PKCS#7 to sign a 
file
      since that allows the target X.509 certificate to be specified by
      subjectKeyId rather than by issuer + serialNumber.

      However, older versions of the OpenSSL crypto library (such as may be 
found
      in CentOS 5.11) don't support CMS.  Assume everything prior to
      OpenSSL-1.0.0 doesn't support CMS and switch to using PKCS#7 in that case.

      Further, the pre-1.0.0 OpenSSL only supports PKCS#7 signing with SHA1, so
      give an error from the sign-file script if the caller requests anything
      other than SHA1.

      The compiler gives the following error with an OpenSSL crypto library
      that's too old:

        HOSTCC  scripts/sign-file
      scripts/sign-file.c:23:25: fatal error: openssl/cms.h: No such file or 
directory
       #include <openssl/cms.h>

      Reported-by: Vinson Lee <vlee@xxxxxxxxxxxxxxxx>
      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
      Acked-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>

  commit e7c87bef7de2417b219d4dbfe8d33a0098a8df54
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Fri Sep 25 16:31:46 2015 +0100

      X.509: Don't strip leading 00's from key ID when constructing key 
description

      Don't strip leading zeros from the crypto key ID when using it to 
construct
      the struct key description as the signature in kernels up to and including
      4.2 matched this aspect of the key.  This means that 1 in 256 keys won't
      actually match if their key ID begins with 00.

      The key ID is stored in the module signature as binary and so must be
      converted to text in order to invoke request_key() - but it isn't stripped
      at this point.

      Something like this is likely to be observed in dmesg when the key is 
loaded:

      [    1.572423] Loaded X.509 cert 'Build time autogenerated kernel
          key: 62a7c3d2da278be024da4af8652c071f3fea33'

      followed by this when we try and use it:

        [    1.646153] Request for unknown module key 'Build time autogenerated
          kernel key: 0062a7c3d2da278be024da4af8652c071f3fea33' err -11

      The 'Loaded' line should show an extra '00' on the front of the hex 
string.

      This problem should not affect 4.3-rc1 and onwards because there the key
      should be matched on one of its auxiliary identities rather than the key
      struct's description string.

      Reported-by: Arjan van de Ven <arjan@xxxxxxxxxxxxxxx>
      Reported-by: Andy Whitcroft <apw@xxxxxxxxxxxxx>
      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>

  commit 292c6091353475d94e2cfb49c29906e88ee967ba
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Fri Sep 25 16:31:45 2015 +0100

      KEYS: Remove unnecessary header #inclusions from extract-cert.c

      Remove headers #included unnecessarily from extract-cert.c lest they cause
      compilation of the tool to fail against an older OpenSSL library.

      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
      Acked-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>

  commit 94c4554ba07adbdde396748ee7ae01e86cf2d8d7
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Fri Sep 25 16:30:08 2015 +0100

      KEYS: Fix race between key destruction and finding a keyring by name

      There appears to be a race between:

       (1) key_gc_unused_keys() which frees key->security and then calls
           keyring_destroy() to unlink the name from the name list

       (2) find_keyring_by_name() which calls key_permission(), thus accessing
           key->security, on a key before checking to see whether the key usage 
is 0
           (ie. the key is dead and might be cleaned up).

      Fix this by calling ->destroy() before cleaning up the core key data -
      including key->security.

      Reported-by: Petr Matousek <pmatouse@xxxxxxxxxx>
      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>

  commit 81fb5e26a9d05674c048803a20cb8f08a1b1c9b8
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Sep 24 10:34:24 2015 +0300

      IB/mlx5: Remove pa_lkey usages

      Since mlx5 driver cannot rely on registration using the
      reserved lkey (global_dma_lkey) it used to allocate a private
      physical address lkey for each allocated pd.
      Commit 96249d70dd70 ("IB/core: Guarantee that a local_dma_lkey
      is available") just does it in the core layer so we can go ahead
      and use that.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit c6790aa9f4fdc26b1246ba36da2fd749663beb65
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Sep 24 10:34:23 2015 +0300

      IB/mlx5: Remove support for IB_DEVICE_LOCAL_DMA_LKEY

      Commit 96249d70dd70 ("IB/core: Guarantee that a local_dma_lkey
      is available") allows ULPs that make use of the local dma key to keep
      working as before by allocating a DMA MR with local permissions and
      converted these consumers to use the MR associated with the PD
      rather then device->local_dma_lkey.

      ConnectIB has some known issues with memory registration
      using the local_dma_lkey (SEND, RDMA, RECV seems to work ok).

      Thus don't expose support for it (remove device->local_dma_lkey
      setting), and take advantage of the above commit such that no regression
      is introduced to working systems.

      The local_dma_lkey support will be restored in CX4 depending on FW
      capability query.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 3cffd930171518821595839c5ce7036894ef0d74
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Sep 24 10:34:22 2015 +0300

      IB/iser: Add module parameter for always register memory

      This module parameter forces memory registration even for
      a continuous memory region. It is true by default as sending
      an all-physical rkey with remote permissions might be insecure.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit bb6c96d72879fe1f674a804eb95b891def4ace61
  Author: Chuck Lever <chuck.lever@xxxxxxxxxx>
  Date:   Thu Sep 24 10:34:21 2015 +0300

      xprtrdma: Replace global lkey with lkey local to PD

      The core API has changed so that devices that do not have a global
      DMA lkey automatically create an mr, per-PD, and make that lkey
      available. The global DMA lkey interface is going away in favor of
      the per-PD DMA lkey.

      The per-PD DMA lkey is always available. Convert xprtrdma to use the
      device's per-PD DMA lkey for regbufs, no matter which memory
      registration scheme is in use.

      Signed-off-by: Chuck Lever <chuck.lever@xxxxxxxxxx>
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Cc: linux-nfs <linux-nfs@xxxxxxxxxxxxxxx>
      Acked-by: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 310b7cec8ea32dcd4e9978423717ce78dd89d45d
  Merge: e116a64 1f93e4a
  Author: Doug Ledford <dledford@xxxxxxxxxx>
  Date:   Fri Sep 25 10:46:07 2015 -0400

      Merge tag 'v4.3-rc2' into k.o/for-4.3-v1

      Linux 4.3-rc2

  commit b5cabbcbd157a4bf5a92dfc85134999a3b55342d
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Thu Sep 24 13:05:22 2015 +0300

      perf tools: Fix copying of /proc/kcore

      A copy of /proc/kcore containing the kernel text can be made to the
      buildid cache. e.g.

        perf buildid-cache -v -k /proc/kcore

      To workaround objdump limitations, a copy is also made when annotating
      against /proc/kcore.

      The copying process stops working from libelf about v1.62 onwards (the
      problem was found with v1.63).

      The cause is that a call to gelf_getphdr() in kcore__add_phdr() fails
      because additional validation has been added to gelf_getphdr().

      The use of gelf_getphdr() is a misguided attempt to get default
      initialization of the Gelf_Phdr structure.  That should not be
      necessary because every member of the Gelf_Phdr structure is
      subsequently assigned.  So just remove the call to gelf_getphdr().

      Similarly, a call to gelf_getehdr() in gelf_kcore__init() can be
      removed also.

      Committer notes:

      Note to stable@xxxxxxxxxx, from Adrian in the cover letter for this
      patchkit:

      The "Fix copying of /proc/kcore" problem goes back to v3.13 if you think
      it is important enough for stable.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1443089122-19082-3-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 597ee40722bf05195f91a41e88e15b79bdab152c
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Thu Sep 24 13:05:21 2015 +0300

      perf intel-pt: Remove no_force_psb from documentation

      no_force_psb was dropped as a late change to the kernel driver.
      Consequently, remove it from the documentation.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1443089122-19082-2-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 266fa2b22294909ddf6e7d2f8acfe07adf9fd978
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Thu Sep 24 11:24:18 2015 -0300

      perf probe: Use existing routine to look for a kernel module by 
dso->short_name

      We have map_groups__find_by_name() to look at the list of modules that
      are in place for a given machine, so use it instead of traversing the
      machine dso list, which also includes DSOs for userspace.

      When merging the user and kernel DSO lists a bug was introduced where
      'perf probe' stopped being able to add probes to modules using its short
      name:

        # perf probe -m usbnet --add usbnet_start_xmit
        usbnet_start_xmit is out of .text, skip it.
          Error: Failed to add events.
        #

      With this fix it works again:

        # perf probe -m usbnet --add usbnet_start_xmit
        Added new event:
          probe:usbnet_start_xmit (on usbnet_start_xmit in usbnet)

        You can now use it in all perf tools, such as:

                perf record -e probe:usbnet_start_xmit -aR sleep 1
        #

      Reported-by: Wang Nan <wangnan0@xxxxxxxxxx>
      Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Fixes: 3d39ac538629 ("perf machine: No need to have two DSOs lists")
      Link: http://lkml.kernel.org/r/20150924015008.GE1897@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 920552b213e3dc832a874b4e7ba29ecddbab31bc
  Author: David Hildenbrand <dahi@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 12:34:53 2015 +0200

      KVM: disable halt_poll_ns as default for s390x

      We observed some performance degradation on s390x with dynamic
      halt polling. Until we can provide a proper fix, let's enable
      halt_poll_ns as default only for supported architectures.

      Architectures are now free to set their own halt_poll_ns
      default value.

      Signed-off-by: David Hildenbrand <dahi@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 58c95070da3a504fbeca7939435bbb062cb96ea3
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Tue Sep 22 10:15:59 2015 +0200

      KVM: x86: fix off-by-one in reserved bits check

      29ecd6601904 ("KVM: x86: avoid uninitialized variable warning",
      2015-09-06) introduced a not-so-subtle problem, which probably
      escaped review because it was not part of the patch context.

      Before the patch, leaf was always equal to iterator.level.  After,
      it is equal to iterator.level - 1 in the call to is_shadow_zero_bits_set,
      and when is_shadow_zero_bits_set does another "-1" the check on
      reserved bits becomes incorrect.  Using "iterator.level" in the call
      fixes this call trace:

      WARNING: CPU: 2 PID: 17000 at arch/x86/kvm/mmu.c:3385 
handle_mmio_page_fault.part.93+0x1a/0x20 [kvm]()
      Modules linked in: tun sha256_ssse3 sha256_generic drbg binfmt_misc ipv6 
vfat fat fuse dm_crypt dm_mod kvm_amd kvm crc32_pclmul aesni_intel aes_x86_64 
lrw gf128mul glue_helper ablk_helper cryptd fam15h_power amd64_edac_mod k10temp 
edac_core amdkfd amd_iommu_v2 radeon acpi_cpufreq
      [...]
      Call Trace:
        dump_stack+0x4e/0x84
        warn_slowpath_common+0x95/0xe0
        warn_slowpath_null+0x1a/0x20
        handle_mmio_page_fault.part.93+0x1a/0x20 [kvm]
        tdp_page_fault+0x231/0x290 [kvm]
        ? emulator_pio_in_out+0x6e/0xf0 [kvm]
        kvm_mmu_page_fault+0x36/0x240 [kvm]
        ? svm_set_cr0+0x95/0xc0 [kvm_amd]
        pf_interception+0xde/0x1d0 [kvm_amd]
        handle_exit+0x181/0xa70 [kvm_amd]
        ? kvm_arch_vcpu_ioctl_run+0x68b/0x1730 [kvm]
        kvm_arch_vcpu_ioctl_run+0x6f6/0x1730 [kvm]
        ? kvm_arch_vcpu_ioctl_run+0x68b/0x1730 [kvm]
        ? preempt_count_sub+0x9b/0xf0
        ? mutex_lock_killable_nested+0x26f/0x490
        ? preempt_count_sub+0x9b/0xf0
        kvm_vcpu_ioctl+0x358/0x710 [kvm]
        ? __fget+0x5/0x210
        ? __fget+0x101/0x210
        do_vfs_ioctl+0x2f4/0x560
        ? __fget_light+0x29/0x90
        SyS_ioctl+0x4c/0x90
        entry_SYSCALL_64_fastpath+0x16/0x73
      ---[ end trace 37901c8686d84de6 ]---

      Reported-by: Borislav Petkov <bp@xxxxxxxxx>
      Tested-by: Borislav Petkov <bp@xxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 6fec21449a62702a582cecbb0b351363e039c95e
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Tue Sep 22 23:02:14 2015 +0200

      KVM: x86: use correct page table format to check nested page table 
reserved bits

      Intel CPUID on AMD host or vice versa is a weird case, but it can
      happen.  Handle it by checking the host CPU vendor instead of the
      guest's in reset_tdp_shadow_zero_bits_mask.  For speed, the
      check uses the fact that Intel EPT has an X (executable) bit while
      AMD NPT has NX.

      Reported-by: Borislav Petkov <bp@xxxxxxxxx>
      Tested-by: Borislav Petkov <bp@xxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 79a8059d244e99454e474902e4325ee9b50e9178
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Mon Sep 21 07:46:55 2015 +0200

      KVM: svm: do not call kvm_set_cr0 from init_vmcb

      kvm_set_cr0 may want to call kvm_zap_gfn_range and thus access the
      memslots array (SRCU protected).  Using a mini SRCU critical section
      is ugly, and adding it to kvm_arch_vcpu_create doesn't work because
      the VMX vcpu_create callback calls synchronize_srcu.

      Fixes this lockdep splat:

      ===============================
      [ INFO: suspicious RCU usage. ]
      4.3.0-rc1+ #1 Not tainted
      -------------------------------
      include/linux/kvm_host.h:488 suspicious rcu_dereference_check() usage!

      other info that might help us debug this:
      rcu_scheduler_active = 1, debug_locks = 0
      1 lock held by qemu-system-i38/17000:
       #0:  (&(&kvm->mmu_lock)->rlock){+.+...}, at: 
kvm_zap_gfn_range+0x24/0x1a0 [kvm]

      [...]
      Call Trace:
       dump_stack+0x4e/0x84
       lockdep_rcu_suspicious+0xfd/0x130
       kvm_zap_gfn_range+0x188/0x1a0 [kvm]
       kvm_set_cr0+0xde/0x1e0 [kvm]
       init_vmcb+0x760/0xad0 [kvm_amd]
       svm_create_vcpu+0x197/0x250 [kvm_amd]
       kvm_arch_vcpu_create+0x47/0x70 [kvm]
       kvm_vm_ioctl+0x302/0x7e0 [kvm]
       ? __lock_is_held+0x51/0x70
       ? __fget+0x101/0x210
       do_vfs_ioctl+0x2f4/0x560
       ? __fget_light+0x29/0x90
       SyS_ioctl+0x4c/0x90
       entry_SYSCALL_64_fastpath+0x16/0x73

      Reported-by: Borislav Petkov <bp@xxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 7e5560a5648ab2bce7199c73b9c2a51b846f5541
  Author: Geliang Tang <geliangtang@xxxxxxx>
  Date:   Thu Sep 24 04:48:53 2015 -0700

      perf/x86: Change test_aperfmperf() and test_intel() to static

      Fixes the following sparse warnings:

       arch/x86/kernel/cpu/perf_event_msr.c:13:6: warning: symbol
       'test_aperfmperf' was not declared. Should it be static?

       arch/x86/kernel/cpu/perf_event_msr.c:18:6: warning: symbol
       'test_intel' was not declared. Should it be static?

      Signed-off-by: Geliang Tang <geliangtang@xxxxxxx>
      Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/4588e8ab09638458f2451af572827108be3b4a36.1443123796.git.geliangtang@xxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 673681cafa99776e334c3e61cafa2cf115950c32
  Author: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 22 22:32:14 2015 -0700

      iscsi-target: Avoid OFMarker + IFMarker negotiation

      This patch fixes a v4.2+ regression introduced by commit c04a6091
      that removed support for obsolete sync-and-steering markers usage
      as originally defined in RFC-3720.

      The regression would involve attempting to send OFMarker=No +
      IFMarker=No keys during opertional negotiation login phase,
      including when initiators did not actually propose these keys.

      The result for MSFT iSCSI initiators would be random junk in
      TCP stream after the last successful login request was been sent
      signaling the move to full feature phase (FFP) operation.

      To address this bug, go ahead and avoid negotiating these keys
      by default unless the initiator explicitly proposes them, but
      still respond to them with 'No' if they are proposed.

      Reported-by: Dragan MilivojeviÄ? <galileo@xxxxxxxxxxx>
      Bisected-by: Christophe Vu-Brugier <cvubrugier@xxxxxxxxxxx>
      Tested-by: Christophe Vu-Brugier <cvubrugier@xxxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit 8fa3a867486f85df66eba8c4df85804d3309c6ad
  Author: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 16 20:23:53 2015 -0700

      target: Make TCM_WRITE_PROTECT failure honor D_SENSE bit

      This patch changes transport_lookup_cmd_lun() to obtain
      se_lun->lun_ref + se_cmd->se_device rcu_dereference during
      TCM_WRITE_PROTECT -> CHECK_CONDITION failure status.

      Do this to ensure the active control D_SENSE mode page bit
      is being honored.

      Reported-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Reviewed-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit f3bb467ff64b2598d023b3a07592748fa7768b6a
  Author: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 15 23:07:45 2015 -0700

      target: Fix target_sense_desc_format NULL pointer dereference

      This patch allows target_sense_desc_format() to be called without a
      valid se_device pointer, which can occur during an early exception
      ahead of transport_lookup_cmd_lun() setting up se_cmd->se_device.

      This addresses a v4.3-rc1 specific NULL pointer dereference
      regression introduced by commit 4e4937e8.

      Cc: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxx>
      Cc: Hannes Reinecke <hare@xxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit eeeb9522231118138be418ff527dc8c9050f4707
  Author: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 15 17:27:35 2015 -0700

      target: Propigate backend read-only to core_tpg_add_lun

      This patch adds a DF_READ_ONLY flag that is used by IBLOCK to
      signal when a backend has been set to read-only mode, in order
      to propigate read-only status up to core_tpg_add_lun() for all
      future LUN fabric exports.

      With this is place, existing emulation for reporting read-only
      in spc_emulate_modesense() and normal transport_lookup_cmd_lun()
      TCM_WRITE_PROTECTED status checking just works as expected.

      Reported-by: Joeue Deng <joeue404@xxxxxxxxx>
      Reported-by: Andy Grover <agrover@xxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit 3ccd6e83df8a0d4a664edeecc453c4fa046395fb
  Author: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>
  Date:   Sun Sep 13 02:30:46 2015 -0700

      target: Fix PR registration + APTPL RCU conversion regression

      This patch fixes a v4.2+ regression introduced by commit 79dc9c9e86
      where lookup of t10_pr_registration->pr_reg_deve and associated
      ->pr_kref get was missing from __core_scsi3_do_alloc_registration(),
      which is responsible for setting DEF_PR_REG_ACTIVE.

      This would result in REGISTER operations completing successfully,
      but subsequent core_scsi3_pr_seq_non_holder() checking would fail
      with !DEF_PR_REG_ACTIVE -> RESERVATION CONFLICT status.

      Update __core_scsi3_add_registration() to drop ->pr_kref reference
      after registration and any optional ALL_TG_PT=1 processing has
      completed.  Update core_scsi3_decode_spec_i_port() to release
      the new parent local_pr_reg->pr_kref as well.

      Also, update __core_scsi3_check_aptpl_registration() to perform
      the same target_nacl_find_deve() lookup + ->pr_kref get, now that
      __core_scsi3_add_registration() expects to drop the reference.

      Finally, since there are cases when se_dev_entry->se_lun_acl can
      still be dereferenced in core_scsi3_lunacl_undepend_item() while
      holding ->pr_kref, go ahead and move explicit rcu_assign_pointer()
      NULL assignments within core_disable_device_list_for_node() until
      after orig->pr_comp finishes.

      Reported-by: Scott L. Lykens <scott@xxxxxxxxxx>
      Tested-by: Scott L. Lykens <scott@xxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxx>
      Cc: Hannes Reinecke <hare@xxxxxxx>
      Cc: Lee Duncan <lduncan@xxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # v4.2+
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit b626ef0128d254d33ee43c51d68f577bbec370ac
  Merge: 17a10c9 9861f72
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Sep 24 23:04:53 2015 -0700

      Merge branch 'phy-mdio-refcnt'

      Russell King says:

      ====================
      Phy, mdiobus, and netdev struct device fixes

      The third version of this series fixes the build error which David
      identified, and drops the broken changes for the Cavium Thunger BGX
      ethernet driver as this driver requires some complex changes to
      resolve the leakage - and this is best done by people who can test
      the driver.

      Compared to v2, the only patch which has changed is patch 6
        "net: fix phy refcounting in a bunch of drivers"

      I _think_ I've been able to build-test all the drivers touched by
      that patch to some degree now, though several of them needed the
      Kconfig hacked to allow it (not all had || COMPILE_TEST clause on
      their dependencies.)

      Previous cover letters below:

      This is the second version of the series, with the comments David had
      on the first patch fixed up.  Original series description with updated
      diffstat below.

      While looking at the DSA code, I noticed we have a
      of_find_net_device_by_node(), and it looks like users of that are
      similarly buggy - it looks like net/dsa/dsa.c is the only user.  Fix
      that too.

      Hi,

      While looking at the phy code, I identified a number of weaknesses
      where refcounting on device structures was being leaked, where
      modules could be removed while in-use, and where the fixed-phy could
      end up having unintended consequences caused by incorrect calls to
      fixed_phy_update_state().

      This patch series resolves those issues, some of which were discovered
      with testing on an Armada 388 board.  Not all patches are fully tested,
      particularly the one which touches several network drivers.

      When resolving the struct device refcounting problems, several different
      solutions were considered before settling on the implementation here -
      one of the considerations was to avoid touching many network drivers.
      The solution here is:

        phy_attach*() - takes a refcount
        phy_detach*() - drops the phy_attach refcount

      Provided drivers always attach and detach their phys, which they should
      already be doing, this should change nothing, even if they leak a 
refcount.

        of_phy_find_device() and of_* functions which use that take
        a refcount.  Arrange for this refcount to be dropped once
        the phy is attached.

      This is the reason why the previous change is important - we can't drop
      this refcount taken by of_phy_find_device() until something else holds
      a reference on the device.  This resolves the leaked refcount caused by
      using of_phy_connect() or of_phy_attach().

      Even without the above changes, these drivers are leaking by calling
      of_phy_find_device().  These drivers are addressed by adding the
      appropriate release of that refcount.

      The mdiobus code also suffered from the same kind of leak, but thankfully
      this only happened in one place - the mdio-mux code.

      I also found that the try_module_get() in the phy layer code was utterly
      useless: phydev->dev.driver was guaranteed to always be NULL, so
      try_module_get() was always being called with a NULL argument.  I proved
      this with my SFP code, which declares its own MDIO bus - the module use
      count was never incremented irrespective of how I set the MDIO bus up.
      This allowed the MDIO bus code to be removed from the kernel while there
      were still PHYs attached to it.

      One other bug was discovered: while using in-band-status with mvneta, it
      was found that if a real phy is attached with in-band-status enabled,
      and another ethernet interface is using the fixed-phy infrastructure, the
      interface using the fixed-phy infrastructure is configured according to
      the other interface using the in-band-status - which is caused by the
      fixed-phy code not verifying that the phy_device passed in is actually
      a fixed-phy device, rather than a real MDIO phy.

      Lastly, having mdio_bus reversing phy_device_register() internals seems
      like a layering violation - it's trivial to move that code to the phy
      device layer.
      ====================

      Tested-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Reviewed-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9861f72074c77a8a065622c1be7e9c4277e600eb
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 20:36:33 2015 +0100

      net: fix net_device refcounting

      of_find_net_device_by_node() uses class_find_device() internally to
      lookup the corresponding network device.  class_find_device() returns
      a reference to the embedded struct device, with its refcount
      incremented.

      Add a comment to the definition in net/core/net-sysfs.c indicating the
      need to drop this refcount, and fix the DSA code to drop this refcount
      when the OF-generated platform data is cleaned up and freed.  Also
      arrange for the ref to be dropped when handling errors.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 38737e490d4ea91660d3cec83ef88c4e6d360ae4
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 20:36:28 2015 +0100

      phy: add phy_device_remove()

      Add a phy_device_remove() function to complement phy_device_register(),
      which undoes the effects of phy_device_register() by removing the phy
      device from visibility, but not freeing it.

      This allows these details to be moved out of the mdio bus code into
      the phy code where this action belongs.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d618bf2bfd2a095644c852ebea16f5a981f9d875
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 20:36:23 2015 +0100

      phy: fixed-phy: properly validate phy in fixed_phy_update_state()

      Validate that the phy_device passed into fixed_phy_update_state() is a
      fixed-phy device before walking the list of phys for a fixed phy at the
      same address.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 04d53b20fe44afe635b3d4438b437f7a12927e9a
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 20:36:18 2015 +0100

      net: fix phy refcounting in a bunch of drivers

      of_phy_find_device() increments the phy struct device refcount, which
      we need to properly balance.  Add code to network drivers using this
      function to ensure that the struct device refcount is correctly
      balanced.

      For xgene, looking back in the history, we should be able to use
      of_phy_connect() with a zero flags argument for the DT case as this is
      how the driver used to operate prior to de7b5b3d790a ("net: eth: xgene:
      change APM X-Gene SoC platform ethernet to support ACPI").

      This leaves the Cavium Thunder BGX unfixed; fixing this driver is a
      complicated task, one which the maintainers need to be involved with.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f018ae7a8c576345d56a0cd40d86c0574a2eb360
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 20:36:13 2015 +0100

      of_mdio: fix MDIO phy device refcounting

      bus_find_device() is defined as:

       * This is similar to the bus_for_each_dev() function above, but it
       * returns a reference to a device that is 'found' for later use, as
       * determined by the @match callback.

      and it does indeed return a reference-counted pointer to the device:

              while ((dev = next_device(&i)))
                      if (match(dev, data) && get_device(dev))
                                              ^^^^^^^^^^^^^^^
                              break;
              klist_iter_exit(&i);
              return dev;

      What that means is that when we're done with the struct device, we must
      drop that reference.  Neither of_phy_connect() nor of_phy_attach() did
      this when phy_connect_direct() or phy_attach_direct() failed.

      With our previous patch, phy_connect_direct() and phy_attach_direct()
      take a new refcount on the phy device when successful, so we can drop
      our local reference immediatley after these functions, whether or not
      they succeeded.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Acked-by: Rob Herring <robh@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7322967bc1bd97ac9c49ecea19e5a1f681ca27ee
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 20:36:08 2015 +0100

      phy: add proper phy struct device refcounting

      Take a refcount on the phy struct device when the phy device is attached
      to a network device, and drop it after it's detached.  This ensures that
      a refcount is held on the phy device while the device is being used by
      a network device, thereby preventing the phy_device from being
      unexpectedly kfree()'d by phy_device_release().

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3e3aaf649416988ca8be4ad2c52dc24d8be7b46e
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 20:36:02 2015 +0100

      phy: fix mdiobus module safety

      Re-implement the mdiobus module refcounting to ensure that we actually
      ensure that the mdiobus module code does not go away while we might call
      into it.

      The old scheme using bus->dev.driver was buggy, because bus->dev is a
      class device which never has a struct device_driver associated with it,
      and hence the associated code trying to obtain a refcount did nothing
      useful.

      Instead, take the approach that other subsystems do: pass the module
      when calling mdiobus_register(), and record that in the mii_bus struct.
      When we need to increment the module use count in the phy code, use
      this stored pointer.  When the phy is deteched, drop the module
      refcount, remembering that the phy device might go away at that point.

      This doesn't stop the mii_bus going away while there are in-use phys -
      it merely stops the underlying code vanishing.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e496ae690b2faff751e1849fb97b060615e21f28
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 20:35:57 2015 +0100

      net: dsa: fix of_mdio_find_bus() device refcount leak

      Current users of of_mdio_find_bus() leak a struct device refcount, as
      they fail to clean up the reference obtained inside class_find_device().

      Fix the DSA code to properly refcount the returned MDIO bus by:
      1. taking a reference on the struct device whenever we assign it to
         pd->chip[x].host_dev.
      2. dropping the reference when we overwrite the existing reference.
      3. dropping the reference when we free the data structure.
      4. dropping the initial reference we obtained after setting up the
         platform data structure, or on failure.

      In step 2 above, where we obtain a new MDIO bus, there is no need to
      take a reference on it as we would only have to drop it immediately
      after assignment again, iow:

        put_device(cd->host_dev);       /* drop original assignment ref */
        cd->host_dev = get_device(&mdio_bus_switch->dev); /* get our ref */
        put_device(&mdio_bus_switch->dev); /* drop of_mdio_find_bus ref */

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a136442131443d929d2d8d243157824de4dfbae8
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 20:35:52 2015 +0100

      phy: fix of_mdio_find_bus() device refcount leak

      of_mdio_find_bus() leaks a struct device refcount, caused by using
      class_find_device() and not realising that the device reference has
      its refcount incremented:

       * Note, you will need to drop the reference with put_device() after use.
      ...
              while ((dev = class_dev_iter_next(&iter))) {
                      if (match(dev, data)) {
                              get_device(dev);
                              break;
                      }

      Update the comment, and arrange for the phy code to drop this refcount
      when disposing of a reference to it.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ced255c0c5fb9ab52c9465982f23b1c14005ef8b
  Merge: 4401555 97584d1
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 20:14:26 2015 -0700

      Merge branch 'next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux

      Pull thermal management fixes from Zhang Rui:

       - Power allocator governor changes to allow binding on thermal zones
         with missing power estimates information.  From Javi Merino.

       - Add compile test flags on thermal drivers that allow it without
         producing compilation errors.  From Eduardo Valentin.

       - Fixes around memory allocation on cpu_cooling.  From Javi Merino.

       - Fix on db8500 cpufreq code to allow autoload.  From Luis de
         Bethencourt.

       - Maintainer entries for cpu cooling device

      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux:
        thermal: power_allocator: exit early if there are no cooling devices
        thermal: power_allocator: don't require tzp to be present for the 
thermal zone
        thermal: power_allocator: relax the requirement of two passive trip 
points
        thermal: power_allocator: relax the requirement of a sustainable_power 
in tzp
        thermal: Add a function to get the minimum power
        thermal: cpu_cooling: free power table on error or when unregistering
        thermal: cpu_cooling: don't call kcalloc() under rcu_read_lock
        thermal: db8500_cpufreq_cooling: Fix module autoload for OF platform 
driver
        thermal: cpu_cooling: Add MAINTAINERS entry
        thermal: ti-soc: Kconfig fix to avoid menu showing wrongly
        thermal: ti-soc: allow compile test
        thermal: qcom_spmi: allow compile test
        thermal: exynos: allow compile test
        thermal: armada: allow compile test
        thermal: dove: allow compile test
        thermal: kirkwood: allow compile test
        thermal: rockchip: allow compile test
        thermal: spear: allow compile test
        thermal: hisi: allow compile test
        thermal: Fix thermal_zone_of_sensor_register to match documentation

  commit 0b23a1ece9be2c3e04c3b8d3594a1ada1fa1ae50
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Mon Sep 14 11:55:36 2015 +0300

      dmaengine: idma64: improve residue estimation

      The residue calculation may provide a wrong estimation when the transfer 
is
      started. There are possible scenarios we have to separate:

        1) the transfer is not started yet; residue is equal to the total
           length;

        2) the transfer is just started (first chunk is ongoing); residue is
           equal to the total length without already transfered bytes;

        3) the transfer is ongoing and we already sent few chunks of data;
           residue is equal to the total length without fully transfered chunks
           and already sent bytes.

      Mistakenly the calculation in cases 2) and 3) was done in the similar way 
and
      the result is equal to -bytes that have been transfered, i.e. quite big 
since
      size_t type can't keep negative values.

      Rewrite the calculation algorithm to be one pass and have a correct 
result.

      Besides above in case user asks for a status of the active DMA descriptor
      without pausing an ongoing transfer the residue will be estimated based 
on the
      register value, though it's still racy. Since the transfer is active the 
value
      is continuously being changed. Here we have to read two registers at a 
time. To
      minimize an error make those reads close to each other.

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit c1492b4c541e3a382b60f1b5879cd3c4d246ad31
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Thu Sep 24 16:00:17 2015 +0200

      dmaengine: xgene-dma: fix handling xgene_dma_get_ring_size result

      The function can return negative value.

      The problem has been detected using proposed semantic patch
      scripts/coccinelle/tests/assign_signed_to_unsigned.cocci [1].

      [1]: http://permalink.gmane.org/gmane.linux.kernel/2046107

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit aebf5a67db8dbacbc624b9c652b81f5460b15eff
  Author: Robert Jarzmik <robert.jarzmik@xxxxxxx>
  Date:   Mon Sep 21 11:06:32 2015 +0200

      dmaengine: pxa_dma: fix initial list move

      Since the commit to have an allocated list of virtual descriptors was
      reverted, the pxa_dma driver is broken, as it assumes the descriptor is
      placed on the allocated list upon allocation.

      Fix the issue in pxa_dma by making an allocated virtual descriptor a
      singleton.

      Fixes: 8c8fe97b2b8a ("Revert "dmaengine: virt-dma: don't always free 
descriptor upon completion"")
      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit a8360062ccfb4b891d3013d0e55826c8bcb02bfb
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Fri Sep 18 03:08:40 2015 +0200

      PCI / PM: Update runtime PM documentation for PCI devices

      Section 3.2 "Device Runtime Power Management" of pci.txt has become
      outdated, so update it to correctly reflect the current code flow.

      Also update the comment in local_pci_probe() to document the fact
      that pm_runtime_put_noidle() is not the only runtime PM helper
      function that can be used to decrement the device's runtime PM
      usage counter in .probe().

      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
      Acked-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>

  commit 4401555a98601a3de7cc876ceeac1d5d09f617e6
  Merge: cc8b8fa a13f18f
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 17:46:38 2015 -0700

      Merge tag 'devicetree-fixes-for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux

      Pull DeviceTree fixes from Rob Herring:
       - Silence bogus warning for of_irq_parse_pci
       - Fix typo in ARM idle-states binding doc and dts files
       - Various minor binding documentation updates

      * tag 'devicetree-fixes-for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
        Documentation: arm: Fix typo in the idle-states bindings examples
        gpio: mention in DT binding doc that <name>-gpio is deprecated
        of_pci_irq: Silence bogus "of_irq_parse_pci() failed ..." messages.
        devicetree: bindings: Extend the bma180 bindings with bma250 info
        of: thermal: Mark cooling-*-level properties optional
        of: thermal: Fix inconsitency between cooling-*-state and 
cooling-*-level
        Docs: dt: add #msi-cells to GICv3 ITS binding
        of: add vendor prefix for Socionext Inc.

  commit 680168a58a9315e1301f4ebb062244470d4919b0
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Tue Sep 22 09:35:31 2015 -0700

      PM / OPP: of_property_count_u32_elems() can return errors

      of_property_count_u32_elems() will never return 0, but a -ve error value
      of a positive count. And so the current !count check is wrong.

      Also, a missing "opp-microvolt" property isn't a problem and so we need
      to do of_find_property() separately to confirm that.

      Fixes: 274659029c9d (PM / OPP: Add support to parse "operating-points-v2" 
bindings)
      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Reviewed-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit fe5b2756c1acbfc2d9df380523ef6320e69bb166
  Merge: 79a313f a797451
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Sep 24 16:51:43 2015 -0700

      Merge tag 'v4.3-rockchip32-dtsfixes1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into fixes

      Add the ddc-i2c-bus reference to the veyron hdmi nodes,
      so that they can read the edid of connected displays.

      * tag 'v4.3-rockchip32-dtsfixes1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
        ARM: dts: Add ddc i2c reference to veyron

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 79a313f5a587eae14a0f96df5d819c2fe266e3e9
  Author: Benjamin Gaignard <benjamin.gaignard@xxxxxxxxxx>
  Date:   Wed Sep 23 21:48:03 2015 +0200

      ARM: sti: dt: adapt DT to fix probe/bind issues in DRM driver

      STI drm drivers probe and bind using component framework was incorrect.
      In addition to drivers fix DT update is needed to make all sub-components
      become childs of sti-display-subsystem.

      Signed-off-by: Benjamin Gaignard <benjamin.gaignard@xxxxxxxxxx>
      Signed-off-by: Maxime Coquelin <maxime.coquelin@xxxxxx>
      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit bc13b23323b6a6c710ba2c7125866554e8bee84b
  Merge: 54c3cf6 50b956f
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Sep 24 16:48:43 2015 -0700

      Merge tag 'qcom-fixes-for-4.3-rc1' of 
git://codeaurora.org/quic/kernel/agross-msm into fixes

      Qualcomm fixes for v4.3-rc1

      * Add SCM function call stubs on ARM64

      * tag 'qcom-fixes-for-4.3-rc1' of 
git://codeaurora.org/quic/kernel/agross-msm:
        firmware: qcom: scm: Add function stubs for ARM64

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 9a5e3f27d1b8ca349b79e8b5fe1874eeeedb6f45
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Fri Sep 4 17:38:24 2015 +0530

      ARM: dts: fix omap2+ address translation for pbias

      "ARM: dts: <omap2/omap4/omap5/dra7>: add minimal l4 bus
      layout with control module support" moved pbias_regulator dt node
      from being a child node of ocp to be the child node of
      'syscon'. Since 'syscon' doesn't have the 'ranges' property,
      address translation fails while trying to convert the address
      to resource. Fix it here by populating 'ranges' property in
      syscon dt node.

      Fixes: 72b10ac00eb1 ("ARM: dts: omap24xx: add minimal l4 bus
      layout with control module support")

      Fixes: 7415b0b4c645 ("ARM: dts: omap4: add minimal l4 bus layout
      with control module support")

      Fixes: ed8509edddeb ("ARM: dts: omap5: add minimal l4 bus
      layout with control module support")

      Fixes: d919501feffa ("ARM: dts: dra7: add minimal l4 bus
      layout with control module support")

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      [tony@xxxxxxxxxxx: fixed omap3 pbias to work]
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 4bbc2bc1a4e81c1a3522b3bd9d43fffd2eca8c9e
  Merge: 84ad1ba b9c9364
  Author: Tony Lindgren <tony@xxxxxxxxxxx>
  Date:   Thu Sep 24 16:23:20 2015 -0700

      Merge commit 'b8c93646fd5c' into omap-for-v4.3/fixes

  commit 17a10c9215b39a5ea8faeb241759c1aee6553919
  Author: Matt Bennett <matt.bennett@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 25 11:01:47 2015 +1200

      ip6_tunnel: Reduce log level in ip6_tnl_err() to debug

      Currently error log messages in ip6_tnl_err are printed at 'warn'
      level. This is different to other tunnel types which don't print
      any messages. These log messages don't provide any information that
      couldn't be deduced with networking tools. Also it can be annoying
      to have one end of the tunnel go down and have the logs fill with
      pointless messages such as "Path to destination invalid or inactive!".

      This patch reduces the log level of these messages to 'dbg' level to
      bring the visible behaviour into line with other tunnel types.

      Signed-off-by: Matt Bennett <matt.bennett@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a13f18f59d2646754cda3662a9e215ff43e7a7d5
  Author: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
  Date:   Thu Sep 24 15:53:56 2015 +0100

      Documentation: arm: Fix typo in the idle-states bindings examples

      The idle-states bindings mandate that the entry-method string
      in the idle-states node must be "psci" for ARM v8 64-bit systems,
      but the examples in the bindings report a wrong entry-method string.
      Owing to this typo, some dts in the kernel wrongly defined the
      entry-method property, since they likely cut and pasted the example
      definition without paying attention to the bindings definitions.

      This patch fixes the typo in the DT idle states bindings examples and
      respective dts in the kernel so that the bindings and related dts
      files are made compliant.

      Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
      Cc: Howard Chen <howard.chen@xxxxxxxxxx>
      Cc: Rob Herring <robh+dt@xxxxxxxxxx>
      Cc: Mark Rutland <mark.rutland@xxxxxxx>
      Cc: Heiko Stuebner <heiko@xxxxxxxxx>
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit e7ae65ced7dd71aa3dc29bda7a94ac82d9ea7751
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Mon Sep 21 14:57:25 2015 +0200

      gpio: mention in DT binding doc that <name>-gpio is deprecated

      The gpiolib supports parsing DT properties of the form <name>-gpio but it
      was only added for compatibility with older DT bindings that got it wrong
      and should not be used in newer bindings.

      The commit that added support for this was:

      dd34c37aa3e8 ("gpio: of: Allow -gpio suffix for property names")

      but didn't update the documentation to explain this so it's been a source
      of confusion. So let's make this clear in the GPIO DT binding doc.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit cc8b8faea417bd264d23fa5d017da52b75bbdf94
  Merge: bfbaa60 fd03420
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 15:37:06 2015 -0700

      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux

      Pull drm fixes from Dave Airlie:
       "Most of the GPU drivers people were at XDC last week, so I didn't get
        much to send, so I let it rollover until this week.

        Also Alex was away for 3 weeks so amdgpu/radeon got a bit more stuff
        than usual in one go.

        I've been trying to figure out some 4.2 issues with i915 still (that
        are fixed in 4.3, but bisecting ends up in a merge commit).  Hopefully
        next week I or i915 people can work that out"

      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: (46 commits)
        drm: Allow also control clients to check the drm version
        drm/vmwgfx: Fix uninitialized return in vmw_kms_helper_dirty()
        drm/vmwgfx: Fix uninitialized return in vmw_cotable_unbind()
        drm/layerscape: fix handling fsl_dcu_drm_plane_index result
        drm/mgag200: Fix driver_load error handling
        drm/mgag200: Fix error handling paths in fbdev driver
        drm/qxl: only report first monitor as connected if we have no state
        drm/radeon: add quirk for MSI R7 370
        drm/amdgpu: Sprinkle drm_modeset_lock_all to appease locking checks
        drm/radeon: Sprinkle drm_modeset_lock_all to appease locking checks
        drm/amdgpu: sync ce and me with SWITCH_BUFFER(2)
        drm/amdgpu: integer overflow in amdgpu_mode_dumb_create()
        drm/amdgpu: info leak in amdgpu_gem_metadata_ioctl()
        drm/amdgpu: integer overflow in amdgpu_info_ioctl()
        drm/amdgpu: unwind properly in amdgpu_cs_parser_init()
        drm/amdgpu: Fix max_vblank_count value for current display engines
        drm/amdgpu: use kmemdup rather than duplicating its implementation
        drm/amdgpu: fix UVD suspend and resume for VI APU
        drm/amdgpu: fix the UVD suspend sequence order
        drm/amdgpu: make UVD handle checking more strict
        ...

  commit deccbe80be947fa89bca18510699893c38856f38
  Merge: a46496c babc305e2
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Sep 24 15:36:20 2015 -0700

      Merge tag 'mac80211-for-davem-2015-09-22' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211

      Johannes Berg says:

      ====================
      Just two small fixes:
       * VHT MCS mask array overrun, reported by Dan Carpenter
       * reset CQM history to always get a notification, from Sara Sharon
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a46496ce38eeb401344d5623c1960dbf2f1769be
  Author: Matt Bennett <matt.bennett@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 23 16:58:31 2015 +1200

      ip6_gre: Reduce log level in ip6gre_err() to debug

      Currently error log messages in ip6gre_err are printed at 'warn'
      level. This is different to most other tunnel types which don't
      print any messages. These log messages don't provide any information
      that couldn't be deduced with networking tools. Also it can be annoying
      to have one end of the tunnel go down and have the logs fill with
      pointless messages such as "Path to destination invalid or inactive!".

      This patch reduces the log level of these messages to 'dbg' level to
      bring the visible behaviour into line with other tunnel types.

      Signed-off-by: Matt Bennett <matt.bennett@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 41fc014332d91ee90c32840bf161f9685b7fbf2b
  Author: Wilson Kok <wkok@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 22 21:40:22 2015 -0700

      fib_rules: fix fib rule dumps across multiple skbs

      dump_rules returns skb length and not error.
      But when family == AF_UNSPEC, the caller of dump_rules
      assumes that it returns an error. Hence, when family == AF_UNSPEC,
      we continue trying to dump on -EMSGSIZE errors resulting in
      incorrect dump idx carried between skbs belonging to the same dump.
      This results in fib rule dump always only dumping rules that fit
      into the first skb.

      This patch fixes dump_rules to return error so that we exit correctly
      and idx is correctly maintained between skbs that are part of the
      same dump.

      Signed-off-by: Wilson Kok <wkok@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Roopa Prabhu <roopa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit de24c18c0faca5ebd618e1cb87f5489745e40475
  Author: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 12 02:06:09 2015 +0300

      PCI: rcar: Add R8A7794 support

      Add Renesas R8A7794 SoC support to the Renesas R-Car gen2 PCI driver.

      Signed-off-by: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Bjorn Helgaas <helgaas@xxxxxxxxxx>
      Acked-by: Simon Horman <horms+renesas@xxxxxxxxxxxx>

  commit da2d03ea27f6ed9d2005a67b20dd021ddacf1e4d
  Author: Alex Williamson <alex.williamson@xxxxxxxxxx>
  Date:   Tue Sep 15 22:24:46 2015 -0600

      PCI: Use function 0 VPD for identical functions, regular VPD for others

      932c435caba8 ("PCI: Add dev_flags bit to access VPD through function 0")
      added PCI_DEV_FLAGS_VPD_REF_F0.  Previously, we set the flag on every
      non-zero function of quirked devices.  If a function turned out to be
      different from function 0, i.e., it had a different class, vendor ID, or
      device ID, the flag remained set but we didn't make VPD accessible at all.

      Flip this around so we only set PCI_DEV_FLAGS_VPD_REF_F0 for functions 
that
      are identical to function 0, and allow regular VPD access for any other
      functions.

      [bhelgaas: changelog, stable tag]
      Fixes: 932c435caba8 ("PCI: Add dev_flags bit to access VPD through 
function 0")
      Signed-off-by: Alex Williamson <alex.williamson@xxxxxxxxxx>
      Signed-off-by: Bjorn Helgaas <helgaas@xxxxxxxxxx>
      Acked-by: Myron Stowe <myron.stowe@xxxxxxxxxx>
      Acked-by: Mark Rustad <mark.d.rustad@xxxxxxxxx>
      CC: stable@xxxxxxxxxxxxxxx

  commit 9d9240756e63dd87d6cbf5da8b98ceb8f8192b55
  Author: Alex Williamson <alex.williamson@xxxxxxxxxx>
  Date:   Tue Sep 15 11:17:21 2015 -0600

      PCI: Fix devfn for VPD access through function 0

      Commit 932c435caba8 ("PCI: Add dev_flags bit to access VPD through 
function
      0") passes PCI_SLOT(devfn) for the devfn parameter of pci_get_slot().
      Generally this works because we're fairly well guaranteed that a PCIe
      device is at slot address 0, but for the general case, including
      conventional PCI, it's incorrect.  We need to get the slot and then 
convert
      it back into a devfn.

      Fixes: 932c435caba8 ("PCI: Add dev_flags bit to access VPD through 
function 0")
      Signed-off-by: Alex Williamson <alex.williamson@xxxxxxxxxx>
      Signed-off-by: Bjorn Helgaas <helgaas@xxxxxxxxxx>
      Acked-by: Myron Stowe <myron.stowe@xxxxxxxxxx>
      Acked-by: Mark Rustad <mark.d.rustad@xxxxxxxxx>
      CC: stable@xxxxxxxxxxxxxxx

  commit 38ea72bdb65df2f40ec77b2c9d1413e7f5e34465
  Author: Alex Williamson <alex.williamson@xxxxxxxxxx>
  Date:   Fri Sep 18 15:08:54 2015 -0600

      PCI/MSI: Fix MSI IRQ domains for VFs on virtual buses

      SR-IOV creates a virtual bus where bus->self is NULL.  When we add VFs and
      scan for an MSI domain, pci_set_bus_msi_domain() dereferences bus->self,
      which causes a kernel NULL pointer dereference oops.

      Scan up to the parent bus until we find a real bridge where we can get the
      MSI domain.

      [bhelgaas: changelog]
      Fixes: 44aa0c657e3e ("PCI/MSI: Add hooks to populate the msi_domain 
field")
      Tested-by: Joerg Roedel <joro@xxxxxxxxxx>
      Signed-off-by: Alex Williamson <alex.williamson@xxxxxxxxxx>
      Signed-off-by: Bjorn Helgaas <helgaas@xxxxxxxxxx>
      Acked-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit d682d2bdc30650a5c7ce9908ab83ab674b658744
  Author: Eric Dumazet <edumazet@xxxxxxxxxx>
  Date:   Tue Sep 22 17:04:58 2015 -0700

      bnx2x: byte swap rss_key to comply to Toeplitz specs

      After a good amount of debugging, I found bnx2x was byte swaping
      the 40 bytes of rss_key.

      If we byte swap the key, then bnx2x generates hashes matching
      MSDN specs as documented in (Verifying the RSS Hash Calculation)

      https://msdn.microsoft.com/en-us/library/windows/hardware/ff571021%
      28v=vs.85%29.aspx

      It is mostly a non issue, unless we want to mix different NIC
      in a host, and want consistent hashing among all of them, ie
      if they all use the boot time generated rss key, or if some application
      is choosing specific tuple(s) so that incoming traffic lands into known
      rx queue(s).

      Signed-off-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d8aecb10115497f6cdf841df8c88ebb3ba25fa28
  Author: WANG Cong <xiyou.wangcong@xxxxxxxxx>
  Date:   Tue Sep 22 17:01:11 2015 -0700

      net: revert "net_sched: move tp->root allocation into fw_init()"

      fw filter uses tp->root==NULL to check if it is the old method,
      so it doesn't need allocation at all in this case. This patch
      reverts the offending commit and adds some comments for old
      method to make it obvious.

      Fixes: 33f8b9ecdb15 ("net_sched: move tp->root allocation into fw_init()")
      Reported-by: Akshat Kakkar <akshat.1984@xxxxxxxxx>
      Cc: Jamal Hadi Salim <jhs@xxxxxxxxxxxx>
      Signed-off-by: Cong Wang <xiyou.wangcong@xxxxxxxxx>
      Acked-by: Jamal Hadi Salim <jhs@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit bfbaa60d186d81207e61e7f4337fa442860aef72
  Merge: d5fc4f5 012572d
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 14:31:40 2015 -0700

      Merge branch 'akpm' (patches from Andrew)

      Merge misc fixes from Andrew Morton:
       "15 fixes"

      * emailed patches from Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>:
        ocfs2/dlm: fix deadlock when dispatch assert master
        membarrier: clean up selftest
        vmscan: fix sane_reclaim helper for legacy memcg
        lib/iommu-common.c: do not try to deref a null iommu->lazy_flush() 
pointer when n < pool->hint
        x86, efi, kasan: #undef memset/memcpy/memmove per arch
        mm: migrate: hugetlb: putback destination hugepage to active list
        mm, dax: VMA with vm_ops->pfn_mkwrite wants to be write-notified
        userfaultfd: register uapi generic syscall (aarch64)
        userfaultfd: selftest: don't error out if pthread_mutex_t isn't 
identical
        userfaultfd: selftest: return an error if BOUNCE_VERIFY fails
        userfaultfd: selftest: avoid my_bcmp false positives with powerpc
        userfaultfd: selftest: only warn if __NR_userfaultfd is undefined
        userfaultfd: selftest: headers fixup
        userfaultfd: selftests: vm: pick up sanitized kernel headers
        userfaultfd: revert "userfaultfd: waitqueue: add nr wake parameter to 
__wake_up_locked_key"

  commit 8fe79c60a2932b8c8e1a55ac6847467dcd41af0e
  Merge: d5b8d64 b194f30c
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Sep 24 14:31:37 2015 -0700

      Merge branch 'lwt_arp'

      Jiri Benc says:

      ====================
      lwtunnel: make it really work, for IPv4

      One of the selling points of lwtunnel was the ability to specify the 
tunnel
      destination using routes. However, this doesn't really work currently, as
      ARP and ndisc replies are not handled correctly. ARP and ndisc replies 
won't
      have tunnel metadata attached, thus they will be sent out with the default
      parameters or not sent at all, either way never reaching the requester.

      Most of the egress tunnel parameters can be inferred from the ingress
      metada. The only and important exception is UDP ports. This patchset 
infers
      the egress data from the ingress data and disallow settings of UDP ports 
in
      tunnel routes. If there's a need for different UDP ports, a new interface
      needs to be created for each port combination. Note that it's still 
possible
      to specify the UDP ports to use, it just needs to be done while creating 
the
      vxlan/geneve interface.

      This covers only ARPs. IPv6 ndisc has the same problem but is harder to
      solve, as there's already dst attached to outgoing skbs. Ideas to solve 
this
      are welcome.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b194f30c61efb0767a98f47a64530baa8b731670
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Tue Sep 22 18:12:12 2015 +0200

      lwtunnel: remove source and destination UDP port config option

      The UDP tunnel config is asymmetric wrt. to the ports used. The source and
      destination ports from one direction of the tunnel are not related to the
      ports of the other direction. We need to be able to respond to ARP 
requests
      using the correct ports without involving routing.

      As the consequence, UDP ports need to be fixed property of the tunnel
      interface and cannot be set per route. Remove the ability to set ports per
      route. This is still okay to do, as no kernel has been released with these
      attributes yet.

      Note that the ability to specify source and destination ports is preserved
      for other users of the lwtunnel API which don't use routes for tunnel key
      specification (like openvswitch).

      If in the future we rework ARP handling to allow port specification, the
      attributes can be added back.

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 63d008a4e9ee86614ca5671b7f3ba447df007190
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Tue Sep 22 18:12:11 2015 +0200

      ipv4: send arp replies to the correct tunnel

      When using ip lwtunnels, the additional data for xmit (basically, the 
actual
      tunnel to use) are carried in ip_tunnel_info either in dst->lwtstate or in
      metadata dst. When replying to ARP requests, we need to send the reply to
      the same tunnel the request came from. This means we need to construct
      proper metadata dst for ARP replies.

      We could perform another route lookup to get a dst entry with the correct
      lwtstate. However, this won't always ensure that the outgoing tunnel is 
the
      same as the incoming one, and it won't work anyway for IPv4 duplicate
      address detection.

      The only thing to do is to "reverse" the ip_tunnel_info.

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d5b8d6404395641987db76e28334cae4cef771ae
  Author: Sudeep Holla <Sudeep.Holla@xxxxxxx>
  Date:   Mon Sep 21 16:47:09 2015 +0100

      net: gianfar: remove misuse of IRQF_NO_SUSPEND flag

      The device is set as wakeup capable using proper wakeup API but the
      driver misuses IRQF_NO_SUSPEND to set the interrupt as wakeup source
      which is incorrect.

      This patch removes the use of IRQF_NO_SUSPEND flags replacing it with
      enable_irq_wake instead.

      Cc: "David S. Miller" <davem@xxxxxxxxxxxxx>
      Cc: Claudiu Manoil <claudiu.manoil@xxxxxxxxxxxxx>
      Cc: Kevin Hao <haokexin@xxxxxxxxx>
      Cc: netdev@xxxxxxxxxxxxxxx
      Signed-off-by: Sudeep Holla <sudeep.holla@xxxxxxx>
      Acked-by: Claudiu Manoil <claudiu.manoil@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6ae459bdaaeebc632b16e54dcbabb490c6931d61
  Author: Pravin B Shelar <pshelar@xxxxxxxxxx>
  Date:   Tue Sep 22 12:57:53 2015 -0700

      skbuff: Fix skb checksum flag on skb pull

      VXLAN device can receive skb with checksum partial. But the checksum
      offset could be in outer header which is pulled on receive. This results
      in negative checksum offset for the skb. Such skb can cause the assert
      failure in skb_checksum_help(). Following patch fixes the bug by setting
      checksum-none while pulling outer header.

      Following is the kernel panic msg from old kernel hitting the bug.

      ------------[ cut here ]------------
      kernel BUG at net/core/dev.c:1906!
      RIP: 0010:[<ffffffff81518034>] skb_checksum_help+0x144/0x150
      Call Trace:
      <IRQ>
      [<ffffffffa0164c28>] queue_userspace_packet+0x408/0x470 [openvswitch]
      [<ffffffffa016614d>] ovs_dp_upcall+0x5d/0x60 [openvswitch]
      [<ffffffffa0166236>] ovs_dp_process_packet_with_key+0xe6/0x100 
[openvswitch]
      [<ffffffffa016629b>] ovs_dp_process_received_packet+0x4b/0x80 
[openvswitch]
      [<ffffffffa016c51a>] ovs_vport_receive+0x2a/0x30 [openvswitch]
      [<ffffffffa0171383>] vxlan_rcv+0x53/0x60 [openvswitch]
      [<ffffffffa01734cb>] vxlan_udp_encap_recv+0x8b/0xf0 [openvswitch]
      [<ffffffff8157addc>] udp_queue_rcv_skb+0x2dc/0x3b0
      [<ffffffff8157b56f>] __udp4_lib_rcv+0x1cf/0x6c0
      [<ffffffff8157ba7a>] udp_rcv+0x1a/0x20
      [<ffffffff8154fdbd>] ip_local_deliver_finish+0xdd/0x280
      [<ffffffff81550128>] ip_local_deliver+0x88/0x90
      [<ffffffff8154fa7d>] ip_rcv_finish+0x10d/0x370
      [<ffffffff81550365>] ip_rcv+0x235/0x300
      [<ffffffff8151ba1d>] __netif_receive_skb+0x55d/0x620
      [<ffffffff8151c360>] netif_receive_skb+0x80/0x90
      [<ffffffff81459935>] virtnet_poll+0x555/0x6f0
      [<ffffffff8151cd04>] net_rx_action+0x134/0x290
      [<ffffffff810683d8>] __do_softirq+0xa8/0x210
      [<ffffffff8162fe6c>] call_softirq+0x1c/0x30
      [<ffffffff810161a5>] do_softirq+0x65/0xa0
      [<ffffffff810687be>] irq_exit+0x8e/0xb0
      [<ffffffff81630733>] do_IRQ+0x63/0xe0
      [<ffffffff81625f2e>] common_interrupt+0x6e/0x6e

      Reported-by: Anupam Chanda <achanda@xxxxxxxxxx>
      Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Acked-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit fd03420b5624617a708fb9b13634b41b37c22cfa
  Merge: 0a3579e cd67d22
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Sep 25 06:52:37 2015 +1000

      Merge tag 'drm-intel-fixes-2015-09-24' of 
git://anongit.freedesktop.org/drm-intel into drm-fixes

      a few drm/i915 fixes, including a fix to the recent regression
      reported by Sedat Dilek

      * tag 'drm-intel-fixes-2015-09-24' of 
git://anongit.freedesktop.org/drm-intel:
        drm/i915/bios: handle MIPI Sequence Block v3+ gracefully
        drm/i915: Add primary plane to mask if it's visible
        drm/i915: workaround bad DSL readout v3
        drm/i915: fix kernel-doc warnings in intel_audio.c

  commit 9badce000e2ce68ba74838a3cd356dde58221c2f
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Wed Sep 23 17:07:29 2015 -0400

      cgroup, writeback: don't enable cgroup writeback on traditional 
hierarchies

      inode_cgwb_enabled() gates cgroup writeback support.  If it returns
      true, each inode is attached to the corresponding memory domain which
      gets mapped to io domain.  It currently only tests whether the
      filesystem and bdi support cgroup writeback; however, cgroup writeback
      support doesn't work on traditional hierarchies and thus it should
      also test whether memcg and iocg are on the default hierarchy.

      This caused traditional hierarchy setups to hit the cgroup writeback
      path inadvertently and ended up creating separate writeback domains
      for each memcg and mapping them all to the root iocg uncovering a
      couple issues in the cgroup writeback path.

      cgroup writeback was never meant to be enabled on traditional
      hierarchies.  Make inode_cgwb_enabled() test whether both memcg and
      iocg are on the default hierarchy.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Reported-by: Artem Bityutskiy <dedekind1@xxxxxxxxx>
      Reported-by: Dexuan Cui <decui@xxxxxxxxxxxxx>
      Link: http://lkml.kernel.org/g/1443012552.19983.209.camel@xxxxxxxxx
      Link: 
http://lkml.kernel.org/g/f30d4a6aa8a546ff88f73021d026a453@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

  commit da314c9923fed553a007785a901fd395b7eb6c19
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 22 11:38:56 2015 +0800

      netlink: Replace rhash_portid with bound

      On Mon, Sep 21, 2015 at 02:20:22PM -0400, Tejun Heo wrote:
      >
      > store_release and load_acquire are different from the usual memory
      > barriers and can't be paired this way.  You have to pair store_release
      > and load_acquire.  Besides, it isn't a particularly good idea to

      OK I've decided to drop the acquire/release helpers as they don't
      help us at all and simply pessimises the code by using full memory
      barriers (on some architectures) where only a write or read barrier
      is needed.

      > depend on memory barriers embedded in other data structures like the
      > above.  Here, especially, rhashtable_insert() would have write barrier
      > *before* the entry is hashed not necessarily *after*, which means that
      > in the above case, a socket which appears to have set bound to a
      > reader might not visible when the reader tries to look up the socket
      > on the hashtable.

      But you are right we do need an explicit write barrier here to
      ensure that the hashing is visible.

      > There's no reason to be overly smart here.  This isn't a crazy hot
      > path, write barriers tend to be very cheap, store_release more so.
      > Please just do smp_store_release() and note what it's paired with.

      It's not about being overly smart.  It's about actually understanding
      what's going on with the code.  I've seen too many instances of
      people simply sprinkling synchronisation primitives around without
      any knowledge of what is happening underneath, which is just a recipe
      for creating hard-to-debug races.

      > > @@ -1539,7 +1546,7 @@ static int netlink_bind(struct socket *sock, 
struct sockaddr *addr,
      > >               }
      > >       }
      > >
      > > -     if (!nlk->portid) {
      > > +     if (!nlk->bound) {
      >
      > I don't think you can skip load_acquire here just because this is the
      > second deref of the variable.  That doesn't change anything.  Race
      > condition could still happen between the first and second tests and
      > skipping the second would lead to the same kind of bug.

      The reason this one is OK is because we do not use nlk->portid or
      try to get nlk from the hash table before we return to user-space.

      However, there is a real bug here that none of these acquire/release
      helpers discovered.  The two bound tests here used to be a single
      one.  Now that they are separate it is entirely possible for another
      thread to come in the middle and bind the socket.  So we need to
      repeat the portid check in order to maintain consistency.

      > > @@ -1587,7 +1594,7 @@ static int netlink_connect(struct socket *sock, 
struct sockaddr *addr,
      > >           !netlink_allowed(sock, NL_CFG_F_NONROOT_SEND))
      > >               return -EPERM;
      > >
      > > -     if (!nlk->portid)
      > > +     if (!nlk->bound)
      >
      > Don't we need load_acquire here too?  Is this path holding a lock
      > which makes that unnecessary?

      Ditto.

      ---8<---
      The commit 1f770c0a09da855a2b51af6d19de97fb955eca85 ("netlink:
      Fix autobind race condition that leads to zero port ID") created
      some new races that can occur due to inconcsistencies between the
      two port IDs.

      Tejun is right that a barrier is unavoidable.  Therefore I am
      reverting to the original patch that used a boolean to indicate
      that a user netlink socket has been bound.

      Barriers have been added where necessary to ensure that a valid
      portid and the hashed socket is visible.

      I have also changed netlink_insert to only return EBUSY if the
      socket is bound to a portid different to the requested one.  This
      combined with only reading nlk->bound once in netlink_bind fixes
      a race where two threads that bind the socket at the same time
      with different port IDs may both succeed.

      Fixes: 1f770c0a09da ("netlink: Fix autobind race condition that leads to 
zero port ID")
      Reported-by: Tejun Heo <tj@xxxxxxxxxx>
      Reported-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
      Nacked-by: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7f57d803ee03730d570dc59a9e3e4842b58dd5cc
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Thu Sep 24 17:36:51 2015 +0200

      ALSA: hda - Disable power_save_node for Thinkpads

      Lenovo Thinkpads with recent Realtek codecs seem suffering from click
      noises at power transition since the introduction of widget power
      saving in 4.1 kernel.  Although this might be solved by some delays in
      appropriate points, as a quick workaround, just disable the
      power_save_node feature for now.  The gain it gives is relatively
      small, and this makes the situation back to pre 4.1 time.

      This patch ended up with a bit more code changes than usual because
      the existing fixup for Thinkpads is highly chained.  Instead of adding
      yet another chain, combine a few of them into a single fixup entry, as
      a gratis cleanup.

      Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=943982
      Cc: <stable@xxxxxxxxxxxxxxx> # v4.1+
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 1ce3cbe2ab4074ca5196e74a45665a2cd87bbdb1
  Merge: 8351044 ed14ee0
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Thu Sep 24 20:48:01 2015 +0200

      Merge tag 'asoc-fix-v4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus

      ASoC: Fixes for v4.3

      A disappointingly large set of fixes, though none of them very big and
      very widely spread over many different drivers.  Nothing especially
      stands out, it's mostly all device specific and relatively minor.

  commit d5fc4f555d7d29f9c868e7505e08bcd7676bc943
  Merge: bbad822 711e020
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 11:40:58 2015 -0700

      Merge tag 'spi-fix-v4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi

      Pull spi fixes from Mark Brown:
       "A disappointingly large collection of fixes for SPI issues, though
        almost all in drivers (and there mainly the newly added Mediatek
        driver) and the core fixes are documentation and error handling.

        The driver fixes are all of the usual 'important if you see them'
        variety"

      * tag 'spi-fix-v4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi:
        spi: xtensa-xtfpga: fix register endianness
        spi: meson: Fix module autoload for OF platform driver
        spi: mediatek: fix wrong error return value on probe
        spi: fix kernel-doc warnings in spi.h
        spi: spidev: fix possible NULL dereference
        spi: atmel: remove warning when !CONFIG_PM_SLEEP
        spi: bcm2835: BUG: fix wrong use of PAGE_MASK
        spi: mediatek: fix spi cs polarity error
        spi: Fix documentation of spi_alloc_master()
        spi: spi-pxa2xx: Check status register to determine if SSSR_TINT is 
disabled
        spi: Mediatek: Document devicetree bindings update for spi bus
        spi: mediatek: fix spi clock usage error
        spi: mediatek: remove clk_disable_unprepare()

  commit bbad8220c6ce21edf2144f997e5ba476f5117b33
  Merge: 5146c8e 16651fc
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 11:10:03 2015 -0700

      Merge tag 'regulator-fix-v4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator

      Pull regulator fixes from Mark Brown:
       "A collection of fixes that came in since I tagged the merge window
        pull request for v4.3:

         - Error handling fixes in the core

         - Fixes to a couple of TI drivers for device specific issues

         - Several fixes for module autoloading"

      * tag 'regulator-fix-v4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator:
        regulator: vexpress: Fix module autoload for OF platform driver
        regulator: gpio: Fix module autoload for OF platform driver
        regulator: anatop: Fix module autoload for OF platform driver
        regulator: core: Correct return value check in regulator_resolve_supply
        regulator: tps65218: Fix missing zero typo
        regulator: pbias: program pbias register offset in pbias driver
        regulator: core: fix possible NULL dereference

  commit 5146c8e4dfce5e6c671791b39d5f3c04bbd08715
  Merge: bcee19f 586b286
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 24 11:04:22 2015 -0700

      Merge tag 'dm-4.3-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm

      Pull device mapper fixes from Mike Snitzer:
       "Two stable@ fixes:

         - DM thinp fix to properly advertise discard support as disabled for
           thin devices backed by a thin-pool with discard support disabled.

         - DM crypt fix to prevent the creation of bios that violate the
           underlying block device's max_segments limits.  This fixes a
           relatively long-standing NCQ SSD corruption issue reported against
           dm-crypt ever since the dm-crypt cpu parallelization patches were
           merged back in 4.0"

      * tag 'dm-4.3-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
        dm crypt: constrain crypt device's max_segment_size to PAGE_SIZE
        dm thin: disable discard support for thin devices if pool's is disabled

  commit 83510441bc08bee201c0ded9d81da6dfd008d69a
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Thu Sep 24 11:00:18 2015 +0200

      ALSA: hda/tegra - async probe for avoiding module loading deadlock

      The Tegra HD-audio controller driver causes deadlocks when loaded as a
      module since the driver invokes request_module() at binding with the
      codec driver.  This patch works around it by deferring the probe in a
      work like Intel HD-audio controller driver does.  Although hovering
      the codec probe stuff into udev would be a better solution, it may
      cause other regressions, so let's try this band-aid fix until the more
      proper solution gets landed.

      Reported-by: Thierry Reding <treding@xxxxxxxxxx>
      Tested-by: Thierry Reding <treding@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 274e91b81ed22957b510ad2988359584eea95dae
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Wed Sep 23 11:06:30 2015 +0100

      ARM: alignment: fix alignment handling for uaccess changes

      Jonathan Liu reports that the recent addition of CPU_SW_DOMAIN_PAN
      causes wpa_supplicant to die due to the following kernel oops:

      Unhandled fault: page domain fault (0x81b) at 0x001017a2
      pgd = ee1b8000
      [001017a2] *pgd=6ebee831, *pte=6c35475f, *ppte=6c354c7f
      Internal error: : 81b [#1] SMP ARM
      Modules linked in: rt2800usb rt2x00usb rt2800librt2x00lib crc_ccitt 
mac80211
      CPU: 1 PID: 202 Comm: wpa_supplicant Not tainted 4.3.0-rc2 #1
      Hardware name: Allwinner sun7i (A20) Family
      task: ec872f80 ti: ee364000 task.ti: ee364000
      PC is at do_alignment_ldmstm+0x1d4/0x238
      LR is at 0x0
      pc : [<c001d1d8>]    lr : [<00000000>]    psr: 600c0113
      sp : ee365e18  ip : 00000000  fp : 00000002
      r10: 001017a2  r9 : 00000002  r8 : 001017aa
      r7 : ee365fb0  r6 : e8820018  r5 : 001017a2  r4 : 00000003
      r3 : d49e30e0  r2 : 00000000  r1 : ee365fbc  r0 : 00000000
      Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment none[   
34.393106] Control: 10c5387d  Table: 6e1b806a  DAC: 00000051
      Process wpa_supplicant (pid: 202, stack limit = 0xee364210)
      Stack: (0xee365e18 to 0xee366000)
      ...
      [<c001d1d8>] (do_alignment_ldmstm) from [<c001d510>] 
(do_alignment+0x1f0/0x904)
      [<c001d510>] (do_alignment) from [<c00092a0>] (do_DataAbort+0x38/0xb4)
      [<c00092a0>] (do_DataAbort) from [<c0013d7c>] (__dabt_usr+0x3c/0x40)
      Exception stack(0xee365fb0 to 0xee365ff8)
      5fa0:                                     00000000 56c728c0 001017a2 
d49e30e0
      5fc0: 775448d2 597d4e74 00200800 7a9e1625 00802001 00000021 b6deec84 
00000100
      5fe0: 08020200 be9f4f20 0c0b0d0a b6d9b3e0 600c0010 ffffffff
      Code: e1a0a005 e1a0000c 1affffe8 e5913000 (e4ea3001)
      ---[ end trace 0acd3882fcfdf9dd ]---

      This is caused by the alignment handler not being fixed up for the
      uaccess changes, and userspace issuing an unaligned LDM instruction.
      So, fix the problem by adding the necessary fixups.

      Reported-by: Jonathan Liu <net147@xxxxxxxxx>
      Tested-by: Jonathan Liu <net147@xxxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 0a3579e39dd0412b3ff932e32ae7a22a604200f0
  Merge: e4b35f9 30c6466
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Thu Sep 24 18:36:04 2015 +1000

      Merge tag 'vmwgfx-fixes-4.3-150924' of 
git://people.freedesktop.org/~thomash/linux into drm-fixes

      Pull request of 2015-09-24

      Vmwgfx fixes for 4.3:
       - A couple of uninitialized variable fixes by Christian Engelmayer
       - A TTM fix for a bug that causes problems with the new vmwgfx device 
init
       - A vmwgfx refcounting fix
       - A vmwgfx iomem caching fix
       - A DRM change to allow also control clients to read the drm driver 
version.

      * tag 'vmwgfx-fixes-4.3-150924' of 
git://people.freedesktop.org/~thomash/linux:
        drm: Allow also control clients to check the drm version
        drm/vmwgfx: Fix uninitialized return in vmw_kms_helper_dirty()
        drm/vmwgfx: Fix uninitialized return in vmw_cotable_unbind()
        drm/vmwgfx: Only build on X86
        drm/ttm: Fix memory space allocation v2
        drm/vmwgfx: Map the fifo as cached
        drm/vmwgfx: Fix up user_dmabuf refcounting

  commit 30c64664f110f76064e364cb5dd385edc3751ba5
  Author: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
  Date:   Tue Sep 15 01:11:42 2015 -0700

      drm: Allow also control clients to check the drm version

      This should be harmless.
      Vmware will, due to old infrastructure reasons, be using a privileged
      control client to supply GUI layout information rather than obtaining
      it from the device. That control client will be needing access to DRM
      version information.

      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
      Reviewed-by: Brian Paul <brianp@xxxxxxxxxx>
      Reviewed-by: Sinclair Yeh <syeh@xxxxxxxxxx>
      Acked-by: David Herrmann <dh.herrmann@xxxxxxxxx>

  commit f3b8c0caca02001565cb14b845bf90f59dea8213
  Author: Christian Engelmayer <cengelma@xxxxxx>
  Date:   Sat Sep 19 00:32:24 2015 +0200

      drm/vmwgfx: Fix uninitialized return in vmw_kms_helper_dirty()

      Function vmw_kms_helper_dirty() uses the uninitialized variable ret as
      return value. Make the result deterministic and directly return as the
      variable is unused anyway. Detected by Coverity CID 1324255.

      Signed-off-by: Christian Engelmayer <cengelma@xxxxxx>
      Reviewed-by: Sinclair Yeh <syeh@xxxxxxxxxx>
      Reviewed-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>

  commit 49558b471369e790650df8706b5608fee27af42c
  Author: Christian Engelmayer <cengelma@xxxxxx>
  Date:   Sat Sep 19 00:31:10 2015 +0200

      drm/vmwgfx: Fix uninitialized return in vmw_cotable_unbind()

      Function vmw_cotable_unbind() uses the uninitialized variable ret as
      return value. Make the result deterministic and directly return as
      the variable is unused anyway. Detected by Coverity CID 1324256.

      Signed-off-by: Christian Engelmayer <cengelma@xxxxxx>
      Reviewed-by: Sinclair Yeh <syeh@xxxxxxxxxx>
      Reviewed-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>

  commit 88627148400e37b4bff197285d348fc05c9de013
  Author: Steve French <smfrench@xxxxxxxxx>
  Date:   Tue Sep 22 03:16:27 2015 -0500

      fix encryption error checks on mount

      Signed-off-by: Steve French <steve.french@xxxxxxxxxxxxxxx>

  commit ceb1b0b9b4d1089e9f2731a314689ae17784c861
  Author: Steve French <smfrench@xxxxxxxxx>
  Date:   Thu Sep 24 00:52:37 2015 -0500

      [SMB3] Fix sec=krb5 on smb3 mounts

      Kerberos, which is very important for security, was only enabled for
      CIFS not SMB2/SMB3 mounts (e.g. vers=3.0)

      Patch based on the information detailed in
      http://thread.gmane.org/gmane.linux.kernel.cifs/10081/focus=10307
      to enable Kerberized SMB2/SMB3

      a) SMB2_negotiate: enable/use decode_negTokenInit in SMB2_negotiate
      b) SMB2_sess_setup: handle Kerberos sectype and replicate Kerberos
         SMB1 processing done in sess_auth_kerberos

      Signed-off-by: Noel Power <noel.power@xxxxxxxx>
      Signed-off-by: Jim McDonough <jmcd@xxxxxxxxx>
      CC: Stable <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Steve French <steve.french@xxxxxxxxxxxxxxx>

  commit 7bbe33ff1896d225588b37c574c0d80dbc63c657
  Author: John W. Linville <linville@xxxxxxxxxxxxx>
  Date:   Tue Sep 22 13:09:32 2015 -0400

      geneve: use network byte order for destination port config parameter

      This is primarily for consistancy with vxlan and other tunnels which
      use network byte order for similar parameters.

      Signed-off-by: John W. Linville <linville@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e4b35f952be9f5706b22e38c1925b7ac49080d72
  Merge: 14d11b8 e786547
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Thu Sep 24 08:13:34 2015 +1000

      Merge branch 'drm-fixes-4.3' of git://people.freedesktop.org/~agd5f/linux 
into drm-fixes

      radeon and amdgpu fixes for 4.3.  It's a bit bigger than usual since
      it's 3 weeks worth of fixes since I was on vacation, then at XDC.
      - lots of stability fixes
      - suspend and resume fixes
      - GPU scheduler fixes
      - Misc other fixes

      * 'drm-fixes-4.3' of git://people.freedesktop.org/~agd5f/linux: (31 
commits)
        drm/radeon: add quirk for MSI R7 370
        drm/amdgpu: Sprinkle drm_modeset_lock_all to appease locking checks
        drm/radeon: Sprinkle drm_modeset_lock_all to appease locking checks
        drm/amdgpu: sync ce and me with SWITCH_BUFFER(2)
        drm/amdgpu: integer overflow in amdgpu_mode_dumb_create()
        drm/amdgpu: info leak in amdgpu_gem_metadata_ioctl()
        drm/amdgpu: integer overflow in amdgpu_info_ioctl()
        drm/amdgpu: unwind properly in amdgpu_cs_parser_init()
        drm/amdgpu: Fix max_vblank_count value for current display engines
        drm/amdgpu: use kmemdup rather than duplicating its implementation
        drm/amdgpu: fix UVD suspend and resume for VI APU
        drm/amdgpu: fix the UVD suspend sequence order
        drm/amdgpu: make UVD handle checking more strict
        drm/amdgpu: Disable UVD PG
        drm/amdgpu: more scheduler cleanups v2
        drm/amdgpu: cleanup fence queue init v2
        drm/amdgpu: rename fence->scheduler to sched v2
        drm/amdgpu: cleanup entity init
        drm/amdgpu: refine the scheduler job type conversion
        drm/amdgpu: refine the job naming for amdgpu_job and amdgpu_sched_job
        ...

  commit 14d11b8dca17f6dedf4b62d7391b9b294e3414ff
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Mon Sep 21 15:33:47 2015 +0200

      drm/layerscape: fix handling fsl_dcu_drm_plane_index result

      The function can return negative value.

      The problem has been detected using proposed semantic patch
      scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci [1].

      [1]: http://permalink.gmane.org/gmane.linux.kernel/2038576

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit 728f86607d47f7d2d24d61fd30852faa66ca5aa9
  Author: Archit Taneja <architt@xxxxxxxxxxxxxx>
  Date:   Thu Sep 17 16:30:55 2015 +0530

      drm/mgag200: Fix driver_load error handling

      mgag200_driver_load's error path just calls the drm driver's
      driver_unload op. It isn't safe to call this because it doesn't handle
      things well if driver_load fails somewhere mid way.

      Replace the call to mgag200_driver_unload with a more finegrained
      error handling path.

      Link: http://lkml.kernel.org/r/55F6E68D.8070800@xxxxxxxxxxxxxx
      Reported-by: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: Dave Airlie <airlied@xxxxxxxxx>
      Cc: David Airlie <airlied@xxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: dri-devel <dri-devel@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Archit Taneja <architt@xxxxxxxxxxxxxx>
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit aec9e12953e777f62acdab069656ebd9bcb6c9ba
  Author: Archit Taneja <architt@xxxxxxxxxxxxxx>
  Date:   Thu Sep 17 16:30:54 2015 +0530

      drm/mgag200: Fix error handling paths in fbdev driver

      Set up error handling in mgag200_fbdev_init and mgag200fb_create such that
      they release the things they allocate, rather than relying on someone
      calling mga_fbdev_destroy.

      Based on a patch by Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>

      Link: http://lkml.kernel.org/r/55F6E68D.8070800@xxxxxxxxxxxxxx
      Reported-by: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: Dave Airlie <airlied@xxxxxxxxx>
      Cc: David Airlie <airlied@xxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: dri-devel <dri-devel@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Archit Taneja <architt@xxxxxxxxxxxxxx>
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit 69e5d3f893e19613486f300fd6e631810338aa4b
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Mon Sep 14 10:28:34 2015 +1000

      drm/qxl: only report first monitor as connected if we have no state

      If the server isn't new enough to give us state, report the first
      monitor as always connected, otherwise believe the server side.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit 41b976414c88016e2c9d9b2f6667ee67a998d388
  Author: David Woodhouse <David.Woodhouse@xxxxxxxxx>
  Date:   Wed Sep 23 09:45:31 2015 +0100

      8139cp: Dump contents of descriptor ring on TX timeout

      We are seeing unexplained TX timeouts under heavy load. Let's try to get
      a better idea of what's going on.

      Signed-off-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7f4c685633e2df9ba10d49a31dda13715745db37
  Author: David Woodhouse <David.Woodhouse@xxxxxxxxx>
  Date:   Wed Sep 23 09:45:16 2015 +0100

      8139cp: Fix DMA unmapping of transmitted buffers

      The low 16 bits of the 'opts1' field in the TX descriptor are supposed
      to still contain the buffer length when the descriptor is handed back to
      us. In practice, at least on my hardware, they don't. So stash the
      original value of the opts1 field and get the length to unmap from
      there.

      There are other ways we could have worked out the length, but I actually
      want a stash of the opts1 field anyway so that I can dump it alongside
      the contents of the descriptor ring when we suffer a TX timeout.

      Signed-off-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0a5aeee0b79fa99d8e04c98dd4e87d4f52aa497b
  Author: David Woodhouse <David.Woodhouse@xxxxxxxxx>
  Date:   Wed Sep 23 09:44:57 2015 +0100

      8139cp: Reduce duplicate csum/tso code in cp_start_xmit()

      We calculate the value of the opts1 descriptor field in three different
      places. With two different behaviours when given an invalid packet to
      be checksummed â?? none of them correct. Sort that out.

      Signed-off-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a3b804043f490aeec57d8ca5baccdd35e6250857
  Author: David Woodhouse <David.Woodhouse@xxxxxxxxx>
  Date:   Wed Sep 23 09:44:38 2015 +0100

      8139cp: Fix TSO/scatter-gather descriptor setup

      When sending a TSO frame in multiple buffers, we were neglecting to set
      the first descriptor up in TSO mode.

      Signed-off-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 26b0bad6ac3a0167792dc4ffb276c29bc597d239
  Author: David Woodhouse <David.Woodhouse@xxxxxxxxx>
  Date:   Wed Sep 23 09:44:06 2015 +0100

      8139cp: Fix tx_queued debug message to print correct slot numbers

      After a certain amount of staring at the debug output of this driver, I
      realised it was lying to me.

      Signed-off-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit aaa0062ecf4877a26dea66bee1039c6eaf906c94
  Author: David Woodhouse <David.Woodhouse@xxxxxxxxx>
  Date:   Wed Sep 23 09:43:41 2015 +0100

      8139cp: Do not re-enable RX interrupts in cp_tx_timeout()

      If an RX interrupt was already received but NAPI has not yet run when
      the RX timeout happens, we end up in cp_tx_timeout() with RX interrupts
      already disabled. Blindly re-enabling them will cause an IRQ storm.

      (This is made particularly horrid by the fact that cp_interrupt() always
      returns that it's handled the interrupt, even when it hasn't actually
      done anything. If it didn't do that, the core IRQ code would have
      detected the storm and handled it, I'd have had a clear smoking gun
      backtrace instead of just a spontaneously resetting router, and I'd have
      at *least* two days of my life back. Changing the return value of
      cp_interrupt() will be argued about under separate cover.)

      Unconditionally leave RX interrupts disabled after the reset, and
      schedule NAPI to check the receive ring and re-enable them.

      Signed-off-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3c6cb3acee6a2350c79df29e1cfb56ad1c9a3e9e
  Merge: d3869ef 8ceaf36
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Wed Sep 23 14:37:38 2015 -0700

      Merge branch 'netcp-fixes'

      Murali Karicheri says:

      ====================
      net: netcp: a set of bug fixes

      This patch series fixes a set of issues in netcp driver seen during 
internal
      testing of the driver. While at it, do some clean up as well.

      The fixes are tested on K2HK, K2L and K2E EVMs and the boot up logs can be
      seen at

       http://pastebin.ubuntu.com/12533100/
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8ceaf361ffd131e835aef1e6cdb1d5ba70702617
  Author: Karicheri, Muralidharan <m-karicheri2@xxxxxx>
  Date:   Wed Sep 23 13:37:11 2015 -0400

      net: netcp: fix deadlock reported by lockup detector

      A deadlock trace is seen in netcp driver with lockup detector enabled.
      The trace log is provided below for reference. This patch fixes the
      bug by removing the usage of netcp_modules_lock within ndo_ops functions.
      ndo_{open/close/ioctl)() is already called with rtnl_lock held. So there
      is no need to hold another mutex for serialization across processes on
      multiple cores.  So remove use of netcp_modules_lock mutex from these
      ndo ops functions.

      ndo_set_rx_mode() shouldn't be using a mutex as it is called from atomic
      context. In the case of ndo_set_rx_mode(), there can be call to this API
      without rtnl_lock held from an atomic context. As the underlying modules
      are expected to add address to a hardware table, it is to be protected
      across concurrent updates and hence a spin lock is used to synchronize
      the access. Same with ndo_vlan_rx_add_vid() & ndo_vlan_rx_kill_vid().

      Probably the netcp_modules_lock is used to protect the module not being
      removed as part of rmmod. Currently this is not fully implemented and
      assumes the interface is brought down before doing rmmod of modules.
      The support for rmmmod while interface is up is expected in a future
      patch set when additional modules such as pa, qos are added. For now
      all of the tests such as if up/down, reboot, iperf works fine with this
      patch applied.

      Deadlock trace seen with lockup detector enabled is shown below for
      reference.

      [   16.863014] ======================================================
      [   16.869183] [ INFO: possible circular locking dependency detected ]
      [   16.875441] 4.1.6-01265-gfb1e101 #1 Tainted: G        W
      [   16.881176] -------------------------------------------------------
      [   16.887432] ifconfig/1662 is trying to acquire lock:
      [   16.892386]  (netcp_modules_lock){+.+.+.}, at: [<c03e8110>]
      netcp_ndo_open+0x168/0x518
      [   16.900321]
      [   16.900321] but task is already holding lock:
      [   16.906144]  (rtnl_mutex){+.+.+.}, at: [<c053a418>] 
devinet_ioctl+0xf8/0x7e4
      [   16.913206]
      [   16.913206] which lock already depends on the new lock.
      [   16.913206]
      [   16.921372]
      [   16.921372] the existing dependency chain (in reverse order) is:
      [   16.928844]
      -> #1 (rtnl_mutex){+.+.+.}:
      [   16.932865]        [<c06023f0>] mutex_lock_nested+0x68/0x4a8
      [   16.938521]        [<c04c5758>] register_netdev+0xc/0x24
      [   16.943831]        [<c03e65c0>] netcp_module_probe+0x214/0x2ec
      [   16.949660]        [<c03e8a54>] netcp_register_module+0xd4/0x140
      [   16.955663]        [<c089654c>] keystone_gbe_init+0x10/0x28
      [   16.961233]        [<c000977c>] do_one_initcall+0xb8/0x1f8
      [   16.966714]        [<c0867e04>] kernel_init_freeable+0x148/0x1e8
      [   16.972720]        [<c05f9994>] kernel_init+0xc/0xe8
      [   16.977682]        [<c0010038>] ret_from_fork+0x14/0x3c
      [   16.982905]
      -> #0 (netcp_modules_lock){+.+.+.}:
      [   16.987619]        [<c006eab0>] lock_acquire+0x118/0x320
      [   16.992928]        [<c06023f0>] mutex_lock_nested+0x68/0x4a8
      [   16.998582]        [<c03e8110>] netcp_ndo_open+0x168/0x518
      [   17.004064]        [<c04c48f0>] __dev_open+0xa8/0x10c
      [   17.009112]        [<c04c4b74>] __dev_change_flags+0x94/0x144
      [   17.014853]        [<c04c4c3c>] dev_change_flags+0x18/0x48
      [   17.020334]        [<c053a9fc>] devinet_ioctl+0x6dc/0x7e4
      [   17.025729]        [<c04a59ec>] sock_ioctl+0x1d0/0x2a8
      [   17.030865]        [<c0142844>] do_vfs_ioctl+0x41c/0x688
      [   17.036173]        [<c0142ae4>] SyS_ioctl+0x34/0x5c
      [   17.041046]        [<c000ff60>] ret_fast_syscall+0x0/0x54
      [   17.046441]
      [   17.046441] other info that might help us debug this:
      [   17.046441]
      [   17.054434]  Possible unsafe locking scenario:
      [   17.054434]
      [   17.060343]        CPU0                    CPU1
      [   17.064862]        ----                    ----
      [   17.069381]   lock(rtnl_mutex);
      [   17.072522]                                lock(netcp_modules_lock);
      [   17.078875]                                lock(rtnl_mutex);
      [   17.084532]   lock(netcp_modules_lock);
      [   17.088366]
      [   17.088366]  *** DEADLOCK ***
      [   17.088366]
      [   17.094279] 1 lock held by ifconfig/1662:
      [   17.098278]  #0:  (rtnl_mutex){+.+.+.}, at: [<c053a418>]
      devinet_ioctl+0xf8/0x7e4
      [   17.105774]
      [   17.105774] stack backtrace:
      [   17.110124] CPU: 1 PID: 1662 Comm: ifconfig Tainted: G        W
      4.1.6-01265-gfb1e101 #1
      [   17.118637] Hardware name: Keystone
      [   17.122123] [<c00178e4>] (unwind_backtrace) from [<c0013cbc>]
      (show_stack+0x10/0x14)
      [   17.129862] [<c0013cbc>] (show_stack) from [<c05ff450>]
      (dump_stack+0x84/0xc4)
      [   17.137079] [<c05ff450>] (dump_stack) from [<c0068e34>]
      (print_circular_bug+0x210/0x330)
      [   17.145161] [<c0068e34>] (print_circular_bug) from [<c006ab7c>]
      (validate_chain.isra.35+0xf98/0x13ac)
      [   17.154372] [<c006ab7c>] (validate_chain.isra.35) from [<c006da60>]
      (__lock_acquire+0x52c/0xcc0)
      [   17.163149] [<c006da60>] (__lock_acquire) from [<c006eab0>]
      (lock_acquire+0x118/0x320)
      [   17.171058] [<c006eab0>] (lock_acquire) from [<c06023f0>]
      (mutex_lock_nested+0x68/0x4a8)
      [   17.179140] [<c06023f0>] (mutex_lock_nested) from [<c03e8110>]
      (netcp_ndo_open+0x168/0x518)
      [   17.187484] [<c03e8110>] (netcp_ndo_open) from [<c04c48f0>]
      (__dev_open+0xa8/0x10c)
      [   17.195133] [<c04c48f0>] (__dev_open) from [<c04c4b74>]
      (__dev_change_flags+0x94/0x144)
      [   17.203129] [<c04c4b74>] (__dev_change_flags) from [<c04c4c3c>]
      (dev_change_flags+0x18/0x48)
      [   17.211560] [<c04c4c3c>] (dev_change_flags) from [<c053a9fc>]
      (devinet_ioctl+0x6dc/0x7e4)
      [   17.219729] [<c053a9fc>] (devinet_ioctl) from [<c04a59ec>]
      (sock_ioctl+0x1d0/0x2a8)
      [   17.227378] [<c04a59ec>] (sock_ioctl) from [<c0142844>]
      (do_vfs_ioctl+0x41c/0x688)
      [   17.234939] [<c0142844>] (do_vfs_ioctl) from [<c0142ae4>]
      (SyS_ioctl+0x34/0x5c)
      [   17.242242] [<c0142ae4>] (SyS_ioctl) from [<c000ff60>]
      (ret_fast_syscall+0x0/0x54)
      [   17.258855] netcp-1.0 2620110.netcp eth0: Link is Up - 1Gbps/Full - 
flow
      control off
      [   17.271282] BUG: sleeping function called from invalid context at
      kernel/locking/mutex.c:616
      [   17.279712] in_atomic(): 1, irqs_disabled(): 0, pid: 1662, name: 
ifconfig
      [   17.286500] INFO: lockdep is turned off.
      [   17.290413] Preemption disabled at:[<  (null)>]   (null)
      [   17.295728]
      [   17.297214] CPU: 1 PID: 1662 Comm: ifconfig Tainted: G        W
      4.1.6-01265-gfb1e101 #1
      [   17.305735] Hardware name: Keystone
      [   17.309223] [<c00178e4>] (unwind_backtrace) from [<c0013cbc>]
      (show_stack+0x10/0x14)
      [   17.316970] [<c0013cbc>] (show_stack) from [<c05ff450>]
      (dump_stack+0x84/0xc4)
      [   17.324194] [<c05ff450>] (dump_stack) from [<c06023b0>]
      (mutex_lock_nested+0x28/0x4a8)
      [   17.332112] [<c06023b0>] (mutex_lock_nested) from [<c03e9840>]
      (netcp_set_rx_mode+0x160/0x210)
      [   17.340724] [<c03e9840>] (netcp_set_rx_mode) from [<c04c483c>]
      (dev_set_rx_mode+0x1c/0x28)
      [   17.348982] [<c04c483c>] (dev_set_rx_mode) from [<c04c490c>]
      (__dev_open+0xc4/0x10c)
      [   17.356724] [<c04c490c>] (__dev_open) from [<c04c4b74>]
      (__dev_change_flags+0x94/0x144)
      [   17.364729] [<c04c4b74>] (__dev_change_flags) from [<c04c4c3c>]
      (dev_change_flags+0x18/0x48)
      [   17.373166] [<c04c4c3c>] (dev_change_flags) from [<c053a9fc>]
      (devinet_ioctl+0x6dc/0x7e4)
      [   17.381344] [<c053a9fc>] (devinet_ioctl) from [<c04a59ec>]
      (sock_ioctl+0x1d0/0x2a8)
      [   17.388994] [<c04a59ec>] (sock_ioctl) from [<c0142844>]
      (do_vfs_ioctl+0x41c/0x688)
      [   17.396563] [<c0142844>] (do_vfs_ioctl) from [<c0142ae4>]
      (SyS_ioctl+0x34/0x5c)
      [   17.403873] [<c0142ae4>] (SyS_ioctl) from [<c000ff60>]
      (ret_fast_syscall+0x0/0x54)
      [   17.413772] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
      udhcpc (v1.20.2) started
      Sending discover...
      [   18.690666] netcp-1.0 2620110.netcp eth0: Link is Up - 1Gbps/Full - 
flow
      control off
      Sending discover...
      [   22.250972] netcp-1.0 2620110.netcp eth0: Link is Up - 1Gbps/Full - 
flow
      control off
      [   22.258721] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
      [   22.265458] BUG: sleeping function called from invalid context at
      kernel/locking/mutex.c:616
      [   22.273896] in_atomic(): 1, irqs_disabled(): 0, pid: 342, name: 
kworker/1:1
      [   22.280854] INFO: lockdep is turned off.
      [   22.284767] Preemption disabled at:[<  (null)>]   (null)
      [   22.290074]
      [   22.291568] CPU: 1 PID: 342 Comm: kworker/1:1 Tainted: G        W
      4.1.6-01265-gfb1e101 #1
      [   22.300255] Hardware name: Keystone
      [   22.303750] Workqueue: ipv6_addrconf addrconf_dad_work
      [   22.308895] [<c00178e4>] (unwind_backtrace) from [<c0013cbc>]
      (show_stack+0x10/0x14)
      [   22.316643] [<c0013cbc>] (show_stack) from [<c05ff450>]
      (dump_stack+0x84/0xc4)
      [   22.323867] [<c05ff450>] (dump_stack) from [<c06023b0>]
      (mutex_lock_nested+0x28/0x4a8)
      [   22.331786] [<c06023b0>] (mutex_lock_nested) from [<c03e9840>]
      (netcp_set_rx_mode+0x160/0x210)
      [   22.340394] [<c03e9840>] (netcp_set_rx_mode) from [<c04c9d18>]
      (__dev_mc_add+0x54/0x68)
      [   22.348401] [<c04c9d18>] (__dev_mc_add) from [<c05ab358>]
      (igmp6_group_added+0x168/0x1b4)
      [   22.356580] [<c05ab358>] (igmp6_group_added) from [<c05ad2cc>]
      (ipv6_dev_mc_inc+0x4f0/0x5a8)
      [   22.365019] [<c05ad2cc>] (ipv6_dev_mc_inc) from [<c058f0d0>]
      (addrconf_dad_work+0x21c/0x33c)
      [   22.373460] [<c058f0d0>] (addrconf_dad_work) from [<c0042850>]
      (process_one_work+0x214/0x8d0)
      [   22.381986] [<c0042850>] (process_one_work) from [<c0042f54>]
      (worker_thread+0x48/0x4bc)
      [   22.390071] [<c0042f54>] (worker_thread) from [<c004868c>]
      (kthread+0xf0/0x108)
      [   22.397381] [<c004868c>] (kthread) from [<c0010038>]

      Trace related to incorrect usage of mutex inside ndo_set_rx_mode

      [   24.086066] BUG: sleeping function called from invalid context at
      kernel/locking/mutex.c:616
      [   24.094506] in_atomic(): 1, irqs_disabled(): 0, pid: 1682, name: 
ifconfig
      [   24.101291] INFO: lockdep is turned off.
      [   24.105203] Preemption disabled at:[<  (null)>]   (null)
      [   24.110511]
      [   24.112005] CPU: 2 PID: 1682 Comm: ifconfig Tainted: G        W
      4.1.6-01265-gfb1e101 #1
      [   24.120518] Hardware name: Keystone
      [   24.124018] [<c00178e4>] (unwind_backtrace) from [<c0013cbc>]
      (show_stack+0x10/0x14)
      [   24.131772] [<c0013cbc>] (show_stack) from [<c05ff450>]
      (dump_stack+0x84/0xc4)
      [   24.138989] [<c05ff450>] (dump_stack) from [<c06023b0>]
      (mutex_lock_nested+0x28/0x4a8)
      [   24.146908] [<c06023b0>] (mutex_lock_nested) from [<c03e9840>]
      (netcp_set_rx_mode+0x160/0x210)
      [   24.155523] [<c03e9840>] (netcp_set_rx_mode) from [<c04c483c>]
      (dev_set_rx_mode+0x1c/0x28)
      [   24.163787] [<c04c483c>] (dev_set_rx_mode) from [<c04c490c>]
      (__dev_open+0xc4/0x10c)
      [   24.171531] [<c04c490c>] (__dev_open) from [<c04c4b74>]
      (__dev_change_flags+0x94/0x144)
      [   24.179528] [<c04c4b74>] (__dev_change_flags) from [<c04c4c3c>]
      (dev_change_flags+0x18/0x48)
      [   24.187966] [<c04c4c3c>] (dev_change_flags) from [<c053a9fc>]
      (devinet_ioctl+0x6dc/0x7e4)
      [   24.196145] [<c053a9fc>] (devinet_ioctl) from [<c04a59ec>]
      (sock_ioctl+0x1d0/0x2a8)
      [   24.203803] [<c04a59ec>] (sock_ioctl) from [<c0142844>]
      (do_vfs_ioctl+0x41c/0x688)
      [   24.211373] [<c0142844>] (do_vfs_ioctl) from [<c0142ae4>]
      (SyS_ioctl+0x34/0x5c)
      [   24.218676] [<c0142ae4>] (SyS_ioctl) from [<c000ff60>]
      (ret_fast_syscall+0x0/0x54)
      [   24.227156] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready

      Signed-off-by: Murali Karicheri <m-karicheri2@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 99f8ef5dc6546ac28cc7a03ff8301bc72fe5527e
  Author: Karicheri, Muralidharan <m-karicheri2@xxxxxx>
  Date:   Wed Sep 23 13:37:10 2015 -0400

      net: netcp: allocate buffers to desc before re-enable interrupt

      Currently netcp_rxpool_refill() that refill descriptors and attached
      buffers to fdq while interrupt is enabled as part of NAPI poll. Doing
      it while interrupt is disabled could be beneficial as hardware will
      not be starved when CPU is busy with processing interrupt.

      Signed-off-by: Murali Karicheri <m-karicheri2@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 915c5857874fc211874de1363e88f902e581e6eb
  Author: Karicheri, Muralidharan <m-karicheri2@xxxxxx>
  Date:   Wed Sep 23 13:37:09 2015 -0400

      net: netcp: check for interface handle in netcp_module_probe()

      Currently netcp_module_probe() doesn't check the return value of
      of_parse_phandle() that points to the interface data for the
      module and then pass the node ptr to the module which is incorrect.
      Check for return value and free the intf_modpriv if there is error.

      Signed-off-by: Murali Karicheri <m-karicheri2@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e558b1fbf5f43da83f91a31e595a6d65e663b100
  Author: Karicheri, Muralidharan <m-karicheri2@xxxxxx>
  Date:   Wed Sep 23 13:37:08 2015 -0400

      net: netcp: add error check to netcp_allocate_rx_buf()

      Currently, if netcp_allocate_rx_buf() fails due no descriptors
      in the rx free descriptor queue, inside the netcp_rxpool_refill() function
      the iterative loop to fill buffers doesn't terminate right away. So modify
      the netcp_allocate_rx_buf() to return an error code and use it break the
      loop when there is error.

      Signed-off-by: Murali Karicheri <m-karicheri2@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 736532a0705ffc27c14f712fa2758a7f8b15e8b4
  Author: Karicheri, Muralidharan <m-karicheri2@xxxxxx>
  Date:   Wed Sep 23 13:37:07 2015 -0400

      net: netcp: move netcp_register_interface() to after attach module

      The netcp interface is not fully initialized before attach the module
      to the interface. For example, the tx pipe/rx pipe is initialized
      in ethss module as part of attach(). So until this is complete, the
      interface can't be registered.  So move registration of interface to
      net device outside the current loop that attaches the modules to the
      interface.

      Signed-off-by: Murali Karicheri <m-karicheri2@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 156e3c21f89655f099228577005a6c656b3ceb3d
  Author: Karicheri, Muralidharan <m-karicheri2@xxxxxx>
  Date:   Wed Sep 23 13:37:06 2015 -0400

      net: netcp: remove dead code from the driver

      netcp_core is the first driver that will get initialized and the modules
      (ethss, pa etc) will then get initialized. So the code at the end of
      netcp_probe() that iterate over the modules is a dead code as the module
      list will be always be empty. So remove this code.

      Signed-off-by: Murali Karicheri <m-karicheri2@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8c85151ddec66f78fbf997e35be005a322fbb9c9
  Author: WingMan Kwok <w-kwok2@xxxxxx>
  Date:   Wed Sep 23 13:37:05 2015 -0400

      net: netcp: ethss: fix error in calling sgmii api with incorrect offset

      On K2HK, sgmii module registers of slave 0 and 1 are mem
      mapped to one contiguous block, while those of slave 2
      and 3 are mapped to another contiguous block.  However,
      on K2E and K2L, sgmii module registers of all slaves are
      mem mapped to one contiguous block.  SGMII APIs expect
      slave 0 sgmii base when API is invoked for slave 0 and 1,
      and slave 2 sgmii base when invoked for other slaves.
      Before this patch, slave 0 sgmii base is always passed to
      sgmii API for K2E regardless which slave is the API invoked
      for.  This patch fixes the problem.

      Signed-off-by: WingMan Kwok <w-kwok2@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d3869efe7a8a2298516d9af4f91487cf486ca945
  Author: David Woodhouse <dwmw2@xxxxxxxxxxxxx>
  Date:   Wed Sep 23 19:45:08 2015 +0100

      Fix AF_PACKET ABI breakage in 4.2

      Commit 7d82410950aa ("virtio: add explicit big-endian support to memory
      accessors") accidentally changed the virtio_net header used by
      AF_PACKET with PACKET_VNET_HDR from host-endian to big-endian.

      Since virtio_legacy_is_little_endian() is a very long identifier,
      define a vio_le macro and use that throughout the code instead of the
      hard-coded 'false' for little-endian.

      This restores the ABI to match 4.1 and earlier kernels, and makes my
      test program work again.

      Signed-off-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2d8bff12699abc3a9bf886bb0b79f44d94d81496
  Author: Neil Horman <nhorman@xxxxxxxxxx>
  Date:   Wed Sep 23 14:57:58 2015 -0400

      netpoll: Close race condition between poll_one_napi and napi_disable

      Drivers might call napi_disable while not holding the napi instance 
poll_lock.
      In those instances, its possible for a race condition to exist between
      poll_one_napi and napi_disable.  That is to say, poll_one_napi only tests 
the
      NAPI_STATE_SCHED bit to see if there is work to do during a poll, and as 
such
      the following may happen:

      CPU0                              CPU1
      ndo_tx_timeout                    napi_poll_dev
       napi_disable                      poll_one_napi
        test_and_set_bit (ret 0)
                                  test_bit (ret 1)
         reset adapter             napi_poll_routine

      If the adapter gets a tx timeout without a napi instance scheduled, its 
possible
      for the adapter to think it has exclusive access to the hardware  (as the 
napi
      instance is now scheduled via the napi_disable call), while the netpoll 
code
      thinks there is simply work to do.  The result is parallel hardware access
      leading to corrupt data structures in the driver, and a crash.

      Additionaly, there is another, more critical race between netpoll and
      napi_disable.  The disabled napi state is actually identical to the 
scheduled
      state for a given napi instance.  The implication being that, if a napi 
instance
      is disabled, a netconsole instance would see the napi state of the device 
as
      having been scheduled, and poll it, likely while the driver was dong 
something
      requiring exclusive access.  In the case above, its fairly clear that not 
having
      the rings in a state ready to be polled will cause any number of crashes.

      The fix should be pretty easy.  netpoll uses its own bit to indicate that 
that
      the napi instance is in a state of being serviced by netpoll 
(NAPI_STATE_NPSVC).
      We can just gate disabling on that bit as well as the sched bit.  That 
should
      prevent netpoll from conducting a napi poll if we convert its set bit to a
      test_and_set_bit operation to provide mutual exclusion

      Change notes:
      V2)
        Remove a trailing whtiespace
        Resubmit with proper subject prefix

      V3)
        Clean up spacing nits

      Signed-off-by: Neil Horman <nhorman@xxxxxxxxxxxxx>
      CC: "David S. Miller" <davem@xxxxxxxxxxxxx>
      CC: jmaxwell@xxxxxxxxxx
      Tested-by: jmaxwell@xxxxxxxxxx
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 675ee231d960af2af3606b4480324e26797eb010
  Author: Eric Dumazet <edumazet@xxxxxxxxxx>
  Date:   Wed Sep 23 14:00:21 2015 -0700

      tcp: add proper TS val into RST packets

      RST packets sent on behalf of TCP connections with TS option (RFC 7323
      TCP timestamps) have incorrect TS val (set to 0), but correct TS ecr.

      A > B: Flags [S], seq 0, win 65535, options [mss 1000,nop,nop,TS val 100
      ecr 0], length 0
      B > A: Flags [S.], seq 2444755794, ack 1, win 28960, options [mss
      1460,nop,nop,TS val 7264344 ecr 100], length 0
      A > B: Flags [.], ack 1, win 65535, options [nop,nop,TS val 110 ecr
      7264344], length 0

      B > A: Flags [R.], seq 1, ack 1, win 28960, options [nop,nop,TS val 0
      ecr 110], length 0

      We need to call skb_mstamp_get() to get proper TS val,
      derived from skb->skb_mstamp

      Note that RFC 1323 was advocating to not send TS option in RST segment,
      but RFC 7323 recommends the opposite :

        Once TSopt has been successfully negotiated, that is both <SYN> and
        <SYN,ACK> contain TSopt, the TSopt MUST be sent in every non-<RST>
        segment for the duration of the connection, and SHOULD be sent in an
        <RST> segment (see Section 5.2 for details)

      Note this RFC recommends to send TS val = 0, but we believe it is
      premature : We do not know if all TCP stacks are properly
      handling the receive side :

         When an <RST> segment is
         received, it MUST NOT be subjected to the PAWS check by verifying an
         acceptable value in SEG.TSval, and information from the Timestamps
         option MUST NOT be used to update connection state information.
         SEG.TSecr MAY be used to provide stricter <RST> acceptance checks.

      In 5 years, if/when all TCP stack are RFC 7323 ready, we might consider
      to decide to send TS val = 0, if it buys something.

      Fixes: 7faee5c0d514 ("tcp: remove TCP_SKB_CB(skb)->when")
      Signed-off-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Acked-by: Yuchung Cheng <ycheng@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e78654799135a788a941bacad3452fbd7083e518
  Author: Maxim Sheviakov <mrader3940@xxxxxxxxx>
  Date:   Wed Sep 23 17:10:51 2015 -0400

      drm/radeon: add quirk for MSI R7 370

      Just adds the quirk for MSI R7 370 Armor 2X
      Bug:
      https://bugs.freedesktop.org/show_bug.cgi?id=91294

      Signed-off-by: Maxim Sheviakov <mrader3940@xxxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 4c7fbc39b1d58d9f4113ef962743a67bcdfe6be2
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Wed Sep 23 14:32:06 2015 -0400

      drm/amdgpu: Sprinkle drm_modeset_lock_all to appease locking checks

      In

      commit 7a3f3d6667f5f9ffd1517f6b21d64bbf5312042c
      Author: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Date:   Thu Jul 9 23:44:28 2015 +0200

          drm: Check locking in drm_for_each_connector

      I added locking checks to drm_for_each_connector but failed that
      through drm_helper_connector_dpms -> drm_helper_choose_encoder_dpms
      it's used in a few more places in the amdgpu resume/suspend code.

      Fix them up.

      Note that we could use the connector iterator macros in there too, but
      that's for the future.

      Port of radeon commit:
      drm/radeon: Sprinkle drm_modeset_lock_all to appease locking checks

      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 6adaed5bfe4f6f0a0e027e87d5dd80bd9834d5f0
  Author: Daniel Vetter <daniel.vetter@xxxxxxxx>
  Date:   Wed Sep 23 20:26:45 2015 +0200

      drm/radeon: Sprinkle drm_modeset_lock_all to appease locking checks

      In

      commit 7a3f3d6667f5f9ffd1517f6b21d64bbf5312042c
      Author: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Date:   Thu Jul 9 23:44:28 2015 +0200

          drm: Check locking in drm_for_each_connector

      I added locking checks to drm_for_each_connector but failed that
      through drm_helper_connector_dpms -> drm_helper_choose_encoder_dpms
      it's used in a few more places in the radeon resume/suspend code.

      Fix them up.

      Note that we could use the connector iterator macros in there too, but
      that's for the future.

      Reported-and-tested-by: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Alex Deucher <alexdeucher@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 5c3422b0b135b46c8dca9c1d909c1ae84f3561bd
  Author: monk.liu <monk.liu@xxxxxxx>
  Date:   Wed Sep 23 13:49:58 2015 +0800

      drm/amdgpu: sync ce and me with SWITCH_BUFFER(2)

      we used to adopt wait_reg_mem to let CE wait before DE finish page
      updating, but from Tonga+, CE doesn't support wait_reg_mem package so
      this logic no longer works.

      so here is another approach to do same thing:
      Insert two of SWITCH_BUFFER at both front and end of vm_flush can
      guarantee that CE not go further to process IB_const before vm_flush
      done.

      Insert two of SWITCH_BUFFER also works on CI, so remove legency method
      to sync CE and ME

      v2:
      Insert double SWITCH_BUFFER at front of vm flush as well.

      Signed-off-by: monk.liu <monk.liu@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit 54ef0b5461c071050c61e501af5544842d61f40a
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Wed Sep 23 14:00:59 2015 +0300

      drm/amdgpu: integer overflow in amdgpu_mode_dumb_create()

      args->size is a u64.  arg->pitch and args->height are u32.  The
      multiplication will overflow instead of using the high 32 bits as
      intended.

      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 0913eab648e4fb30ddca8882e707d0fcf5b237c6
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Wed Sep 23 14:00:35 2015 +0300

      drm/amdgpu: info leak in amdgpu_gem_metadata_ioctl()

      There is no limit on args->data.data_size_bytes so we could read beyond
      the end of the args->data.data[] array.

      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Reported-by: Ilja Van Sprundel <ivansprundel@xxxxxxxxxxxx>
      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 0d2edd3791bb172a59d708d5c94330bbd6050f97
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Wed Sep 23 14:00:12 2015 +0300

      drm/amdgpu: integer overflow in amdgpu_info_ioctl()

      The "alloc_size" calculation can overflow leading to memory corruption.

      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Reported-by: Ilja Van Sprundel <ivansprundel@xxxxxxxxxxxx>
      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 1d263474c4416efb6d0feca98fe6d462b0d28f56
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Wed Sep 23 13:59:28 2015 +0300

      drm/amdgpu: unwind properly in amdgpu_cs_parser_init()

      The amdgpu_cs_parser_init() function doesn't clean up after itself but
      instead the caller uses a free everything function amdgpu_cs_parser_fini()
      on failure.  This style of error handling is often buggy.  In this
      example, we call "drm_free_large(parser->chunks[i].kdata);" when it is
      an unintialized pointer or when "parser->chunks" is NULL.

      I fixed this bug by adding unwind code so that it frees everything that
      it allocates.

      I also mode some other very minor changes:
      1) Renamed "r" to "ret".
      2) Moved the chunk_array allocation to the start of the function.
      3) Removed some initializers which are no longer needed.

      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Reported-by: Ilja Van Sprundel <ivansprundel@xxxxxxxxxxxx>
      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 5a6adfa20b622a273205e33b20c12332aa7eb724
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Tue Sep 22 10:06:45 2015 -0400

      drm/amdgpu: Fix max_vblank_count value for current display engines

      The value was much too low, which could cause the userspace visible
      vblank counter to move backwards when the hardware counter wrapped
      around.

      Ported from radeon commit:
      b0b9bb4dd51f396dcf843831905f729e74b0c8c0

      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 71affda522bb0f43e205cf4f000e2c50261c01a6
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Mon Sep 21 17:34:39 2015 -0400

      drm/amdgpu: use kmemdup rather than duplicating its implementation

      The patch was generated using fixed coccinelle semantic patch
      scripts/coccinelle/api/memdup.cocci [1].

      [1]: http://permalink.gmane.org/gmane.linux.kernel/2014320

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 1f4452105ce39786be13b4636251377a30d1286a
  Author: Leo Liu <leo.liu@xxxxxxx>
  Date:   Fri Sep 11 17:09:57 2015 -0400

      drm/amdgpu: fix UVD suspend and resume for VI APU

      User space passed the same handle before suspend and after resume,
      so we have remove the session and handle destroy, and keep the
      firmware untouched.

      Signed-off-by: Leo Liu <leo.liu@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 2bd188d0167227932be3cf5b033c0e600b01291f
  Author: Leo Liu <leo.liu@xxxxxxx>
  Date:   Fri Sep 11 14:22:18 2015 -0400

      drm/amdgpu: fix the UVD suspend sequence order

      Fixes suspend issues with UVD.

      Signed-off-by: Leo Liu <leo.liu@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 5146419e6feb99cfbc8dbf005dd2f62603e15efb
  Author: Leo Liu <leo.liu@xxxxxxx>
  Date:   Tue Sep 15 10:38:38 2015 -0400

      drm/amdgpu: make UVD handle checking more strict

      Invalid messages can crash the hw otherwise

      Ported from radeon commit a1b403da70e038ca6c6c6fe434d1d873546873a3

      Signed-off-by: Leo Liu <leo.liu@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 1ee4478a26cf55c8f8a6219d7e99f2b48959394d
  Author: Leo Liu <leo.liu@xxxxxxx>
  Date:   Thu Sep 10 13:41:38 2015 -0400

      drm/amdgpu: Disable UVD PG

      This causes problems with multiple suspend/resume cycles.

      Signed-off-by: Leo Liu <leo.liu@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 4f839a243d3b0d8b1a14f4778a87ec4d8ddbf15f
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Sep 8 20:22:31 2015 +0200

      drm/amdgpu: more scheduler cleanups v2

      Embed the scheduler into the ring structure instead of allocating it.
      Use the ring name directly instead of the id.

      v2: rebased, whitespace cleanup

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Junwei Zhang <Jerry.Zhang@xxxxxxx>
      Reviewed-by: Chunming Zhou<david1.zhou@xxxxxxx>

  commit 5ec92a7692872d656cffe010920fb49c4f51d75f
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Sep 7 18:43:02 2015 +0200

      drm/amdgpu: cleanup fence queue init v2

      Move the fence related stuff into amdgpu_fence.c

      v2: rework commit message, cause this is actually not a bug

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou<david1.zhou@xxxxxxx>
      Reviewed-by: Junwei Zhang <Jerry.Zhang@xxxxxxx>

  commit 9b398fa5c24eb05fc60fafd8543cc03e9170f054
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Sep 7 18:16:49 2015 +0200

      drm/amdgpu: rename fence->scheduler to sched v2

      Just to be consistent with the other members.

      v2: rename the ring member as well.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Junwei Zhang <Jerry.Zhang@xxxxxxx> (v1)
      Reviewed-by: Chunming Zhou<david1.zhou@xxxxxxx>

  commit 0f75aee75112934bcaf42410df5c51d7194b5896
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Sep 7 18:07:14 2015 +0200

      drm/amdgpu: cleanup entity init

      Reorder the fields and properly return the kfifo_alloc error code.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Junwei Zhang <Jerry.Zhang@xxxxxxx>
      Reviewed-by: Chunming Zhou<david1.zhou@xxxxxxx>

  commit a6db8a33e164ae72fb5429ab637e8cfee057a722
  Author: Junwei Zhang <Jerry.Zhang@xxxxxxx>
  Date:   Wed Sep 9 09:21:19 2015 +0800

      drm/amdgpu: refine the scheduler job type conversion

      Use container_of rather than casting.

      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: David Zhou <david1.zhou@xxxxxxx>
      Signed-off-by: Junwei Zhang <Jerry.Zhang@xxxxxxx>

  commit 4c7eb91cae88fd2aa101750d6825b4176f85ffb2
  Author: Junwei Zhang <Jerry.Zhang@xxxxxxx>
  Date:   Wed Sep 9 09:05:55 2015 +0800

      drm/amdgpu: refine the job naming for amdgpu_job and amdgpu_sched_job

      Use consistent naming across functions.

      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: David Zhou <david1.zhou@xxxxxxx>
      Signed-off-by: Junwei Zhang <Jerry.Zhang@xxxxxxx>

  commit bf60efd353f68e5dec1a177b5cbe4da07c819569
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Fri Sep 4 10:47:56 2015 +0200

      drm/amdgpu: use only one reservation object for each VM v2

      Reduces the locking and fencing overhead.

      v2: add comment why we need the duplicates list in the GEM op.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit a5b750583eb4af69da1e659c7684b6d370b2ae97
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Sep 3 16:40:39 2015 +0200

      drm/amdgpu: validate duplicates in the CS as well

      This allows for multiple BOs to have the same reservation object.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 72d7668b5ba5180b651e8a07dd6ed62e4e26f207
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Sep 3 17:34:59 2015 +0200

      drm/amdgpu: export reservation_object from dmabuf to ttm (v2)

      Adds an extra argument to amdgpu_bo_create, which is only used in 
amdgpu_prime.c.

      Port of radeon commit 831b6966a60fe72d85ae3576056b4e4e0775b112.

      v2: fix up kfd.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit b7d698d7fd7d132c6ebe56d230584f2cae6c94ee
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Sep 7 12:32:09 2015 +0200

      drm/amdgpu: fix overflow on 32bit systems

      mem->start is a long, so this can overflow on 32bit systems.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 1886d1a9caed20f457dd69a926c7f8b54c2d5f48
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Aug 31 17:28:28 2015 +0200

      drm/amdgpu: remove process_job callback from the scheduler

      Just free the resources immediately after submitting the job.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Junwei Zhang <Jerry.Zhang@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 258f3f99d514172aa5a9df15e6d6ebe33aad2f55
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Aug 31 17:02:52 2015 +0200

      drm/amdgpu: move scheduler fence callback into fence v2

      And call the processed callback directly after submitting the job.

      v2: split adding error handling into separate patch.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Junwei Zhang <Jerry.Zhang@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 27439fcac03632f2b1fd85268dc61af828c77e7b
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Wed Sep 2 12:03:06 2015 +0200

      drm/amdgpu: signal scheduler fence when hw submission fails v3

      Otherwise the resource blocked by it will never be reclaimed.

      v2: add DRM_ERROR.
      v3: fix typo in commit message

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Junwei Zhang <Jerry.Zhang@xxxxxxx>
      Reviewed-by: Chunming Zhou<david1.zhou@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 353da3c520b47272b9e3ddbc70b81be285c0b933
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Sep 7 16:06:53 2015 +0800

      drm/amdgpu: add tracepoint for scheduler (v2)

      track sched job status like the length of job queue and hw job queue.

      v2: fix build after rebase

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit 20a85ff846ffed84fba8637abbb6b1c96436c0ac
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Sat Sep 5 11:59:50 2015 +0200

      drm/amdgpu: use write confirm for vm_flush()

      Make sure the CP waits for the write to be confirmed before
      invalidating.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 22c01cc48301f6974868bd4a7b03e29883da1103
  Author: Anatoli Antonovitch <anatoli.antonovitch@xxxxxxx>
  Date:   Thu Sep 3 11:13:31 2015 -0400

      drm/amdgpu: execution barrier after fence v2

      Insert wait for reg mem after EOP to fix potential issue with vm context 
switch

      v2: move wait to vm_flush() use equal instead of greater than.

      Signed-off-by: Anatoli Antonovitch <anatoli.antonovitch@xxxxxxx>
      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 3daea9e3d3ecd217a63f35e63f18ea7138f2ae17
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Sat Sep 5 11:12:27 2015 +0200

      drm/amdgpu: add option to disable semaphores

      Provide module parameter to enable/disable them. Still
      enabled by default.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit bda4e0fb3126aca15586d165b5a15a37edc0a984
  Author: Keith Busch <keith.busch@xxxxxxxxx>
  Date:   Thu Sep 3 08:18:17 2015 -0600

      NVMe: Set affinity after allocating request queues

      The asynchronous namespace scanning caused affinity hints to be set before
      its tagset initialized, so there was no cpu mask to set the hint. This
      patch moves the affinity hint setting to after namespaces are scanned.

      Reported-by: �경� <ks0204.kim@xxxxxxxxxxx>
      Signed-off-by: Keith Busch <keith.busch@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit cbb4be652d374f64661137756b8f357a1827d6a4
  Author: Johan Hovold <johan@xxxxxxxxxx>
  Date:   Wed Sep 23 11:41:42 2015 -0700

      USB: whiteheat: fix potential null-deref at probe

      Fix potential null-pointer dereference at probe by making sure that the
      required endpoints are present.

      The whiteheat driver assumes there are at least five pairs of bulk
      endpoints, of which the final pair is used for the "command port". An
      attempt to bind to an interface with fewer bulk endpoints would
      currently lead to an oops.

      Fixes CVE-2015-5257.

      Reported-by: Moein Ghasemzadeh <moein@xxxxxxxxxxx>
      Cc: stable <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Johan Hovold <johan@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ed14ee0eea8b6808025356cecc87a8007885263f
  Merge: d86a2fe 8524bb0 ee92cfb
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Wed Sep 23 11:01:12 2015 -0700

      Merge remote-tracking branches 'asoc/fix/wm8960' and 'asoc/fix/wm8962' 
into asoc-linus

  commit d86a2fe4dc97cbbad04f5db941d9a1bb82e22b5f
  Merge: 312e0bc e4fba9b 921e546 8811191 4261786 3a0e27d f072f91
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Wed Sep 23 11:01:08 2015 -0700

      Merge remote-tracking branches 'asoc/fix/mtk', 'asoc/fix/psc', 
'asoc/fix/pxa', 'asoc/fix/spear', 'asoc/fix/sti' and 'asoc/fix/wm0010' into 
asoc-linus

  commit 312e0bce7f2d7fcf57f38f6e229a82eb4e0c2af4
  Merge: fcffa0d ab1fffe d76f419 6bd3c6f 5b64c17 f1ec5ec f0e03db
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Wed Sep 23 11:01:03 2015 -0700

      Merge remote-tracking branches 'asoc/fix/davinci', 'asoc/fix/doc', 
'asoc/fix/fsl-card', 'asoc/fix/fsl-ssi', 'asoc/fix/intel' and 
'asoc/fix/maintainers' into asoc-linus

  commit fcffa0dbb6c9144d07011531860da2f1e8a8b7cd
  Merge: 5ee84ba fce97b4
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Wed Sep 23 11:01:02 2015 -0700

      Merge remote-tracking branch 'asoc/fix/rt5645' into asoc-linus

  commit 5ee84ba8c7f5a5dd1934459acfec6108b5285940
  Merge: 1f93e4a 75881df
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Wed Sep 23 11:01:00 2015 -0700

      Merge remote-tracking branch 'asoc/fix/dapm' into asoc-linus

  commit fce97b4d70ad632dd9c6058622492501377bbaaa
  Author: Oder Chiou <oder_chiou@xxxxxxxxxxx>
  Date:   Wed Sep 23 14:35:30 2015 +0800

      ASoC: rt5645: Prevent the pop sound in case of playback and the jack is 
plugging

      Signed-off-by: Oder Chiou <oder_chiou@xxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 4f4794124e0421b080a0f1f5f1207636ba55eb85
  Author: Oder Chiou <oder_chiou@xxxxxxxxxxx>
  Date:   Wed Sep 23 14:35:29 2015 +0800

      ASoC: rt5645: Increase the delay time to remove the pop sound

      Signed-off-by: Oder Chiou <oder_chiou@xxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 21cb13e72b02dbbb5a02477d4dd46bc2bc1cfd08
  Author: Oder Chiou <oder_chiou@xxxxxxxxxxx>
  Date:   Wed Sep 23 14:35:28 2015 +0800

      ASoC: rt5645: Use the type SOC_DAPM_SINGLE_AUTODISABLE to prevent the 
weird sound in runtime of power up

      Signed-off-by: Oder Chiou <oder_chiou@xxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 50b956f3d85cdea130866f33613416431d60f396
  Author: Andy Gross <agross@xxxxxxxxxxxxxx>
  Date:   Fri Sep 11 16:01:16 2015 -0500

      firmware: qcom: scm: Add function stubs for ARM64

      This patch adds stubs for the SCM functions exposed in the QCOM SCM API.

      Signed-off-by: Andy Gross <agross@xxxxxxxxxxxxxx>
      Acked-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Acked-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxxxxxx>

  commit adbe734b2ae5517b8659997909677687b963d73c
  Merge: bcee19f f929d42
  Author: Jens Axboe <axboe@xxxxxx>
  Date:   Wed Sep 23 10:59:44 2015 -0600

      Merge branch 'stable/for-jens-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen into for-linus

      Konrad writes:

      It has one fix that should go in and also be put in stable tree (I've
      added the CC already).

      It is a fix for a memory leak that can exposed via using UEFI
      xen-blkfront driver.

  commit f929d42ceb18a8acfd47e0e7b7d90b5d49bd9258
  Author: Roger Pau Monne <roger.pau@xxxxxxxxxx>
  Date:   Fri Sep 4 12:08:07 2015 +0200

      xen/blkback: free requests on disconnection

      This is due to  commit 86839c56dee28c315a4c19b7bfee450ccd84cd25
      "xen/block: add multi-page ring support"

      When using an guest under UEFI - after the domain is destroyed
      the following warning comes from blkback.

      ------------[ cut here ]------------
      WARNING: CPU: 2 PID: 95 at
      /home/julien/works/linux/drivers/block/xen-blkback/xenbus.c:274
      xen_blkif_deferred_free+0x1f4/0x1f8()
      Modules linked in:
      CPU: 2 PID: 95 Comm: kworker/2:1 Tainted: G        W       4.2.0 #85
      Hardware name: APM X-Gene Mustang board (DT)
      Workqueue: events xen_blkif_deferred_free
      Call trace:
      [<ffff8000000890a8>] dump_backtrace+0x0/0x124
      [<ffff8000000891dc>] show_stack+0x10/0x1c
      [<ffff8000007653bc>] dump_stack+0x78/0x98
      [<ffff800000097e88>] warn_slowpath_common+0x9c/0xd4
      [<ffff800000097f80>] warn_slowpath_null+0x14/0x20
      [<ffff800000557a0c>] xen_blkif_deferred_free+0x1f0/0x1f8
      [<ffff8000000ad020>] process_one_work+0x160/0x3b4
      [<ffff8000000ad3b4>] worker_thread+0x140/0x494
      [<ffff8000000b2e34>] kthread+0xd8/0xf0
      ---[ end trace 6f859b7883c88cdd ]---

      Request allocation has been moved to connect_ring, which is called every
      time blkback connects to the frontend (this can happen multiple times 
during
      a blkback instance life cycle). On the other hand, request freeing has not
      been moved, so it's only called when destroying the backend instance. Due 
to
      this mismatch, blkback can allocate the request pool multiple times, 
without
      freeing it.

      In order to fix it, move the freeing of requests to xen_blkif_disconnect 
to
      restore the symmetry between request allocation and freeing.

      Reported-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
      Tested-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Cc: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
      Cc: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Cc: David Vrabel <david.vrabel@xxxxxxxxxx>
      Cc: xen-devel@xxxxxxxxxxxxxxxxxxxx
      CC: stable@xxxxxxxxxxxxxxx # 4.2
      Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>

  commit cd67d226ebd909d239d2c6e5a6abd6e2a338d1cd
  Author: Jani Nikula <jani.nikula@xxxxxxxxx>
  Date:   Thu Sep 17 16:42:07 2015 +0300

      drm/i915/bios: handle MIPI Sequence Block v3+ gracefully

      The VBT MIPI Sequence Block version 3 has forward incompatible changes:

      First, the block size in the header has been specified reserved, and the
      actual size is a separate 32-bit value within the block. The current
      find_section() function to will only look at the size in the block
      header, and, depending on what's in that now reserved size field,
      continue looking for other sections in the wrong place.

      Fix this by taking the new block size field into account. This will
      ensure that the lookups for other sections will work properly, as long
      as the new 32-bit size does not go beyond the opregion VBT mailbox size.

      Second, the contents of the block have been completely
      changed. Gracefully refuse parsing the yet unknown data version.

      Cc: Deepak M <m.deepak@xxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Reviewed-by: Deepak M <m.deepak@xxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 500d701f336b2771d34e46da7875a4782515a652
  Author: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 22 11:35:22 2015 +0800

      NFS41: make close wait for layoutreturn

      If we send a layoutreturn asynchronously before close, the close
      might reach server first and layoutreturn would fail with BADSTATEID
      because there is nothing keeping the layout stateid alive.

      Also do not pretend sending layoutreturn if we are not.

      Signed-off-by: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit d6eb71a6d2eda21c8cd7a4dcd6207a0d94eb6ae7
  Author: Vaibhav Jain <vaibhav@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 23 08:37:59 2015 +0530

      cxl: Fix lockdep warning while creating afu_err_buff attribute

      Presently a lockdep warning is reported during creation of afu_err_buff
      bin_attribute for the afu. This is caused due to the variable attr.key
      not pointing to a static class key, hence the function lockdep_init_map
      reports this warning:

       BUG: key <some-address> not in .data!

      The patch fixes this issue by calling sysfs_attr_init on the
      attr_eb.attr structure before populating it with the afu_err_buff file
      details. This will populate the attr.key variable with a static class
      key so that lockdep_init_map stops complaining about the lockdep key not
      being static.

      Reported-by: Daniel Axtens <dja@xxxxxxxxxx>
      Signed-off-by: Vaibhav Jain <vaibhav@xxxxxxxxxxxxxxxxxx>
      Acked-by: Ian Munsie <imunsie@xxxxxxxxxxx>
      Reviewed-by: Daniel Axtens <dja@xxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 721a09f7393de6c28a07516dccd654c6e995944a
  Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 15 14:28:54 2015 +0200

      drm/i915: Add primary plane to mask if it's visible

      This fixes the warnings like

      "plane A assertion failure, should be disabled but not"

      that on the initial modeset during boot. This can happen if
      the primary plane is enabled by the firmware, but inheriting
      it fails because the DMAR is active or for other reasons.

      Most likely caused by

      commit 36750f284b3a4f19b304fda1bb7d6e9e1275ea8d
      Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
      Date:   Mon Jun 1 12:49:54 2015 +0200

          drm/i915: update plane state during init

      Reported-by: Andreas Reis <andreas.reis@xxxxxxxxx>
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91429
      Reported-and-tested-by: Emil Renner Berthing <kernel@xxxxxxxx>
      Tested-by: Andreas Reis <andreas.reis@xxxxxxxxx>
      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit a7adb91b13c104e5ad950fbe1795aa2722f2ea0a
  Author: Kristen Carlson Accardi <kristen@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 22 10:51:36 2015 -0700

      x86/cpufeatures: Correct spelling of the HWP_NOTIFY flag

      Because noitification just isn't right.

      Signed-off-by: Kristen Carlson Accardi <kristen@xxxxxxxxxxxxxxx>
      Acked-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: rjw@xxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1442944296-11737-1-git-send-email-kristen@xxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 21199f27b430576552b26210b3194a363d7f05cd
  Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
  Date:   Wed Sep 16 16:10:40 2015 +0200

      locking/lockdep: Fix hlock->pin_count reset on lock stack rebuilds

      Various people reported hitting the "unpinning an unpinned lock"
      warning. As it turns out there are 2 places where we take a lock out
      of the middle of a stack, and in those cases it would fail to preserve
      the pin_count when rebuilding the lock stack.

      Reported-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Reported-by: Tim Spriggs <tspriggs@xxxxxxxxx>
      Tested-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: davej@xxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/20150916141040.GA11639@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit d0d0313c2ae4bc220c4ed96ce340860a4e74a2e9
  Merge: f73e22a c2e4b24
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Wed Sep 23 09:41:09 2015 +0200

      Merge tag 'perf-urgent-for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent

      Pull perf/urgent fixes from Arnaldo Carvalho de Melo:

        - Fix libtraceevent string handling in heterogeneous arch environments. 
(Kapileshwar Singh)

        - Avoid infinite loop at buildid processing with no samples in 'perf 
record'. (Mark Rutland)

      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 41b578fb0e8b930f2470d3f673b0fa279e77a7b8
  Author: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
  Date:   Tue Sep 22 12:15:54 2015 -0700

      drm/i915: workaround bad DSL readout v3

      On HSW at least (still testing other platforms, but should be harmless
      elsewhere), the DSL reg reads back as 0 when read around vblank start
      time.  This ends up confusing the atomic start/end checking code, since
      it causes the update to appear as if it crossed a frame count boundary.
      Avoid the problem by making sure we don't return scanline_offset from
      the get_crtc_scanline function.  In moving the code there, I add to add
      an additional delay since it could be called and have a legitimate 0
      result for some time (depending on the pixel clock).

      v2: move hsw dsl read hack to get_crtc_scanline (Ville)
      v3: use break instead of goto (Ville)
          update comment with workaround details (Ville)

      References: https://bugs.freedesktop.org/show_bug.cgi?id=91579
      Signed-off-by: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
      Reviewed-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit fbd03513bf36c4e5c2942f436f05c8eb99a3cc9e
  Author: Neil Armstrong <narmstrong@xxxxxxxxxxxx>
  Date:   Tue Sep 22 11:28:14 2015 +0200

      net: dsa: Fix Marvell Egress Trailer check

      The Marvell Egress rx trailer check must be fixed to
      correctly detect bad bits in the third byte of the
      Eggress trailer as described in the Table 28 of the
      88E6060 datasheet.
      The current code incorrectly omits to check the third
      byte and checks the fourth byte twice.

      Signed-off-by: Neil Armstrong <narmstrong@xxxxxxxxxxxx>
      Acked-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7def0f952eccdd0edb3c504f4dab35ee0d3aba1f
  Author: Dmitriy Vyukov <dvyukov@xxxxxxxxxx>
  Date:   Tue Sep 22 10:51:52 2015 +0200

      lib: fix data race in rhashtable_rehash_one

      rhashtable_rehash_one() uses complex logic to update entry->next field,
      after INIT_RHT_NULLS_HEAD and NULLS_MARKER expansion:

      entry->next = 1 | ((base + off) << 1)

      This can be compiled along the lines of:

      entry->next = base + off
      entry->next <<= 1
      entry->next |= 1

      Which will break concurrent readers.

      NULLS value recomputation is not needed here, so just remove
      the complex logic.

      The data race was found with KernelThreadSanitizer (KTSAN).

      Signed-off-by: Dmitry Vyukov <dvyukov@xxxxxxxxxx>
      Acked-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Acked-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 23eedbc2435ddd226717603c4f3c8efec7bdbb4d
  Author: Tobias Klauser <tklauser@xxxxxxxxxx>
  Date:   Tue Sep 22 09:29:49 2015 +0200

      ch9200: Convert to use module_usb_driver

      Converts the ch9200 driver to use the module_usb_driver() macro which
      makes the code smaller and a bit simpler.

      Signed-off-by: Tobias Klauser <tklauser@xxxxxxxxxx>
      Acked-by: Matthew Garrett <mjg59@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ae5f2fb1d51fa128a460bcfbe3c56d7ab8bf6a43
  Author: Jesse Gross <jesse@xxxxxxxxxx>
  Date:   Mon Sep 21 20:21:20 2015 -0700

      openvswitch: Zero flows on allocation.

      When support for megaflows was introduced, OVS needed to start
      installing flows with a mask applied to them. Since masking is an
      expensive operation, OVS also had an optimization that would only
      take the parts of the flow keys that were covered by a non-zero
      mask. The values stored in the remaining pieces should not matter
      because they are masked out.

      While this works fine for the purposes of matching (which must always
      look at the mask), serialization to netlink can be problematic. Since
      the flow and the mask are serialized separately, the uninitialized
      portions of the flow can be encoded with whatever values happen to be
      present.

      In terms of functionality, this has little effect since these fields
      will be masked out by definition. However, it leaks kernel memory to
      userspace, which is a potential security vulnerability. It is also
      possible that other code paths could look at the masked key and get
      uninitialized data, although this does not currently appear to be an
      issue in practice.

      This removes the mask optimization for flows that are being installed.
      This was always intended to be the case as the mask optimizations were
      really targetting per-packet flow operations.

      Fixes: 03f0d916 ("openvswitch: Mega flow implementation")
      Signed-off-by: Jesse Gross <jesse@xxxxxxxxxx>
      Acked-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 53adc9e83028d9e35b6408231ebaf62a94a16e4d
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Sep 21 21:42:59 2015 +0100

      net: dsa: actually force the speed on the CPU port

      Commit 54d792f257c6 ("net: dsa: Centralise global and port setup
      code into mv88e6xxx.") merged in the 4.2 merge window broke the link
      speed forcing for the CPU port of Marvell DSA switches.  The original
      code was:

              /* MAC Forcing register: don't force link, speed, duplex
               * or flow control state to any particular values on physical
               * ports, but force the CPU port and all DSA ports to 1000 Mb/s
               * full duplex.
               */
              if (dsa_is_cpu_port(ds, p) || ds->dsa_port_mask & (1 << p))
                      REG_WRITE(addr, 0x01, 0x003e);
              else
                      REG_WRITE(addr, 0x01, 0x0003);

      but the new code does a read-modify-write:

                      reg = _mv88e6xxx_reg_read(ds, REG_PORT(port), 
PORT_PCS_CTRL);
                      if (dsa_is_cpu_port(ds, port) ||
                          ds->dsa_port_mask & (1 << port)) {
                              reg |= PORT_PCS_CTRL_FORCE_LINK |
                                      PORT_PCS_CTRL_LINK_UP |
                                      PORT_PCS_CTRL_DUPLEX_FULL |
                                      PORT_PCS_CTRL_FORCE_DUPLEX;
                              if (mv88e6xxx_6065_family(ds))
                                      reg |= PORT_PCS_CTRL_100;
                              else
                                      reg |= PORT_PCS_CTRL_1000;

      The link speed in the PCS control register is a two bit field.  Forcing
      the link speed in this way doesn't ensure that the bit field is set to
      the correct value - on the hardware I have here, the speed bitfield
      remains set to 0x03, resulting in the speed not being forced to gigabit.

      We must clear both bits before forcing the link speed.

      Fixes: 54d792f257c6 ("net: dsa: Centralise global and port setup code 
into mv88e6xxx.")
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Acked-by: Andrew Lunn <andrew@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 08399efc631960c827cebcfe83ad7ed54ebc012b
  Author: John W. Linville <linville@xxxxxxxxxxxxx>
  Date:   Mon Sep 21 10:29:09 2015 -0400

      geneve: ensure ECN info is handled properly in all tx/rx paths

      Partially due to a pre-exising "thinko", the new metadata-based tx/rx
      paths were handling ECN propagation differently than the traditional
      tx/rx paths.  This patch removes the "thinko" (involving multiple
      ip_hdr assignments) on the rx path and corrects the ECN handling on
      both the rx and tx paths.

      Signed-off-by: John W. Linville <linville@xxxxxxxxxxxxx>
      Reviewed-by: Jesse Gross <jesse@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 012572d4fc2e4ddd5c8ec8614d51414ec6cae02a
  Author: Joseph Qi <joseph.qi@xxxxxxxxxx>
  Date:   Tue Sep 22 14:59:20 2015 -0700

      ocfs2/dlm: fix deadlock when dispatch assert master

      The order of the following three spinlocks should be:
      dlm_domain_lock < dlm_ctxt->spinlock < dlm_lock_resource->spinlock

      But dlm_dispatch_assert_master() is called while holding
      dlm_ctxt->spinlock and dlm_lock_resource->spinlock, and then it calls
      dlm_grab() which will take dlm_domain_lock.

      Once another thread (for example, dlm_query_join_handler) has already
      taken dlm_domain_lock, and tries to take dlm_ctxt->spinlock deadlock
      happens.

      Signed-off-by: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Cc: Mark Fasheh <mfasheh@xxxxxxxx>
      Cc: "Junxiao Bi" <junxiao.bi@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 7a07b503bf249986a1eeef0351d66cac0d8bf721
  Author: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
  Date:   Tue Sep 22 14:59:20 2015 -0700

      membarrier: clean up selftest

      We don't need to specify an explicit rule in the Makefile, the implicit
      one will do the same.  The "__EXPORTED_HEADERS__" define is not needed,
      because we build the test against the installed kernel headers, not the
      in-tree kernel headers.  Re-use "$(TEST_PROGS)" in the clean target
      rather than spelling the executable name twice.  Include <unistd.h>
      rather than the rather specific <asm-generic/unistd.h>.  Include
      <syscall.h> rather than <sys/syscall.h>.  In both cases, the former
      header is located in a standard location and includes the latter.

      Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
      Acked-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: Pranith Kumar <bobby.prani@xxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d5028f9f7d8de5c375c52b98976b6f310e73398f
  Author: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
  Date:   Tue Sep 22 14:59:20 2015 -0700

      vmscan: fix sane_reclaim helper for legacy memcg

      The sane_reclaim() helper is supposed to return false for memcg reclaim
      if the legacy hierarchy is used, because the latter lacks dirty
      throttling mechanism, and so it did before it was accidentally broken by
      commit 33398cf2f360c ("memcg: export struct mem_cgroup").  Fix it.

      Fixes: 33398cf2f360c ("memcg: export struct mem_cgroup")
      Signed-off-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Acked-by: Tejun Heo <tj@xxxxxxxxxx>
      Acked-by: Michal Hocko <mhocko@xxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d046b770c9fc36ccb19c27afdb8322220108cbc7
  Author: Sowmini Varadhan <sowmini.varadhan@xxxxxxxxxx>
  Date:   Tue Sep 22 14:59:20 2015 -0700

      lib/iommu-common.c: do not try to deref a null iommu->lazy_flush() 
pointer when n < pool->hint

      The check for invoking iommu->lazy_flush() from iommu_tbl_range_alloc()
      has to be refactored so that we only call ->lazy_flush() if it is
      non-null.

      I had a sparc kernel that was crashing when I was trying to process some
      very large perf.data files- the crash happens when the scsi driver calls
      into dma_4v_map_sg and thus the iommu_tbl_range_alloc().

      Signed-off-by: Sowmini Varadhan <sowmini.varadhan@xxxxxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: David S. Miller <davem@xxxxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 769a8089c1fd2fe94c13e66fe6e03d7820953ee3
  Author: Andrey Ryabinin <ryabinin.a.a@xxxxxxxxx>
  Date:   Tue Sep 22 14:59:17 2015 -0700

      x86, efi, kasan: #undef memset/memcpy/memmove per arch

      In not-instrumented code KASAN replaces instrumented memset/memcpy/memmove
      with not-instrumented analogues __memset/__memcpy/__memove.

      However, on x86 the EFI stub is not linked with the kernel.  It uses
      not-instrumented mem*() functions from arch/x86/boot/compressed/string.c

      So we don't replace them with __mem*() variants in EFI stub.

      On ARM64 the EFI stub is linked with the kernel, so we should replace
      mem*() functions with __mem*(), because the EFI stub runs before KASAN
      sets up early shadow.

      So let's move these #undef mem* into arch's asm/efi.h which is also
      included by the EFI stub.

      Also, this will fix the warning in 32-bit build reported by kbuild test
      robot:

        efi-stub-helper.c:599:2: warning: implicit declaration of function 
'memcpy'

      [akpm@xxxxxxxxxxxxxxxxxxxx: use 80 cols in comment]
      Signed-off-by: Andrey Ryabinin <ryabinin.a.a@xxxxxxxxx>
      Reported-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Matt Fleming <matt.fleming@xxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3aaa76e125c1dd58c9b599baa8c6021896874c12
  Author: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
  Date:   Tue Sep 22 14:59:14 2015 -0700

      mm: migrate: hugetlb: putback destination hugepage to active list

      Since commit bcc54222309c ("mm: hugetlb: introduce page_huge_active")
      each hugetlb page maintains its active flag to avoid a race condition
      betwe= en multiple calls of isolate_huge_page(), but current kernel
      doesn't set the f= lag on a hugepage allocated by migration because the
      proper putback routine isn= 't called.  This means that users could
      still encounter the race referred to by bcc54222309c in this special
      case, so this patch fixes it.

      Fixes: bcc54222309c ("mm: hugetlb: introduce page_huge_active")
      Signed-off-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Andi Kleen <andi@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>  [4.1.x]
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 8a04446ab0cf4f35d9f583cd6adcbf7c534e4995
  Author: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 22 14:59:12 2015 -0700

      mm, dax: VMA with vm_ops->pfn_mkwrite wants to be write-notified

      For VM_PFNMAP and VM_MIXEDMAP we use vm_ops->pfn_mkwrite instead of
      vm_ops->page_mkwrite to notify abort write access.  This means we want
      vma->vm_page_prot to be write-protected if the VMA provides this vm_ops.

      A theoretical scenario that will cause these missed events is:

        On writable mapping with vm_ops->pfn_mkwrite, but without
        vm_ops->page_mkwrite: read fault followed by write access to the pfn.
        Writable pte will be set up on read fault and write fault will not be
        generated.

      I found it examining Dave's complaint on generic/080:

        http://lkml.kernel.org/g/20150831233803.GO3902@dastard

      Although I don't think it's the reason.

      It shouldn't be a problem for ext2/ext4 as they provide both pfn_mkwrite
      and page_mkwrite.

      [akpm@xxxxxxxxxxxxxxxxxxxx: add local vm_ops to avoid 80-cols mess]
      Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Yigal Korman <yigal@xxxxxxxxxxxxx>
      Acked-by: Boaz Harrosh <boaz@xxxxxxxxxxxxx>
      Cc: Matthew Wilcox <matthew.r.wilcox@xxxxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Cc: Dave Chinner <david@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 09f7298100ea9767324298ab0c7979f6d7463183
  Author: Dr. David Alan Gilbert <dgilbert@xxxxxxxxxx>
  Date:   Tue Sep 22 14:59:09 2015 -0700

      userfaultfd: register uapi generic syscall (aarch64)

      Add the userfaultfd syscalls to uapi asm-generic, it was tested with
      postcopy live migration on aarch64 with both 4k and 64k pagesize
      kernels.

      Signed-off-by: Dr. David Alan Gilbert <dgilbert@xxxxxxxxxx>
      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Cc: Thierry Reding <treding@xxxxxxxxxx>
      Cc: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 5dd01be14565df814408327971775f36e55bf5e3
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Tue Sep 22 14:59:06 2015 -0700

      userfaultfd: selftest: don't error out if pthread_mutex_t isn't identical

      On ppc big endian this check fails, the mutex doesn't necessarily need
      to be identical for all pages after pthread_mutex_lock/unlock cycles.
      The count verification (outside of the pthread_mutex_t structure)
      suffices and that is retained.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Dr. David Alan Gilbert <dgilbert@xxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Cc: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit a5932bf5737f0b5caf6deaa92b062e4fe66cf5b2
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Tue Sep 22 14:59:03 2015 -0700

      userfaultfd: selftest: return an error if BOUNCE_VERIFY fails

      This will report the error in the exit code, in addition of the fprintf.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Dr. David Alan Gilbert <dgilbert@xxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Cc: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1f5fee2cf232f9fac05b65f21107d2cf3c32092c
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Tue Sep 22 14:59:00 2015 -0700

      userfaultfd: selftest: avoid my_bcmp false positives with powerpc

      Keep a non-zero placeholder after the count, for the my_bcmp comparison
      of the page against the zeropage.  The lockless increment between 255 to
      256 against a lockless my_bcmp could otherwise return false positives on
      ppc32le.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Tested-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: Dr. David Alan Gilbert <dgilbert@xxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Cc: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 56ed8f169e225dce1f9e40f6eee2e2dabe7d06fc
  Author: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
  Date:   Tue Sep 22 14:58:58 2015 -0700

      userfaultfd: selftest: only warn if __NR_userfaultfd is undefined

      If __NR_userfaultfd is not yet defined by the arch, warn but still build
      and run the userfaultfd selftest successfully.

      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Dr. David Alan Gilbert <dgilbert@xxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Cc: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 67f6a029b2ccf3399783a0ff2f812666f290d94f
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Tue Sep 22 14:58:55 2015 -0700

      userfaultfd: selftest: headers fixup

      Depend on "make headers_install" to create proper headers to include and
      provide syscall numbers.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Dr. David Alan Gilbert <dgilbert@xxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Cc: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d0a871141d07929b559f5eae9c3fc4b63d16866b
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Tue Sep 22 14:58:52 2015 -0700

      userfaultfd: selftests: vm: pick up sanitized kernel headers

      Add the usr/include subdirectory of the top-level tree to the include
      path, and make sure to include headers without relative paths to make
      sure the sanitized headers get picked up.  Otherwise the compiler will
      not be able to find the linux/compiler.h header included by the non-
      sanitized include/uapi/linux/userfaultfd.h.

      While at it, make sure to only hardcode the syscall numbers on x86 and
      PowerPC if they haven't been properly picked up from the headers.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Acked-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Dr. David Alan Gilbert <dgilbert@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ac5be6b47e8bd25b62bed2c82cda7398999f59e9
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Tue Sep 22 14:58:49 2015 -0700

      userfaultfd: revert "userfaultfd: waitqueue: add nr wake parameter to 
__wake_up_locked_key"

      This reverts commit 51360155eccb907ff8635bd10fc7de876408c2e0 and adapts
      fs/userfaultfd.c to use the old version of that function.

      It didn't look robust to call __wake_up_common with "nr == 1" when we
      absolutely require wakeall semantics, but we've full control of what we
      insert in the two waitqueue heads of the blocked userfaults.  No
      exclusive waitqueue risks to be inserted into those two waitqueue heads
      so we can as well stick to "nr == 1" of the old code and we can rely
      purely on the fact no waitqueue inserted in one of the two waitqueue
      heads we must enforce as wakeall, has wait->flags WQ_FLAG_EXCLUSIVE set.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Dr. David Alan Gilbert <dgilbert@xxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Cc: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 834e465bba38f2768747bccb5f00e951e72d2bf5
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Tue Sep 22 06:54:47 2015 +0800

      NFS: Skip checking ds_cinfo.buckets when lseg's commit_through_mds is set

      When lseg's commit_through_mds is set, pnfs client always WARN once
      in nfs_direct_select_verf after checking ds_cinfo.nbuckets.

      nfs should use the DS verf except commit_through_mds is set for
      layout segment where nbuckets is zero.

      [17844.666094] ------------[ cut here ]------------
      [17844.667071] WARNING: CPU: 0 PID: 21758 at 
/root/source/linux-pnfs/fs/nfs/direct.c:174 nfs_direct_select_verf+0x5a/0x70 
[nfs]()
      [17844.668650] Modules linked in: nfs_layout_nfsv41_files(OE) nfsv4(OE) 
nfs(OE) fscache(E) nfsd(OE) xfs libcrc32c btrfs ppdev coretemp crct10dif_pclmul 
auth_rpcgss crc32_pclmul crc32c_intel nfs_acl ghash_clmulni_intel lockd 
vmw_balloon xor vmw_vmci grace raid6_pq shpchp sunrpc parport_pc i2c_piix4 
parport vmwgfx drm_kms_helper ttm drm serio_raw mptspi e1000 scsi_transport_spi 
mptscsih mptbase ata_generic pata_acpi [last unloaded: fscache]
      [17844.686676] CPU: 0 PID: 21758 Comm: kworker/0:1 Tainted: G        W  
OE   4.3.0-rc1-pnfs+ #245
      [17844.687352] Hardware name: VMware, Inc. VMware Virtual Platform/440BX 
Desktop Reference Platform, BIOS 6.00 05/20/2014
      [17844.698502] Workqueue: nfsiod rpc_async_release [sunrpc]
      [17844.699212]  0000000000000009 0000000043e58010 ffff8800454fbc10 
ffffffff813680c4
      [17844.699990]  ffff8800454fbc48 ffffffff8108b49d ffff88004eb20000 
ffff88004eb20000
      [17844.700844]  ffff880062e26000 0000000000000000 0000000000000001 
ffff8800454fbc58
      [17844.701637] Call Trace:
      [17844.725252]  [<ffffffff813680c4>] dump_stack+0x19/0x25
      [17844.732693]  [<ffffffff8108b49d>] warn_slowpath_common+0x7d/0xb0
      [17844.733855]  [<ffffffff8108b5da>] warn_slowpath_null+0x1a/0x20
      [17844.735015]  [<ffffffffa04a27ca>] nfs_direct_select_verf+0x5a/0x70 
[nfs]
      [17844.735999]  [<ffffffffa04a2b83>] nfs_direct_set_hdr_verf+0x23/0x90 
[nfs]
      [17844.736846]  [<ffffffffa04a2e17>] 
nfs_direct_write_completion+0x227/0x260 [nfs]
      [17844.737782]  [<ffffffffa04a433c>] nfs_pgio_release+0x1c/0x20 [nfs]
      [17844.738597]  [<ffffffffa0502df3>] pnfs_generic_rw_release+0x23/0x30 
[nfsv4]
      [17844.739486]  [<ffffffffa01cbbea>] rpc_free_task+0x2a/0x70 [sunrpc]
      [17844.740326]  [<ffffffffa01cbcd5>] rpc_async_release+0x15/0x20 [sunrpc]
      [17844.741173]  [<ffffffff810a387c>] process_one_work+0x21c/0x4c0
      [17844.741984]  [<ffffffff810a37cd>] ? process_one_work+0x16d/0x4c0
      [17844.742837]  [<ffffffff810a3b6a>] worker_thread+0x4a/0x440
      [17844.743639]  [<ffffffff810a3b20>] ? process_one_work+0x4c0/0x4c0
      [17844.744399]  [<ffffffff810a3b20>] ? process_one_work+0x4c0/0x4c0
      [17844.745176]  [<ffffffff810a8d75>] kthread+0xf5/0x110
      [17844.745927]  [<ffffffff810a8c80>] ? kthread_create_on_node+0x240/0x240
      [17844.747105]  [<ffffffff8172ce1f>] ret_from_fork+0x3f/0x70
      [17844.747856]  [<ffffffff810a8c80>] ? kthread_create_on_node+0x240/0x240
      [17844.748642] ---[ end trace 336a2845d42b83f0 ]---

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit b838b39e930aa1cfd099ea82ac40ed6d6413af26
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Tue Sep 22 17:03:54 2015 -0500

      PCI: Clear IORESOURCE_UNSET when clipping a bridge window

      c770cb4cb505 ("PCI: Mark invalid BARs as unassigned") sets 
IORESOURCE_UNSET
      if we fail to claim a resource.  If we tried to claim a bridge window,
      failed, clipped the window, and tried to claim the clipped window, we
      failed again because of IORESOURCE_UNSET:

        pci_bus 0000:00: root bus resource [mem 0xc0000000-0xffffffff window]
        pci 0000:00:01.0: can't claim BAR 15 [mem 0xbdf00000-0xddefffff 64bit 
pref]: no compatible bridge window
        pci 0000:00:01.0: [mem size 0x20000000 64bit pref] clipped to [mem size 
0x1df00000 64bit pref]
        pci 0000:00:01.0:   bridge window [mem size 0x1df00000 64bit pref]
        pci 0000:00:01.0: can't claim BAR 15 [mem size 0x1df00000 64bit pref]: 
no address assigned

      The 00:01.0 window started as [mem 0xbdf00000-0xddefffff 64bit pref].  
That
      starts before the host bridge window [mem 0xc0000000-0xffffffff window], 
so
      we clipped the 00:01.0 window to [mem 0xc0000000-0xddefffff 64bit pref].
      But we left it marked IORESOURCE_UNSET, so the second claim failed when it
      should have succeeded.

      This means downstream devices will also fail for lack of resources, e.g.,
      in the bugzilla below,

        radeon 0000:01:00.0: Fatal error during GPU init

      Clear IORESOURCE_UNSET when we clip a bridge window.  Also clear
      IORESOURCE_UNSET in our copy of the unclipped window so we can see exactly
      what the original window was and how it now fits inside the upstream
      window.

      Fixes: c770cb4cb505 ("PCI: Mark invalid BARs as unassigned")
      Link: https://bugzilla.kernel.org/show_bug.cgi?id=85491#c47
      Based-on-patch-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
      Based-on-patch-by: Yinghai Lu <yinghai@xxxxxxxxxx>
      Tested-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
      Acked-by: Yinghai Lu <yinghai@xxxxxxxxxx>
      CC: stable@xxxxxxxxxxxxxxx        # v4.1+

  commit 8811191fdf7ed02ee07cb8469428158572d355a2
  Author: Robert Jarzmik <robert.jarzmik@xxxxxxx>
  Date:   Tue Sep 22 21:20:22 2015 +0200

      ASoC: pxa: pxa2xx-ac97: fix dma requestor lines

      PCM receive and transmit DMA requestor lines were reverted, breaking the
      PCM playback interface for PXA platforms using the sound/soc/ variant
      instead of the sound/arm variant.

      The commit below shows the inversion in the requestor lines.

      Fixes: d65a14587a9b ("ASoC: pxa: use snd_dmaengine_dai_dma_data")
      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 83c133cf11fb0e68a51681447e372489f052d40e
  Author: Andy Lutomirski <luto@xxxxxxxxxx>
  Date:   Sun Sep 20 16:32:05 2015 -0700

      x86/nmi/64: Fix a paravirt stack-clobbering bug in the NMI code

      The NMI entry code that switches to the normal kernel stack needs to
      be very careful not to clobber any extra stack slots on the NMI
      stack.  The code is fine under the assumption that SWAPGS is just a
      normal instruction, but that assumption isn't really true.  Use
      SWAPGS_UNSAFE_STACK instead.

      This is part of a fix for some random crashes that Sasha saw.

      Fixes: 9b6e6a8334d5 ("x86/nmi/64: Switch stacks on userspace NMI entry")
      Reported-and-tested-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Signed-off-by: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/974bc40edffdb5c2950a5c4977f821a446b76178.1442791737.git.luto@xxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit fc57a7c68020dcf954428869eafd934c0ab1536f
  Author: Andy Lutomirski <luto@xxxxxxxxxx>
  Date:   Sun Sep 20 16:32:04 2015 -0700

      x86/paravirt: Replace the paravirt nop with a bona fide empty function

      PARAVIRT_ADJUST_EXCEPTION_FRAME generates this code (using nmi as an
      example, trimmed for readability):

          ff 15 00 00 00 00       callq  *0x0(%rip)        # 2796 <nmi+0x6>
                    2792: R_X86_64_PC32     pv_irq_ops+0x2c

      That's a call through a function pointer to regular C function that
      does nothing on native boots, but that function isn't protected
      against kprobes, isn't marked notrace, and is certainly not
      guaranteed to preserve any registers if the compiler is feeling
      perverse.  This is bad news for a CLBR_NONE operation.

      Of course, if everything works correctly, once paravirt ops are
      patched, it gets nopped out, but what if we hit this code before
      paravirt ops are patched in?  This can potentially cause breakage
      that is very difficult to debug.

      A more subtle failure is possible here, too: if _paravirt_nop uses
      the stack at all (even just to push RBP), it will overwrite the "NMI
      executing" variable if it's called in the NMI prologue.

      The Xen case, perhaps surprisingly, is fine, because it's already
      written in asm.

      Fix all of the cases that default to paravirt_nop (including
      adjust_exception_frame) with a big hammer: replace paravirt_nop with
      an asm function that is just a ret instruction.

      The Xen case may have other problems, so document them.

      This is part of a fix for some random crashes that Sasha saw.

      Reported-and-tested-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Signed-off-by: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/8f5d2ba295f9d73751c33d97fda03e0495d9ade0.1442791737.git.luto@xxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 98ce94c8df762d413b3ecb849e2b966b21606d04
  Author: Peter Seiderer <ps.report@xxxxxxx>
  Date:   Thu Sep 17 21:40:12 2015 +0200

      cifs: use server timestamp for ntlmv2 authentication

      Linux cifs mount with ntlmssp against an Mac OS X (Yosemite
      10.10.5) share fails in case the clocks differ more than +/-2h:

      digest-service: digest-request: od failed with 2 proto=ntlmv2
      digest-service: digest-request: kdc failed with -1561745592 proto=ntlmv2

      Fix this by (re-)using the given server timestamp for the
      ntlmv2 authentication (as Windows 7 does).

      A related problem was also reported earlier by Namjae Jaen (see below):

      Windows machine has extended security feature which refuse to allow
      authentication when there is time difference between server time and
      client time when ntlmv2 negotiation is used. This problem is prevalent
      in embedded enviornment where system time is set to default 1970.

      Modern servers send the server timestamp in the TargetInfo Av_Pair
      structure in the challenge message [see MS-NLMP 2.2.2.1]
      In [MS-NLMP 3.1.5.1.2] it is explicitly mentioned that the client must
      use the server provided timestamp if present OR current time if it is
      not

      Reported-by: Namjae Jeon <namjae.jeon@xxxxxxxxxxx>
      Signed-off-by: Peter Seiderer <ps.report@xxxxxxx>
      Signed-off-by: Steve French <smfrench@xxxxxxxxx>
      CC: Stable <stable@xxxxxxxxxxxxxxx>

  commit e0ddde9d44e37fbc21ce893553094ecf1a633ab5
  Author: Steve French <smfrench@xxxxxxxxx>
  Date:   Tue Sep 22 09:29:38 2015 -0500

      disabling oplocks/leases via module parm enable_oplocks broken for SMB3

      leases (oplocks) were always requested for SMB2/SMB3 even when oplocks
      disabled in the cifs.ko module.

      Signed-off-by: Steve French <steve.french@xxxxxxxxxxxxxxx>
      Reviewed-by: Chandrika Srinivasan <chandrika.srinivasan@xxxxxxxxxx>
      CC: Stable <stable@xxxxxxxxxxxxxxx>

  commit 5b6a7175bfe570857a85b5570857e7555eff2c3a
  Merge: 3afb112 3eb4ee6
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Tue Sep 22 22:01:46 2015 +0200

      Merge branch 'kvm-ppc-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc into kvm-master

  commit 43d104db596977a8fddc1e71245859a7fe85a658
  Author: James Hogan <james.hogan@xxxxxxxxxx>
  Date:   Thu Sep 17 17:49:21 2015 +0100

      MIPS: Fix FTLB detection for R6

      R6 removed the Config4.MMUExtDef field, with the low 16 bits only
      allowed to contain FTLB fields, and commit e87569cd6c57 ("MIPS:
      cpu-probe: Fix VTLB/FTLB configuration for R6") updated the probing of
      this field to assume an FTLB is always present for R6.

      However the FTLB may still be absent. The presence of those fields is
      actually specified by the MMU type in the Config.MT field, so use that
      (the new cpu_has_ftlb) to determine whether the FTLB is actually
      present.

      Fixes: e87569cd6c57 ("MIPS: cpu-probe: Fix VTLB/FTLB configuration for 
R6")
      Signed-off-by: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/11160/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 2f6f31363cb7890784458d7805140687b4de5b59
  Author: James Hogan <james.hogan@xxxxxxxxxx>
  Date:   Thu Sep 17 17:49:20 2015 +0100

      MIPS: cpu-features: Add cpu_has_ftlb

      Add cpu_has_ftlb, which specifies that an FTLB is present in addition to
      the VTLB, probed based on whether Config.MT == 4 (rather than 1 for
      standard JTLB).

      This is necessary since MIPS release 6 removes Config4.MMUExtDef, so the
      presence of the FTLB fields in Config4 must be determined from Config.MT
      instead.

      Signed-off-by: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/11159/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 2b9dbef272b63c561aab0a5be34fd428f7b710f5
  Author: Josef Bacik <jbacik@xxxxxx>
  Date:   Tue Sep 15 10:07:04 2015 -0400

      Btrfs: keep dropped roots in cache until transaction commit

      When dropping a snapshot we need to account for the qgroup changes.  If 
we drop
      the snapshot in all one go then the backref code will fail to find blocks 
from
      the snapshot we dropped since it won't be able to find the root in the fs 
root
      cache.  This can lead to us failing to find refs from other roots that 
pointed
      at blocks in the now deleted root.  To handle this we need to not remove 
the fs
      roots from the cache until after we process the qgroup operations.  Do 
this by
      adding dropped roots to a list on the transaction, and letting the 
transaction
      remove the roots at the same time it drops the commit roots.  This will 
keep all
      of the backref searching code in sync properly, and fixes a problem Mark 
was
      seeing with snapshot delete and qgroups.  Thanks,

      Signed-off-by: Josef Bacik <jbacik@xxxxxx>
      Tested-by: Holger Hoffstätte <holger.hoffstaette@xxxxxxxxxxxxxx>
      Signed-off-by: Chris Mason <clm@xxxxxx>

  commit 19446da415e0f01d56364b700fe984cda78bca50
  Author: Alexander Couzens <lynxis@xxxxxxx>
  Date:   Sat Sep 19 06:26:20 2015 +0200

      MIPS: ATH79: Add irq chip ar7240-misc-intc

      The ar7240 misc irq chip use ack handler
      instead of ack_mask handler. All new ath79 chips use
      the ar7240 misc irq chip

      Signed-off-by: Alexander Couzens <lynxis@xxxxxxx>
      Acked-by: Alban Bedel <albeu@xxxxxxx>
      Acked-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Rob Herring <robh+dt@xxxxxxxxxx>
      Cc: Pawel Moll <pawel.moll@xxxxxxx>
      Cc: Mark Rutland <mark.rutland@xxxxxxx>
      Cc: Ian Campbell <ijc+devicetree@xxxxxxxxxxxxxx>
      Cc: Kumar Gala <galak@xxxxxxxxxxxxxx>
      Cc: devicetree@xxxxxxxxxxxxxxx
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/11164/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 84dedd71cf3bc61cc65ca43a48f7252344a1bb68
  Author: Alexander Couzens <lynxis@xxxxxxx>
  Date:   Sat Sep 19 06:26:19 2015 +0200

      MIPS: ATH79: Set missing irq ack handler for ar7100-misc-intc irq chip

      The irq ack handler was forgotten while introducing OF support.
      Only ar71xx and ar933x based devices require it.

      Signed-off-by: Alexander Couzens <lynxis@xxxxxxx>
      Acked-by: Alban Bedel <albeu@xxxxxxx>
      Acked-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Rob Herring <robh+dt@xxxxxxxxxx>
      Cc: Pawel Moll <pawel.moll@xxxxxxx>
      Cc: Mark Rutland <mark.rutland@xxxxxxx>
      Cc: Ian Campbell <ijc+devicetree@xxxxxxxxxxxxxx>
      Cc: Kumar Gala <galak@xxxxxxxxxxxxxx>
      Cc: devicetree@xxxxxxxxxxxxxxx
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/11163/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit b259e51f2e29390518021f9b8df55a3de42f371b
  Author: Aurelien Jarno <aurelien@xxxxxxxxxxx>
  Date:   Sat Sep 5 18:46:57 2015 +0200

      MIPS: BPF: Fix build on pre-R2 little endian CPUs

      The rotr, seh and wsbh instructions have been introduced with the R2
      ISA. Thus the current BPF code fails to build on pre-R2 little endian
      CPUs:

          CC      arch/mips/net/bpf_jit.o
          AS      arch/mips/net/bpf_jit_asm.o
        /home/aurel32/linux-4.2/arch/mips/net/bpf_jit_asm.S: Assembler messages:
        /home/aurel32/linux-4.2/arch/mips/net/bpf_jit_asm.S:67: Error: opcode 
not supported on this processor: mips32 (mips32) `wsbh $8,$19'
        /home/aurel32/linux-4.2/arch/mips/net/bpf_jit_asm.S:68: Error: opcode 
not supported on this processor: mips32 (mips32) `rotr $19,$8,16'
        /home/aurel32/linux-4.2/arch/mips/net/bpf_jit_asm.S:83: Error: opcode 
not supported on this processor: mips32 (mips32) `wsbh $8,$19'
        /home/aurel32/linux-4.2/arch/mips/net/bpf_jit_asm.S:84: Error: opcode 
not supported on this processor: mips32 (mips32) `seh $19,$8'
        /home/aurel32/linux-4.2/arch/mips/net/bpf_jit_asm.S:151: Error: opcode 
not supported on this processor: mips32 (mips32) `wsbh $8,$12'
        /home/aurel32/linux-4.2/arch/mips/net/bpf_jit_asm.S:153: Error: opcode 
not supported on this processor: mips32 (mips32) `rotr $19,$8,16'
        /home/aurel32/linux-4.2/arch/mips/net/bpf_jit_asm.S:164: Error: opcode 
not supported on this processor: mips32 (mips32) `wsbh $19,$12'
        /home/aurel32/linux-4.2/scripts/Makefile.build:294: recipe for target 
'arch/mips/net/bpf_jit_asm.o' failed

      Fix that by providing equivalent code for these CPUs.

      Signed-off-by: Aurelien Jarno <aurelien@xxxxxxxxxxx>
      Reviewed-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # v4.2+
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/11098/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit faa9724a674e5e52316bb0d173aed16bd17d536c
  Author: Aurelien Jarno <aurelien@xxxxxxxxxxx>
  Date:   Sat Sep 5 18:46:56 2015 +0200

      MIPS: BPF: Avoid unreachable code on little endian

      On little endian, avoid generating the big endian version of the code
      by using #else in addition to #ifdef #endif. Also fix one alignment
      issue wrt delay slot.

      Signed-off-by: Aurelien Jarno <aurelien@xxxxxxxxxxx>
      Reviewed-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # v4.2+
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/11097/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 711e020cae9cd105d81a783686cb8c8059c08b2c
  Merge: 5132361 dd85ebf b0b4855
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Tue Sep 22 09:48:41 2015 -0700

      Merge remote-tracking branches 'spi/fix/spidev' and 'spi/fix/xtfpga' into 
spi-linus

  commit 5132361cd97ed21863fb48bb8e4a0e6203a4269a
  Merge: 1f93e4a d630526 2a3fffd 0243ed4 e26d15f c9e97b3 6583d20 02bc933
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Tue Sep 22 09:48:34 2015 -0700

      Merge remote-tracking branches 'spi/fix/atmel', 'spi/fix/bcm2835', 
'spi/fix/doc', 'spi/fix/mediatek', 'spi/fix/meson', 'spi/fix/mtk' and 
'spi/fix/pxa2xx' into spi-linus

  commit f0e03dbd2d61d991bdd2d76b4e84681fe3077176
  Author: Richard Fitzgerald <rf@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 22 15:30:33 2015 +0100

      MAINTAINERS: Update website and git repo for Wolfson Microelectronics

      Support for Wolfson Microelectronics devices is now part of Cirrus Logic
      and the relevant parts of the old opensource.wolfsonmicro.com site have
      moved to the Cirrus Logic GitHub area.

      This patch updates the website and git repo links, and also removes an
      obsolete website link for the voltage and current drivers.

      Signed-off-by: Richard Fitzgerald <rf@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit b0b4855099e301c8603ea37da9a0103a96c2e0b1
  Author: Max Filippov <jcmvbkbc@xxxxxxxxx>
  Date:   Tue Sep 22 14:32:03 2015 +0300

      spi: xtensa-xtfpga: fix register endianness

      XTFPGA SPI controller has native endian registers.
      Fix register acessors so that they work in big-endian configurations.

      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit f7a7651fcd40a2bf29357ffeaee176fb159bcddb
  Author: Jonathan McDowell <noodles@xxxxxxxx>
  Date:   Mon Sep 21 21:23:47 2015 +0100

      tty: serial: Add missing module license for 8250_base.ko

      The split of the 8250 driver into a 8250_base/8250.ko resulted in a
      lack of a license for the 8250_base.ko module. This caused the module
      to fail to load and the kernel to be tainted. Add the appropriate
      MODULE_LICENSE to 8250_port.c, which is always compiled into
      8250_base.ko

      Signed-off-by: Jonathan McDowell <noodles@xxxxxxxx>
      Reported-by: Mikael Pettersson <mikpelinux@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 50314035d6b1e9e07753162dd3be8df81b998086
  Merge: ca1c4b7 f4513b0
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 22 08:56:13 2015 -0700

      Merge tag 'extcon-fixes-for-4.3-rc3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/extcon into 
char-misc-linus

      Chanwoo writes:

      Update extcon for v4.3-rc3

      This patches fix the following one issue:
      - Fix bug of the is_extcon_changed() which check whether specific cable is
        attached or detached.

  commit 88d3426942d748b90b051b7ef2d5d765f5f3054c
  Author: Alexander Sverdlin <alexander.sverdlin@xxxxxxxxx>
  Date:   Thu Sep 3 08:36:35 2015 +0200

      MIPS: bootmem: Fix mapstart calculation for contiguous maps

      Commit a6335fa1 fixed the case with gap between initrd and next usable 
PFN zone,
      but broken the case when initrd is combined with usable memory into one 
region
      (in add_memory_region()). Restore the fixup initially brought in by 
f9a7febd.

      ---- error message ----
      Unpacking initramfs...
      Initramfs unpacking failed: junk in compressed archive
      BUG: Bad page state in process swapper  pfn:00261
      page:81004c20 count:0 mapcount:-127 mapping:  (null) index:0x2
      flags: 0x0()
      page dumped because: nonzero mapcount
      CPU: 0 PID: 1 Comm: swapper Not tainted 4.2.0+ #1782
      -----------------------

      Signed-off-by: Alexander Sverdlin <alexander.sverdlin@xxxxxxxxx>
      Reported-by: Tony Wu <tung7970@xxxxxxxxx>
      Tested-by: Tony Wu <tung7970@xxxxxxxxx>
      Cc: David Daney <david.daney@xxxxxxxxxx>
      Cc: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@xxxxxxxxxx>
      Cc: Huacai Chen <chenhc@xxxxxxxxxx>
      Cc: Joe Perches <joe@xxxxxxxxxxx>
      Cc: Steven J. Hill <Steven.Hill@xxxxxxxxxx>
      Cc: Aaro Koskinen <aaro.koskinen@xxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/11086/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit fc2ca674470bbfe11d72a20a3f19fd3dc43bfca0
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Sun Aug 30 21:19:58 2015 -0700

      MIPS: Fix console output for Fulong2e system

      Commit 3adeb2566b9b ("MIPS: Loongson: Improve LEFI firmware interface")
      made the number of UARTs dynamic if LEFI_FIRMWARE_INTERFACE is configured.
      Unfortunately, it did not initialize the number of UARTs if
      LEFI_FIRMWARE_INTERFACE is not configured. As a result, the Fulong2e
      system has no console.

      Fixes: 3adeb2566b9b ("MIPS: Loongson: Improve LEFI firmware interface")
      Acked-by: Huacai Chen <chenhc@xxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Tested-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/11076/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit c2e4b24ff848bb180f9b9cd873a38327cd219ad2
  Author: Kapileshwar Singh <kapileshwar.singh@xxxxxxx>
  Date:   Tue Sep 22 14:22:03 2015 +0100

      tools lib traceevent: Fix string handling in heterogeneous arch 
environments

      When a trace recorded on a 32-bit device is processed with a 64-bit
      binary, the higher 32-bits of the address need to ignored.

      The lack of this results in the output of the 64-bit pointer
      value to the trace as the 32-bit address lookup fails in find_printk().

      Before:

        burn-1778  [003]   548.600305: bputs:   0xc0046db2s: 2cec5c058d98c

      After:

        burn-1778  [003]   548.600305: bputs:   0xc0046db2s: RT throttling 
activated

      The problem occurs in PRINT_FIELD when the field is recognized as a
      pointer to a string (of the type const char *)

      Heterogeneous architectures cases below can arise and should be handled:

      * Traces recorded using 32-bit addresses processed on a 64-bit machine
      * Traces recorded using 64-bit addresses processed on a 32-bit machine

      Reported-by: Juri Lelli <juri.lelli@xxxxxxx>
      Signed-off-by: Kapileshwar Singh <kapileshwar.singh@xxxxxxx>
      Reviewed-by: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Javi Merino <javi.merino@xxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1442928123-13824-1-git-send-email-kapileshwar.singh@xxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit d32dc9aa10c739363c775baf4499416b2e0dc11f
  Author: Ludovic Desroches <ludovic.desroches@xxxxxxxxx>
  Date:   Mon Sep 21 15:46:04 2015 +0200

      irqchip/atmel-aic5: Use per chip mask caches in mask/unmask()

      When masking/unmasking interrupts, mask_cache is updated and used later
      for suspend/resume. Unfortunately, it always was the mask_cache
      associated with the first irq chip which was updated. So when performing
      resume, only irqs 0-31 could be enabled.

      Fixes: b1479ebb7720 ("irqchip: atmel-aic: Add atmel AIC/AIC5 drivers")
      Signed-off-by: Ludovic Desroches <ludovic.desroches@xxxxxxxxx>
      Cc: <sasha.levin@xxxxxxxxxx>
      Cc: <linux-arm-kernel@xxxxxxxxxxxxxxxxxxx>
      Cc: <nicolas.ferre@xxxxxxxxx>
      Cc: <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Cc: <boris.brezillon@xxxxxxxxxxxxxxxxxx>
      Cc: <Wenyou.Yang@xxxxxxxxx>
      Cc: <jason@xxxxxxxxxxxxxx>
      Cc: <marc.zyngier@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx #3.18
      Link: 
http://lkml.kernel.org/r/1442843173-2390-1-git-send-email-ludovic.desroches@xxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit babc305e21ea3811d98b67437299360904ac1b6a
  Author: Sara Sharon <sara.sharon@xxxxxxxxx>
  Date:   Mon Sep 21 15:47:40 2015 +0300

      mac80211: reset CQM history upon reconfiguration

      The current behavior of notifying CQM events is inconsistent:
      Upon first configuration there is a cqm event with the current
      status according to threshold configured, regardless of signal
      stability.
      When there is reconfiguration no event is sent unless there is
      a significant change to the signal level according to the new
      configuration.

      Since the current reconfiguration behavior might cause missing
      CQM events in case the current signal did not change but is on
      the other side of the new threshold, fix that by resetting the
      stored signal level upon reconfiguration.

      Signed-off-by: Sara Sharon <sara.sharon@xxxxxxxxx>
      Signed-off-by: Luca Coelho <luciano.coelho@xxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 2df1b131b54f431877a6665139dac805ba5ce1a5
  Author: Johannes Berg <johannes.berg@xxxxxxxxx>
  Date:   Fri Aug 21 14:07:13 2015 +0200

      mac80211: fix VHT MCS mask array overrun

      The HT MCS mask has 9 bytes, the VHT one only has 8 streams.
      Split the loops to handle this correctly.

      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 208473c1f3ac3eccec097021eec3890f5e20fcc7
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 14:13:44 2015 +0100

      ARM: wire up new syscalls

      Wire up the new userfaultfd and membarrier syscalls for ARM.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit cc8e4fc0c3b5e8340bc8358990515d116a3c274c
  Author: Mathias Nyman <mathias.nyman@xxxxxxxxxxxxxxx>
  Date:   Mon Sep 21 17:46:17 2015 +0300

      xhci: init command timeout timer earlier to avoid deleting it 
uninitialized

      Don't check if timer is running with a timer_pending() before
      deleting it with del_timer_sync(), this defies the whole point of
      the sync part and can cause a possible race.

      Instead we just want to make sure the timer is initialized early enough
      before we have a chance to delete it.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Reported-by: Oliver Neukum <oneukum@xxxxxxxx>
      Signed-off-by: Mathias Nyman <mathias.nyman@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit dca7794539eff04b786fb6907186989e5eaaa9c2
  Author: Mathias Nyman <mathias.nyman@xxxxxxxxxxxxxxx>
  Date:   Mon Sep 21 17:46:16 2015 +0300

      xhci: change xhci 1.0 only restrictions to support xhci 1.1

      Some changes between xhci 0.96 and xhci 1.0 specifications forced us to
      check the hci version in code, some of these checks were implemented as
      hci_version == 1.0, which will not work with new xhci 1.1 controllers.

      xhci 1.1 behaves similar to xhci 1.0 in these cases, so change these
      checks to hci_version >= 1.0

      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Mathias Nyman <mathias.nyman@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 448116bfa856d3c076fa7178ed96661a008a5d45
  Author: Roger Quadros <rogerq@xxxxxx>
  Date:   Mon Sep 21 17:46:15 2015 +0300

      usb: xhci: exit early in xhci_setup_device() if we're halted or dying

      During quick plug/removal of OTG adapter during dual-role testing
      it can happen that xhci_alloc_device() is called for the newly
      detected device after the DRD library has called xhci_stop to
      remove the HCD.

      If that is the case, just fail early to prevent the following warning.

      [  154.732649] hub 4-0:1.0: USB hub found
      [  154.742204] hub 4-0:1.0: 1 port detected
      [  154.824458] hub 3-0:1.0: state 7 ports 1 chg 0002 evt 0000
      [  154.854609] hub 4-0:1.0: state 7 ports 1 chg 0000 evt 0000
      [  154.944430] usb 3-1: new high-speed USB device number 2 using xhci-hcd
      [  154.951009] xhci-hcd xhci-hcd.0.auto: xhci_setup_device
      [  155.038191] xhci-hcd xhci-hcd.0.auto: remove, state 4
      [  155.043315] usb usb4: USB disconnect, device number 1
      [  155.055270] xhci-hcd xhci-hcd.0.auto: xhci_stop
      [  155.060094] xhci-hcd xhci-hcd.0.auto: USB bus 4 deregistered
      [  155.066576] xhci-hcd xhci-hcd.0.auto: remove, state 1
      [  155.071710] usb usb3: USB disconnect, device number 1
      [  155.077124] xhci-hcd xhci-hcd.0.auto: xhci_setup_device
      [  155.082389] ------------[ cut here ]------------
      [  155.087690] WARNING: CPU: 0 PID: 72 at drivers/usb/host/xhci.c:3800 
xhci_setup_device+0x410/0x484 [xhci_hcd]()
      [  155.097861] Modules linked in: sd_mod usb_storage scsi_mod usb_f_ss_lb 
g_zero libcomposite ipv6 xhci_plat_hcd xhci_hcd usbcore dwc3 udc_core evdev 
ti_am335x_adc joydev kfifo_buf industrialio snd_soc_simple_cc
      [  155.146734] CPU: 0 PID: 72 Comm: kworker/0:3 Tainted: G        W       
4.1.4-00834-gcd9380b-dirty #50
      [  155.156073] Hardware name: Generic AM43 (Flattened Device Tree)
      [  155.162117] Workqueue: usb_hub_wq hub_event [usbcore]
      [  155.167249] Backtrace:
      [  155.169751] [<c0012af0>] (dump_backtrace) from [<c0012c8c>] 
(show_stack+0x18/0x1c)
      [  155.177390]  r6:c089d4a4 r5:ffffffff r4:00000000 r3:ee46c000
      [  155.183137] [<c0012c74>] (show_stack) from [<c05f7c14>] 
(dump_stack+0x84/0xd0)
      [  155.190446] [<c05f7b90>] (dump_stack) from [<c00439ac>] 
(warn_slowpath_common+0x80/0xbc)
      [  155.198605]  r7:00000009 r6:00000ed8 r5:bf27eb70 r4:00000000
      [  155.204348] [<c004392c>] (warn_slowpath_common) from [<c0043a0c>] 
(warn_slowpath_null+0x24/0x2c)
      [  155.213202]  r8:ee49f000 r7:ee7c0004 r6:00000000 r5:ee7c0158 
r4:ee7c0000
      [  155.220051] [<c00439e8>] (warn_slowpath_null) from [<bf27eb70>] 
(xhci_setup_device+0x410/0x484 [xhci_hcd])
      [  155.229816] [<bf27e760>] (xhci_setup_device [xhci_hcd]) from 
[<bf27ec10>] (xhci_address_device+0x14/0x18 [xhci_hcd])
      [  155.240415]  r10:ee598200 r9:00000001 r8:00000002 r7:00000001 
r6:00000003 r5:00000002
      [  155.248363]  r4:ee49f000
      [  155.250978] [<bf27ebfc>] (xhci_address_device [xhci_hcd]) from 
[<bf20cb94>] (hub_port_init+0x1b8/0xa9c [usbcore])
      [  155.261403] [<bf20c9dc>] (hub_port_init [usbcore]) from [<bf2101e0>] 
(hub_event+0x738/0x1020 [usbcore])
      [  155.270874]  r10:ee598200 r9:ee7c0000 r8:ee7c0038 r7:ee518800 
r6:ee49f000 r5:00000001
      [  155.278822]  r4:00000000
      [  155.281426] [<bf20faa8>] (hub_event [usbcore]) from [<c005754c>] 
(process_one_work+0x128/0x340)
      [  155.290196]  r10:00000000 r9:00000003 r8:00000000 r7:fedfa000 
r6:eeec5400 r5:ee598314
      [  155.298151]  r4:ee434380
      [  155.300718] [<c0057424>] (process_one_work) from [<c00578f8>] 
(worker_thread+0x158/0x49c)
      [  155.308963]  r10:ee434380 r9:00000003 r8:eeec5400 r7:00000008 
r6:ee434398 r5:eeec5400
      [  155.316913]  r4:eeec5414
      [  155.319482] [<c00577a0>] (worker_thread) from [<c005cc40>] 
(kthread+0xdc/0xf8)
      [  155.326765]  r10:00000000 r9:00000000 r8:00000000 r7:c00577a0 
r6:ee434380 r5:ee4441c0
      [  155.334713]  r4:00000000 r3:00000000
      [  155.338341] [<c005cb64>] (kthread) from [<c000fc08>] 
(ret_from_fork+0x14/0x2c)
      [  155.345626]  r7:00000000 r6:00000000 r5:c005cb64 r4:ee4441c0
      [  155.356108] ---[ end trace a58d34c223b190e6 ]---
      [  155.360783] xhci-hcd xhci-hcd.0.auto: Virt dev invalid for slot_id 0x1!
      [  155.574404] xhci-hcd xhci-hcd.0.auto: xhci_setup_device
      [  155.579667] ------------[ cut here ]------------

      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Roger Quadros <rogerq@xxxxxx>
      Signed-off-by: Mathias Nyman <mathias.nyman@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 8c24d6d7b09deee3036ddc4f2b81b53b28c8f877
  Author: Roger Quadros <rogerq@xxxxxx>
  Date:   Mon Sep 21 17:46:14 2015 +0300

      usb: xhci: stop everything on the first call to xhci_stop

      xhci_stop will be called twice, once for the shared hcd
      and again for the primary hcd.

      We stop the XHCI controller in any case so clean up
      everything on the first call else we can timeout
      waiting for pending requests to complete.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Roger Quadros <rogerq@xxxxxx>
      Signed-off-by: Mathias Nyman <mathias.nyman@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit e5bfeab0ad515b4f6df39fe716603e9dc6d3dfd0
  Author: Roger Quadros <rogerq@xxxxxx>
  Date:   Mon Sep 21 17:46:13 2015 +0300

      usb: xhci: Clear XHCI_STATE_DYING on start

      For whatever reason if XHCI died in the previous instant
      then it will never recover on the next xhci_start unless we
      clear the DYING flag.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Roger Quadros <rogerq@xxxxxx>
      Signed-off-by: Mathias Nyman <mathias.nyman@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 85ac90f8953a58f6a057b727bc9db97721e3fb8e
  Author: Roger Quadros <rogerq@xxxxxx>
  Date:   Mon Sep 21 17:46:12 2015 +0300

      usb: xhci: lock mutex on xhci_stop

      Else it races with xhci_setup_device

      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Roger Quadros <rogerq@xxxxxx>
      Signed-off-by: Mathias Nyman <mathias.nyman@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 2b7627b73e81e5d23d5ae1490fe8e690af86e053
  Author: Tomer Barletz <barletz@xxxxxxxxx>
  Date:   Mon Sep 21 17:46:11 2015 +0300

      xhci: Move xhci_pme_quirk() behind #ifdef CONFIG_PM

      xhci_pme_quirk() is only used when CONFIG_PM is defined.
      Compiling a kernel without PM complains about this function

      [reworded commit message -Mathias]
      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Tomer Barletz <barletz@xxxxxxxxx>
      Signed-off-by: Mathias Nyman <mathias.nyman@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit a6809ffd1687b3a8c192960e69add559b9d32649
  Author: Mathias Nyman <mathias.nyman@xxxxxxxxxxxxxxx>
  Date:   Mon Sep 21 17:46:10 2015 +0300

      xhci: give command abortion one more chance before killing xhci

      We want to give the command abortion an additional try to stop
      the command ring before we completely hose xhci.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Tested-by: Vincent Pelletier <plr.vincent@xxxxxxxxx>
      Signed-off-by: Mathias Nyman <mathias.nyman@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ff30cbc8da425754e8ab96904db1d295bd034f27
  Author: Mathias Nyman <mathias.nyman@xxxxxxxxxxxxxxx>
  Date:   Mon Sep 21 17:46:09 2015 +0300

      usb: Use the USB_SS_MULT() macro to get the burst multiplier.

      Bits 1:0 of the bmAttributes are used for the burst multiplier.
      The rest of the bits used to be reserved (zero), but USB3.1 takes bit 7
      into use.

      Use the existing USB_SS_MULT() macro instead to make sure the mult value
      and hence max packet calculations are correct for USB3.1 devices.

      Note that burst multiplier in bmAttributes is zero based and that
      the USB_SS_MULT() macro adds one.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Mathias Nyman <mathias.nyman@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 01f4fd2a4f741057aaa5ba5ac3b09a42c9ada028
  Merge: ea93465 a66c275b
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Sep 21 22:21:31 2015 -0700

      Merge tag 'fixes-for-v4.3-rc3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-linus

      Felipe writes:

      usb: fixes for v4.3-rc3

      Here's the second pull request for current -rc cycle.

      A few fixes on dummy_hcd which have been around for
      longer than they should be.

      MUSB got a couple fixes, the most important of which
      is a fix to DMA channel teardown on AM335x devices.

      And DWC3 got a minor fix for when using RT-enabled
      kernels.

  commit bcee19f424a0d8c26ecf2607b73c690802658b29
  Merge: ac2fc4b 0c98625
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Sep 21 18:26:54 2015 -0700

      Merge branch 'for-4.3-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup

      Pull cgroup fixes from Tejun Heo:
       "The threadgroup locking changes which went in during 4.2 devel cycle
        added write locking of a percpu_rwsem in cgroup task migration path;
        unfortunately, that involved expedited rcu syncing which turned out to
        be too slow and heavy for certain workloads.  The patchset which is
        dependent on this one didn't get committed during that devel cycle, so
        these two patches can be reverted safely.

        Oleg reworked percpu_rwsem for 4.4 so that the writer path is a lot
        lighter.  The reported issue goes away with Oleg's reworked
        percpu_rwsem and I'll reapply these patches on the for-4.4 branch so
        that they can land together with Oleg's changes"

      * 'for-4.3-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        Revert "sched, cgroup: replace signal_struct->group_rwsem with a global 
percpu_rwsem"
        Revert "cgroup: simplify threadgroup locking"

  commit 29c6852602e259d2c1882f320b29d5c3fec0de04
  Author: Eric Dumazet <edumazet@xxxxxxxxxx>
  Date:   Sat Sep 19 09:48:04 2015 -0700

      inet: fix races in reqsk_queue_hash_req()

      Before allowing lockless LISTEN processing, we need to make
      sure to arm the SYN_RECV timer before the req socket is visible
      in hash tables.

      Also, req->rsk_hash should be written before we set rsk_refcnt
      to a non zero value.

      Fixes: fa76ce7328b2 ("inet: get rid of central tcp/dccp listener timer")
      Signed-off-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Cc: Ying Cai <ycai@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ed2e923945892a8372ab70d2f61d364b0b6d9054
  Author: Eric Dumazet <edumazet@xxxxxxxxxx>
  Date:   Sat Sep 19 09:08:34 2015 -0700

      tcp/dccp: fix timewait races in timer handling

      When creating a timewait socket, we need to arm the timer before
      allowing other cpus to find it. The signal allowing cpus to find
      the socket is setting tw_refcnt to non zero value.

      As we set tw_refcnt in __inet_twsk_hashdance(), we therefore need to
      call inet_twsk_schedule() first.

      This also means we need to remove tw_refcnt changes from
      inet_twsk_schedule() and let the caller handle it.

      Note that because we use mod_timer_pinned(), we have the guarantee
      the timer wont expire before we set tw_refcnt as we run in BH context.

      To make things more readable I introduced inet_twsk_reschedule() helper.

      When rearming the timer, we can use mod_timer_pending() to make sure
      we do not rearm a canceled timer.

      Note: This bug can possibly trigger if packets of a flow can hit
      multiple cpus. This does not normally happen, unless flow steering
      is broken somehow. This explains this bug was spotted ~5 months after
      its introduction.

      A similar fix is needed for SYN_RECV sockets in reqsk_queue_hash_req(),
      but will be provided in a separate patch for proper tracking.

      Fixes: 789f558cfb36 ("tcp/dccp: get rid of central timewait timer")
      Signed-off-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Reported-by: Ying Cai <ycai@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4c5d283acc997a1bd7bc37cddcf7d284521cffff
  Author: Sowmini Varadhan <sowmini.varadhan@xxxxxxxxxx>
  Date:   Fri Sep 18 17:47:55 2015 -0400

      sunvnet: Invoke SET_NETDEV_DEV() to set up the vdev in vnet_new()

      `ls /sys/devices/channel-devices/vnet-port-0-0/net' is missing without
      this change, and applications like NetworkManager are looking in
      sysfs for the information.

      Signed-off-by: Sowmini Varadhan <sowmini.varadhan@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 5eb8f289ac3020a9abad1c3c532ceca83284b6ed
  Author: John W. Linville <linville@xxxxxxxxxxxxx>
  Date:   Fri Sep 18 16:20:32 2015 -0400

      geneve: remove vlan-related feature assignment

      The code handling vlan tag insertion was dropped in commit 371bd1061d29
      ("geneve: Consolidate Geneve functionality in single module.").  Now we
      need to drop the related vlan feature bits in the netdev structure.

      Signed-off-by: John W. Linville <linville@xxxxxxxxxxxxx>
      Reviewed-by: Jesse Gross <jesse@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4a476bd6d1d923922ec950ddc4c27b279f6901eb
  Author: Matthew Garrett <mjg59@xxxxxxxxxxxxx>
  Date:   Sun Sep 20 02:25:38 2015 -0700

      usbnet: New driver for QinHeng CH9200 devices

      There's a bunch of cheap USB 10/100 devices based on QinHeng chipsets. The
      vendor driver supports the CH9100 and CH9200 devices, but the majority of
      the code is of the if (ch9100) {} else {} form, with the most significant
      difference being that CH9200 provides a real MII interface but CH9100 
fakes
      one with a bunch of global variables and magic commands. I don't have a
      CH9100, so it's probably better if someone who does provides an 
independent
      driver for it. In any case, this is a lightly cleaned up version of the
      vendor driver with all the CH9100 code dropped.

      Signed-off-by: Matthew Garrett <mjg59@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4f8d0bbb00f120ae0de79de6952132ea5c5028bb
  Merge: a11d558 1ccb141
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Sep 21 16:11:21 2015 -0700

      Merge branch 'phy-of-autoload'

      Luis de Bethencourt says:

      ====================
      net: phy: Fix module autoload for OF platform drivers

      These patches add the missing MODULE_DEVICE_TABLE() for OF to export
      the information so modules have the correct aliases built-in and
      autoloading works correctly.

      A longer explanation by Javier Canillas can be found here:
      https://lkml.org/lkml/2015/7/30/519
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1ccb141e31d0dc4c1234b0886cdc8b4399112c59
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 18:16:29 2015 +0200

      net: phy: mdio-gpio: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luisbg@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2f90a3070690ad80c38d650e91b96b5dcbdfe2fd
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 18:16:12 2015 +0200

      net: phy: mdio-bcm-unimac: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luisbg@xxxxxxxxxxxxxxx>
      Acked-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a11d5585edc626106d060dde447467677d220485
  Merge: 1f770c0 ebd8ebf
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Sep 21 16:09:11 2015 -0700

      Merge branch 'net-of-autoload'

      Luis de Bethencourt says:

      ====================
      net: Fix module autoload for OF platform drivers

      These patches add the missing MODULE_DEVICE_TABLE() for OF to export
      the information so modules have the correct aliases built-in and
      autoloading works correctly.

      A longer explanation by Javier Canillas can be found here:
      https://lkml.org/lkml/2015/7/30/519
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ebd8ebf078879973d0e8d2642253c091c23bd7d2
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 17:56:21 2015 +0200

      net: moxa: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luisbg@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 23860063706f2037008fb423820cdbd0dcd558bb
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 17:55:27 2015 +0200

      net: gianfar_ptp: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luisbg@xxxxxxxxxxxxxxx>
      Acked-by: Richard Cochran <richardcochran@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e8048e5595bedb1f4b20597d059d6877a710f12d
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 17:55:02 2015 +0200

      net: bcmgenet: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luis@xxxxxxxxxxxxxxx>
      Acked-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 46d5a3431f2dbb2392b501be9b9f9c2ca17737d8
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 17:54:30 2015 +0200

      net: systemport: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luisbg@xxxxxxxxxxxxxxx>
      Acked-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c7d778fa74a88e7b5a09ba498d66bd67a7dc7df0
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 17:54:00 2015 +0200

      net: arc: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luisbg@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 16651fc2f30dfe14dcdd59cf0ccb4e1ccdba4dc7
  Merge: 4e2e986 d702ffd 2f9481e b9c9364 0f1d08d 7209fee
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Mon Sep 21 14:16:09 2015 -0700

      Merge remote-tracking branches 'regulator/fix/anatop', 
'regulator/fix/gpio', 'regulator/fix/pbias', 'regulator/fix/tpx65218' and 
'regulator/fix/vexpress' into regulator-linus

  commit 4e2e986473f708be46bd00007621f97178bd7047
  Merge: 1f93e4a 23c3f31
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Mon Sep 21 14:15:58 2015 -0700

      Merge remote-tracking branch 'regulator/fix/core' into regulator-linus

  commit 50745b0a7f46f68574cd2b9ae24566bf026e7ebd
  Author: chandan <chandan@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 28 21:10:13 2015 +0530

      Btrfs: Direct I/O: Fix space accounting

      The following call trace is seen when generic/095 test is executed,

      WARNING: CPU: 3 PID: 2769 at 
/home/chandan/code/repos/linux/fs/btrfs/inode.c:8967 
btrfs_destroy_inode+0x284/0x2a0()
      Modules linked in:
      CPU: 3 PID: 2769 Comm: umount Not tainted 4.2.0-rc5+ #31
      Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 
1.7.5-20150306_163512-brownie 04/01/2014
       ffffffff81c08150 ffff8802ec9cbce8 ffffffff81984058 ffff8802ffd8feb0
       0000000000000000 ffff8802ec9cbd28 ffffffff81050385 ffff8802ec9cbd38
       ffff8802d12f8588 ffff8802d12f8588 ffff8802f15ab000 ffff8800bb96c0b0
      Call Trace:
       [<ffffffff81984058>] dump_stack+0x45/0x57
       [<ffffffff81050385>] warn_slowpath_common+0x85/0xc0
       [<ffffffff81050465>] warn_slowpath_null+0x15/0x20
       [<ffffffff81340294>] btrfs_destroy_inode+0x284/0x2a0
       [<ffffffff8117ce07>] destroy_inode+0x37/0x60
       [<ffffffff8117cf39>] evict+0x109/0x170
       [<ffffffff8117cfd5>] dispose_list+0x35/0x50
       [<ffffffff8117dd3a>] evict_inodes+0xaa/0x100
       [<ffffffff81165667>] generic_shutdown_super+0x47/0xf0
       [<ffffffff81165951>] kill_anon_super+0x11/0x20
       [<ffffffff81302093>] btrfs_kill_super+0x13/0x110
       [<ffffffff81165c99>] deactivate_locked_super+0x39/0x70
       [<ffffffff811660cf>] deactivate_super+0x5f/0x70
       [<ffffffff81180e1e>] cleanup_mnt+0x3e/0x90
       [<ffffffff81180ebd>] __cleanup_mnt+0xd/0x10
       [<ffffffff81069c06>] task_work_run+0x96/0xb0
       [<ffffffff81003a3d>] do_notify_resume+0x3d/0x50
       [<ffffffff8198cbc2>] int_signal+0x12/0x17

      This means that the inode had non-zero "outstanding extents" during
      eviction. This occurs because, during direct I/O a task which successfully
      used up its reserved data space would set BTRFS_INODE_DIO_READY bit and 
does
      not clear the bit after finishing the DIO write. A future DIO write could
      actually fail and the unused reserve space won't be freed because of the
      previously set BTRFS_INODE_DIO_READY bit.

      Clearing the BTRFS_INODE_DIO_READY bit in btrfs_direct_IO() caused the
      following issue,
      
|-----------------------------------+-------------------------------------|
      | Task A                            | Task B                              
|
      
|-----------------------------------+-------------------------------------|
      | Start direct i/o write on inode X.|                                     
|
      | reserve space                     |                                     
|
      | Allocate ordered extent           |                                     
|
      | release reserved space            |                                     
|
      | Set BTRFS_INODE_DIO_READY bit.    |                                     
|
      |                                   | splice()                            
|
      |                                   | Transfer data from pipe buffer to   
|
      |                                   | destination file.                   
|
      |                                   | - kmap(pipe buffer page)            
|
      |                                   | - Start direct i/o write on         
|
      |                                   |   inode X.                          
|
      |                                   |   - reserve space                   
|
      |                                   |   - dio_refill_pages()              
|
      |                                   |     - sdio->blocks_available == 0   
|
      |                                   |     - Since a kernel address is     
|
      |                                   |       being passed instead of a     
|
      |                                   |       user space address,           
|
      |                                   |       iov_iter_get_pages() returns  
|
      |                                   |       -EFAULT.                      
|
      |                                   |   - Since BTRFS_INODE_DIO_READY is  
|
      |                                   |     set, we don't release reserved  
|
      |                                   |     space.                          
|
      |                                   |   - Clear BTRFS_INODE_DIO_READY 
bit.|
      | -EIOCBQUEUED is returned.         |                                     
|
      
|-----------------------------------+-------------------------------------|

      Hence this commit introduces "struct btrfs_dio_data" to track the usage of
      reserved data space. The remaining unused "reserve space" can now be freed
      reliably.

      Signed-off-by: Chandan Rajendra <chandan@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Liu Bo <bo.li.liu@xxxxxxxxxx>
      Signed-off-by: Chris Mason <clm@xxxxxx>

  commit a66c275b3d5d8467d770dabd30927f5d5e857294
  Author: Roger Quadros <rogerq@xxxxxx>
  Date:   Mon Sep 21 11:08:36 2015 +0300

      usb: dwc3: gadget: Fix BUG in RT config

      Using spin_lock() in hard irq handler is pointless
      and causes a BUG() in RT (real-time) configuration
      so get rid of it.

      The reason it's pointless is because the driver is
      basically accessing register which is, anyways,
      atomic.

      Signed-off-by: Roger Quadros <rogerq@xxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit b431ba8803666e56c1d178a421b3cbc36e8d3d33
  Author: Bin Liu <b-liu@xxxxxx>
  Date:   Mon Aug 24 15:28:37 2015 -0500

      usb: musb: fix cppi channel teardown for isoch transfer

      After a few iterations of start/stop UVC camera streaming, the streaming
      stops.

      This patch adds 250us delay in the cppi channel abort path to let cppi
      drain properly.

      Using 50us delay seems to be too aggressive, some webcams are still
      broken. 250us is the original value used in TI 3.2 kernel.

      Signed-off-by: Bin Liu <b-liu@xxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit 8fb7ab504381b8ce4f443129e102a713bd76dfe2
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Sat Sep 12 10:54:26 2015 +0200

      usb: phy: isp1301: Export I2C module alias information

      The I2C core always reports the MODALIAS uevent as "i2c:<client name"
      regardless if the device was registered using OF or platform code so
      So the driver needs to export the I2C table and this be built into
      the module or udev won't have the necessary information to auto load
      the module when the device is added.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit 51b91b7e6c1516c7d3ea70acc91aac9b32ae3e72
  Author: Julia Lawall <Julia.Lawall@xxxxxxx>
  Date:   Sun Sep 13 14:15:09 2015 +0200

      usb: gadget: drop null test before destroy functions

      Remove unneeded NULL test.

      The semantic patch that makes this change is as follows:
      (http://coccinelle.lip6.fr/)

      // <smpl>
      @@ expression x; @@
      -if (x != NULL)
        \(kmem_cache_destroy\|mempool_destroy\|dma_pool_destroy\)(x);
      // </smpl>

      Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit 9a9ce1dfaef9aa15980cec22b806b39a65a9467e
  Author: Igor Kotrasinski <i.kotrasinsk@xxxxxxxxxxx>
  Date:   Tue Sep 15 16:55:32 2015 +0200

      usb: gadget: dummy_hcd: in transfer(), return data sent, not limit

      dummy_timer uses transfer() to update transfer limit. However,
      limit passed to dummy_timer changes depending on transfer type,
      so the actual limit is overwritten.

      This can cause unpredictably slow / fast bulk transfers when
      coupled with control / interrupt transfers.

      Fix by returning actual amount of data sent in transfer() and
      substracting from total.

      Signed-off-by: Igor Kotrasinski <i.kotrasinsk@xxxxxxxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit e42bd6a54b97e2a39b5004deac66a0fcd6ebbe75
  Author: Igor Kotrasinski <i.kotrasinsk@xxxxxxxxxxx>
  Date:   Tue Sep 15 16:55:31 2015 +0200

      usb: gadget: dummy_hcd: fix rescan logic for transfer

      transfer() schedules a rescan for transfers larger than
      maxpacket, which is wrong for transfers that are multiples
      of maxpacket.

      Rewrite to fix and clarify packet multiple / remainder
      transfer logic.

      Signed-off-by: Igor Kotrasinski <i.kotrasinsk@xxxxxxxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit 5dda5be9d501084e8a6242e6dbeb8eea1daf01c8
  Author: Igor Kotrasinski <i.kotrasinsk@xxxxxxxxxxx>
  Date:   Tue Sep 15 16:55:30 2015 +0200

      usb: gadget: dummy_hcd: fix unneeded else-if condition

      We already know at this point that to_host is false.

      Signed-off-by: Igor Kotrasinski <i.kotrasinsk@xxxxxxxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit 21c3ee93867694e8c7382ff77b4645b50d3233e9
  Author: Igor Kotrasinski <i.kotrasinsk@xxxxxxxxxxx>
  Date:   Tue Sep 15 16:55:29 2015 +0200

      usb: gadget: dummy_hcd: emulate sending zlp in packet logic

      currently, when a zlp flag is set and an urb/usb_request
      buffer is filled without a short packet, transfer() leaves
      its status at -EINPROGRESS and does not rescan for short
      packet.

      In a scenario where ep.maxpacket bytes are copied,
      URB_ZERO_PACKET is set, urb buffer is filled and usb_request
      buffer is not, transfer() returns with an urb with
      -EINPROGRESS status, which dummy_hcd treats as incomplete
      transfer.

      Check for zlp and rescan appropriately.

      Signed-off-by: Igor Kotrasinski <i.kotrasinsk@xxxxxxxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit b8239dcc03afbd0886c1d9b91ba8fee7c6c9a6cb
  Author: Bin Liu <b-liu@xxxxxx>
  Date:   Wed Sep 16 14:49:28 2015 -0500

      usb: musb: dsps: fix polling in device-only mode

      Fix the regression caused by commit ad78c918602 ("usb: musb: dsps: just
      start polling already") which causes polling the ID pin status even in
      device-only mode.

      Fixes: ad78c918602c ("usb: musb: dsps: just start polling already")
      Signed-off-by: Bin Liu <b-liu@xxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit cf261fd1a444e87894c2ed8f481606ead7916fab
  Author: Sylvain Rochet <sylvain.rochet@xxxxxxxxxxxx>
  Date:   Fri Sep 18 16:58:28 2015 +0200

      usb: gadget: atmel_usba_udc: add ep capabilities support on device tree 
binding

      The recently added endpoint capabilities flags verification breaks Atmel
      USBA because the endpoint configuration was only added when the driver
      is bound using the legacy pdata interface.

      Convert endpoint configuration to new capabilities model when driver is
      bound to a device tree as well.

      Signed-off-by: Sylvain Rochet <sylvain.rochet@xxxxxxxxxxxx>
      Fixes: 47bef3865115 ("usb: gadget: atmel_usba_udc: add ep capabilities 
support")
      Signed-off-by: Nicolas Ferre <nicolas.ferre@xxxxxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit ac2fc4b9d5b7d8e4878c6f04f947d42707f782ef
  Merge: 90a835f cbc41d0
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Sep 21 12:02:27 2015 -0700

      Merge tag 'renesas-sh-drivers-for-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas

      Pull SH drivers updates from Simon Horman:
       "I am sending this change after v4.3-rc1 has been released as it
        depends on SoC changes which are present in that rc release.

        Summary:

         - disable PM runtime for multi-platform ARM with genpd

         - disable legacy default PM Domain on emev2"

      * tag 'renesas-sh-drivers-for-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
        drivers: sh: Disable PM runtime for multi-platform ARM with genpd
        drivers: sh: Disable legacy default PM Domain on emev2

  commit 90a835f5d19217ad1e174e40ef35d0acf3357828
  Merge: b7f76ea 977108f
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Sep 21 09:53:30 2015 -0700

      Merge branch 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux

      Pull s390 fixes from Martin Schwidefsky:
       "A couple of system call updates.  The two new system calls userfaultfd
        and membarrier have been added, as well as the 17 direct calls for the
        multiplexed socket system calls.

        In addition the system call compat wrappers have been flagged as
        notrace functions and a few wrappers could be removed.

        And bug fixes for the vector register handling, cpu_mf, suspend/resume,
        compat signals, SMT cputime accounting and the zfcp dumper"

      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390: wire up separate socketcalls system calls
        s390/compat: remove superfluous compat wrappers
        s390/compat: do not trace compat wrapper functions
        s390/s390x: allocate sys_membarrier system call number
        s390/configs//zfcpdump_defconfig: Remove CONFIG_MEMSTICK
        s390: wire up userfaultfd system call
        s390/vtime: correct scaled cputime for SMT
        s390/cpum_cf: Corrected return code for unauthorized counter sets
        s390/compat: correct uc_sigmask of the compat signal frame
        s390: fix floating point register corruption
        s390/hibernate: fix save and restore of vector registers

  commit 72d4736253af74147b1fa68145b2f4c61d1f37e1
  Author: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
  Date:   Sat Sep 19 11:22:57 2015 -0700

      Input: uinput - fix crash when using ABS events

      Commit b6d30968d86c45a7bb599eaca13ff048d3fa576c (Input: uinput - switch to
      using for_each_set_bit()) switched driver to use for_each_set_bit().
      However during initial write of the uinput structure that contains min/max
      data for all possible axes none of them are reflected in dev->absbit yet
      and so we were skipping over all of them and were not allocating absinfo
      memory which caused crash later when driver tried to sens EV_ABS events:

      <1>[   15.064330] BUG: unable to handle kernel NULL pointer dereference 
at 0000000000000024
      <1>[   15.064336] IP: [<ffffffff8163f142>] input_handle_event+0x232/0x4e0
      <4>[   15.064343] PGD 0
      <4>[   15.064345] Oops: 0000 [#1] SMP

      Fixes: b6d30968d86c45a7bb599eaca13ff048d3fa576c
      Cc: stable@xxxxxxxxxxxxxxx
      Reported-by: Stephen Chandler Paul <cpaul@xxxxxxxxxx>
      Tested-by: Stephen Chandler Paul <cpaul@xxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit ed75a14eb554995c522a3b861d4c86a7eddb2ad7
  Author: Duson Lin <dusonlin@xxxxxxxxxx>
  Date:   Mon Sep 21 09:26:46 2015 -0700

      Input: elan_i2c - expand maximum product_id form 0xFF to 0xFFFF

      In order to support more projects in the future, we expand the
      maximum product_id value form 0xFF to 0xFFFF.

      Signed-off by: Duson Lin <dusonlin@xxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit c84333a1c55a2d3329e8b472f59e9d1ccf5ddc1b
  Author: Duson Lin <dusonlin@xxxxxxxxxx>
  Date:   Mon Sep 21 09:24:46 2015 -0700

      Input: elan_i2c - add ic type 0x03

      The 0x03 is valid 3000 serial ic type too.

      Signed-off-by: Duson Lin <dusonlin@xxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 9d7b03f863f2fc8bd80e83d3a2d7e521094d290e
  Author: Daniel Drake <drake@xxxxxxxxxxxx>
  Date:   Sat Sep 19 09:49:45 2015 -0700

      Input: elan_i2c - don't require known iap version

      The Asus X456UA has an ELAN1000 touchpad with IAP version 0xe.  This is
      unknown to elan_get_fwinfo() so driver probe fails and I am left with an
      unusable touchpad.

      However, the fwinfo is not required for general driver usage, it is only
      needed if the user decides to upload new firmware.

      Adjust the driver so that we do not abort probe when we encounter
      unexpected IAP version, but rather warn user that firmware update feature
      of the driver will not work.

      Signed-off-by: Daniel Drake <drake@xxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 09185e2756a83763bcbfe51b308b85979f0de027
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Mon Sep 21 15:33:42 2015 +0200

      hwrng: xgene - fix handling platform_get_irq

      The function can return negative value.

      The problem has been detected using proposed semantic patch
      scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci [1].

      [1]: http://permalink.gmane.org/gmane.linux.kernel/2038576

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 17762c5acee2f1f065291d2a74ebea4d0168063b
  Author: Conor McLoughlin <conor.mcloughlin@xxxxxxxxx>
  Date:   Fri Sep 18 08:59:47 2015 -0700

      crypto: qat - VF should never trigger SBR on PH

      Don't allow to trigger SBR from a VF running in VMM context.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Conor McLoughlin <conor.mcloughlin@xxxxxxxxx>
      Signed-off-by: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit cfcd2271a9076a9891014bc8e18d4fd48acccffe
  Author: Thomas Petazzoni <thomas.petazzoni@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 17:25:36 2015 +0200

      crypto: marvell - properly handle CRYPTO_TFM_REQ_MAY_BACKLOG-flagged 
requests

      The mv_cesa_queue_req() function calls crypto_enqueue_request() to
      enqueue a request. In the normal case (i.e the queue isn't full), this
      function returns -EINPROGRESS. The current Marvell CESA crypto driver
      takes this into account and cleans up the request only if an error
      occured, i.e if the return value is not -EINPROGRESS.

      Unfortunately this causes problems with
      CRYPTO_TFM_REQ_MAY_BACKLOG-flagged requests. When such a request is
      passed to crypto_enqueue_request() and the queue is full,
      crypto_enqueue_request() will return -EBUSY, but will keep the request
      enqueued nonetheless. This situation was not properly handled by the
      Marvell CESA driver, which was anyway cleaning up the request in such
      a situation. When later on the request was taken out of the backlog
      and actually processed, a kernel crash occured due to the internal
      driver data structures for this structure having been cleaned up.

      To avoid this situation, this commit adds a
      mv_cesa_req_needs_cleanup() helper function which indicates if the
      request needs to be cleaned up or not after a call to
      crypto_enqueue_request(). This helper allows to do the cleanup only in
      the appropriate cases, and all call sites of mv_cesa_queue_req() are
      fixed to use this new helper function.

      Reported-by: Vincent Donnefort <vdonnefort@xxxxxxxxx>
      Fixes: db509a45339fd ("crypto: marvell/cesa - add TDMA support")
      Cc: <stable@xxxxxxxxxxxxxxx> # v4.2+
      Signed-off-by: Thomas Petazzoni <thomas.petazzoni@xxxxxxxxxxxxxxxxxx>
      Acked-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
      Tested-by: Vincent Donnefort <vdonnefort@xxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 793b8bf9ca17aee3b995c095058e6c4e7bd72e02
  Author: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
  Date:   Wed Sep 16 21:21:50 2015 +1000

      powerpc: Wire up sys_membarrier()

      The selftest passes on 64-bit LE & BE, and 32-bit.

      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 95d0be61286bcc3fc987043fe3a9553adca02919
  Author: Geliang Tang <geliangtang@xxxxxxx>
  Date:   Tue Sep 15 06:04:36 2015 -0700

      drm/i915: fix kernel-doc warnings in intel_audio.c

      Fix the following 'make htmldocs' warnings:

        .//drivers/gpu/drm/i915/intel_audio.c:439: warning: No description 
found for parameter 'intel_encoder'
        .//drivers/gpu/drm/i915/intel_audio.c:439: warning: Excess function 
parameter 'encoder' description in 'intel_audio_codec_disable'
        .//drivers/gpu/drm/i915/intel_audio.c:439: warning: No description 
found for parameter 'intel_encoder'
        .//drivers/gpu/drm/i915/intel_audio.c:439: warning: Excess function 
parameter 'encoder' description in 'intel_audio_codec_disable'

      Signed-off-by: Geliang Tang <geliangtang@xxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit f4513b065f7dbd37224226ef6e44b09eff742776
  Author: Hans de Goede <hdegoede@xxxxxxxxxx>
  Date:   Mon Aug 24 00:35:36 2015 +0200

      extcon: Fix attached value returned by is_extcon_changed

      is_extcon_changed should only check the idx-th bit of new, not
      the entirety of new when setting attached.

      This fixes extcon sending notifications that a cable was inserted when
      it gets removed while another cable is still connected.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
      Signed-off-by: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>

  commit 1f770c0a09da855a2b51af6d19de97fb955eca85
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 19:16:50 2015 +0800

      netlink: Fix autobind race condition that leads to zero port ID

      The commit c0bb07df7d981e4091432754e30c9c720e2c0c78 ("netlink:
      Reset portid after netlink_insert failure") introduced a race
      condition where if two threads try to autobind the same socket
      one of them may end up with a zero port ID.  This led to kernel
      deadlocks that were observed by multiple people.

      This patch reverts that commit and instead fixes it by introducing
      a separte rhash_portid variable so that the real portid is only set
      after the socket has been successfully hashed.

      Fixes: c0bb07df7d98 ("netlink: Reset portid after netlink_insert failure")
      Reported-by: Tejun Heo <tj@xxxxxxxxxx>
      Reported-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ca1c4b745779e20711322b3338f3a942a3c1224a
  Author: Dexuan Cui <decui@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:07:03 2015 -0700

      Drivers: hv: vmbus: fix init_vp_index() for reloading hv_netvsc

      This fixes the recent commit 3b71107d73b16074afa7658f3f0fcf837aabfe24:
      Drivers: hv: vmbus: Further improve CPU affiliation logic

      Without the fix, reloading hv_netvsc hangs the guest.

      Signed-off-by: Dexuan Cui <decui@xxxxxxxxxxxxx>
      Signed-off-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 5964db08767fb93376c0a0ddcf975fec1c0d1bd9
  Author: Tomas Winkler <tomas.winkler@xxxxxxxxx>
  Date:   Mon Aug 24 15:27:37 2015 +0300

      mei: fix debugfs files leak on error path

      if dbgfs_dir is not set then debugfs_remove_recursive
      is not called on the error path

      Signed-off-by: Tomas Winkler <tomas.winkler@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 3ea79249e81e5ed051f2e6480cbde896d99046e8
  Author: Michael S. Tsirkin <mst@xxxxxxxxxx>
  Date:   Fri Sep 18 13:41:09 2015 +0300

      macvtap: fix TUNSETSNDBUF values > 64k

      Upon TUNSETSNDBUF,  macvtap reads the requested sndbuf size into
      a local variable u.
      commit 39ec7de7092b ("macvtap: fix uninitialized access on
      TUNSETIFF") changed its type to u16 (which is the right thing to
      do for all other macvtap ioctls), breaking all values > 64k.

      The value of TUNSETSNDBUF is actually a signed 32 bit integer, so
      the right thing to do is to read it into an int.

      Cc: David S. Miller <davem@xxxxxxxxxxxxx>
      Fixes: 39ec7de7092b ("macvtap: fix uninitialized access on TUNSETIFF")
      Reported-by: Mark A. Peloquin
      Bisected-by: Matthew Rosato <mjrosato@xxxxxxxxxxxxxxxxxx>
      Reported-by: Christian Borntraeger <borntraeger@xxxxxxxxxx>
      Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>
      Tested-by:  Matthew Rosato <mjrosato@xxxxxxxxxxxxxxxxxx>
      Acked-by: Christian Borntraeger <borntraeger@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3afb1121800128aae9f5722e50097fcf1a9d4d88
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Fri Sep 18 17:33:04 2015 +0200

      KVM: x86: trap AMD MSRs for the TSeg base and mask

      These have roughly the same purpose as the SMRR, which we do not need
      to implement in KVM.  However, Linux accesses MSR_K8_TSEG_ADDR at
      boot, which causes problems when running a Xen dom0 under KVM.
      Just return 0, meaning that processor protection of SMRAM is not
      in effect.

      Reported-by: M A Young <m.a.young@xxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Acked-by: Borislav Petkov <bp@xxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 83cf9a2521b0934a5f9d04082c9bb4f554fddcd4
  Author: Nicolas Dichtel <nicolas.dichtel@xxxxxxxxx>
  Date:   Fri Sep 18 11:47:41 2015 +0200

      ip6tunnel: make rx/tx bytes counters consistent

      Like the previous patch, which fixes ipv4 tunnels, here is the ipv6 part.

      Before the patch, the external ipv6 header + gre header were included on
      tx.

      After the patch:
      $ ping -c1 192.168.6.121 ; ip -s l ls dev ip6gre1
      PING 192.168.6.121 (192.168.6.121) 56(84) bytes of data.
      64 bytes from 192.168.6.121: icmp_req=1 ttl=64 time=1.92 ms

      --- 192.168.6.121 ping statistics ---
      1 packets transmitted, 1 received, 0% packet loss, time 0ms
      rtt min/avg/max/mdev = 1.923/1.923/1.923/0.000 ms
      7: ip6gre1@NONE: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1440 qdisc noqueue 
state UNKNOWN mode DEFAULT group default
          link/gre6 20:01:06:60:30:08:c1:c3:00:00:00:00:00:00:01:23 peer 
20:01:06:60:30:08:c1:c3:00:00:00:00:00:00:01:21
          RX: bytes  packets  errors  dropped overrun mcast
          84         1        0       0       0       0
          TX: bytes  packets  errors  dropped carrier collsns
          84         1        0       0       0       0
      $ ping -c1 192.168.1.121 ; ip -s l ls dev ip6tnl1
      PING 192.168.1.121 (192.168.1.121) 56(84) bytes of data.
      64 bytes from 192.168.1.121: icmp_req=1 ttl=64 time=2.28 ms

      --- 192.168.1.121 ping statistics ---
      1 packets transmitted, 1 received, 0% packet loss, time 0ms
      rtt min/avg/max/mdev = 2.288/2.288/2.288/0.000 ms
      8: ip6tnl1@NONE: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1452 qdisc noqueue 
state UNKNOWN mode DEFAULT group default
          link/tunnel6 2001:660:3008:c1c3::123 peer 2001:660:3008:c1c3::121
          RX: bytes  packets  errors  dropped overrun mcast
          84         1        0       0       0       0
          TX: bytes  packets  errors  dropped carrier collsns
          84         1        0       0       0       0

      Signed-off-by: Nicolas Dichtel <nicolas.dichtel@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit bc22a0e2ea03b75b51a1f722f93821744b5b5ff1
  Author: Nicolas Dichtel <nicolas.dichtel@xxxxxxxxx>
  Date:   Fri Sep 18 11:47:40 2015 +0200

      iptunnel: make rx/tx bytes counters consistent

      This was already done a long time ago in
      commit 64194c31a0b6 ("inet: Make tunnel RX/TX byte counters more 
consistent")
      but tx path was broken (at least since 3.10).

      Before the patch the gre header was included on tx.

      After the patch:
      $ ping -c1 192.168.0.121 ; ip -s l ls dev gre1
      PING 192.168.0.121 (192.168.0.121) 56(84) bytes of data.
      64 bytes from 192.168.0.121: icmp_req=1 ttl=64 time=2.95 ms

      --- 192.168.0.121 ping statistics ---
      1 packets transmitted, 1 received, 0% packet loss, time 0ms
      rtt min/avg/max/mdev = 2.955/2.955/2.955/0.000 ms
      7: gre1@NONE: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1468 qdisc noqueue 
state UNKNOWN mode DEFAULT group default
          link/gre 10.16.0.249 peer 10.16.0.121
          RX: bytes  packets  errors  dropped overrun mcast
          84         1        0       0       0       0
          TX: bytes  packets  errors  dropped carrier collsns
          84         1        0       0       0       0

      Reported-by: Julien Meunier <julien.meunier@xxxxxxxxx>
      Signed-off-by: Nicolas Dichtel <nicolas.dichtel@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ac813744930d2af82d887ce1e51bcdb23a6c6805
  Merge: 4e3ae00 ad5001c
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Sun Sep 20 22:32:20 2015 -0700

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf

      Pablo Neira Ayuso says:

      ====================
      Netfilter fixes for net

      The following patch contains Netfilter fixes for your net tree, they are:

      1) nf_log_unregister() should only set to NULL the logger that is being
         unregistered, instead of everything else. Patch from Florian Westphal.

      2) Fix a crash when accessing physoutdev from PREROUTING in br_netfilter.
         This is partially reverting the patch to shrink nf_bridge_info to 32 
bytes.
         Also from Florian.

      3) Use existing match/target extensions in the internal nft_compat 
extension
         lists when the extension is family unspecific (ie. NFPROTO_UNSPEC).

      4) Wait for rcu grace period before leaving nf_log_unregister().
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4e3ae00100945d39e1f83b7c0179a114ccf55759
  Author: Erik Hugne <erik.hugne@xxxxxxxxxxxx>
  Date:   Fri Sep 18 10:46:31 2015 +0200

      tipc: reinitialize pointer after skb linearize

      The msg pointer into header may change after skb linearization.
      We must reinitialize it after calling skb_linearize to prevent
      operating on a freed or invalid pointer.

      Signed-off-by: Erik Hugne <erik.hugne@xxxxxxxxxxxx>
      Reported-by: Tamás Végh <tamas.vegh@xxxxxxxxxxxx>
      Acked-by: Ying Xue <ying.xue@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit aab0c0e62ec4af224d1b6b40fca65055d403400b
  Author: Kevin Hao <haokexin@xxxxxxxxx>
  Date:   Fri Sep 18 15:42:30 2015 +0800

      Revert "net/phy: Add Vitesse 8641 phy ID"

      This reverts commit 1298267b548a78840bd4b3e030993ff8747ca5e6.

      That commit claim that the Vitesse VSC8641 is compatible with Vitesse
      82xx. But this is not true. It seems that all the registers used
      in Vitesse phy driver are not compatible between 8641 and 82xx.
      It does cause malfunction of the Ethernet on p1010rdb-pa board.
      So we definitely need a rework in order to support the 8641 phy
      in this driver.

      Signed-off-by: Kevin Hao <haokexin@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7a8a8e75d505147358b225173e890ada43a267e2
  Author: David Woodhouse <dwmw2@xxxxxxxxxxxxx>
  Date:   Fri Sep 18 00:21:54 2015 +0100

      8139cp: Call __cp_set_rx_mode() from cp_tx_timeout()

      Unless we reset the RX config, on real hardware I don't seem to receive
      any packets after a TX timeout.

      Signed-off-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit fc27bd115b334e3ebdc682a42a47c3aea2566dcc
  Author: David Woodhouse <dwmw2@xxxxxxxxxxxxx>
  Date:   Fri Sep 18 00:19:08 2015 +0100

      8139cp: Use dev_kfree_skb_any() instead of dev_kfree_skb() in 
cp_clean_rings()

      This can be called from cp_tx_timeout() with interrupts disabled.
      Spotted by Francois Romieu <romieu@xxxxxxxxxxxxx>

      Signed-off-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0315e382704817b279e5693dca8ab9d89aa20b3f
  Author: Nikola Forró <nforro@xxxxxxxxxx>
  Date:   Thu Sep 17 16:01:32 2015 +0200

      net: Fix behaviour of unreachable, blackhole and prohibit routes

      Man page of ip-route(8) says following about route types:

        unreachable - these destinations are unreachable.  Packets are disâ??
        carded and the ICMP message host unreachable is generated.  The local
        senders get an EHOSTUNREACH error.

        blackhole - these destinations are unreachable.  Packets are disâ??
        carded silently.  The local senders get an EINVAL error.

        prohibit - these destinations are unreachable.  Packets are discarded
        and the ICMP message communication administratively prohibited is
        generated.  The local senders get an EACCES error.

      In the inet6 address family, this was correct, except the local senders
      got ENETUNREACH error instead of EHOSTUNREACH in case of unreachable 
route.
      In the inet address family, all three route types generated ICMP message
      net unreachable, and the local senders got ENETUNREACH error.

      In both address families all three route types now behave consistently
      with documentation.

      Signed-off-by: Nikola Forró <nforro@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ba5ca7848be05db6235aeb703586b821aa00e381
  Author: Ivan Vecera <ivecera@xxxxxxxxxx>
  Date:   Wed Sep 16 15:27:43 2015 +0200

      bna: check for dma mapping errors

      Check for DMA mapping errors, recover from them and register them in
      ethtool stats like other errors.

      Cc: Rasesh Mody <rasesh.mody@xxxxxxxxxx>
      Signed-off-by: Ivan Vecera <ivecera@xxxxxxxxxx>
      Acked-by: Rasesh Mody <rasesh.mody@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 19a5ecde086a6a5287978b12ae948fa691b197b7
  Author: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
  Date:   Sun Sep 20 21:01:22 2015 -0700

      rcu: Suppress lockdep false positive for rcp->exp_funnel_mutex

      In kernels built with CONFIG_PREEMPT=y, synchronize_rcu_expedited()
      invokes synchronize_sched_expedited() while holding RCU-preempt's
      root rcu_node structure's ->exp_funnel_mutex, which is acquired after
      the rcu_data structure's ->exp_funnel_mutex.  The first thing that
      synchronize_sched_expedited() will do is acquire RCU-sched's rcu_data
      structure's ->exp_funnel_mutex.   There is no danger of an actual deadlock
      because the locking order is always from RCU-preempt's expedited mutexes
      to those of RCU-sched.  Unfortunately, lockdep considers both rcu_data
      structures' ->exp_funnel_mutex to be in the same lock class and therefore
      reports a deadlock cycle.

      This commit silences this false positive by placing RCU-sched's rcu_data
      structures' ->exp_funnel_mutex locks into their own lock class.

      Reported-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>

  commit 66e8c57da6bf6b847a48a5a6fda59512f733ed78
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Tue Aug 25 20:45:18 2015 +0200

      rcu: Change _wait_rcu_gp() to work around GCC bug 67055

      Code like this in inline functions confuses some recent versions of gcc:

        const int n = const-expr;
        whatever_t array[n];

      For more details, see:

        https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67055#c13

      This compiler bug results in the following failure after 114b7fd4b (rcu:
      Create rcu_sync infrastructure):

        In file included from include/linux/rcupdate.h:429:0,
                          from include/linux/rcu_sync.h:5,
                          from kernel/rcu/sync.c:1:
        include/linux/rcutiny.h: In function 'rcu_barrier_sched':
        include/linux/rcutiny.h:55:20: internal compiler error: Segmentation 
fault
          static inline void rcu_barrier_sched(void)

      This commit therefore eliminates the constant local variable in favor of
      direct use of the expression.

      Reported-and-tested-by: Mark Salter <msalter@xxxxxxxxxx>
      Reported-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>

  commit 2259f960b3a9b1020dccbf948c97311ce586db1b
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Sun Sep 20 13:30:30 2015 -0400

      NFSv4.x/pnfs: Don't try to recover stateids twice in layoutget

      If the current open or layout stateid doesn't match the stateid used
      in the layoutget RPC call, then don't try to recover it.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 24311f884189d42d40354a6f38ca218eb9aeb811
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Sun Sep 20 10:50:17 2015 -0400

      NFSv4: Recovery of recalled read delegations is broken

      When a read delegation is being recalled, and we're reclaiming the
      cached opens, we need to make sure that we only reclaim read-only
      modes.
      A previous attempt to do this, relied on retrieving the delegation
      type from the nfs4_opendata structure. Unfortunately, as Kinglong
      pointed out, this field can only be set when performing reboot recovery.

      Furthermore, if we call nfs4_open_recover(), then we end up clobbering
      the state->flags for all modes that we're not recovering...

      The fix is to have the delegation recall code pass this information
      to the recovery call, and then refactor the recovery code so that
      nfs4_open_delegation_recall() does not need to call nfs4_open_recover().

      Reported-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Fixes: 39f897fdbd46 ("NFSv4: When returning a delegation, don't...")
      Tested-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Cc: NeilBrown <neilb@xxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # v4.2+
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit f491e70ccffa5d19aa51c958909320fa1f3905ed
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 18:09:55 2015 +0200

      hwmon: (pwm-fan) Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luisbg@xxxxxxxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit fe5152882a45a2545d44d39fe29badc8e4f66ad3
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 18:09:28 2015 +0200

      hwmon: (gpio-fan) Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luisbg@xxxxxxxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit 3245acbce952cda75b2fafa8e40452ef0c4756c1
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 18:09:11 2015 +0200

      hwmon: (abx500) Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luisbg@xxxxxxxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit b7f76ea2ef6739ee484a165ffbac98deb855d3d3
  Author: Jann Horn <jann@xxxxxxxxx>
  Date:   Fri Sep 18 23:41:23 2015 +0200

      security: fix typo in security_task_prctl

      Signed-off-by: Jann Horn <jann@xxxxxxxxx>
      Reviewed-by: Andy Lutomirski <luto@xxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3eb4ee68254235e4f47bc0410538fcdaede39589
  Author: Thomas Huth <thuth@xxxxxxxxxx>
  Date:   Fri Sep 18 08:57:28 2015 +0200

      KVM: PPC: Book3S: Take the kvm->srcu lock in 
kvmppc_h_logical_ci_load/store()

      Access to the kvm->buses (like with the kvm_io_bus_read() and -write()
      functions) has to be protected via the kvm->srcu lock.
      The kvmppc_h_logical_ci_load() and -store() functions are missing
      this lock so far, so let's add it there, too.
      This fixes the problem that the kernel reports "suspicious RCU usage"
      when lock debugging is enabled.

      Cc: stable@xxxxxxxxxxxxxxx # v4.1+
      Fixes: 99342cf8044420eebdf9297ca03a14cb6a7085a1
      Signed-off-by: Thomas Huth <thuth@xxxxxxxxxx>
      Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>

  commit 7e022e717f54897e396504306d0c9b61452adf4e
  Author: Gautham R. Shenoy <ego@xxxxxxxxxxxxxxxxxx>
  Date:   Thu May 21 13:57:04 2015 +0530

      KVM: PPC: Book3S HV: Pass the correct trap argument to kvmhv_commence_exit

      In guest_exit_cont we call kvmhv_commence_exit which expects the trap
      number as the argument. However r3 doesn't contain the trap number at
      this point and as a result we would be calling the function with a
      spurious trap number.

      Fix this by copying r12 into r3 before calling kvmhv_commence_exit as
      r12 contains the trap number.

      Cc: stable@xxxxxxxxxxxxxxx # v4.1+
      Fixes: eddb60fb1443
      Signed-off-by: Gautham R. Shenoy <ego@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>

  commit 5fc3e64f941197d5b77abccbe0144b25c2c36f2f
  Author: Paul Mackerras <paulus@xxxxxxxxx>
  Date:   Fri Sep 18 13:13:44 2015 +1000

      KVM: PPC: Book3S HV: Fix handling of interrupted VCPUs

      This fixes a bug which results in stale vcore pointers being left in
      the per-cpu preempted vcore lists when a VM is destroyed.  The result
      of the stale vcore pointers is usually either a crash or a lockup
      inside collect_piggybacks() when another VM is run.  A typical
      lockup message looks like:

      [  472.161074] NMI watchdog: BUG: soft lockup - CPU#24 stuck for 22s! 
[qemu-system-ppc:7039]
      [  472.161204] Modules linked in: kvm_hv kvm_pr kvm xt_CHECKSUM 
ipt_MASQUERADE nf_nat_masquerade_ipv4 tun ip6t_rpfilter ip6t_REJECT 
nf_reject_ipv6 xt_conntrack ebtable_nat ebtable_broute bridge stp llc 
ebtable_filter ebtables ip6table_nat nf_conntrack_ipv6 nf_defrag_ipv6 
nf_nat_ipv6 ip6table_mangle ip6table_security ip6table_raw ip6table_filter 
ip6_tables iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 nf_nat 
nf_conntrack iptable_mangle iptable_security iptable_raw ses enclosure shpchp 
rtc_opal i2c_opal powernv_rng binfmt_misc dm_service_time scsi_dh_alua radeon 
i2c_algo_bit drm_kms_helper ttm drm tg3 ptp pps_core cxgb3 ipr i2c_core mdio 
dm_multipath [last unloaded: kvm_hv]
      [  472.162111] CPU: 24 PID: 7039 Comm: qemu-system-ppc Not tainted 
4.2.0-kvm+ #49
      [  472.162187] task: c000001e38512750 ti: c000001e41bfc000 task.ti: 
c000001e41bfc000
      [  472.162262] NIP: c00000000096b094 LR: c00000000096b08c CTR: 
c000000000111130
      [  472.162337] REGS: c000001e41bff520 TRAP: 0901   Not tainted  
(4.2.0-kvm+)
      [  472.162399] MSR: 9000000100009033 <SF,HV,EE,ME,IR,DR,RI,LE>  CR: 
24848844  XER: 00000000
      [  472.162588] CFAR: c00000000096b0ac SOFTE: 1
      GPR00: c000000000111170 c000001e41bff7a0 c00000000127df00 0000000000000001
      GPR04: 0000000000000003 0000000000000001 0000000000000000 0000000000874821
      GPR08: c000001e41bff8e0 0000000000000001 0000000000000000 d00000000efde740
      GPR12: c000000000111130 c00000000fdae400
      [  472.163053] NIP [c00000000096b094] _raw_spin_lock_irqsave+0xa4/0x130
      [  472.163117] LR [c00000000096b08c] _raw_spin_lock_irqsave+0x9c/0x130
      [  472.163179] Call Trace:
      [  472.163206] [c000001e41bff7a0] [c000001e41bff7f0] 0xc000001e41bff7f0 
(unreliable)
      [  472.163295] [c000001e41bff7e0] [c000000000111170] __wake_up+0x40/0x90
      [  472.163375] [c000001e41bff830] [d00000000efd6fc0] 
kvmppc_run_core+0x1240/0x1950 [kvm_hv]
      [  472.163465] [c000001e41bffa30] [d00000000efd8510] 
kvmppc_vcpu_run_hv+0x5a0/0xd90 [kvm_hv]
      [  472.163559] [c000001e41bffb70] [d00000000e9318a4] 
kvmppc_vcpu_run+0x44/0x60 [kvm]
      [  472.163653] [c000001e41bffba0] [d00000000e92e674] 
kvm_arch_vcpu_ioctl_run+0x64/0x170 [kvm]
      [  472.163745] [c000001e41bffbe0] [d00000000e9263a8] 
kvm_vcpu_ioctl+0x538/0x7b0 [kvm]
      [  472.163834] [c000001e41bffd40] [c0000000002d0f50] 
do_vfs_ioctl+0x480/0x7c0
      [  472.163910] [c000001e41bffde0] [c0000000002d1364] SyS_ioctl+0xd4/0xf0
      [  472.163986] [c000001e41bffe30] [c000000000009260] system_call+0x38/0xd0
      [  472.164060] Instruction dump:
      [  472.164098] ebc1fff0 ebe1fff8 7c0803a6 4e800020 60000000 60000000 
60420000 8bad02e2
      [  472.164224] 7fc3f378 4b6a57c1 60000000 7c210b78 <e92d0000> 89290009 
792affe3 40820070

      The bug is that kvmppc_run_vcpu does not correctly handle the case
      where a vcpu task receives a signal while its guest vcpu is executing
      in the guest as a result of being piggy-backed onto the execution of
      another vcore.  In that case we need to wait for the vcpu to finish
      executing inside the guest, and then remove this vcore from the
      preempted vcores list.  That way, we avoid leaving this vcpu's vcore
      on the preempted vcores list when the vcpu gets interrupted.

      Fixes: ec2571650826
      Reported-by: Thomas Huth <thuth@xxxxxxxxxx>
      Tested-by: Thomas Huth <thuth@xxxxxxxxxx>
      Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>

  commit a42fb351ca1f340f8307468be765e3f77ddedda9
  Author: Knuth Posern <knuth@xxxxxxxxxx>
  Date:   Sun Sep 20 21:25:22 2015 +0200

      thunderbolt: Allow loading of module on recent Apple MacBooks with 
thunderbolt 2 controller

      The pci device ids listed in the thunderbolt driver are to restrictive,
      which prevents the driver from being loaded on recent Apple MacBooks
      using a thunderbolt 2 controller. In particular this prevented any
      hot-plugging functionality for thunderbolt based ethernet dongles
      (i.e. Apples thunderbolt gigabit ethernet broadcom tg3 based dongle
      Model A1433 EMC 2590).

      Changing the subvendor and subdevice to PCI_ANY_ID the thunderbolt driver
      loads and binds to the pci device 07:00.0 System peripheral:
      Intel Corporation Device 156c which is the thunderbolt 2 controller on
      the MacBookPro12,1.

      Successfully tested on MacBookPro12,1. With the patch the thunderbolt
      module gets now loaded on boot. And it provides hot-plugging support both
      for a cold-plugged and a warm-plugged ethernet dongle.

      Signed-off-by: Andreas Noever <andreas.noever@xxxxxxxxx>
      Acked-by: Knuth Posern <knuth@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 1f93e4a96c9109378204c147b3eec0d0e8100fde
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Sep 20 14:32:34 2015 -0700

      Linux 4.3-rc2

  commit 8714d46dc5b95a6a898ec8f1e67237c7995adfc6
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Sun Sep 20 23:04:22 2015 +0800

      NFS: Fix an infinite loop when layoutget fail with BAD_STATEID

      If layouget fail with BAD_STATEID, restart should not using the old 
stateid.
      But, nfs client choose the layout stateid at first, and then the open 
stateid.

      To avoid the infinite loop of using bad stateid for layoutget,
      this patch sets the layout flag'ss NFS_LAYOUT_INVALID_STID bit to
      skip choosing the bad layout stateid.

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 6f29b9bba7b08c6b1d6f2cc4cf750b342fc1946c
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Sun Sep 20 23:03:28 2015 +0800

      NFS: Do cleanup before resetting pageio read/write to mds

      There is a reference leak of layout segment after resetting
      pageio read/write to mds.

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # v4.0+
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 97584d1838b7e2545c3b10aacef3327fcaa9531b
  Author: Javi Merino <javi.merino@xxxxxxx>
  Date:   Mon Sep 14 14:23:54 2015 +0100

      thermal: power_allocator: exit early if there are no cooling devices

      Don't waste cycles in the power allocator governor's throttle function
      if there are no cooling devices and exit early.

      This commit doesn't change any functionality, but should provide better
      performance for the odd case of a thermal zone with trip points but
      without cooling devices.

      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: Eduardo Valentin <edubezval@xxxxxxxxx>
      Reviewed-by: Daniel Kurtz <djkurtz@xxxxxxxxxxxx>
      Signed-off-by: Javi Merino <javi.merino@xxxxxxx>
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit 99bc7215bc60f6cd414cf1b85cd9d52cc596cccb
  Merge: 30ec568 7ae85dc
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 19 21:05:02 2015 -0700

      Merge branch 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm

      Pull ARM fixes from Russell King:
       "Three fixes and a resulting cleanup for -rc2:

         - Andre Przywara reported that he was seeing a warning with the new
           cast inside DMA_ERROR_CODE's definition, and fixed the incorrect
           use.

         - Doug Anderson noticed that kgdb causes a "scheduling while atomic"
           bug.

         - OMAP5 folk noticed that their Thumb-2 compiled X servers crashed
           when enabling support to cover ARMv6 CPUs due to a kernel bug
           leaking some conditional context into the signal handler"

      * 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
        ARM: 8425/1: kgdb: Don't try to stop the machine when setting 
breakpoints
        ARM: 8437/1: dma-mapping: fix build warning with new DMA_ERROR_CODE 
definition
        ARM: get rid of needless #if in signal handling code
        ARM: fix Thumb2 signal handling when ARMv6 is enabled

  commit 30ec56824897fc70f668dcb302f08cc9080eadfa
  Merge: 009884f ae78581
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 19 20:57:45 2015 -0700

      Merge tag 'linux-kselftest-4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest

      Pull kselftest fixes from Shuah Khan:
       "This update contains 7 fixes for problems ranging from build failurs
        to incorrect error reporting"

      * tag 'linux-kselftest-4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        selftests: exec: revert to default emit rule
        selftests: change install command to rsync
        selftests: mqueue: simplify the Makefile
        selftests: mqueue: allow extra cflags
        selftests: rename jump label to static_keys
        selftests/seccomp: add support for s390
        seltests/zram: fix syntax error

  commit 009884f384dcc71909f2b861c317da7242979f31
  Merge: d590b2d 0f40314
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 19 20:41:31 2015 -0700

      Merge tag 'pm+acpi-4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

      Pull power management and ACPI updates from Rafael Wysocki:
       "Included are: a somewhat late devfreq update which however is mostly
        fixes and cleanups with one new thing only (the PPMUv2 support on
        Exynos5433), an ACPI cpufreq driver fixup and two ACPI core cleanups
        related to preprocessor directives.

        Specifics:

         - Fix a memory allocation size in the devfreq core (Xiaolong Ye).

         - Fix a mistake in the exynos-ppmu DT binding (Javier Martinez
           Canillas).

         - Add support for PPMUv2 ((Platform Performance Monitoring Unit
           version 2.0) on the Exynos5433 SoCs (Chanwoo Choi).

         - Fix a type casting bug in the Exynos PPMU code (MyungJoo Ham).

         - Assorted devfreq code cleanups and optimizations (Javi Merino,
           MyungJoo Ham, Viresh Kumar).

         - Fix up the ACPI cpufreq driver to use a more lightweight way to get
           to its private data in the ->get() callback (Rafael J Wysocki).

         - Fix a CONFIG_ prefix bug in one of the ACPI drivers and make the
           ACPI subsystem use IS_ENABLED() instead of #ifdefs in function
           bodies (Sudeep Holla)"

      * tag 'pm+acpi-4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        cpufreq: acpi-cpufreq: Use cpufreq_cpu_get_raw() in ->get()
        ACPI: Eliminate CONFIG_.*{, _MODULE} #ifdef in favor of IS_ENABLED()
        ACPI: int340x_thermal: add missing CONFIG_ prefix
        PM / devfreq: Fix incorrect type issue.
        PM / devfreq: tegra: Update governor to use devfreq_update_stats()
        PM / devfreq: comments for get_dev_status usage updated
        PM / devfreq: drop comment about thermal setting max_freq
        PM / devfreq: cache the last call to get_dev_status()
        PM / devfreq: Drop unlikely before IS_ERR(_OR_NULL)
        PM / devfreq: exynos-ppmu: bit-wise operation bugfix.
        PM / devfreq: exynos-ppmu: Update documentation to support PPMUv2
        PM / devfreq: exynos-ppmu: Add the support of PPMUv2 for Exynos5433
        PM / devfreq: event: Remove incorrect property in exynos-ppmu DT binding

  commit d590b2d4bf61ab8d9ccaae033063eabe15699f9e
  Merge: e6827ba d34e210
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 19 20:17:40 2015 -0700

      Merge tag 'clk-fixes-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux

      Pull clk fixes from Stephen Boyd:
       "A few driver fixes for tegra, rockchip, and st SoCs and a two-liner in
        the framework to avoid oops when get_parent ops return out of range
        values on tegra platforms"

      * tag 'clk-fixes-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
        drivers: clk: st: Rename st_pll3200c32_407_c0_x into st_pll3200c32_cx_x
        clk: check for invalid parent index of orphans in __clk_init()
        clk: tegra: dfll: Properly protect OPP list
        clk: rockchip: add critical clock for rk3368

  commit e6827bafd6b56fa25ec380840fe6f47e9a213fbe
  Merge: dc847d5 2338f73
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 19 20:10:30 2015 -0700

      Merge tag 'led-fixes-for-v4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds

      Pull LED fixes from Jacek Anaszewski:
       - fix module autoload for six OF platform drivers (aat1290, bcm6328,
         bcm6358, ktd2692, max77693, ns2)
       - aat1290: add missing static modifier
       - ipaq-micro: add missing LEDS_CLASS dependency
       - lp55xx: correct Kconfig dependecy for f/w user helper

      * tag 'led-fixes-for-v4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds:
        leds:lp55xx: Correct Kconfig dependency for f/w user helper
        leds: leds-ipaq-micro: Add LEDS_CLASS dependency
        leds: aat1290: add 'static' modifier to init_mm_current_scale
        leds: leds-ns2: Fix module autoload for OF platform driver
        leds: max77693: Fix module autoload for OF platform driver
        leds: ktd2692: Fix module autoload for OF platform driver
        leds: bcm6358: Fix module autoload for OF platform driver
        leds: bcm6328: Fix module autoload for OF platform driver
        leds: aat1290: Fix module autoload for OF platform driver

  commit dc847d5b4aa852c41b56c21bdc759fee13cc8f68
  Merge: 2673ee5 e116a64
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 19 20:04:11 2015 -0700

      Merge tag 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma

      Pull rdma fixes from Doug Ledford:
       "The new hfi1 driver in staging/rdma has had a number of fixup patches
        since being added to the tree.  This is the first batch of those fixes"

      * tag 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma:
        IB/hfi: Properly set permissions for user device files
        IB/hfi1: mask vs shift confusion
        IB/hfi1: clean up some defines
        IB/hfi1: info leak in get_ctxt_info()
        IB/hfi1: fix a locking bug
        IB/hfi1: checking for NULL instead of IS_ERR
        IB/hfi1: fix sdma_descq_cnt parameter parsing
        IB/hfi1: fix copy_to/from_user() error handling
        IB/hfi1: fix pstateinfo from returning improperly byteswapped value

  commit 2673ee565f10e0f2fdcf61f7a715e6b4ac2497dc
  Merge: 133bb59 ae4f976
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 19 19:13:03 2015 -0700

      Merge branch 'libnvdimm-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm

      Pull libnvdimm fixes from Dan Williams:

       - a boot regression (since v4.2) fix for some ARM configurations from
         Tyler

       - regression (since v4.1) fixes for mkfs.xfs on a DAX enabled device
         from Jeff.  These are tagged for -stable.

       - a pair of locking fixes from Axel that are hidden from lockdep since
         they involve device_lock().  The "btt" one is tagged for -stable, the
         other only applies to the new "pfn" mechanism in v4.3.

       - a fix for the pmem ->rw_page() path to use wmb_pmem() from Ross.

      * 'libnvdimm-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
        mm: fix type cast in __pfn_to_phys()
        pmem: add proper fencing to pmem_rw_page()
        libnvdimm: pfn_devs: Fix locking in namespace_store
        libnvdimm: btt_devs: Fix locking in namespace_store
        blockdev: don't set S_DAX for misaligned partitions
        dax: fix O_DIRECT I/O to the last block of a blockdev

  commit 133bb59585140747fd3938002670cb395f40dc76
  Merge: 590dca3 9945187
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 19 18:57:09 2015 -0700

      Merge branch 'for-linus' of git://git.kernel.dk/linux-block

      Pull block updates from Jens Axboe:
       "This is a bit bigger than it should be, but I could (did) not want to
        send it off last week due to both wanting extra testing, and expecting
        a fix for the bounce regression as well.  In any case, this contains:

         - Fix for the blk-merge.c compilation warning on gcc 5.x from me.

         - A set of back/front SG gap merge fixes, from me and from Sagi.
           This ensures that we honor SG gapping for integrity payloads as
           well.

         - Two small fixes for null_blk from Matias, fixing a leak and a
           capacity propagation issue.

         - A blkcg fix from Tejun, fixing a NULL dereference.

         - A fast clone optimization from Ming, fixing a performance
           regression since the arbitrarily sized bio's were introduced.

         - Also from Ming, a regression fix for bouncing IOs"

      * 'for-linus' of git://git.kernel.dk/linux-block:
        block: fix bounce_end_io
        block: blk-merge: fast-clone bio when splitting rw bios
        block: blkg_destroy_all() should clear q->root_blkg and ->root_rl.blkg
        block: Copy a user iovec if it includes gaps
        block: Refuse adding appending a gapped integrity page to a bio
        block: Refuse request/bio merges with gaps in the integrity payload
        block: Check for gaps on front and back merges
        null_blk: fix wrong capacity when bs is not 512 bytes
        null_blk: fix memory leak on cleanup
        block: fix bogus compiler warnings in blk-merge.c

  commit 590dca3a71875461e8fea3013af74386945191b2
  Author: Chris Mason <clm@xxxxxx>
  Date:   Fri Sep 18 13:35:08 2015 -0400

      fs-writeback: unplug before cond_resched in writeback_sb_inodes

      Commit 505a666ee3fc ("writeback: plug writeback in wb_writeback() and
      writeback_inodes_wb()") has us holding a plug during writeback_sb_inodes,
      which increases the merge rate when relatively contiguous small files
      are written by the filesystem.  It helps both on flash and spindles.

      For an fs_mark workload creating 4K files in parallel across 8 drives,
      this commit improves performance ~9% more by unplugging before calling
      cond_resched().  cond_resched() doesn't trigger an implicit unplug, so
      explicitly getting the IO down to the device before scheduling reduces
      latencies for anyone waiting on clean pages.

      It also cuts down on how often we use kblockd to unplug, which means
      less work bouncing from one workqueue to another.

      Many more details about how we got here:

        https://lkml.org/lkml/2015/9/11/570

      Signed-off-by: Chris Mason <clm@xxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 4b0ab51db32eba0f48b7618254742f143364a28d
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 09:52:07 2015 -0400

      SUNRPC: xs_sock_mark_closed() does not need to trigger socket autoclose

      Under all conditions, it should be quite sufficient just to mark
      the socket as disconnected. It will then be closed by the
      transport shutdown or reconnect code.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 79234c3db6842a3de03817211d891e0c2878f756
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 15:53:24 2015 -0400

      SUNRPC: Lock the transport layer on shutdown

      Avoid all races with the connect/disconnect handlers by taking the
      transport lock.

      Reported-by:"Suzuki K. Poulose" <suzuki.poulose@xxxxxxx>
      Acked-by: Jeff Layton <jlayton@xxxxxxxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 002801fc5372ecb725f0d7939f88ca752ce1d499
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Mon Sep 14 10:37:55 2015 -0700

      Input: imx6ul_tsc - fix controller name

      We should better write "Touchscreen".

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 5eab3cf3e48cf658f3432e8ba31436d5a4f6a219
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Mon Sep 14 10:37:31 2015 -0700

      Input: imx6ul_tsc - use the preferred method for kzalloc()

      According to Documentation/CodingStyle:

      "The preferred form for passing a size of a struct is the following:

        p = kmalloc(sizeof(*p), ...);"

      so do as suggested.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 3905de62b2624a4574776b3b7ddfa97758b75edc
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Mon Sep 14 10:37:08 2015 -0700

      Input: imx6ul_tsc - check for negative return value

      We should check for negative values returned by platform_get_irq().

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 6cc527b05847984990a09ef028b2f670bbc72c46
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Mon Sep 14 10:36:35 2015 -0700

      Input: imx6ul_tsc - propagate the errors

      imx6ul_adc_init() may fail in two cases, so we should better
      propagate the errors and make sure that the callers of
      this function also check and propagate the errors accordingly.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 46b018fa95003f8159f5fcf9b8cd89acaea34e31
  Author: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
  Date:   Sat Sep 5 10:19:38 2015 -0700

      Input: walkera0701 - fix abs() calculations on 64 bit values

      abs() function can not be used with 64 bit values, so let's switch to
      abs64(). From include/linux/kernel.h:

      /*
       * abs() handles unsigned and signed longs, ints, shorts and chars.
       * For all input types abs() returns a signed long.
       * abs() should not be used for 64-bit types (s64, u64, long long)
       * - use abs64() for those.
       */

      Reported-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 86a39bffc4e94f80527c14fe00a3acb432910ef3
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Mon Sep 14 10:38:39 2015 -0700

      Input: mms114 - remove unneded semicolons

      They aren't needed and are just creating null statements so remove it.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit b9ab471b71900ca8a670ecf4f1cc65b626953655
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Mon Sep 14 10:38:31 2015 -0700

      Input: pm8941-pwrkey - remove unneded semicolon

      It's not needed and is just creating a null statement so remove it.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit b1452723cf23c908eed2bf6baf0c23943eb0e8bf
  Author: Daniel Martin <daniel.martin@xxxxxxxxxxx>
  Date:   Sat Sep 19 11:27:19 2015 -0700

      Input: fix typo in MT documentation

      Section "Event Computation" had this:
          ...
          ABS_MT_TOOL_X := C_X
          ABS_MT_TOOL_X := C_Y

      Replace the second ABS_MT_TOOL_X with ABS_MT_TOOL_Y.

      Signed-off-by: Daniel Martin <consume.noise@xxxxxxxxx>
      Acked-by: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit b0379d7aa415249ce1dab8dd2554f8845d6822ab
  Author: Dudley Du <dudl@xxxxxxxxxxx>
  Date:   Sat Sep 19 10:39:32 2015 -0700

      Input: cyapa - fix address of Gen3 devices in device tree documentation

      All of the Gen3 touchpads are fixed with I2C address 0x67, so correct the
      reg value description from 0x24 to 0x67.

      Signed-off-by: Dudley Du <dudl@xxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 5b64c173cdea21105eb4794487b3d593f0a2e6c3
  Author: Adam Thomson <Adam.Thomson.Opensource@xxxxxxxxxxx>
  Date:   Wed Sep 16 10:13:19 2015 +0100

      ASoC: fsl_ssi: Fix checking of dai format for AC97 mode

      Current code incorrectly treats dai format for AC97 as bit mask
      whereas it's actually an integer value. This causes DAI formats
      other than AC97 (e.g. DSP_B) to trigger AC97 related code,
      which is incorrect and breaks functionality. This patch fixes
      the code to correctly compare values to determine AC97 or not.

      Signed-off-by: Adam Thomson <Adam.Thomson.Opensource@xxxxxxxxxxx>
      Acked-by: Timur Tabi <timur@xxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit f072f91aa7517386344476813ca0799e08fd0c35
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Fri Sep 18 16:02:21 2015 +0530

      ASoC: wm0010: fix error path

      Fix the error path so that we can free the allocated memory on the error
      path instead of releasing them individually on each error.

      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Acked-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 2ace47be5a315def8f493ca77aa59c077ade30a1
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Fri Sep 18 16:02:20 2015 +0530

      ASoC: wm0010: fix memory leak

      We have requested for the firmware but we have missed releasing it both
      on success and on error path.
      While checking the code it turned out that the requested firmware is not
      even used. More over the same firmware is being loaded by
      wm0010_stage2_load().

      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Acked-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit c9e97b3cb2b80deb94c092a2022a6d385b838d84
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 19:42:17 2015 +0200

      spi: meson: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luisbg@xxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 7209fee89f435b69051bb6bffe7f191336ac2a5e
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 19:09:51 2015 +0200

      regulator: vexpress: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luisbg@xxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 2f9481e7dc0d3aacbaa07701f3ee2527f5d48301
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 19:09:24 2015 +0200

      regulator: gpio: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luisbg@xxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit d702ffd4d1df73b9c620af1654af42ff5b8d5c09
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 19:09:07 2015 +0200

      regulator: anatop: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luisbg@xxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 8524bb0c7ac688a3cd6ba12dae6104c54d0566b9
  Author: Zidan Wang <zidan.wang@xxxxxxxxxxxxx>
  Date:   Fri Sep 18 17:19:43 2015 +0800

      ASoC: wm8960: correct the max register value of mic boost pga

      the max register value of mic boost pga should be 3.

      Signed-off-by: Zidan Wang <zidan.wang@xxxxxxxxxxxxx>
      Acked-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit ee92cfb030c16ddb01f6543968f13bcb61ed9da5
  Author: Zidan Wang <zidan.wang@xxxxxxxxxxxxx>
  Date:   Fri Sep 18 17:19:25 2015 +0800

      ASoC: wm8962: remove 64k sample rate support

      wm8962 can't support 64k sample rate. When playing a 64KHz wave file,
      'Unsupported rate 64000Hz' will be prompted.

      Signed-off-by: Zidan Wang <zidan.wang@xxxxxxxxxxxxx>
      Acked-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit ae4f976968896f8f41b3a7aa21be6146492211e5
  Author: Tyler Baker <tyler.baker@xxxxxxxxxx>
  Date:   Sat Sep 19 03:58:10 2015 -0400

      mm: fix type cast in __pfn_to_phys()

      The various definitions of __pfn_to_phys() have been consolidated to
      use a generic macro in include/asm-generic/memory_model.h. This hit
      mainline in the form of 012dcef3f058 "mm: move __phys_to_pfn and
      __pfn_to_phys to asm/generic/memory_model.h". When the generic macro
      was implemented the type cast to phys_addr_t was dropped which caused
      boot regressions on ARM platforms with more than 4GB of memory and
      LPAE enabled.

      It was suggested to use PFN_PHYS() defined in include/linux/pfn.h
      as provides the correct logic and avoids further duplication.

      Reported-by: kernelci.org bot <bot@xxxxxxxxxxxx>
      Suggested-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Signed-off-by: Tyler Baker <tyler.baker@xxxxxxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 0f40314b81b765c26202cde33523e35809adbe9b
  Merge: 7dc1d36 bcb2b0b
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Fri Sep 18 23:07:46 2015 +0200

      Merge branch 'acpi-bus'

      * acpi-bus:
        ACPI: Eliminate CONFIG_.*{, _MODULE} #ifdef in favor of IS_ENABLED()
        ACPI: int340x_thermal: add missing CONFIG_ prefix

  commit 7dc1d36e8ef8f78f9dadf0476081f3c7ff7f79be
  Merge: 6ff33f3 1f0bd44 4184a8f
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Fri Sep 18 23:05:28 2015 +0200

      Merge branches 'pm-cpufreq' and 'pm-devfreq'

      * pm-cpufreq:
        cpufreq: acpi-cpufreq: Use cpufreq_cpu_get_raw() in ->get()

      * pm-devfreq:
        PM / devfreq: Fix incorrect type issue.
        PM / devfreq: tegra: Update governor to use devfreq_update_stats()
        PM / devfreq: comments for get_dev_status usage updated
        PM / devfreq: drop comment about thermal setting max_freq
        PM / devfreq: cache the last call to get_dev_status()
        PM / devfreq: Drop unlikely before IS_ERR(_OR_NULL)
        PM / devfreq: exynos-ppmu: bit-wise operation bugfix.
        PM / devfreq: exynos-ppmu: Update documentation to support PPMUv2
        PM / devfreq: exynos-ppmu: Add the support of PPMUv2 for Exynos5433
        PM / devfreq: event: Remove incorrect property in exynos-ppmu DT binding

  commit ea9346514e77951e194f6db0205866f8478753f4
  Merge: 74a0939 8315b77
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 09:56:08 2015 -0700

      Merge tag 'usb-ci-v4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/peter.chen/usb into usb-linus

      Peter writes:

      USB Chipidea fixes for v4.3-rc2

      - Fix the stall implementation
      - Fix device mode transfer at zynq platform
      - other small fixes

  commit 00ade1f553e3b947cd26228392ee47d6f0f550e1
  Merge: 3ae8394 ad2aa04
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 09:28:20 2015 -0700

      Merge tag 'for_linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost

      Pull virtio fixes and cleanups from Michael Tsirkin:
       "This fixes the virtio-test tool, and improves the error handling for
        virtio-ccw"

      * tag 'for_linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
        virtio/s390: handle failures of READ_VQ_CONF ccw
        tools/virtio: propagate V=X to kernel build
        vhost: move features to core
        tools/virtio: fix build after 4.2 changes

  commit 3ae839454e77cdc87d499a4bfd0932dec5763b55
  Merge: fadb97b 00cc163
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 09:23:08 2015 -0700

      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

      Pull KVM fixes from Paolo Bonzini:
       "Mostly stable material, a lot of ARM fixes"

      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (22 
commits)
        sched: access local runqueue directly in single_task_running
        arm/arm64: KVM: Remove 'config KVM_ARM_MAX_VCPUS'
        arm64: KVM: Remove all traces of the ThumbEE registers
        arm: KVM: Disable virtual timer even if the guest is not using it
        arm64: KVM: Disable virtual timer even if the guest is not using it
        arm/arm64: KVM: vgic: Check for !irqchip_in_kernel() when mapping 
resources
        KVM: s390: Replace incorrect atomic_or with atomic_andnot
        arm: KVM: Fix incorrect device to IPA mapping
        arm64: KVM: Fix user access for debug registers
        KVM: vmx: fix VPID is 0000H in non-root operation
        KVM: add halt_attempted_poll to VCPU stats
        kvm: fix zero length mmio searching
        kvm: fix double free for fast mmio eventfd
        kvm: factor out core eventfd assign/deassign logic
        kvm: don't try to register to KVM_FAST_MMIO_BUS for non mmio eventfd
        KVM: make the declaration of functions within 80 characters
        KVM: arm64: add workaround for Cortex-A57 erratum #852523
        KVM: fix polling for guest halt continued even if disable it
        arm/arm64: KVM: Fix PSCI affinity info return value for non valid cores
        arm64: KVM: set {v,}TCR_EL2 RES1 bits
        ...

  commit 381c02f6d8ccad8ed574630f879c40fb59715124
  Author: Mark Rutland <mark.rutland@xxxxxxx>
  Date:   Wed Sep 16 18:18:49 2015 +0100

      perf record: Avoid infinite loop at buildid processing with no samples

      If a session contains no events, we can get stuck in an infinite loop in
      __perf_session__process_events, with a non-zero file_size and 
data_offset, but
      a zero data_size.

      In this case, we can mmap the entirety of the file (consisting of the 
file and
      attribute headers), and fetch_mmaped_event will correctly refuse to read 
any
      (unmapped and non-existent) event headers. This causes
      __perf_session__process_events to unmap the file and retry with the exact 
same
      parameters, getting stuck in an infinite loop.

      This has been observed to result in an exit-time hang when counting
      rare/unschedulable events with perf record, and can be triggered 
artificially
      with the script below:

        ----
        #!/bin/sh
        printf "REPRO: launching perf\n";
        ./perf record -e software/config=9/ sleep 1 &
        PERF_PID=$!;
        sleep 0.002;
        kill -2 $PERF_PID;
        printf "REPRO: waiting for perf (%d) to exit...\n" "$PERF_PID";
        wait $PERF_PID;
        printf "REPRO: perf exited\n";
        ----

      To avoid this, have __perf_session__process_events bail out early when
      the file has no data (i.e. it has no events).

      Commiter note:

      I only managed to reproduce this when setting
      /proc/sys/kernel/kptr_restrict to '1' and changing the code to
      purposefully not process any samples and no synthesized samples, i.e.
      kptr_restrict prevents 'record' from synthesizing the kernel mmaps for
      vmlinux + modules and since it is a workload started from perf, we don't
      synthesize mmap/comm records for existing threads.

      Adrian Hunter managed to reproduce it in his environment tho.

      Signed-off-by: Mark Rutland <mark.rutland@xxxxxxx>
      Tested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Tested-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1442423929-12253-1-git-send-email-mark.rutland@xxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit e116a64fab650aed3d7b9b4db0b59c07f361bc9f
  Author: Ira Weiny <ira.weiny@xxxxxxxxx>
  Date:   Thu Sep 17 13:47:49 2015 -0400

      IB/hfi: Properly set permissions for user device files

      Some of the device files are required to be user accessible for PSM while
      most should remain accessible only by root.

      Add a parameter to hfi1_cdev_init which controls if the user should have 
access
      to this device which places it in a different class with the appropriate
      devnode callback.

      In addition set the devnode call back for the existing class to be a bit 
more
      explicit for those permissions.

      Finally remove the unnecessary null check before class_destroy

      Tested-by: Donald Dutile <ddutile@xxxxxxxxxx>
      Signed-off-by: Haralanov, Mitko (mitko.haralanov@xxxxxxxxx)
      Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 7d630467d7c454d801d72b58f242c373a64e39ed
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Wed Sep 16 19:03:45 2015 +0300

      IB/hfi1: mask vs shift confusion

      We are shifting by the _MASK macros instead of the _SHIFT ones.

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 3f2686a2665b4d06753b602fe394b5d87bc7f279
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Wed Sep 16 19:02:54 2015 +0300

      IB/hfi1: clean up some defines

      I added spaces around operators so it matches kernel style because
      normally "-1ULL" is a number and " - 1" is a subtract operation.  Also
      removed some superflous "ULL" types so "1ULL" becomes "1".

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit ebe6b2e8bc2cd06a330b3f9be8a4fa3ff44ab026
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Wed Sep 16 09:42:25 2015 +0300

      IB/hfi1: info leak in get_ctxt_info()

      The cinfo struct has a hole after the last struct member so we need to
      zero it out.  Otherwise we disclose some uninitialized stack data.

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 951842b0540d2ed49ae29ba968adc496baf46556
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Wed Sep 16 09:22:51 2015 +0300

      IB/hfi1: fix a locking bug

      mutex_trylock() returns zero on failure, not EBUSY.

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 50b19729ced72cfa8bb1c44fed9203f395f13991
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Wed Sep 16 09:22:20 2015 +0300

      IB/hfi1: checking for NULL instead of IS_ERR

      __get_txreq() returns an ERR_PTR() but this checks for NULL so it would
      oops on failure.

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit aeef010a0f63ad0a6f993d3da30753e9a8a39ec5
  Author: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx>
  Date:   Tue Sep 15 10:19:27 2015 -0400

      IB/hfi1: fix sdma_descq_cnt parameter parsing

      The boolean tests should have been or-ed.

      Reported-by: David Binderman <dcb314@xxxxxxxxxxx>
      Reviewed-by: Jubin John <jubin.john@xxxxxxxxx>
      Signed-off-by: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit e1df0068a24ba56673183cc3bd392d8bc301d423
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Tue Sep 15 13:35:25 2015 +0300

      IB/hfi1: fix copy_to/from_user() error handling

      copy_to/from_user() returns the number of bytes which we were not able
      to copy.  It doesn't return an error code.

      Also a couple places had a printk() on error and I removed that because
      people can take advantage of it to fill /var/log/messages with spam.

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Acked-by: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit aadfc3b2042d69a6b4b8d719d4221b988d7f31a5
  Author: Ira Weiny <ira.weiny@xxxxxxxxx>
  Date:   Wed Sep 9 01:28:21 2015 -0400

      IB/hfi1: fix pstateinfo from returning improperly byteswapped value

      Byteswap link_width_downgrade_*_active values before sending on the wire. 
 In
      addition properly define the Port State Info structure.

      Reviewed-by: Dennis Dalessandro <dennis.dalessandro@xxxxxxxxx>
      Reviewed-by: Christian Gomez <christian.gomez@xxxxxxxxx>
      Signed-off-by: Rimmer, Todd <todd.rimmer@xxxxxxxxx>
      Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx>
      Acked-by: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit ab1fffe3a73c694d698645451ba61255ec4ba5e6
  Author: Peter Ujfalusi <peter.ujfalusi@xxxxxx>
  Date:   Fri Sep 18 15:02:50 2015 +0300

      ASoC: davinci-mcasp: Fix devm_kasprintf format string

      The '\n' at the end of the format string is not needed. It adds an extra
      line break when doing
      cat /proc/interrupts

      Signed-off-by: Peter Ujfalusi <peter.ujfalusi@xxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit fadb97b089563da69ba326f9fea6399d071462b2
  Merge: 09784fb ae80a2f
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 08:11:42 2015 -0700

      Merge branch 'irq-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull irq updates from Thomas Gleixner:
       "This is a rather large update post rc1 due to the final steps of
        cleanups and API changes which had to wait for the preparatory patches
        to hit your tree.

         - Regression fixes for ARM GIC irqchips

         - Regression fixes and lockdep anotations for renesas irq chips

         - The leftovers of the cleanup and preparatory patches which have
           been ignored by maintainers

         - Final conversions of the newly merged users of obsolete APIs

         - Final removal of obsolete APIs

         - Final removal of ARM artifacts which had been introduced during the
           conversion of ARM to the generic interrupt code.

         - Final split of the irq_data into chip specific and common data to
           reflect the needs of hierarchical irq domains.

         - Treewide removal of the first argument of interrupt flow handlers,
           i.e. the irq number, which is not used by the majority of handlers
           and simple to retrieve from the other argument the irq descriptor.

         - A few comment updates and build warning fixes"

      * 'irq-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (40 commits)
        arm64: Remove ununsed set_irq_flags
        ARM: Remove ununsed set_irq_flags
        sh: Kill off set_irq_flags usage
        irqchip: Kill off set_irq_flags usage
        gpu/drm: Kill off set_irq_flags usage
        genirq: Remove irq argument from irq flow handlers
        genirq: Move field 'msi_desc' from irq_data into irq_common_data
        genirq: Move field 'affinity' from irq_data into irq_common_data
        genirq: Move field 'handler_data' from irq_data into irq_common_data
        genirq: Move field 'node' from irq_data into irq_common_data
        irqchip/gic-v3: Use IRQD_FORWARDED_TO_VCPU flag
        irqchip/gic: Use IRQD_FORWARDED_TO_VCPU flag
        genirq: Provide IRQD_FORWARDED_TO_VCPU status flag
        genirq: Simplify irq_data_to_desc()
        genirq: Remove __irq_set_handler_locked()
        pinctrl/pistachio: Use irq_set_handler_locked
        gpio: vf610: Use irq_set_handler_locked
        powerpc/mpc8xx: Use irq_set_handler_locked()
        powerpc/ipic: Use irq_set_handler_locked()
        powerpc/cpm2: Use irq_set_handler_locked()
        ...

  commit 09784fb8ef79f5c5adb9c1b4d0df000354e476e7
  Merge: f240bdd 590f078
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 08:06:28 2015 -0700

      Merge branch 'x86-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull x86 fix from Thomas Gleixner:
       "A single regression fix for the x86 dma allocator which got wreckaged
        in the merge window"

      * 'x86-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/pci/dma: Fix gfp flags for coherent DMA memory allocation

  commit f240bdd2a5b7d523ecced64c855ee2c1499f2854
  Merge: a7d5c18 400c47d
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 08:01:06 2015 -0700

      Merge tag 'powerpc-4.3-2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux

      Pull powerpc fixes from Michael Ellerman:

       - Fix 32-bit TCE table init in kdump kernel from Nish

       - Fix kdump with non-power-of-2 crashkernel= from Nish

       - Abort cxl_pci_enable_device_hook() if PCI channel is offline from
         Andrew

       - Fix to release DRC when configure_connector() fails from Bharata

       - Wire up sys_userfaultfd()

       - Fix race condition in tearing down MSI interrupts from Paul

       - Fix unbalanced pci_dev_get() in cxl_probe() from Daniel

       - Fix cxl build failure due to -Wunused-variable gcc behaviour change
         from Ian

       - Tell the toolchain to use ABI v2 when building an LE boot wrapper
         from Benh

       - Fix THP to recompute hash value after a failed update from Aneesh

       - 32-bit memcpy/memset: only use dcbz once cache is enabled from
         Christophe

      * tag 'powerpc-4.3-2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc32: memset: only use dcbz once cache is enabled
        powerpc32: memcpy: only use dcbz once cache is enabled
        powerpc/mm: Recompute hash value after a failed update
        powerpc/boot: Specify ABI v2 when building an LE boot wrapper
        cxl: Fix build failure due to -Wunused-variable behaviour change
        cxl: Fix unbalanced pci_dev_get in cxl_probe
        powerpc/MSI: Fix race condition in tearing down MSI interrupts
        powerpc: Wire up sys_userfaultfd()
        powerpc/pseries: Release DRC when configure_connector fails
        cxl: abort cxl_pci_enable_device_hook() if PCI channel is offline
        powerpc/powernv/pci-ioda: fix kdump with non-power-of-2 crashkernel=
        powerpc/powernv/pci-ioda: fix 32-bit TCE table init in kdump kernel

  commit ebae871a509d3c24b32ff67af2671dadffc58770
  Author: Igor Mammedov <imammedo@xxxxxxxxxx>
  Date:   Fri Sep 18 15:39:05 2015 +0200

      kvm: svm: reset mmu on VCPU reset

      When INIT/SIPI sequence is sent to VCPU which before that
      was in use by OS, VMRUN might fail with:

       KVM: entry failed, hardware error 0xffffffff
       EAX=00000000 EBX=00000000 ECX=00000000 EDX=000006d3
       ESI=00000000 EDI=00000000 EBP=00000000 ESP=00000000
       EIP=00000000 EFL=00000002 [-------] CPL=0 II=0 A20=1 SMM=0 HLT=0
       ES =0000 00000000 0000ffff 00009300
       CS =9a00 0009a000 0000ffff 00009a00
       [...]
       CR0=60000010 CR2=b6f3e000 CR3=01942000 CR4=000007e0
       [...]
       EFER=0000000000000000

      with corresponding SVM error:
       KVM: FAILED VMRUN WITH VMCB:
       [...]
       cpl:            0                efer:         0000000000001000
       cr0:            0000000080010010 cr2:          00007fd7fe85bf90
       cr3:            0000000187d0c000 cr4:          0000000000000020
       [...]

      What happens is that VCPU state right after offlinig:
      CR0: 0x80050033  EFER: 0xd01  CR4: 0x7e0
        -> long mode with CR3 pointing to longmode page tables

      and when VCPU gets INIT/SIPI following transition happens
      CR0: 0 -> 0x60000010 EFER: 0x0  CR4: 0x7e0
        -> paging disabled with stale CR3

      However SVM under the hood puts VCPU in Paged Real Mode*
      which effectively translates CR0 0x60000010 -> 80010010 after

         svm_vcpu_reset()
             -> init_vmcb()
                 -> kvm_set_cr0()
                     -> svm_set_cr0()

      but from  kvm_set_cr0() perspective CR0: 0 -> 0x60000010
      only caching bits are changed and
      commit d81135a57aa6
       ("KVM: x86: do not reset mmu if CR0.CD and CR0.NW are changed")'
      regressed svm_vcpu_reset() which relied on MMU being reset.

      As result VMRUN after svm_vcpu_reset() tries to run
      VCPU in Paged Real Mode with stale MMU context (longmode page tables),
      which causes some AMD CPUs** to bail out with VMEXIT_INVALID.

      Fix issue by unconditionally resetting MMU context
      at init_vmcb() time.

        * AMD64 Architecture Programmer�s Manual,
            Volume 2: System Programming, rev: 3.25
              15.19 Paged Real Mode
        ** Opteron 1216

      Signed-off-by: Igor Mammedov <imammedo@xxxxxxxxxx>
      Fixes: d81135a57aa6
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 00cc1633816de8c95f337608a1ea64e228faf771
  Author: Dominik Dingel <dingel@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 18 11:27:45 2015 +0200

      sched: access local runqueue directly in single_task_running

      Commit 2ee507c47293 ("sched: Add function single_task_running to let a 
task
      check if it is the only task running on a cpu") referenced the current
      runqueue with the smp_processor_id.  When CONFIG_DEBUG_PREEMPT is enabled,
      that is only allowed if preemption is disabled or the currrent task is
      bound to the local cpu (e.g. kernel worker).

      With commit f78195129963 ("kvm: add halt_poll_ns module parameter") KVM
      calls single_task_running. If CONFIG_DEBUG_PREEMPT is enabled that
      generates a lot of kernel messages.

      To avoid adding preemption in that cases, as it would limit the 
usefulness,
      we change single_task_running to access directly the cpu local runqueue.

      Cc: Tim Chen <tim.c.chen@xxxxxxxxxxxxxxx>
      Suggested-by: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Acked-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Fixes: 2ee507c472939db4b146d545352b8a7c79ef47f8
      Signed-off-by: Dominik Dingel <dingel@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 977108f89c989b1eeb5c8d938e1e71913391eb5f
  Author: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
  Date:   Thu Sep 17 18:30:36 2015 +0200

      s390: wire up separate socketcalls system calls

      As discussed on linux-arch all architectures should wire up the separate
      system calls that are hidden behind the socketcall multiplexer system 
call.

      It's just a couple more system calls and gives us a very small performance
      improvement.

      Signed-off-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit 7681df456f97f21fb70f184702696d644e273d73
  Author: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
  Date:   Thu Sep 17 18:30:35 2015 +0200

      s390/compat: remove superfluous compat wrappers

      A couple of compat wrapper functions are simply trampolines to the real
      system call. This happened because the compat wrapper defines will only
      sign and zero extend system call parameters which are of different size
      on s390/s390x (longs and pointers).
      All other parameters will be correctly sign and zero extended by the
      normal system call wrappers.

      Signed-off-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit a55b2ae78cfecaa5ce0384c05211606372b9496c
  Author: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
  Date:   Thu Sep 17 18:30:34 2015 +0200

      s390/compat: do not trace compat wrapper functions

      Add notrace to the compat wrapper define to disable tracing of compat
      wrapper functions. These are supposed to be very small and more or less
      just a trampoline to the real system call.

      Also fix indentation.

      Signed-off-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit f73e22ab450140830005581c2c7ec389791a1b8d
  Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 20:48:22 2015 +0200

      perf: Fix races in computing the header sizes

      There are two races with the current code:

       - Another event can join the group and compute a larger header_size
         concurrently, if the smaller store wins we'll have an incorrect
         header_size set.

       - We compute the header_size after the event becomes active,
         therefore its possible to use the size before its computed.

      Remedy the first by moving the computation inside the ctx::mutex lock,
      and the second by placing it _before_ perf_install_in_context().

      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit a723968c0ed36db676478c3d26078f13484fe01c
  Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 19:06:33 2015 +0200

      perf: Fix u16 overflows

      Vince reported that its possible to overflow the various size fields
      and get weird stuff if you stick too many events in a group.

      Put a lid on this by requiring the fixed record size not exceed 16k.
      This is still a fair amount of events (silly amount really) and leaves
      plenty room for callchains and stack dwarves while also avoiding
      overflowing the u16 variables.

      Reported-by: Vince Weaver <vincent.weaver@xxxxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit f55fc2a57cc9ca3b1bb4fb8eb25b6e1989e5b993
  Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 19:06:33 2015 +0200

      perf: Restructure perf syscall point of no return

      The exclusive_event_installable() stuff only works because its
      exclusive with the grouping bits.

      Rework the code such that there is a sane place to error out before we
      go do things we cannot undo.

      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit dfe1f3cb312624928052413928d88b0ee3492216
  Author: Andi Kleen <ak@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 14:54:00 2015 -0700

      perf/x86/intel: Fix Skylake FRONTEND MSR extrareg mask

      Stephane pointed out that the extrareg mask was one bit too short.
      The bubble width field was truncated by one bit. Fix that here.
      Also add some extra comments on the reserved bits inside the event
      select code.

      Reported-by: Stephane Eranian <eranian@xxxxxxxxxx>
      Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Acked-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441835640-21347-3-git-send-email-andi@xxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit d0dc8494cd6904f8ad035d9ad97f313948f35d0c
  Author: Andi Kleen <ak@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 14:53:59 2015 -0700

      perf/x86/intel/pebs: Add PEBS frontend profiling for Skylake

      Skylake has a new FRONTEND_LATENCY PEBS event to accurately profile
      frontend problems (like ITLB or decoding issues).

      The new event is configured through a separate MSR, which selects
      a range of sub events.

      Define the extra MSR as a extra reg and export support for it
      through sysfs.  To avoid duplicating the existing
      tables use a new function to add new entries to existing tables.

      Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Acked-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1435707205-6676-4-git-send-email-andi@xxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 5e176213a6b2bc5146820c79542d37290434a3c4
  Author: Andi Kleen <ak@xxxxxxxxxxxxxxx>
  Date:   Mon Sep 14 14:47:02 2015 -0700

      perf/x86/intel: Make the CYCLE_ACTIVITY.* constraint on Broadwell more 
specific

      The counter constraint for CYCLE_ACTIVITY.* on Broadwell covered
      all CYCLE_ACTIVITY.* sub events, and forced them on counter 2.
      But actually only one sub event (umask 8) needs to be on counter 2,
      all others do not have any constraint.

      Only force that subevent. This fixes groups with multiple
      CYCLE_ACTIVITY.* events, for example:

        % perf stat -x, -e '{cpu/event=0xa3,umask=0x6,cmask=6/,\
        cpu/event=0xa2,umask=0x8/,\
        cpu/event=0xa3,umask=0x4,cmask=4/,cpu/event=0xb1,umask=0x1,cmask=1/}' 
true
        122150,,cpu/event=0xa3,umask=0x6,cmask=6/,846486,100.00
        16483,,cpu/event=0xa2,umask=0x8/,846486,100.00
        252280,,cpu/event=0xa3,umask=0x4,cmask=4/,846486,100.00
        233604,,cpu/event=0xb1,umask=0x1,cmask=1/,846486,100.00
        %

      Without this patch the third result would be <unsupported>

      Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1442267222-16464-1-git-send-email-andi@xxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit de9b8f5dcbd94bfb1d249907a635f1fb1968e19c
  Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 23:09:29 2015 +0200

      sched: Fix crash trying to dequeue/enqueue the idle thread

      Sasha reports that his virtual machine tries to schedule the idle
      thread since commit 6c37067e2786 ("sched: Change the
      sched_class::set_cpus_allowed() calling context").

      Hit trace shows this happening from idle_thread_get()->init_idle(),
      which is the _second_ init_idle() invocation on that task_struct, the
      first being done through idle_init()->fork_idle(). (this code is
      insane...)

      Because we call init_idle() twice in a row, its ->sched_class ==
      &idle_sched_class and ->on_rq = TASK_ON_RQ_QUEUED. This means
      do_set_cpus_allowed() think we're queued and will call dequeue_task(),
      which is implemented with BUG() for the idle class, seeing how
      dequeueing the idle task is a daft thing.

      Aside of the whole insanity of calling init_idle() _twice_, change the
      code to call set_cpus_allowed_common() instead as this is 'obviously'
      before the idle task gets ran etc..

      Reported-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Tested-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Fixes: 6c37067e2786 ("sched: Change the sched_class::set_cpus_allowed() 
calling context")
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit a6f83f00ad4b4e8a6c1cd14db495f40cf5ea7586
  Merge: a7d5c18 bf64456
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Fri Sep 18 07:41:56 2015 +0200

      Merge tag 'perf-urgent-for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent

      Pull perf/urgent fixes from Arnaldo Carvalho de Melo:

      User visible changes:

        - When handling perf_event_open() returning EBUSY and not being able to 
opendir
          the procfs mount point we would tell the user that the oprofile 
daemon was
          found by returning -1 on as the return for a bool function, oops, fix 
it,
          found with Coccinelle. (Peter Senna Tschudin).

        - Fix per-pkg event reporting bug in 'perf stat'. (Stephane Eranian)

      Developer visible changes:

        - Fix missing prototype for function provided when it isn't present in 
the
          libelf present, fixing the build on RHEL/CentOS 5.1 systems, for 
instance.
          (Arnaldo Carvalho de Melo)

        - Detect if the gcc and libnuma have the features needed to avoid 
requiring
          the use of NO_LIBNUMA and/or NO_AUXTRACE to build on older systems.
          (Arnaldo Carvalho de Melo)

      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit c2e7204d180f8efc80f27959ca9cf16fa17f67db
  Author: Eric Dumazet <edumazet@xxxxxxxxxx>
  Date:   Thu Sep 17 08:38:00 2015 -0700

      tcp_cubic: do not set epoch_start in the future

      Tracking idle time in bictcp_cwnd_event() is imprecise, as epoch_start
      is normally set at ACK processing time, not at send time.

      Doing a proper fix would need to add an additional state variable,
      and does not seem worth the trouble, given CUBIC bug has been there
      forever before Jana noticed it.

      Let's simply not set epoch_start in the future, otherwise
      bictcp_update() could overflow and CUBIC would again
      grow cwnd too fast.

      This was detected thanks to a packetdrill test Neal wrote that was flaky
      before applying this fix.

      Fixes: 30927520dbae ("tcp_cubic: better follow cubic curve after idle 
period")
      Signed-off-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Signed-off-by: Neal Cardwell <ncardwell@xxxxxxxxxx>
      Signed-off-by: Yuchung Cheng <ycheng@xxxxxxxxxx>
      Cc: Jana Iyengar <jri@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit adb094e5e7285385770eb7a7c122bfc663c5e174
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Thu Sep 17 23:21:21 2015 +0900

      fjes: fix off-by-one error at fjes_hw_update_zone_task()

      Dan Carpenter reported off-by-one error of fjes at
      http://www.mail-archive.com/netdev@xxxxxxxxxxxxxxx/msg77520.html

      Actually this is a bug.
      ep_shm_info[epidx].{es_status, zone} should be update
      inside for loop.

      This patch fixes this bug.

      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6cf35642147103195f126d13bdc1d4c32c7c6666
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Sep 17 16:28:31 2015 +0200

      MAINTAINERS: remove bouncing email address for qlcnic

      I got this automated message from <shahed.shaikh@xxxxxxxxxx> when 
submitting
      a qlcnic patch:

      > Shahed Shaikh is no longer with QLogic. If you require assistance please
      > contact Ariel Elior Ariel.Elior@xxxxxxxxxx

      There's no point in having a bouncing address in MAINTAINERS.

      CC: Dept-GELinuxNICDev@xxxxxxxxxx
      CC: Ariel Elior <Ariel.Elior@xxxxxxxxxx>
      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1bdc0b109bfa3697a9f6b71f7fed995e08a0d683
  Merge: c38f6ac ac7eccd
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Sep 17 22:32:16 2015 -0700

      Merge branch 'vxlan-fixes'

      Jiri Benc says:

      ====================
      vxlan fixes

      This fixes various issues with vxlan related to IPv6.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ac7eccd4d48fcc70d9fd6e4d10657bcde0a73f9f
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Sep 17 16:11:14 2015 +0200

      bnx2x: track vxlan port count

      The callback for adding vxlan port can be called with the same port for
      both IPv4 and IPv6. Do not disable the offloading when the same port for
      both protocols is added and later one of them removed.

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1e5b311ab2cc3baf73cdff066ab39c7466bf166b
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Sep 17 16:11:13 2015 +0200

      be2net: allow offloading with the same port for IPv4 and IPv6

      The callback for adding vxlan port can be called with the same port for 
both
      IPv4 and IPv6. Do not disable the offloading if this occurs.

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Sathya Perla <sathya.perla@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 378fddc281072a10b621341b9f78c902303a8fe7
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Sep 17 16:11:12 2015 +0200

      qlcnic: track vxlan port count

      The callback for adding vxlan port can be called with the same port for
      both IPv4 and IPv6. Do not disable the offloading when the same port for
      both protocols is added and later one of them removed.

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 057ba29bbe85e9587635e3128b26fa30fe849af9
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Sep 17 16:11:11 2015 +0200

      vxlan: reject IPv6 addresses if IPv6 is not configured

      When IPv6 address is set without IPv6 configured, the vxlan socket is 
mostly
      treated as an IPv4 one but various lookus in fdb etc. still take the
      AF_INET6 into account. This creates incosistencies with weird 
consequences.

      Just reject IPv6 addresses in such case.

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9dc2ad1008c9f91f55ec6c89ec0f8639dfc91596
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Sep 17 16:11:10 2015 +0200

      vxlan: set needed headroom correctly

      vxlan_setup is called when allocating the net_device, i.e. way before
      vxlan_newlink (or vxlan_dev_configure) is called. This means
      vxlan->default_dst is actually unset in vxlan_setup and the condition that
      sets needed_headroom always takes the else branch.

      Set the needed_headrom at the point when we have the information about
      the address family available.

      Fixes: e4c7ed415387c ("vxlan: add ipv6 support")
      Fixes: 2853af6a2ea1a ("vxlan: use dev->needed_headroom instead of 
dev->hard_header_len")
      CC: Cong Wang <cwang@xxxxxxxxxxxxxxxx>
      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c38f6ac74c99801360705d97244ff222ae18dc97
  Author: Michael Grzeschik <m.grzeschik@xxxxxxxxxxxxxx>
  Date:   Thu Sep 17 15:26:16 2015 +0200

      MAINTAINERS: add arcnet and take maintainership

      Add entry for arcnet to MAINTAINERS file and add myself as the
      maintainer of the subsystem.

      Signed-off-by: Michael Grzeschik <m.grzeschik@xxxxxxxxxxxxxx>
      Cc: davem@xxxxxxxxxxxxx
      Cc: joe@xxxxxxxxxxx
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 980137a20317055451a73547cf07be4ddea039ee
  Author: Michael Grzeschik <m.grzeschik@xxxxxxxxxxxxxx>
  Date:   Thu Sep 17 15:18:34 2015 +0200

      ARCNET: fix hard_header_len limit

      For arcnet the bare minimum header only contains the 4 bytes to
      specify source, dest and offset (1, 1 and 2 bytes respectively).
      The corresponding struct is struct arc_hardware.

      The struct archdr contains additionally a union of possible soft
      headers. When doing $insertusecasehere packets might well
      include short (or even no?) soft headers.

      For this reason only use arc_hardware instead of archdr to
      determine the hard_header_len for an arcnet device.

      Signed-off-by: Michael Grzeschik <m.grzeschik@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1dbb2413cbfa7db7a337081af1f4119996522156
  Merge: 34f5b00 d8949aa
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Sep 17 22:25:51 2015 -0700

      Merge branch 'for-upstream' of 
git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth

      Johan Hedberg says:

      ====================
      pull request: bluetooth 2015-09-17

      Here's one important patch for the 4.3-rc series that fixes an issue
      with Bluetooth LE encryption failing because of a too early check for
      the SMP context.

      Please let me know if there are any issues pulling. Thanks.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 34f5b0066435ffb793049b84fafd29fa195bcf90
  Author: Sasha Levin <sasha.levin@xxxxxxxxxx>
  Date:   Wed Sep 16 15:30:21 2015 -0400

      atm: deal with setting entry before mkip was called

      If we didn't call ATMARP_MKIP before ATMARP_ENCAP the VCC descriptor is
      non-existant and we'll end up dereferencing a NULL ptr:

      [1033173.491930] kasan: GPF could be caused by NULL-ptr deref or user 
memory accessirq event stamp: 123386
      [1033173.493678] general protection fault: 0000 [#1] PREEMPT SMP 
DEBUG_PAGEALLOC KASAN
      [1033173.493689] Modules linked in:
      [1033173.493697] CPU: 9 PID: 23815 Comm: trinity-c64 Not tainted 
4.2.0-next-20150911-sasha-00043-g353d875-dirty #2545
      [1033173.493706] task: ffff8800630c4000 ti: ffff880063110000 task.ti: 
ffff880063110000
      [1033173.493823] RIP: clip_ioctl (net/atm/clip.c:320 net/atm/clip.c:689)
      [1033173.493826] RSP: 0018:ffff880063117a88  EFLAGS: 00010203
      [1033173.493828] RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 
000000000000000c
      [1033173.493830] RDX: 0000000000000002 RSI: ffffffffb3f10720 RDI: 
0000000000000014
      [1033173.493832] RBP: ffff880063117b80 R08: ffff88047574d9a4 R09: 
0000000000000000
      [1033173.493834] R10: 0000000000000000 R11: 0000000000000000 R12: 
1ffff1000c622f53
      [1033173.493836] R13: ffff8800cb905500 R14: ffff8808d6da2000 R15: 
00000000fffffdfd
      [1033173.493840] FS:  00007fa56b92d700(0000) GS:ffff880478000000(0000) 
knlGS:0000000000000000
      [1033173.493843] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
      [1033173.493845] CR2: 0000000000000000 CR3: 00000000630e8000 CR4: 
00000000000006a0
      [1033173.493855] Stack:
      [1033173.493862]  ffffffffb0b60444 000000000000eaea 0000000041b58ab3 
ffffffffb3c3ce32
      [1033173.493867]  ffffffffb0b6f3e0 ffffffffb0b60444 ffffffffb5ea2e50 
1ffff1000c622f5e
      [1033173.493873]  ffff8800630c4cd8 00000000000ee09a ffffffffb3ec4888 
ffffffffb5ea2de8
      [1033173.493874] Call Trace:
      [1033173.494108] do_vcc_ioctl (net/atm/ioctl.c:170)
      [1033173.494113] vcc_ioctl (net/atm/ioctl.c:189)
      [1033173.494116] svc_ioctl (net/atm/svc.c:605)
      [1033173.494200] sock_do_ioctl (net/socket.c:874)
      [1033173.494204] sock_ioctl (net/socket.c:958)
      [1033173.494244] do_vfs_ioctl (fs/ioctl.c:43 fs/ioctl.c:607)
      [1033173.494290] SyS_ioctl (fs/ioctl.c:622 fs/ioctl.c:613)
      [1033173.494295] entry_SYSCALL_64_fastpath (arch/x86/entry/entry_64.S:186)
      [1033173.494362] Code: fa 48 c1 ea 03 80 3c 02 00 0f 85 50 09 00 00 49 8b 
9e 60 06 00 00 48 b8 00 00 00 00 00 fc ff df 48 8d 7b 14 48 89 fa 48 c1 ea 03 
<0f> b6 04 02 48 89 fa 83 e2 07 38 d0 7f 08 84 c0 0f 85 14 09 00
      All code

      ========
         0:   fa                      cli
         1:   48 c1 ea 03             shr    $0x3,%rdx
         5:   80 3c 02 00             cmpb   $0x0,(%rdx,%rax,1)
         9:   0f 85 50 09 00 00       jne    0x95f
         f:   49 8b 9e 60 06 00 00    mov    0x660(%r14),%rbx
        16:   48 b8 00 00 00 00 00    movabs $0xdffffc0000000000,%rax
        1d:   fc ff df
        20:   48 8d 7b 14             lea    0x14(%rbx),%rdi
        24:   48 89 fa                mov    %rdi,%rdx
        27:   48 c1 ea 03             shr    $0x3,%rdx
        2b:*  0f b6 04 02             movzbl (%rdx,%rax,1),%eax               
<-- trapping instruction
        2f:   48 89 fa                mov    %rdi,%rdx
        32:   83 e2 07                and    $0x7,%edx
        35:   38 d0                   cmp    %dl,%al
        37:   7f 08                   jg     0x41
        39:   84 c0                   test   %al,%al
        3b:   0f 85 14 09 00 00       jne    0x955

      Code starting with the faulting instruction
      ===========================================
         0:   0f b6 04 02             movzbl (%rdx,%rax,1),%eax
         4:   48 89 fa                mov    %rdi,%rdx
         7:   83 e2 07                and    $0x7,%edx
         a:   38 d0                   cmp    %dl,%al
         c:   7f 08                   jg     0x16
         e:   84 c0                   test   %al,%al
        10:   0f 85 14 09 00 00       jne    0x92a
      [1033173.494366] RIP clip_ioctl (net/atm/clip.c:320 net/atm/clip.c:689)
      [1033173.494368]  RSP <ffff880063117a88>

      Signed-off-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a7d5c189719846889c029c34e24e166a465368fa
  Merge: a8f1558 8a1513b
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 21:41:02 2015 -0700

      Merge tag 'platform-drivers-x86-v4.3-2' of 
git://git.infradead.org/users/dvhart/linux-platform-drivers-x86

      Pull x86 platform driver fixes from Darren Hart:
       "Fix an issue introduced by the previous major toshiba rework.  Add a
        quirk.  Workaround a few platform specific firmware items.  One
        cleanup to wmi I inadvertently dropped from a previous pull request.

        Details:

        hp-wmi:
         - limit hotkey enable

        toshiba_acpi:
         - Fix hotkeys registration on some toshiba models
         - Fix USB Sleep and Music always disabled

        wmi:
         - Remove private %pUL implementation

        asus-nb-wmi:
         - Add wapf=4 quirk for X456UA/X456UF"

      * tag 'platform-drivers-x86-v4.3-2' of 
git://git.infradead.org/users/dvhart/linux-platform-drivers-x86:
        hp-wmi: limit hotkey enable
        toshiba_acpi: Fix hotkeys registration on some toshiba models
        toshiba_acpi: Fix USB Sleep and Music always disabled
        wmi: Remove private %pUL implementation
        asus-nb-wmi: Add wapf=4 quirk for X456UA/X456UF

  commit 1d325d217c7f190a42fb620ead20bb240fc16af0
  Author: Florian Westphal <fw@xxxxxxxxx>
  Date:   Wed Sep 16 17:26:14 2015 +0200

      ipv6: ip6_fragment: fix headroom tests and skb leak

      David Woodhouse reports skb_under_panic when we try to push ethernet
      header to fragmented ipv6 skbs:

       skbuff: skb_under_panic: text:c1277f1e len:1294 put:14 head:dec98000
       data:dec97ffc tail:0xdec9850a end:0xdec98f40 dev:br-lan
      [..]
      ip6_finish_output2+0x196/0x4da

      David further debugged this:
        [..] offending fragments were arriving here with skb_headroom(skb)==10.
        Which is reasonable, being the Solos ADSL card's header of 8 bytes
        followed by 2 bytes of PPP frame type.

      The problem is that if netfilter ipv6 defragmentation is used, skb_cow()
      in ip6_forward will only see reassembled skb.

      Therefore, headroom is overestimated by 8 bytes (we pulled fragment
      header) and we don't check the skbs in the frag_list either.

      We can't do these checks in netfilter defrag since outdev isn't known yet.

      Furthermore, existing tests in ip6_fragment did not consider the fragment
      or ipv6 header size when checking headroom of the fraglist skbs.

      While at it, also fix a skb leak on memory allocation -- ip6_fragment
      must consume the skb.

      I tested this e1000 driver hacked to not allocate additional headroom
      (we end up in slowpath, since LL_RESERVED_SPACE is 16).

      If 2 bytes of headroom are allocated, fastpath is taken (14 byte
      ethernet header was pulled, so 16 byte headroom available in all
      fragments).

      Reported-by: David Woodhouse <dwmw2@xxxxxxxxxxxxx>
      Diagnosed-by: David Woodhouse <dwmw2@xxxxxxxxxxxxx>
      Signed-off-by: Florian Westphal <fw@xxxxxxxxx>
      Tested-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ce816eb064c82ab96276969971a561db78e66164
  Author: David Woodhouse <dwmw2@xxxxxxxxxxxxx>
  Date:   Wed Sep 16 12:35:00 2015 +0100

      solos-pci: Increase headroom on received packets

      A comment in include/linux/skbuff.h says that:

       * Various parts of the networking layer expect at least 32 bytes of
       * headroom, you should not reduce this.

      This was demonstrated by a panic when handling fragmented IPv6 packets:
      http://marc.info/?l=linux-netdev&m=144236093519172&w=2

      It's not entirely clear if that comment is still valid â?? and if it is,
      perhaps netif_rx() ought to be enforcing it with a warning.

      But either way, it is rather stupid from a performance point of view
      for us to be receiving packets into a buffer which doesn't have enough
      room to prepend an Ethernet header â?? it means that *every* incoming
      packet is going to be need to be reallocated. So let's fix that.

      Signed-off-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Acked-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 88c796640eac36209efabe5e42b7b47dee58603e
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 16 11:11:22 2015 +0200

      net: ks8851: Export OF module alias information

      Drivers needs to export the OF id table and this be built into
      the module or udev won't have the necessary information to autoload
      the driver module when the device is registered via OF.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a8f155855842f04273666192d3767fa9b94aaa58
  Merge: 8e64a73 28c553d
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 21:16:47 2015 -0700

      Merge branch 'akpm' (patches from Andrew)

      Merge misc fixes from ANdrew Morton:
       "8 fixes"

      * emailed patches from Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>:
        revert "mm: make sure all file VMAs have ->vm_ops set"
        MAINTAINERS: update LTP mailing list
        userfaultfd: add missing mmput() in error path
        lib/string_helpers.c: fix infinite loop in string_get_size()
        alpha: lib: export __delay
        alpha: io: define ioremap_uc
        kasan: fix last shadow judgement in memory_is_poisoned_16()
        zram: fix possible use after free in zcomp_create()

  commit 28c553d0aa0acf02e18f9e008661491a4b996595
  Author: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 16:02:00 2015 -0700

      revert "mm: make sure all file VMAs have ->vm_ops set"

      Revert commit 6dc296e7df4c "mm: make sure all file VMAs have ->vm_ops
      set".

      Will Deacon reports that it "causes some mmap regressions in LTP, which
      appears to use a MAP_PRIVATE mmap of /dev/zero as a way to get anonymous
      pages in some of its tests (specifically mmap10 [1])".

      William Shuman reports Oracle crashes.

      So revert the patch while we work out what to do.

      Reported-by: William Shuman <wshuman3@xxxxxxxxx>
      Reported-by: Will Deacon <will.deacon@xxxxxxx>
      Cc: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Oleg Nesterov <oleg@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 0526109a24eb07984f9e79852767300c8b8144de
  Author: Cyril Hrubis <chrubis@xxxxxxx>
  Date:   Thu Sep 17 16:01:57 2015 -0700

      MAINTAINERS: update LTP mailing list

      [akpm@xxxxxxxxxxxxxxxxxxxx: Wanlong Gao has moved]
      Signed-off-by: Cyril Hrubis <chrubis@xxxxxxx>
      Cc: Jan Stancek <jstancek@xxxxxxxxxx>
      Cc: Stanislav Kholmanskikh <stanislav.kholmanskikh@xxxxxxxxxx>
      Cc: Alexey Kodanev <alexey.kodanev@xxxxxxxxxx>
      Cc: Wanlong Gao <wanlong.gao@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c03e946fdd653c4a23e242aca83da7e9838f5b00
  Author: Eric Biggers <ebiggers3@xxxxxxxxx>
  Date:   Thu Sep 17 16:01:54 2015 -0700

      userfaultfd: add missing mmput() in error path

      This fixes a memleak if anon_inode_getfile() fails in userfaultfd().

      Signed-off-by: Eric Biggers <ebiggers3@xxxxxxxxx>
      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 62bef58a55dfa8ada2a22b2496c6340468ecd98a
  Author: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>
  Date:   Thu Sep 17 16:01:51 2015 -0700

      lib/string_helpers.c: fix infinite loop in string_get_size()

      Some string_get_size() calls (e.g.:
       string_get_size(1, 512, STRING_UNITS_10, ..., ...)
       string_get_size(15, 64, STRING_UNITS_10, ..., ...)
      ) result in an infinite loop. The problem is that if size is equal to
      divisor[units]/blk_size and is smaller than divisor[units] we'll end
      up with size == 0 when we start doing sf_cap calculations:

      For string_get_size(1, 512, STRING_UNITS_10, ..., ...) case:
         ...
         remainder = do_div(size, divisor[units]); -> size is 0, remainder is 1
         remainder *= blk_size; -> remainder is 512
         ...
         size *= blk_size; -> size is still 0
         size += remainder / divisor[units]; -> size is still 0

      The caller causing the issue is sd_read_capacity(), the problem was
      noticed on Hyper-V, such weird size was reported by host when scanning
      collides with device removal.  This is probably a separate issue worth
      fixing, this patch is intended to prevent the library routine from
      infinite looping.

      Signed-off-by: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>
      Acked-by: James Bottomley <JBottomley@xxxxxxxx>
      Cc: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Cc: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
      Cc: "K. Y. Srinivasan" <kys@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 14b97deddf8ddecce9f35165b667c55c73e14638
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Thu Sep 17 16:01:49 2015 -0700

      alpha: lib: export __delay

      __delay was not exported as a result while building with allmodconfig we
      were getting build error of undefined symbol.  __delay is being used by:
      drivers/net/phy/mdio-octeon.c

      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Cc: Richard Henderson <rth@xxxxxxxxxxx>
      Cc: Ivan Kokshaysky <ink@xxxxxxxxxxxxxxxxxxxx>
      Cc: Matt Turner <mattst88@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 969560d2afca76823cf97ec4f5c0fb7833e18553
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Thu Sep 17 16:01:46 2015 -0700

      alpha: io: define ioremap_uc

      ioremap_uc was not defined and as a result while building with
      allmodconfig were getting build error of: implicit declaration of
      function 'ioremap_uc'.

      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Cc: Richard Henderson <rth@xxxxxxxxxxx>
      Cc: Ivan Kokshaysky <ink@xxxxxxxxxxxxxxxxxxxx>
      Cc: Matt Turner <mattst88@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 8d77a6d18ae9ccfd5eee1cc551ee4ac27fd41464
  Author: Xishi Qiu <qiuxishi@xxxxxxxxxx>
  Date:   Thu Sep 17 16:01:43 2015 -0700

      kasan: fix last shadow judgement in memory_is_poisoned_16()

      The shadow which correspond 16 bytes memory may span 2 or 3 bytes.  If
      the memory is aligned on 8, then the shadow takes only 2 bytes.  So we
      check "shadow_first_bytes" is enough, and need not to call
      "memory_is_poisoned_1(addr + 15);".  But the code "if
      (likely(!last_byte))" is wrong judgement.

      e.g.  addr=0, so last_byte = 15 & KASAN_SHADOW_MASK = 7, then the code
      will continue to call "memory_is_poisoned_1(addr + 15);"

      Signed-off-by: Xishi Qiu <qiuxishi@xxxxxxxxxx>
      Acked-by: Andrey Ryabinin <aryabinin@xxxxxxxxxxxxx>
      Cc: Andrey Konovalov <adech.fo@xxxxxxxxx>
      Cc: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
      Cc: Michal Marek <mmarek@xxxxxxx>
      Cc: <zhongjiang@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3aaf14da807a4e9931a37f21e4251abb8a67021b
  Author: Luis Henriques <luis.henriques@xxxxxxxxxxxxx>
  Date:   Thu Sep 17 16:01:40 2015 -0700

      zram: fix possible use after free in zcomp_create()

      zcomp_create() verifies the success of zcomp_strm_{multi,single}_create()
      through comp->stream, which can potentially be pointing to memory that
      was freed if these functions returned an error.

      While at it, replace a 'ERR_PTR(-ENOMEM)' by a more generic
      'ERR_PTR(error)' as in the future zcomp_strm_{multi,siggle}_create()
      could return other error codes.  Function documentation updated
      accordingly.

      Fixes: beca3ec71fe5 ("zram: add multi stream functionality")
      Signed-off-by: Luis Henriques <luis.henriques@xxxxxxxxxxxxx>
      Acked-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Acked-by: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 4671fc6d47e0a0108fe24a4d830347d6a6ef4aa7
  Author: Eric Dumazet <edumazet@xxxxxxxxxx>
  Date:   Tue Sep 15 18:29:47 2015 -0700

      net/mlx4_en: really allow to change RSS key

      When changing rss key, we do not want to overwrite user provided key
      by the one provided by netdev_rss_key_fill(), which is the host random
      key generated at boot time.

      Fixes: 947cbb0ac242 ("net/mlx4_en: Support for configurable RSS hash 
function")
      Signed-off-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Cc: Eyal Perry <eyalpe@xxxxxxxxxxxx>
      CC: Amir Vadai <amirv@xxxxxxxxxxxx>
      Acked-by: Or Gerlitz <ogerlitz@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8a1513b49321e503fd6c8b6793e3b1f9a8a3285b
  Author: Kyle Evans <kvans32@xxxxxxxxx>
  Date:   Fri Sep 11 10:40:17 2015 -0500

      hp-wmi: limit hotkey enable

      Do not write initialize magic on systems that do not have
      feature query 0xb. Fixes Bug #82451.

      Redefine FEATURE_QUERY to align with 0xb and FEATURE2 with 0xd
      for code clearity.

      Add a new test function, hp_wmi_bios_2008_later() & simplify
      hp_wmi_bios_2009_later(), which fixes a bug in cases where
      an improper value is returned. Probably also fixes Bug #69131.

      Add missing __init tag.

      Signed-off-by: Kyle Evans <kvans32@xxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Darren Hart <dvhart@xxxxxxxxxxxxxxx>

  commit 58189ca7b27411c3dc9a5cb9eeee0906da684c59
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 15 15:10:50 2015 -0700

      net: Fix vti use case with oif in dst lookups

      Steffen reported that the recent change to add oif to dst lookups breaks
      the VTI use case. The problem is that with the oif set in the flow struct
      the comparison to the nh_oif is triggered. Fix by splitting the
      FLOWI_FLAG_VRFSRC into 2 flags -- one that triggers the vrf device cache
      bypass (FLOWI_FLAG_VRFSRC) and another telling the lookup to not compare
      nh oif (FLOWI_FLAG_SKIP_NH_OIF).

      Fixes: 42a7b32b73d6 ("xfrm: Add oif to dst lookups")

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Steffen Klassert <steffen.klassert@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d828755eae637c6ca39e30702e98abaf34cac146
  Author: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
  Date:   Tue Sep 15 17:20:09 2015 +0530

      cxgb4: add device ID for few T5 adapters

      Signed-off-by: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2e64126bb0fb581b55e52e51ec451ebb0d6769c8
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Sep 15 10:33:07 2015 +0200

      net: qdisc: enhance default_qdisc documentation

      Aside from some lingual cleanup, point out which interfaces are not or
      partly covered by this setting.

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Acked-by: Cong Wang <cwang@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 562d897d15a6e2bab3cc9b4c172286b612834fe8
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 15 10:50:14 2015 -0600

      net: Add documentation for VRF device

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit cc5706056baa3002b844ff240a1cc2199a978795
  Author: Joe Stringer <joestringer@xxxxxxxxxx>
  Date:   Mon Sep 14 11:14:50 2015 -0700

      openvswitch: Fix IPv6 exthdr handling with ct helpers.

      Static code analysis reveals the following bug:

              net/openvswitch/conntrack.c:281 ovs_ct_helper()
              warn: unsigned 'protoff' is never less than zero.

      This signedness bug breaks error handling for IPv6 extension headers when
      using conntrack helpers. Fix the error by using a local signed variable.

      Fixes:  cae3a2627520: "openvswitch: Allow attaching helpers to ct
      action"
      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Joe Stringer <joestringer@xxxxxxxxxx>
      Acked-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3ec0c97959abff33a42db9081c22132bcff5b4f2
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Mon Sep 14 20:12:21 2015 +0800

      nfs/filelayout: Fix NULL reference caused by double freeing of fh_array

      If filelayout_decode_layout fail, _filelayout_free_lseg will causes
      a double freeing of fh_array.

      [ 1179.279800] BUG: unable to handle kernel NULL pointer dereference at   
        (null)
      [ 1179.280198] IP: [<ffffffffa027222d>] 
filelayout_free_fh_array.isra.11+0x1d/0x70 [nfs_layout_nfsv41_files]
      [ 1179.281010] PGD 0
      [ 1179.281443] Oops: 0000 [#1]
      [ 1179.281831] Modules linked in: nfs_layout_nfsv41_files(OE) nfsv4(OE) 
nfs(OE) fscache(E) xfs libcrc32c coretemp nfsd crct10dif_pclmul ppdev 
crc32_pclmul crc32c_intel auth_rpcgss ghash_clmulni_intel nfs_acl lockd 
vmw_balloon grace sunrpc parport_pc vmw_vmci parport shpchp i2c_piix4 vmwgfx 
drm_kms_helper ttm drm serio_raw mptspi scsi_transport_spi mptscsih e1000 
mptbase ata_generic pata_acpi [last unloaded: fscache]
      [ 1179.283891] CPU: 0 PID: 13336 Comm: cat Tainted: G           OE   
4.3.0-rc1-pnfs+ #244
      [ 1179.284323] Hardware name: VMware, Inc. VMware Virtual Platform/440BX 
Desktop Reference Platform, BIOS 6.00 05/20/2014
      [ 1179.285206] task: ffff8800501d48c0 ti: ffff88003e3c4000 task.ti: 
ffff88003e3c4000
      [ 1179.285668] RIP: 0010:[<ffffffffa027222d>]  [<ffffffffa027222d>] 
filelayout_free_fh_array.isra.11+0x1d/0x70 [nfs_layout_nfsv41_files]
      [ 1179.286612] RSP: 0018:ffff88003e3c77f8  EFLAGS: 00010202
      [ 1179.287092] RAX: 0000000000000000 RBX: ffff88001fe78900 RCX: 
0000000000000000
      [ 1179.287731] RDX: ffffea0000f40760 RSI: ffff88001fe789c8 RDI: 
ffff88001fe789c0
      [ 1179.288383] RBP: ffff88003e3c7810 R08: ffffea0000f40760 R09: 
0000000000000000
      [ 1179.289170] R10: 0000000000000000 R11: 0000000000000001 R12: 
ffff88001fe789c8
      [ 1179.289959] R13: ffff88001fe789c0 R14: ffff88004ec05a80 R15: 
ffff88004f935b88
      [ 1179.290791] FS:  00007f4e66bb5700(0000) GS:ffffffff81c29000(0000) 
knlGS:0000000000000000
      [ 1179.291580] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [ 1179.292209] CR2: 0000000000000000 CR3: 00000000203f8000 CR4: 
00000000001406f0
      [ 1179.292731] Stack:
      [ 1179.293195]  ffff88001fe78900 00000000000000d0 ffff88001fe78178 
ffff88003e3c7868
      [ 1179.293676]  ffffffffa0272737 0000000000000001 0000000000000001 
ffff88001fe78800
      [ 1179.294151]  00000000614fffce ffffffff81727671 ffff88001fe78100 
ffff88001fe78100
      [ 1179.294623] Call Trace:
      [ 1179.295092]  [<ffffffffa0272737>] filelayout_alloc_lseg+0xa7/0x2d0 
[nfs_layout_nfsv41_files]
      [ 1179.295625]  [<ffffffff81727671>] ? out_of_line_wait_on_bit+0x81/0xb0
      [ 1179.296133]  [<ffffffffa040407e>] pnfs_layout_process+0xae/0x320 
[nfsv4]
      [ 1179.296632]  [<ffffffffa03e0a01>] nfs4_proc_layoutget+0x2b1/0x360 
[nfsv4]
      [ 1179.297134]  [<ffffffffa0402983>] pnfs_update_layout+0x853/0xb30 
[nfsv4]
      [ 1179.297632]  [<ffffffffa039db24>] ? nfs_get_lock_context+0x74/0x170 
[nfs]
      [ 1179.298158]  [<ffffffffa0271807>] filelayout_pg_init_read+0x37/0x50 
[nfs_layout_nfsv41_files]
      [ 1179.298834]  [<ffffffffa03a72d9>] __nfs_pageio_add_request+0x119/0x460 
[nfs]
      [ 1179.299385]  [<ffffffffa03a6bd7>] ? 
nfs_create_request.part.9+0x37/0x2e0 [nfs]
      [ 1179.299872]  [<ffffffffa03a7cc3>] nfs_pageio_add_request+0xa3/0x1b0 
[nfs]
      [ 1179.300362]  [<ffffffffa03a8635>] readpage_async_filler+0x85/0x260 
[nfs]
      [ 1179.300907]  [<ffffffff81180cb1>] read_cache_pages+0x91/0xd0
      [ 1179.301391]  [<ffffffffa03a85b0>] ? nfs_read_completion+0x220/0x220 
[nfs]
      [ 1179.301867]  [<ffffffffa03a8dc8>] nfs_readpages+0x128/0x200 [nfs]
      [ 1179.302330]  [<ffffffff81180ef3>] __do_page_cache_readahead+0x203/0x280
      [ 1179.302784]  [<ffffffff81180dc8>] ? 
__do_page_cache_readahead+0xd8/0x280
      [ 1179.303413]  [<ffffffff81181116>] ondemand_readahead+0x1a6/0x2f0
      [ 1179.303855]  [<ffffffff81181371>] page_cache_sync_readahead+0x31/0x50
      [ 1179.304286]  [<ffffffff811750a6>] generic_file_read_iter+0x4a6/0x5c0
      [ 1179.304711]  [<ffffffffa03a0316>] ? 
__nfs_revalidate_mapping+0x1f6/0x240 [nfs]
      [ 1179.305132]  [<ffffffffa039ccf2>] nfs_file_read+0x52/0xa0 [nfs]
      [ 1179.305540]  [<ffffffff811e343c>] __vfs_read+0xcc/0x100
      [ 1179.305936]  [<ffffffff811e3d15>] vfs_read+0x85/0x130
      [ 1179.306326]  [<ffffffff811e4a98>] SyS_read+0x58/0xd0
      [ 1179.306708]  [<ffffffff8172caaf>] entry_SYSCALL_64_fastpath+0x12/0x76
      [ 1179.307094] Code: c4 66 66 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 
00 00 55 48 89 e5 41 55 41 54 53 8b 07 49 89 f4 85 c0 74 47 48 8b 06 49 89 fd 
<48> 8b 38 48 85 ff 74 22 31 db eb 0c 48 63 d3 48 8b 3c d0 48 85
      [ 1179.308357] RIP  [<ffffffffa027222d>] 
filelayout_free_fh_array.isra.11+0x1d/0x70 [nfs_layout_nfsv41_files]
      [ 1179.309177]  RSP <ffff88003e3c77f8>
      [ 1179.309582] CR2: 0000000000000000

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 0fdea1e8a2853f79d39b8555cc9de16a7e0ab26f
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 16 23:43:17 2015 -0400

      SUNRPC: Ensure that we wait for connections to complete before retrying

      Commit 718ba5b87343, moved the responsibility for unlocking the socket to
      xs_tcp_setup_socket, meaning that the socket will be unlocked before we
      know that it has finished trying to connect. The following patch is based 
on
      an initial patch by Russell King to ensure that we delay clearing the
      XPRT_CONNECTING flag until we either know that we failed to initiate
      a connection attempt, or the connection attempt itself failed.

      Fixes: 718ba5b87343 ("SUNRPC: Add helpers to prevent socket create from 
racing")
      Reported-by: Russell King <linux@xxxxxxxxxxxxxxxx>
      Reported-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Tested-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Tested-by: Benjamin Coddington <bcodding@xxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 37a1d3611c126fd9782ce5235791f898f053e763
  Author: Roopa Prabhu <roopa@xxxxxxxxxxxxxxxxxxx>
  Date:   Sun Sep 13 10:18:33 2015 -0700

      ipv6: include NLM_F_REPLACE in route replace notifications

      This patch adds NLM_F_REPLACE flag to ipv6 route replace notifications.
      This makes nlm_flags in ipv6 replace notifications consistent
      with ipv4.

      Signed-off-by: Roopa Prabhu <roopa@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Nicolas Dichtel <nicolas.dichtel@xxxxxxxxx>
      Reviewed-by: Michal Kubecek <mkubecek@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 74c600e36455af85c593702670f38709ca1951ce
  Author: Martyn Welch <martyn@xxxxxxxxxxxx>
  Date:   Thu Sep 17 20:38:47 2015 +0100

      MAINTAINERS: Update email address for Martyn Welch

      I have recently left GE and the email address listed for me in the
      maintainers file is no longer valid. Updating email address.

      Signed-off-by: Martyn Welch <martyn@xxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 17a9618e984234fda167ea5e07eae6f4f2ea2186
  Author: Julia Lawall <Julia.Lawall@xxxxxxx>
  Date:   Sun Sep 13 14:15:07 2015 +0200

      SUNRPC: drop null test before destroy functions

      Remove unneeded NULL test.

      The semantic patch that makes this change is as follows:
      (http://coccinelle.lip6.fr/)

      // <smpl>
      @@ expression x; @@
      -if (x != NULL)
        \(kmem_cache_destroy\|mempool_destroy\|dma_pool_destroy\)(x);
      // </smpl>

      Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 306a5549355966e480e0dcacdc6b9321d153e0c0
  Author: J. Bruce Fields <bfields@xxxxxxxxxx>
  Date:   Wed Sep 16 17:21:27 2015 -0400

      nfs: fix v4.2 SEEK on files over 2 gigs

      We're incorrectly assigning a loff_t return to an int.  If SEEK_HOLE or
      SEEK_DATA returns an offset over 2^31 then the application will see a
      weird lseek() result (usually -EIO).

      Cc: stable@xxxxxxxxxxxxxxx
      Fixes: bdcc2cd14e4e "NFSv4.2: handle NFS-specific llseek errors"
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>
      Reviewed-by: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 03c78827db35be20ffa71cb5ccd2cedb192f95d6
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 10:42:27 2015 -0400

      SUNRPC: Fix races between socket connection and destroy code

      When we're destroying the socket transport, we need to ensure that
      we cancel any existing delayed connection attempts, and order them
      w.r.t. the call to xs_close().

      Reported-by:"Suzuki K. Poulose" <suzuki.poulose@xxxxxxx>
      Acked-by: Jeff Layton <jlayton@xxxxxxxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 048883e0b934d9a5103d40e209cb14b7f33d2933
  Author: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 11:14:06 2015 +0800

      nfs: fix pg_test page count calculation

      We really want sizeof(struct page *) instead. Otherwise we limit
      maximum IO size to 64 pages rather than 512 pages on a 64bit system.

      Fixes 2e11f829(nfs: cap request size to fit a kmalloced page array).

      Cc: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
      Fixes: 2e11f8296d22 ("nfs: cap request size to fit a kmalloced page 
array")
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit a41cbe86df3afbc82311a1640e20858c0cd7e065
  Author: Olga Kornievskaia <aglo@xxxxxxxxx>
  Date:   Mon Sep 14 19:54:36 2015 -0400

      Failing to send a CLOSE if file is opened WRONLY and server reboots on a 
4.x mount

      A test case is as the description says:
      open(foobar, O_WRONLY);
      sleep()  --> reboot the server
      close(foobar)

      The bug is because in nfs4state.c in nfs4_reclaim_open_state() a few
      line before going to restart, there is
      clear_bit(NFS4CLNT_RECLAIM_NOGRACE, &state->flags).

      NFS4CLNT_RECLAIM_NOGRACE is a flag for the client states not open
      owner states. Value of NFS4CLNT_RECLAIM_NOGRACE is 4 which is the
      value of NFS_O_WRONLY_STATE in nfs4_state->flags. So clearing it wipes
      out state and when we go to close it, â??call_closeâ?? doesnâ??t get set 
as
      state flag is not set and CLOSE doesnâ??t go on the wire.

      Signed-off-by: Olga Kornievskaia <aglo@xxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit c8aa33a7114704f3f5a359893a8e1de9ea2940a5
  Author: David Daney <david.daney@xxxxxxxxxx>
  Date:   Wed Sep 9 15:57:59 2015 -0700

      of_pci_irq: Silence bogus "of_irq_parse_pci() failed ..." messages.

      It is perfectly legitimate for a PCI device to have an
      PCI_INTERRUPT_PIN value of zero.  This happens if the device doesn't
      use interrupts, or on PCIe devices, where only MSI/MSI-X are
      supported.

      Silence the annoying "of_irq_parse_pci() failed with rc=-19" error
      messages by moving the printing code into of_irq_parse_pci(), and only
      emitting the message for cases where PCI_INTERRUPT_PIN == 0 is not the
      cause for an early exit.

      Signed-off-by: David Daney <david.daney@xxxxxxxxxx>
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit 31b47ae3f18b31d86f553198e624b3b38f6397a2
  Author: Hans de Goede <hdegoede@xxxxxxxxxx>
  Date:   Sat Sep 12 12:52:49 2015 +0200

      devicetree: bindings: Extend the bma180 bindings with bma250 info

      The bma180 / bma250 accelerometers share a driver (at least under Linux),
      so it makes sense to also have their bindings info in a single .txt.

      This commit extends the bma180 bindings with bma250 bindings, specifically
      it specifies how the 2 seperate interrupts the bma250 has must be listed
      in devicetree. The existing bma180 driver is already fully compatible
      with the specified bindings.

      Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit 9fa04fbeb78eab6f3817e444644348c46c7e2370
  Author: Punit Agrawal <punit.agrawal@xxxxxxx>
  Date:   Tue Sep 8 12:20:49 2015 +0100

      of: thermal: Mark cooling-*-level properties optional

      The cooling-{min,max}-level properties are marked as optional in
      Documentation/devicetree/bindings/cpufreq/cpufreq-dt.txt and the usage
      in various device tree matches this, i.e., some cooling device in the
      device trees provide these properties while others do not.

      Make the bindings in
      Documentation/devicetree/bindings/thermal/thermal.txt consistent with
      the cpufreq-dt bindings by marking the cooling-*-level properties as
      optional.

      Signed-off-by: Punit Agrawal <punit.agrawal@xxxxxxx>
      Cc: Eduardo Valentin <edubezval@xxxxxxxxx>
      Cc: Rob Herring <robh+dt@xxxxxxxxxx>
      Cc: Mark Rutland <mark.rutland@xxxxxxx>
      Cc: Ian Campbell <ijc+devicetree@xxxxxxxxxxxxxx>
      Cc: Kumar Gala <galak@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit eb168b70dea54578a45119fcdb3b48ad5d75fed9
  Author: Punit Agrawal <punit.agrawal@xxxxxxx>
  Date:   Tue Sep 8 12:20:48 2015 +0100

      of: thermal: Fix inconsitency between cooling-*-state and cooling-*-level

      The device trees in the kernel as well as the binding description in
      Documentation/devicetree/bindings/cpufreq/cpufreq-dt.txt use the
      cooling-{min,max}-level property.

      Fix the inconsistency with the binding description in
      Documentation/devicetree/bindings/thermal/thermal.txt by changing
      cooling-*-state properties to cooling-*-level.

      Signed-off-by: Punit Agrawal <punit.agrawal@xxxxxxx>
      Cc: Eduardo Valentin <edubezval@xxxxxxxxx>
      Cc: Rob Herring <robh+dt@xxxxxxxxxx>
      Cc: Mark Rutland <mark.rutland@xxxxxxx>
      Cc: Ian Campbell <ijc+devicetree@xxxxxxxxxxxxxx>
      Cc: Kumar Gala <galak@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit dc4dae00d82fedcd7a632f786f9f76c1f7f929a5
  Author: Mark Rutland <mark.rutland@xxxxxxx>
  Date:   Mon Sep 7 10:49:03 2015 +0100

      Docs: dt: add #msi-cells to GICv3 ITS binding

      The GICv3 ITS uses sideband master identification data (known as a
      DeviceID) to identify which master wrote to a doorbell, and this data is
      used to determine how to react in response to the write.

      Commit 1e6db000482fa65a ("irqchip/gicv3-its: Add platform MSI support")
      added support per this binding, but failed to update the documentation.
      This patch fixes the documentation.

      Signed-off-by: Mark Rutland <mark.rutland@xxxxxxx>
      Acked-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: Rob Herring <robh+dt@xxxxxxxxxx>
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit 8e64a7331702b7888ccf84b2b9ff46ab8e167c7f
  Merge: 2e5735f 335c258
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 12:32:40 2015 -0700

      Merge branch 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client

      Pull Ceph fixes from Sage Weil:
       "These are both fixes to the new and improved keepalive2 behavior"

      * 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:
        libceph: advertise support for keepalive2
        libceph: don't access invalid memory in keepalive2 path

  commit 2e5735f4c377377cb738270024083f74ee058877
  Merge: d109c4b e11fc21
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 12:25:42 2015 -0700

      Merge tag 'for-v4.3-rc' of 
git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply

      Pull power supply fixes from Sebastian Reichel:
       "twl4030-charger fixes"

      * tag 'for-v4.3-rc' of 
git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply:
        twl4030_charger: fix another compile error
        Revert "twl4030_charger: correctly handle -EPROBE_DEFER from 
devm_usb_get_phy_by_node"

  commit d7ba2a024cf19261b34825f89d30ceef9a5ff864
  Author: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
  Date:   Wed Jul 29 18:45:33 2015 +0900

      of: add vendor prefix for Socionext Inc.

      Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit d34e210ed3a28050441f15228fd5ed929028d9cd
  Author: Gabriel Fernandez <gabriel.fernandez@xxxxxxxxxx>
  Date:   Wed Sep 16 09:42:59 2015 +0200

      drivers: clk: st: Rename st_pll3200c32_407_c0_x into st_pll3200c32_cx_x

      Use a generic name for this kind of PLL

      Correction in dts files are already done here:
      commit 5eb26c605909 ("ARM: STi: DT: Rename st_pll3200c32_407_c0_x into 
st_pll3200c32_cx_x")

      Signed-off-by: Gabriel Fernandez <gabriel.fernandez@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit bf6445631c6f00882b25516a174d5073ce0c6f81
  Author: Peter Senna Tschudin <peter.senna@xxxxxxxxx>
  Date:   Thu Sep 17 12:08:53 2015 +0200

      perf tools: Bool functions shouldn't return -1

      Returning a negative value for a boolean function seem to have the
      undesired effect of returning true. Replace -1 by false in a
      bool-returning function.

      The diff of the .s file before and after the change (for x86_64):

        3907c3907
        <       movl    $1, %ebx
        ---
        >       xorl    %ebx, %ebx

      while if -1 is replaced by true, the diff is empty.

      This issue was found by the following Coccinelle semantic patch:

        <smpl>
        @@
        identifier f;
        constant C;
        typedef bool;
        @@
        bool f (...){
        <+...
        * return -C;
        ...+>
        }
        </smpl>

      Signed-off-by: Peter Senna Tschudin <peter.senna@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Cc: Matt Fleming <matt.fleming@xxxxxxxxx>
      Cc: Milos Vyletel <milos@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1442484533-19742-1-git-send-email-peter.senna@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit d109c4bb4513b8a63d56117f683901492093bfa9
  Merge: 42dc2a3 df057cc
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 11:28:17 2015 -0700

      Merge tag 'arm64-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux

      Pull arm64 fixes from Will Deacon:
       "This addresses some problems with filesystem writeback due to the
        recently merged hardware DBM patches, which caused us to treat some
        read-only pages as dirty.

        There are also some other, less significant fixes that are described
        in the summary below:

        A mixture of fixes for regressions introduced during the merge window,
        some longer standing problems that we spotted and a couple of hardware
        errata.  The main changes are:

         - Fix fallout from the h/w DBM patches, causing filesystem writeback
           issues on both v8 and v8.1 CPUs

         - Workaround for Cortex-A53 erratum #843419 in the module loader

         - Fix for long-standing issue with compat big-endian signal handlers
           using the saved floating point state"

      * tag 'arm64-fixes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: errata: add module build workaround for erratum #843419
        arm64: compat: fix vfp save/restore across signal handlers in big-endian
        arm64: cpu hotplug: ensure we mask out CPU_TASKS_FROZEN in notifiers
        arm64: head.S: initialise mdcr_el2 in el2_setup
        arm64: enable generic idle loop
        arm64: pgtable: use a single bit for PTE_WRITE regardless of DBM
        arm64: Fix pte_modify() to preserve the hardware dirty information
        arm64: Fix the pte_hw_dirty() check when AF/DBM is enabled
        arm64: dma-mapping: check whether cma area is initialized or not

  commit 42dc2a3048247109b0a5ee6345226cbd3e4f6410
  Merge: 1345df2 03da3ff
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 11:01:34 2015 -0700

      Merge branch 'x86-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull x86 fixes from Ingo Molnar:
       - misc fixes all around the map
       - block non-root vm86(old) if mmap_min_addr != 0
       - two small debuggability improvements
       - removal of obsolete paravirt op

      * 'x86-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/platform: Fix Geode LX timekeeping in the generic x86 build
        x86/apic: Serialize LVTT and TSC_DEADLINE writes
        x86/ioapic: Force affinity setting in setup_ioapic_dest()
        x86/paravirt: Remove the unused pv_time_ops::get_tsc_khz method
        x86/ldt: Fix small LDT allocation for Xen
        x86/vm86: Fix the misleading CONFIG_VM86 Kconfig help text
        x86/cpu: Print family/model/stepping in hex
        x86/vm86: Block non-root vm86(old) if mmap_min_addr != 0
        x86/alternatives: Make optimize_nops() interrupt safe and synced
        x86/mm/srat: Print non-volatile flag in SRAT
        x86/cpufeatures: Enable cpuid for Intel SHA extensions

  commit 1345df21ac542daa9d8613f89a3f0b5f32d636f8
  Merge: c2ea72f eef7635
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 10:55:25 2015 -0700

      Merge branch 'timers-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull timer fixes from Ingo Molnar:
       "A fix for an abs()/abs64() bug that caused too slow NTP convergence on
        32-bit kernels, plus a removal of an obsolete clockevents driver
        facility after all users got converted during the merge window"

      * 'timers-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        clockevents: Remove unused set_mode() callback
        time: Fix timekeeping_freqadjust()'s incorrect use of abs() instead of 
abs64()

  commit c2ea72fd869145130969d6b07273c479cf2a22f5
  Merge: a706797 5473e0c
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 10:49:42 2015 -0700

      Merge branch 'sched-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull scheduler fixes from Ingo Molnar:
       "A migrate_tasks() locking fix, and a late-coming nohz change plus a
        nohz debug check"

      * 'sched-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched: 'Annotate' migrate_tasks()
        nohz: Assert existing housekeepers when nohz full enabled
        nohz: Affine unpinned timers to housekeepers

  commit 23c3f310e897837aeb8ffe8700b803cb58e7b35d
  Author: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 14:50:20 2015 +0100

      regulator: core: Correct return value check in regulator_resolve_supply

      The ret pointer passed to regulator_dev_lookup is only filled with a
      valid error code if regulator_dev_lookup returned NULL. Currently
      regulator_resolve_supply checks this ret value before it checks if a
      regulator was returned, this can result in valid regulator lookups being
      ignored.

      Fixes: 6261b06de565 ("regulator: Defer lookup of supply to regulator_get")
      Signed-off-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit a706797febf4ff60ad61f855a01707be9fc3cf4c
  Merge: 9786cff f6cf87f
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 10:37:46 2015 -0700

      Merge branch 'perf-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull perf fixes from Ingo MOlnar:
       "Mostly tooling fixes, but also two x86 PMU driver fixes"

      * 'perf-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf tests: Fix software clock events test setting maps
        perf tests: Fix task exit test setting maps
        perf evlist: Fix create_syswide_maps() not propagating maps
        perf evlist: Fix add() not propagating maps
        perf evlist: Factor out a function to propagate maps for a single evsel
        perf evlist: Make create_maps() use set_maps()
        perf evlist: Make set_maps() more resilient
        perf evsel: Add own_cpus member
        perf evlist: Fix missing thread_map__put in propagate_maps()
        perf evlist: Fix splice_list_tail() not setting evlist
        perf evlist: Add has_user_cpus member
        perf evlist: Remove redundant validation from propagate_maps()
        perf evlist: Simplify set_maps() logic
        perf evlist: Simplify propagate_maps() logic
        perf top: Fix segfault pressing -> with no hist entries
        perf header: Fixup reading of HEADER_NRCPUS feature
        perf/x86/intel: Fix constraint access
        perf/x86/intel/bts: Set event->hw.itrace_started in pmu::start to match 
the new logic
        perf tools: Fix use of wrong event when processing exit events
        perf tools: Fix parse_events_add_pmu caller

  commit 335c25858218e76ef47f92ecb9d22e919d36140d
  Author: Ilya Dryomov <idryomov@xxxxxxxxx>
  Date:   Mon Sep 14 12:44:22 2015 +0300

      libceph: advertise support for keepalive2

      We are the client, but advertise keepalive2 anyway - for consistency,
      if nothing else.  In the future the server might want to know whether
      its clients support keepalive2.

      Signed-off-by: Ilya Dryomov <idryomov@xxxxxxxxx>
      Reviewed-by: Yan, Zheng <zyan@xxxxxxxxxx>

  commit 7f61f545657281a3a1b0faf68993165ebdecc51b
  Author: Ilya Dryomov <idryomov@xxxxxxxxx>
  Date:   Mon Sep 14 16:01:05 2015 +0300

      libceph: don't access invalid memory in keepalive2 path

      This

          struct ceph_timespec ceph_ts;
          ...
          con_out_kvec_add(con, sizeof(ceph_ts), &ceph_ts);

      wraps ceph_ts into a kvec and adds it to con->out_kvec array, yet
      ceph_ts becomes invalid on return from prepare_write_keepalive().  As
      a result, we send out bogus keepalive2 stamps.  Fix this by encoding
      into a ceph_timespec member, similar to how acks are read and written.

      Signed-off-by: Ilya Dryomov <idryomov@xxxxxxxxx>
      Reviewed-by: Yan, Zheng <zyan@xxxxxxxxxx>

  commit 74a093918b2296bed7136a7830821d45d3d5cb1a
  Merge: aa1471a 19ab6bc
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 09:39:39 2015 -0700

      Merge tag 'usb-serial-4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/johan/usb-serial into usb-linus

      Johan writes:

      USB-serial fixes for v4.3-rc2

      Just some new ZTE device IDs.

      Signed-off-by: Johan Hovold <johan@xxxxxxxxxx>

  commit b0063dbfb031a7c728ed0d9533257e8329292cf1
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Thu Sep 17 12:54:30 2015 -0300

      tools build: Add test for presence of __get_cpuid() gcc builtin

      The auxtrace code needed by Intel PT uses the __get_cpuid() gcc builtin,
      that is not present in old systems, breaking the build.

      Add a test to check for that builtin and disable AUXTRACE in those
      systems.

        [acme@rhel5 linux]$  make NO_LIBPERL=1 -C tools/perf O=/tmp/build/perf 
install-bin
        make: Entering directory `/home/acme/git/linux/tools/perf'
          BUILD:   Doing 'make -j2' parallel build

        Auto-detecting system features:
        <SNIP>
        ...                          lzma: [ on  ]
        ...                     get_cpuid: [ OFF ]
        <SNIP>
        config/Makefile:630: Your gcc lacks the __get_cpuid() builtin, disables 
support for auxtrace/Intel PT, please install a newer gcc
          MKDIR    /tmp/build/perf/util/
        <SNIP>

      This fixes the build on old systems such as RHEL/CentOS 5.11.

      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: "Naveen N. Rao" <naveen.n.rao@xxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Srikar Dronamraju <srikar@xxxxxxxxxxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Cc: Victor Kamensky <victor.kamensky@xxxxxxxxxx>
      Cc: Vinson Lee <vlee@xxxxxxxxxxxxxxxx>
      Cc: Wang Nan <wangnan0@xxxxxxxxxx>
      Link: http://lkml.kernel.org/n/tip-d4puslul0jltoodzpx9r4sje@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit f8ac8606fd3cd72183de8eec2b151ff05040c70f
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Thu Sep 17 12:20:28 2015 -0300

      tools build: Add test for presence of numa_num_possible_cpus() in libnuma

      The existing numa test checks only if numa.h and numa_available() are
      present, but that can be satisfied with an old libnuma that is not
      enough for the 'perf bench numa' entry, so add a test to check for that:

        [acme@rhel5 linux]$  make NO_AUXTRACE=1 NO_LIBPERL=1 -C tools/perf 
O=/tmp/build/perf install-bin
        make: Entering directory `/home/acme/git/linux/tools/perf'
          BUILD:   Doing 'make -j2' parallel build

        Auto-detecting system features:
        ...                        libelf: [ on  ]
        ...                       libnuma: [ on  ]
        ...        numa_num_possible_cpus: [ OFF ]
        ...                       libperl: [ on  ]

        <SNIP>
        config/Makefile:577: Old numa library found, disables 'perf bench numa 
mem' benchmark, please install numactl-devel/libnuma-devel/libnuma-dev >= 2.0.8
          INSTALL  binaries
        <SNIP>

      This fixes the build on old systems such as RHEL/CentOS 5.11.

      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: "Naveen N. Rao" <naveen.n.rao@xxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Srikar Dronamraju <srikar@xxxxxxxxxxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Cc: Victor Kamensky <victor.kamensky@xxxxxxxxxx>
      Cc: Vinson Lee <vlee@xxxxxxxxxxxxxxxx>
      Cc: Wang Nan <wangnan0@xxxxxxxxxx>
      Link: http://lkml.kernel.org/n/tip-zqriqkezppi2de2iyjin1tnc@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 179f36dde3cec0f9f05a757b68f6a58e4edbcc95
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Thu Sep 17 11:30:20 2015 -0300

      Revert "perf symbols: Fix mismatched declarations for elf_getphdrnum"

      This reverts commit f785f2357673d520a0b7b468973cdd197f336494.

      We have a test to check if elf_getphdrnum() is present, so, if it fails,
      we'll get:

        [acme@rhel5 linux]$ cat 
/tmp/build/perf/feature/test-libelf-getphdrnum.make.output
        cc1: warnings being treated as errors
        test-libelf-getphdrnum.c: In function â??mainâ??:
        test-libelf-getphdrnum.c:7: warning: implicit declaration of function 
â??elf_getphdrnumâ??
        [acme@rhel5 linux]$

      And this block will not be compiled:

        #ifndef HAVE_ELF_GETPHDRNUM_SUPPORT
        static int elf_getphdrnum(Elf *elf, size_t *dst)
        ...
        #endif

      So, if elf_getphdrnum() is being defined somewhere, there is a problem
      with the test that is not detecting that function, go fix it.

      Reported-by: Vinson Lee <vlee@xxxxxxxxxxxxxxxx>
      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: "Naveen N. Rao" <naveen.n.rao@xxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Srikar Dronamraju <srikar@xxxxxxxxxxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Cc: Victor Kamensky <victor.kamensky@xxxxxxxxxx>
      Cc: Wang Nan <wangnan0@xxxxxxxxxx>
      Link: http://lkml.kernel.org/n/tip-qn459fal6acvcvm50i8zxx9k@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 994518799930fc363d47cb7cf0d1abed1790bf16
  Author: Ming Lei <ming.lei@xxxxxxxxxxxxx>
  Date:   Fri Sep 18 00:06:28 2015 +0800

      block: fix bounce_end_io

      When bio bounce is involved, one new bio and its biovecs are
      cloned from the comming bio, which can be one fast-cloned bio
      from upper layer(such as dm).

      So it is obviously wrong to assume the start index of the coming(
      original) bio's io vector is zero, which can be any value between
      0 and (bi_max_vecs - 1), especially in case of bio split.

      This patch fixes Fedora's booting oops on i386, often with the
      following kernel log together:

      > [    9.026738] systemd[1]: Switching root.
      > [    9.036467] systemd-journald[149]: Received SIGTERM from PID 1
      > (systemd).
      > [    9.082262] BUG: Bad page state in process kworker/u5:1  pfn:372ac
      > [    9.083989] page:f3d32ae0 count:0 mapcount:0 mapping:f2252178
      > index:0x16a
      > [    9.085755] flags: 0x40020021(locked|lru|mappedtodisk)
      > [    9.087284] page dumped because: page still charged to cgroup
      > [    9.088772] bad because of flags:
      > [    9.089731] flags: 0x21(locked|lru)
      > [    9.090818] page->mem_cgroup:f2c3e400

      Reported-by: Josh Boyer <jwboyer@xxxxxxxxxxxxxxxxx>
      Tested-by: Adam Williamson <awilliam@xxxxxxxxxx>
      Cc: Ming Lin <mlin@xxxxxxxxxx>
      Cc: Mike Snitzer <snitzer@xxxxxxxxxx>
      Signed-off-by: Ming Lei <ming.lei@xxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 52cc6eead9095e2faf2ec7afc013aa3af1f01ac5
  Author: Ming Lei <ming.lei@xxxxxxxxxxxxx>
  Date:   Thu Sep 17 09:58:38 2015 -0600

      block: blk-merge: fast-clone bio when splitting rw bios

      biovecs has become immutable since v3.13, so it isn't necessary
      to allocate biovecs for the new cloned bios, then we can save
      one extra biovecs allocation/copy, and the allocation is often
      not fixed-length and a bit more expensive.

      For example, if the 'max_sectors_kb' of null blk's queue is set
      as 16(32 sectors) via sysfs just for making more splits, this patch
      can increase throught about ~70% in the sequential read test over
      null_blk(direct io, bs: 1M).

      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: Kent Overstreet <kent.overstreet@xxxxxxxxx>
      Cc: Ming Lin <ming.l@xxxxxxxxxxxxxxx>
      Cc: Dongsu Park <dpark@xxxxxxxxxx>
      Signed-off-by: Ming Lei <ming.lei@xxxxxxxxxxxxx>

      This fixes a performance regression introduced by commit 54efd50bfd,
      and allows us to take full advantage of the fact that we have immutable
      bio_vecs. Hand applied, as it rejected violently with commit
      5014c311baa2.

      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit ba8fe0f85e15d047686caf8a42463b592c63c98c
  Author: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 16 14:52:21 2015 -0600

      pmem: add proper fencing to pmem_rw_page()

      pmem_rw_page() needs to call wmb_pmem() on writes to make sure that the
      newly written data is durable.  This flow was added to pmem_rw_bytes()
      and pmem_make_request() with this commit:

      commit 61031952f4c8 ("arch, x86: pmem api for ensuring durability of
        persistent memory updates")

      ...the pmem_rw_page() path was missed.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 4ca8b57a0af145f4e791f21dbca6ad789da9ee8b
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Wed Sep 16 21:25:38 2015 +0800

      libnvdimm: pfn_devs: Fix locking in namespace_store

      Always take device_lock() before nvdimm_bus_lock() to prevent deadlock.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 9786cff38a31c452e32fd2f9a479dd7d19d91712
  Merge: 1b3dfde 1975dbc
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 08:45:23 2015 -0700

      Merge branch 'locking-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull locking fixes from Ingo Molnar:
       "Spinlock performance regression fix, plus documentation fixes"

      * 'locking-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        locking/static_keys: Fix up the static keys documentation
        locking/qspinlock/x86: Only emit the test-and-set fallback when 
building guest support
        locking/qspinlock/x86: Fix performance regression under unaccelerated 
VMs
        locking/static_keys: Fix a silly typo

  commit 1b3dfde386b7c72b8f5430dc40eee538eb40c948
  Merge: 7271484 31409c9
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 17 08:44:27 2015 -0700

      Merge branch 'core-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull RCU fix from Ingo Molnar:
       "Fix a false positive warning"

      * 'core-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        security/device_cgroup: Fix RCU_LOCKDEP_WARN() condition

  commit 4be9c1fc3df9c3b03c9bde8aec5e44fc73996a3f
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Wed Sep 16 21:24:47 2015 +0800

      libnvdimm: btt_devs: Fix locking in namespace_store

      Always take device_lock() before nvdimm_bus_lock() to prevent deadlock.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit efe4d36a75d4dfd1a9c161b2bbf9b90beb4d9648
  Merge: 9bf9fde ef74891
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Thu Sep 17 16:51:59 2015 +0200

      Merge tag 'kvm-arm-for-4.3-rc2-2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into kvm-master

      Second set of KVM/ARM changes for 4.3-rc2

      - Workaround for a Cortex-A57 erratum
      - Bug fix for the debugging infrastructure
      - Fix for 32bit guests with more than 4GB of address space
        on a 32bit host
      - A number of fixes for the (unusual) case when we don't use
        the in-kernel GIC emulation
      - Removal of ThumbEE handling on arm64, since these have been
        dropped from the architecture before anyone actually ever
        built a CPU
      - Remove the KVM_ARM_MAX_VCPUS limitation which has become
        fairly pointless

  commit 590f07874e8e3c83729b919312c65aea2533c8cf
  Author: Junichi Nomura <j-nomura@xxxxxxxxxxxxx>
  Date:   Mon Sep 14 07:38:36 2015 +0000

      x86/pci/dma: Fix gfp flags for coherent DMA memory allocation

      Commit 6894258eda2f reversed the order of gfp_flags adjustment in
      dma_alloc_attrs() for x86 [arch/x86/kernel/pci-dma.c] As a result,
      relevant flags set by dma_alloc_coherent_gfp_flags() are just
      discarded and cause coherent DMA memory allocation failure on some
      devices.

      Fixes: 6894258eda2f ("dma-mapping: consolidate 
dma_{alloc,free}_{attrs,coherent}")
      Signed-off-by: Jun'ichi Nomura <j-nomura@xxxxxxxxxxxxx>
      Tested-by: Tony Luck <tony.luck@xxxxxxxxx>
      Acked-by: Christoph Hellwig <hch@xxxxxx>
      Link: 
http://lkml.kernel.org/r/20150914073834.GA13077@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 6fa92e2bcf6390e64895b12761e851c452d87bd8
  Author: Shawn Lin <shawn.lin@xxxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:41:52 2015 +0800

      staging: ion: fix corruption of ion_import_dma_buf

      we found this issue but still exit in lastest kernel. Simply
      keep ion_handle_create under mutex_lock to avoid this race.

      WARNING: CPU: 2 PID: 2648 at drivers/staging/android/ion/ion.c:512 
ion_handle_add+0xb4/0xc0()
      ion_handle_add: buffer already found.
      Modules linked in: iwlmvm iwlwifi mac80211 cfg80211 compat
      CPU: 2 PID: 2648 Comm: TimedEventQueue Tainted: G        W    3.14.0 #7
       00000000 00000000 9a3efd2c 80faf273 9a3efd6c 9a3efd5c 80935dc9 811d7fd3
       9a3efd88 00000a58 812208a0 00000200 80e128d4 80e128d4 8d4ae00c a8cd8600
       a8cd8094 9a3efd74 80935e0e 00000009 9a3efd6c 811d7fd3 9a3efd88 9a3efd9c
      Call Trace:
        [<80faf273>] dump_stack+0x48/0x69
        [<80935dc9>] warn_slowpath_common+0x79/0x90
        [<80e128d4>] ? ion_handle_add+0xb4/0xc0
        [<80e128d4>] ? ion_handle_add+0xb4/0xc0
        [<80935e0e>] warn_slowpath_fmt+0x2e/0x30
        [<80e128d4>] ion_handle_add+0xb4/0xc0
        [<80e144cc>] ion_import_dma_buf+0x8c/0x110
        [<80c517c4>] reg_init+0x364/0x7d0
        [<80993363>] ? futex_wait+0x123/0x210
        [<80992e0e>] ? get_futex_key+0x16e/0x1e0
        [<8099308f>] ? futex_wake+0x5f/0x120
        [<80c51e19>] vpu_service_ioctl+0x1e9/0x500
        [<80994aec>] ? do_futex+0xec/0x8e0
        [<80971080>] ? prepare_to_wait_event+0xc0/0xc0
        [<80c51c30>] ? reg_init+0x7d0/0x7d0
        [<80a22562>] do_vfs_ioctl+0x2d2/0x4c0
        [<80b198ad>] ? inode_has_perm.isra.41+0x2d/0x40
        [<80b199cf>] ? file_has_perm+0x7f/0x90
        [<80b1a5f7>] ? selinux_file_ioctl+0x47/0xf0
        [<80a227a8>] SyS_ioctl+0x58/0x80
        [<80fb45e8>] syscall_call+0x7/0x7
        [<80fb0000>] ? mmc_do_calc_max_discard+0xab/0xe4

      Fixes: 83271f626 ("ion: hold reference to handle...")
      Signed-off-by: Shawn Lin <shawn.lin@xxxxxxxxxxxxxx>
      Reviewed-by: Laura Abbott <labbott@xxxxxxxxxx>
      Cc: stable <stable@xxxxxxxxxxxxxxx> # 3.14+
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 989e503c929d82f34a3cae51e98cbc2745e7472c
  Author: Mark Hounschell <markh@xxxxxxxxxx>
  Date:   Tue Sep 15 08:56:10 2015 -0400

      staging: dgap: Remove myself from the MAINTAINERS file

      Removes myself from the MAINTAINERS file for the dgap driver.
      There appears to be no way to get the firmware files required
      by the dgap driver into the linux-firmware tree. The dgap
      driver is useless wihtout this firmware. This product is
      considered an obsolete product by Digi. They will not respond
      to an inquiry concerning it or its firmware.

      Signed-off-by: Mark Hounschell <markh@xxxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 981473c74c0930190aa4651efebb9bb1f784416e
  Author: Christian Gromm <christian.gromm@xxxxxxxxxxxxx>
  Date:   Wed Sep 16 17:33:35 2015 +0200

      staging: most: Add dependency to HAS_IOMEM

      This patch prevents the module hdm_dim2 from breaking the build in case
      HAS_IOMEM is not configured.

      Reported-by: <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Christian Gromm <christian.gromm@xxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit f5ab93fa5e79bacd83f0866ad5c3950eee279b66
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Wed Sep 16 22:16:38 2015 +0530

      staging: unisys: remove reference of visorutil

      commit 53490b545cb0 ("staging: unisys: move periodic_work.c into the 
visorbus directory")
      has removed the visorutil directory but missed removing the reference in
      the Makefile.

      Fixes: 53490b545cb0 ("staging: unisys: move periodic_work.c into the 
visorbus directory")
      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 2110d70c5e58326a10e93cfefdc0b3686e2ada12
  Author: Borislav Petkov <bp@xxxxxxx>
  Date:   Sat Aug 8 10:46:02 2015 +0200

      cpu/cacheinfo: Fix teardown path

      Philip Müller reported a hang when booting 32-bit 4.1 kernel on an AMD
      box. A fragment of the splat was enough to pinpoint the issue:

        task: f58e0000 ti: f58e8000 task.ti: f58e800
        EIP: 0060:[<c135a903>] EFLAGS: 00010206 CPU: 0
        EIP is at free_cache_attributes+0x83/0xd0
        EAX: 00000001 EBX: f589d46c ECX: 00000090 EDX: 360c2000
        ESI: 00000000 EDI: c1724a80 EBP: f58e9ec0 ESP: f58e9ea0
         DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
        CR0: 8005003b CR2: 000000ac CR3: 01731000 CR4: 000006d0

      cache_shared_cpu_map_setup() did check sibling CPUs cacheinfo descriptor
      while the respective teardown path cache_shared_cpu_map_remove() didn't.
      Fix that.

      >From tglx's version: to be on the safe side, move the cacheinfo
      descriptor check to free_cache_attributes(), thus cleaning up the
      hotplug path a little and making this even more robust.

      Reported-and-tested-by: Philip Müller <philm@xxxxxxxxxxx>
      Reviewed-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Acked-by: Sudeep Holla <sudeep.holla@xxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # 4.1
      Cc: Andre Przywara <andre.przywara@xxxxxxx>
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: manjaro-dev@xxxxxxxxxxx
      Cc: Philip Müller <philm@xxxxxxxxxxx>
      Link: https://lkml.kernel.org/r/55B47BB8.6080202@xxxxxxxxxxx
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ef748917b529847277f07c98c55e1c0ce416449f
  Author: Ming Lei <ming.lei@xxxxxxxxxxxxx>
  Date:   Wed Sep 2 14:31:21 2015 +0800

      arm/arm64: KVM: Remove 'config KVM_ARM_MAX_VCPUS'

      This patch removes config option of KVM_ARM_MAX_VCPUS,
      and like other ARCHs, just choose the maximum allowed
      value from hardware, and follows the reasons:

      1) from distribution view, the option has to be
      defined as the max allowed value because it need to
      meet all kinds of virtulization applications and
      need to support most of SoCs;

      2) using a bigger value doesn't introduce extra memory
      consumption, and the help text in Kconfig isn't accurate
      because kvm_vpu structure isn't allocated until request
      of creating VCPU is sent from QEMU;

      3) the main effect is that the field of vcpus[] in 'struct kvm'
      becomes a bit bigger(sizeof(void *) per vcpu) and need more cache
      lines to hold the structure, but 'struct kvm' is one generic struct,
      and it has worked well on other ARCHs already in this way. Also,
      the world switch frequecy is often low, for example, it is ~2000
      when running kernel building load in VM from APM xgene KVM host,
      so the effect is very small, and the difference can't be observed
      in my test at all.

      Cc: Dann Frazier <dann.frazier@xxxxxxxxxxxxx>
      Signed-off-by: Ming Lei <ming.lei@xxxxxxxxxxxxx>
      Reviewed-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 34c3faa353db8f5d3ce9966cf854d5643c64c4db
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Tue Sep 15 17:15:33 2015 +0100

      arm64: KVM: Remove all traces of the ThumbEE registers

      Although the ThumbEE registers and traps were present in earlier
      versions of the v8 architecture, it was retrospectively removed and so
      we can do the same.

      Whilst this breaks migrating a guest started on a previous version of
      the kernel, it is much better to kill these (non existent) registers
      as soon as possible.

      Reviewed-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>
      [maz: added commend about migration]
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 688bc577ac42ae3d07c889a1f0a72f0b23763d58
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Wed Sep 16 16:18:59 2015 +0100

      arm: KVM: Disable virtual timer even if the guest is not using it

      When running a guest with the architected timer disabled (with QEMU and
      the kernel_irqchip=off option, for example), it is important to make
      sure the timer gets turned off. Otherwise, the guest may try to
      enable it anyway, leading to a screaming HW interrupt.

      The fix is to unconditionally turn off the virtual timer on guest
      exit.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit c4cbba9fa078f55d9f6d081dbb4aec7cf969e7c7
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Wed Sep 16 16:18:59 2015 +0100

      arm64: KVM: Disable virtual timer even if the guest is not using it

      When running a guest with the architected timer disabled (with QEMU and
      the kernel_irqchip=off option, for example), it is important to make
      sure the timer gets turned off. Otherwise, the guest may try to
      enable it anyway, leading to a screaming HW interrupt.

      The fix is to unconditionally turn off the virtual timer on guest
      exit.

      Cc: stable@xxxxxxxxxxxxxxx
      Reviewed-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 96d4ee8aaa3cfbfadf137904f3696a9a84fab2d3
  Author: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
  Date:   Mon Sep 7 12:15:56 2015 -0400

      s390/s390x: allocate sys_membarrier system call number

      Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
      CC: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      CC: linux-api@xxxxxxxxxxxxxxx
      CC: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
      CC: linux-s390@xxxxxxxxxxxxxxx
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit 3dc636b2dafbf05b86decc2a55989c3261ffd116
  Author: Michael Holzheu <holzheu@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 15 18:09:20 2015 +0200

      s390/configs//zfcpdump_defconfig: Remove CONFIG_MEMSTICK

      This config option is completely irrelevant for zfcpdump and
      unfortunately causes a kernel panic on recent kernels in
      "mspro_block_init()/driver_register()".

      Signed-off-by: Michael Holzheu <holzheu@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit 022435713c0391020b55706c5b80fa1be44ba321
  Author: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
  Date:   Wed Sep 9 09:39:58 2015 +0200

      s390: wire up userfaultfd system call

      Signed-off-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit 61cc37906b45534fcc2bea03c17e135ec010b624
  Author: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
  Date:   Thu Sep 10 11:18:20 2015 +0200

      s390/vtime: correct scaled cputime for SMT

      The scaled cputime is supposed to be derived from the normal per-thread
      cputime by dividing it with the average thread density in the last 
interval.

      The calculation of the scaling values for the average thread density is
      incorrect. The current, incorrect calculation:

          Ci = cycle count with i active threads
          T = unscaled cputime, sT = scaled cputime
          sT = T * (C1 + C2 + ... + Cn) / (1*C1 + 2*C2 + ... + n*Cn)

      The calculation happens to yield the correct numbers for the simple cases
      with only one Ci value not zero. But for cases with multiple Ci values not
      zero it fails. E.g. on a SMT-2 system with one thread active half the time
      and two threads active for the other half of the time it fails, the 
scaling
      factor should be 3/4 but the formula gives 2/3.

      The correct formula is

          sT = T * (C1/1 + C2/2 + ... + Cn/n) / (C1 + C2 + ... + Cn)

      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit 58f8e9da33eb0104f5bee3e8b3ca44e1583c78b9
  Author: Hendrik Brueckner <brueckner@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Sep 7 10:52:42 2015 +0200

      s390/cpum_cf: Corrected return code for unauthorized counter sets

      Previously, the cpum_cf PMU returned -EPERM if a counter is requested and
      the counter set to which the counter belongs is not authorized.  According
      to the perf_event_open() system call manual, an error code of EPERM 
indicates
      an unsupported exclude setting or CAP_SYS_ADMIN is missing.

      Use ENOENT to indicate that particular counters are not available when the
      counter set which contains the counter is not authorized.  For generic 
events,
      this might trigger a fall back, for example, to a software event.

      Signed-off-by: Hendrik Brueckner <brueckner@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit 8d4bd0ed0439dfc780aab801a085961925ed6838
  Author: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
  Date:   Tue Sep 8 15:25:39 2015 +0200

      s390/compat: correct uc_sigmask of the compat signal frame

      The uc_sigmask in the ucontext structure is an array of words to keep
      the 64 signal bits (or 1024 if you ask glibc but the kernel sigset_t
      only has 64 bits).

      For 64 bit the sigset_t contains a single 8 byte word, but for 31 bit
      there are two 4 byte words. The compat signal handler code uses a
      simple copy of the 64 bit sigset_t to the 31 bit compat_sigset_t.
      As s390 is a big-endian architecture this is incorrect, the two words
      in the 31 bit sigset_t array need to be swapped.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Reported-by: Stefan Liebler <stli@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit 9380cf5a884e237fc0e2571d5adf0b43bb4412c8
  Author: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
  Date:   Wed Sep 9 13:15:00 2015 +0200

      s390: fix floating point register corruption

      The critical section cleanup code misses to add the offset of the
      thread_struct to the task address.
      Therefore, if the critical section code gets executed, it may corrupt
      the task struct or restore the contents of the floating point registers
      from the wrong memory location.
      Fixes d0164ee20d "s390/kernel: remove save_fpu_regs() parameter and use
      __LC_CURRENT instead".

      Signed-off-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
      Reviewed-by: Hendrik Brueckner <brueckner@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit 88d64253785936d75323c74e7126d180e26de560
  Author: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
  Date:   Tue Sep 8 13:59:08 2015 +0200

      s390/hibernate: fix save and restore of vector registers

      The swsusp_arch_suspend()/swsusp_arch_resume() functions currently only
      save and restore the floating point registers. If the task that started
      the hibernation process is using vector registers they can get lost.
      To fix this just call save_fpu_regs in swsusp_arch_suspend(), the restore
      will happen automatically on return to user space.

      Reported-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit ad5001cc7cdf9aaee5eb213fdee657e4a3c94776
  Author: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>
  Date:   Thu Sep 17 13:37:00 2015 +0200

      netfilter: nf_log: wait for rcu grace after logger unregistration

      The nf_log_unregister() function needs to call synchronize_rcu() to make 
sure
      that the objects are not dereferenced anymore on module removal.

      Fixes: 5962815a6a56 ("netfilter: nf_log: use an array of loggers instead 
of list")
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit df057cc7b4fa59e9b55f07ffdb6c62bf02e99a00
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Tue Mar 17 12:15:02 2015 +0000

      arm64: errata: add module build workaround for erratum #843419

      Cortex-A53 processors <= r0p4 are affected by erratum #843419 which can
      lead to a memory access using an incorrect address in certain sequences
      headed by an ADRP instruction.

      There is a linker fix to generate veneers for ADRP instructions, but
      this doesn't work for kernel modules which are built as unlinked ELF
      objects.

      This patch adds a new config option for the erratum which, when enabled,
      builds kernel modules with the mcmodel=large flag. This uses absolute
      addressing for all kernel symbols, thereby removing the use of ADRP as
      a PC-relative form of addressing. The ADRP relocs are removed from the
      module loader so that we fail to load any potentially affected modules.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Acked-by: Catalin Marinas <catalin.marinas@xxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit bdec97a855ef1e239f130f7a11584721c9a1bf04
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Tue Sep 15 12:07:06 2015 +0100

      arm64: compat: fix vfp save/restore across signal handlers in big-endian

      When saving/restoring the VFP registers from a compat (AArch32)
      signal frame, we rely on the compat registers forming a prefix of the
      native register file and therefore make use of copy_{to,from}_user to
      transfer between the native fpsimd_state and the compat_vfp_sigframe.

      Unfortunately, this doesn't work so well in a big-endian environment.
      Our fpsimd save/restore code operates directly on 128-bit quantities
      (Q registers) whereas the compat_vfp_sigframe represents the registers
      as an array of 64-bit (D) registers. The architecture packs the compat D
      registers into the Q registers, with the least significant bytes holding
      the lower register. Consequently, we need to swap the 64-bit halves when
      converting between these two representations on a big-endian machine.

      This patch replaces the __copy_{to,from}_user invocations in our
      compat VFP signal handling code with explicit __put_user loops that
      operate on 64-bit values and swap them accordingly.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Reviewed-by: Catalin Marinas <catalin.marinas@xxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit e56d82a116176f7af9d642b560abbbd3a2b68013
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Fri Sep 11 15:31:24 2015 +0100

      arm64: cpu hotplug: ensure we mask out CPU_TASKS_FROZEN in notifiers

      We have a couple of CPU hotplug notifiers for resetting the CPU debug
      state to a sane value when a CPU comes online.

      This patch ensures that we mask out CPU_TASKS_FROZEN so that we don't
      miss any online events occuring due to suspend/resume.

      Acked-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit d8949aad3eab5d396f4fefcd581773bf07b9a79e
  Author: Johan Hedberg <johan.hedberg@xxxxxxxxx>
  Date:   Fri Sep 4 12:22:46 2015 +0300

      Bluetooth: Delay check for conn->smp in smp_conn_security()

      There are several actions that smp_conn_security() might make that do
      not require a valid SMP context (conn->smp pointer). One of these
      actions is to encrypt the link with an existing LTK. If the SMP
      context wasn't initialized properly we should still allow the
      independent actions to be done, i.e. the check for the context should
      only be done at the last possible moment.

      Reported-by: Chuck Ebbert <cebbert.lkml@xxxxxxxxx>
      Signed-off-by: Johan Hedberg <johan.hedberg@xxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # 4.0+

  commit b07bb761cf6a333b2108cdbe4ffee66407189bb1
  Author: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
  Date:   Wed Sep 16 08:38:08 2015 -0700

      drm/vmwgfx: Only build on X86

      ioremap_cache() is currently not available on some architectures.

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>

  commit 2338f73d407d5abe2036d92716ba25ef5279c3d2
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Mon Sep 7 14:25:01 2015 +0200

      leds:lp55xx: Correct Kconfig dependency for f/w user helper

      The commit [b67893206fc0: leds:lp55xx: fix firmware loading error]
      tries to address the firmware file handling with user helper, but it
      sets a wrong Kconfig CONFIG_FW_LOADER_USER_HELPER_FALLBACK.  Since the
      wrong option was enabled, the system got a regression -- it suffers
      from the unexpected long delays for non-present firmware files.

      This patch corrects the Kconfig dependency to the right one,
      CONFIG_FW_LOADER_USER_HELPER.  This doesn't change the fallback
      behavior but only enables UMH when needed.

      Bugzilla: https://bugzilla.opensuse.org/show_bug.cgi?id=944661
      Fixes: b67893206fc0 ('leds:lp55xx: fix firmware loading error')
      Cc: <stable@xxxxxxxxxxxxxxx> # v4.2+
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit 35bfe456be3ae1e11dd63e83096c95d0c6429c51
  Author: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>
  Date:   Mon Sep 7 17:06:05 2015 +0200

      leds: leds-ipaq-micro: Add LEDS_CLASS dependency

      Fix missing Kconfig LEDS_CLASS dependency.

      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>
      Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 305c324f43a2601cbeb894c17b68c8a8f3c13387
  Author: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>
  Date:   Fri Sep 4 12:27:09 2015 +0200

      leds: aat1290: add 'static' modifier to init_mm_current_scale

      Function init_mm_current_scale is used only locally. Make it static then.

      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit 98f9cc7ffcf2cb5b695208a4cd4927bb41c550f3
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 23:36:59 2015 +0200

      leds: leds-ns2: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit e3df661ff3243ce4d1719c212ee88521e0e7811b
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 23:36:41 2015 +0200

      leds: max77693: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit 3682c7bdf5065b99638c56adc1be1507ed5c0f0e
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 23:36:15 2015 +0200

      leds: ktd2692: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit 01736f07cad613937db13f7483b04e8f2af81883
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 23:35:55 2015 +0200

      leds: bcm6358: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit 6528ca19c1c8d4756b534a1ce9df4c3849f9dd04
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 23:35:38 2015 +0200

      leds: bcm6328: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit 93a51aa406f61985d12b60f9860f949b4bf7e43d
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 23:35:07 2015 +0200

      leds: aat1290: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit aa1471a301f4c0a5988ebcafc8954990335dcf2c
  Merge: 6ff33f3 762982d
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 16 21:33:13 2015 -0700

      Merge tag 'fixes-for-v4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-linus

      Felipe writes:

      usb: fixes for v4.3-rc2

      First series of fixes for v4.3-rc cycle. The major points are
      a fix to a regression which would let gadget driver disable
      an endpoint that's already disabled and a fix to MUSB to make
      sure IRQs are masked when we're going to suspend and unmasked
      on resume.

      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit 400c47d81ca383fc87d5a3937b234e23e26909fb
  Author: LEROY Christophe <christophe.leroy@xxxxxx>
  Date:   Wed Sep 16 12:04:53 2015 +0200

      powerpc32: memset: only use dcbz once cache is enabled

      memset() uses instruction dcbz to speed up clearing by not wasting time
      loading cache line with data that will be overwritten.
      Some platform like mpc52xx do no have cache active at startup and
      can therefore not use memset(). Allthough no part of the code
      explicitly uses memset(), GCC may make calls to it.

      This patch modifies memset() such that at startup, memset()
      unconditionally skip the optimised bloc that uses dcbz instruction.

      Once the initial MMU is set up, in machine_init() we patch memset()
      by replacing this inconditional jump by a NOP

      Tested-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Signed-off-by: Christophe Leroy <christophe.leroy@xxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 1cd03890ea64795e53f17a94928cca22495acb2a
  Author: LEROY Christophe <christophe.leroy@xxxxxx>
  Date:   Wed Sep 16 12:04:51 2015 +0200

      powerpc32: memcpy: only use dcbz once cache is enabled

      memcpy() uses instruction dcbz to speed up copy by not wasting time
      loading cache line with data that will be overwritten.
      Some platform like mpc52xx do no have cache active at startup and
      can therefore not use memcpy(). Allthough no part of the code
      explicitly uses memcpy(), GCC makes calls to it.

      This patch modifies memcpy() such that at startup, memcpy()
      unconditionally jumps to generic_memcpy() which doesn't use
      the dcbz instruction.

      Once the initial MMU is set up, in machine_init() we patch memcpy()
      by replacing this inconditional jump by a NOP

      Reported-by: Michal Sojka <sojkam1@xxxxxxxxxxx>
      Tested-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Signed-off-by: Christophe Leroy <christophe.leroy@xxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 84ad1bab0eebd2e2b2dd3c3db7b88cade22a6de1
  Author: Roger Quadros <rogerq@xxxxxx>
  Date:   Mon Jul 27 16:10:17 2015 +0300

      ARM: dts: am57xx-beagle-x15: use palmas-usb for USB2

      The VBUS line of USB2 is connected to VBUS detect logic on
      the PMIC. Use the palmas-usb driver to report VBUS events
      to the USB driver.

      As the palmas-usb driver supports GPIO based ID reporting
      provide the GPIO for ID pin as well.

      Signed-off-by: Roger Quadros <rogerq@xxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit f4746176f95a0d06f07ea83191375d374611e170
  Author: Grazvydas Ignotas <notasas@xxxxxxxxx>
  Date:   Wed Sep 16 01:36:20 2015 +0300

      ARM: omap2plus_defconfig: enable GPIO_PCA953X

      This enables tca6424a GPIO expander driver that in turn enables
      TPD12S015 HDMI ESD protection and level shifter on OMAP5 uevm.
      In other words, it makes HDMI work on OMAP5 uevm.

      Signed-off-by: Grazvydas Ignotas <notasas@xxxxxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 1dbdad75074d16c3e3005180f81a01cdc04a7872
  Author: Grazvydas Ignotas <notasas@xxxxxxxxx>
  Date:   Wed Sep 16 01:34:31 2015 +0300

      ARM: dts: omap5-uevm.dts: fix i2c5 pinctrl offsets

      The i2c5 pinctrl offsets are wrong. If the bootloader doesn't set the
      pins up, communication with tca6424a doesn't work (controller timeouts)
      and it is not possible to enable HDMI.

      Fixes: 9be495c42609 ("ARM: dts: omap5-evm: Add I2c pinctrl data")
      Signed-off-by: Grazvydas Ignotas <notasas@xxxxxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 08224a7d410699abce42674ee15a7cf37d54f340
  Author: Dave Gerlach <d-gerlach@xxxxxx>
  Date:   Tue Sep 15 14:47:34 2015 -0500

      ARM: OMAP2+: AM43XX: Enable autoidle for clks in am43xx_init_late

      Add omap2_clk_enable_autoidle_all to am43xx_init_late otherwise the call
      to omap2_clk_disable_autoidle_all in am43xx_init_early may cause some
      clocks to always stay active and prevent low power mode transitions.

      Signed-off-by: Dave Gerlach <d-gerlach@xxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 5005296e7408c055a02fc8be9f62218cb4b52b13
  Author: Nishanth Menon <nm@xxxxxx>
  Date:   Thu Sep 3 14:23:45 2015 -0500

      ARM: dts: am57xx-beagle-x15: Update Phy supplies

      Originally, all the SoC PHY rails were supplied by LDO3. However, as a
      result of characterization, it was determined that this posed a risk in
      extreme load  conditions. Hence the PHY rails are split between two
      different LDOs. Update the related node as a result

      LDO3/VDDA_1V8_PHYA supplies vdda_usb1, vdda_usb2, vdda_sata, vdda_usb3
      LDO4/VDDA_1V8_PHYB supplies vdda_pcie1, vdda_pcie0, vdda_hdmi, vdda_pcie

      NOTE: We break compatibility with pre-production boards with this change
      since, the PMIC LDO4 is disabled at OTP level.

      The new configuration is the plan of record and all pre-production
      boards are supposed to be replaced with the latest boards matching the
      mentioned configuration.

      Some very few 10 something boards have been created and
      stopped production till the latest modifications were done (PMIC USB
      interrupt, LDO4 etc) - and all of those boards are now getting
      scrapped.. If there are any (as per tracking information, there should
      not be any), TI should be contacted to have them replaced.

      Signed-off-by: Nishanth Menon <nm@xxxxxx>
      [tony@xxxxxxxxxxx: updated commit about these being TI internal protos]
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 7ae85dc7687c7e7119053d83d02c560ea217b772
  Author: Doug Anderson <armlinux@xxxxxxxxxxxxxx>
  Date:   Wed Aug 26 18:26:49 2015 +0100

      ARM: 8425/1: kgdb: Don't try to stop the machine when setting breakpoints

      In (23a4e40 arm: kgdb: Handle read-only text / modules) we moved to
      using patch_text() to set breakpoints so that we could handle the case
      when we had CONFIG_DEBUG_RODATA.  That patch used patch_text().
      Unfortunately, patch_text() assumes that we're not in atomic context
      when it runs since it needs to grab a mutex and also wait for other
      CPUs to stop (which it does with a completion).

      This would result in a stack crawl if you had
      CONFIG_DEBUG_ATOMIC_SLEEP and tried to set a breakpoint in kgdb.  The
      crawl looked something like:

       BUG: scheduling while atomic: swapper/0/0/0x00010007
       CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.2.0-rc7-00133-geb63b34 #1073
       Hardware name: Rockchip (Device Tree)
        (unwind_backtrace) from [<c00133d4>] (show_stack+0x20/0x24)
        (show_stack) from [<c05400e8>] (dump_stack+0x84/0xb8)
        (dump_stack) from [<c004913c>] (__schedule_bug+0x54/0x6c)
        (__schedule_bug) from [<c054065c>] (__schedule+0x80/0x668)
        (__schedule) from [<c0540cfc>] (schedule+0xb8/0xd4)
        (schedule) from [<c0543a3c>] (schedule_timeout+0x2c/0x234)
        (schedule_timeout) from [<c05417c0>] (wait_for_common+0xf4/0x188)
        (wait_for_common) from [<c0541874>] (wait_for_completion+0x20/0x24)
        (wait_for_completion) from [<c00a0104>] (__stop_cpus+0x58/0x70)
        (__stop_cpus) from [<c00a0580>] (stop_cpus+0x3c/0x54)
        (stop_cpus) from [<c00a06c4>] (__stop_machine+0xcc/0xe8)
        (__stop_machine) from [<c00a0714>] (stop_machine+0x34/0x44)
        (stop_machine) from [<c00173e8>] (patch_text+0x28/0x34)
        (patch_text) from [<c001733c>] (kgdb_arch_set_breakpoint+0x40/0x4c)
        (kgdb_arch_set_breakpoint) from [<c00a0d68>] 
(kgdb_validate_break_address+0x2c/0x60)
        (kgdb_validate_break_address) from [<c00a0e90>] 
(dbg_set_sw_break+0x1c/0xdc)
        (dbg_set_sw_break) from [<c00a2e88>] (gdb_serial_stub+0x9c4/0xba4)
        (gdb_serial_stub) from [<c00a11cc>] (kgdb_cpu_enter+0x1f8/0x60c)
        (kgdb_cpu_enter) from [<c00a18cc>] (kgdb_handle_exception+0x19c/0x1d0)
        (kgdb_handle_exception) from [<c0016f7c>] 
(kgdb_compiled_brk_fn+0x30/0x3c)
        (kgdb_compiled_brk_fn) from [<c00091a4>] (do_undefinstr+0x1a4/0x20c)
        (do_undefinstr) from [<c001400c>] (__und_svc_finish+0x0/0x34)

      It turns out that when we're in kgdb all the CPUs are stopped anyway
      so there's no reason we should be calling patch_text().  We can
      instead directly call __patch_text() which assumes that CPUs have
      already been stopped.

      Fixes: 23a4e4050ba9 ("arm: kgdb: Handle read-only text / modules")
      Reported-by: Aapo Vienamo <avienamo@xxxxxxxxxx>
      Signed-off-by: Douglas Anderson <dianders@xxxxxxxxxxxx>
      Reviewed-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
      Acked-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 90cde5584a34e210850728bebee4c6fb1a7124ba
  Author: Andre Przywara <andre.przywara@xxxxxxx>
  Date:   Mon Sep 14 17:49:02 2015 +0100

      ARM: 8437/1: dma-mapping: fix build warning with new DMA_ERROR_CODE 
definition

      Commit 96231b2686b5: ("ARM: 8419/1: dma-mapping: harmonize definition
      of DMA_ERROR_CODE") changed the definition of DMA_ERROR_CODE to use
      dma_addr_t, which makes the compiler barf on assigning this to an
      "int" variable on ARM with LPAE enabled:
      *************
      In file included from /src/linux/include/linux/dma-mapping.h:86:0,
                       from /src/linux/arch/arm/mm/dma-mapping.c:21:
      /src/linux/arch/arm/mm/dma-mapping.c: In function 
'__iommu_create_mapping':
      /src/linux/arch/arm/include/asm/dma-mapping.h:16:24: warning:
      overflow in implicit constant conversion [-Woverflow]
       #define DMA_ERROR_CODE (~(dma_addr_t)0x0)
                              ^
      /src/linux/arch/arm/mm/dma-mapping.c:1252:15: note: in expansion of
      macro DMA_ERROR_CODE'
        int i, ret = DMA_ERROR_CODE;
                     ^
      *************

      Remove the actually unneeded initialization of "ret" in
      __iommu_create_mapping() and move the variable declaration inside the
      for-loop to make the scope of this variable more clear.

      Signed-off-by: Andre Przywara <andre.przywara@xxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 12fc7306e6ffae4e86680892f2286063d7d6eae7
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Wed Sep 16 11:08:49 2015 +0100

      ARM: get rid of needless #if in signal handling code

      Remove the #if statement which caused trouble for kernels that support
      both ARMv6 and ARMv7.  Older architectures do not implement these bits,
      so it should be safe to always clear them.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 9054a31d603ea82c6ed4914170a8708812a16324
  Author: Mans Rullgard <mans@xxxxxxxxx>
  Date:   Sun Feb 15 12:33:49 2015 +0000

      clk: check for invalid parent index of orphans in __clk_init()

      If a mux clock is initialised (by hardware or firmware) with an
      invalid parent, its ->get_parent() can return an out of range
      index.  For example, the generic mux clock attempts to return
      -EINVAL, which due to the u8 return type ends up a rather large
      number.  Using this index with the parent_names[] array results
      in an invalid pointer and (usually) a crash in the following
      strcmp().

      This patch adds a check for the parent index being in range,
      ignoring clocks reporting invalid values.

      Signed-off-by: Mans Rullgard <mans@xxxxxxxxx>
      Tested-by: Rhyland Klein <rklein@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit e1595d89ae8180e0d3815cc75336ac3484de0aa0
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Thu Sep 10 15:55:21 2015 +0200

      clk: tegra: dfll: Properly protect OPP list

      The OPP list needs to be protected against concurrent accesses. Using
      simple RCU read locks does the trick and gets rid of the following
      lockdep warning:

        ===============================
        [ INFO: suspicious RCU usage. ]
        4.2.0-next-20150908 #1 Not tainted
        -------------------------------
        drivers/base/power/opp.c:460 Missing rcu_read_lock() or 
dev_opp_list_lock protection!

        other info that might help us debug this:

        rcu_scheduler_active = 1, debug_locks = 0
        4 locks held by kworker/u8:0/6:
         #0:  ("%s""deferwq"){++++.+}, at: [<c0040d8c>] 
process_one_work+0x118/0x4bc
         #1:  (deferred_probe_work){+.+.+.}, at: [<c0040d8c>] 
process_one_work+0x118/0x4bc
         #2:  (&dev->mutex){......}, at: [<c03b8194>] __device_attach+0x20/0x118
         #3:  (prepare_lock){+.+...}, at: [<c054bc08>] 
clk_prepare_lock+0x10/0xf8

        stack backtrace:
        CPU: 2 PID: 6 Comm: kworker/u8:0 Not tainted 4.2.0-next-20150908 #1
        Hardware name: NVIDIA Tegra SoC (Flattened Device Tree)
        Workqueue: deferwq deferred_probe_work_func
        [<c001802c>] (unwind_backtrace) from [<c00135a4>] (show_stack+0x10/0x14)
        [<c00135a4>] (show_stack) from [<c02a8418>] (dump_stack+0x94/0xd4)
        [<c02a8418>] (dump_stack) from [<c03c6f6c>] 
(dev_pm_opp_find_freq_ceil+0x108/0x114)
        [<c03c6f6c>] (dev_pm_opp_find_freq_ceil) from [<c0551a3c>] 
(dfll_calculate_rate_request+0xb8/0x170)
        [<c0551a3c>] (dfll_calculate_rate_request) from [<c0551b10>] 
(dfll_clk_round_rate+0x1c/0x2c)
        [<c0551b10>] (dfll_clk_round_rate) from [<c054de2c>] 
(clk_calc_new_rates+0x1b8/0x228)
        [<c054de2c>] (clk_calc_new_rates) from [<c054e44c>] 
(clk_core_set_rate_nolock+0x44/0xac)
        [<c054e44c>] (clk_core_set_rate_nolock) from [<c054e4d8>] 
(clk_set_rate+0x24/0x34)
        [<c054e4d8>] (clk_set_rate) from [<c0512460>] 
(tegra124_cpufreq_probe+0x120/0x230)
        [<c0512460>] (tegra124_cpufreq_probe) from [<c03b9cbc>] 
(platform_drv_probe+0x44/0xac)
        [<c03b9cbc>] (platform_drv_probe) from [<c03b84c8>] 
(driver_probe_device+0x218/0x304)
        [<c03b84c8>] (driver_probe_device) from [<c03b69b0>] 
(bus_for_each_drv+0x60/0x94)
        [<c03b69b0>] (bus_for_each_drv) from [<c03b8228>] 
(__device_attach+0xb4/0x118)
        ata1: SATA link down (SStatus 0 SControl 300)
        [<c03b8228>] (__device_attach) from [<c03b77c8>] 
(bus_probe_device+0x88/0x90)
        [<c03b77c8>] (bus_probe_device) from [<c03b7be8>] 
(deferred_probe_work_func+0x58/0x8c)
        [<c03b7be8>] (deferred_probe_work_func) from [<c0040dfc>] 
(process_one_work+0x188/0x4bc)
        [<c0040dfc>] (process_one_work) from [<c004117c>] 
(worker_thread+0x4c/0x4f4)
        [<c004117c>] (worker_thread) from [<c0047230>] (kthread+0xe4/0xf8)
        [<c0047230>] (kthread) from [<c000f7d0>] (ret_from_fork+0x14/0x24)

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Fixes: c4fe70ada40f ("clk: tegra: Add closed loop support for the DFLL")
      [vince.h@xxxxxxxxxx: Unlock rcu on error path]
      Signed-off-by: Vince Hsu <vince.h@xxxxxxxxxx>
      [sboyd@xxxxxxxxxxxxxx: Dropped second hunk that nested the rcu
      read lock unnecessarily]
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 02d8dabc50f94353075f2f62b1047c1306e8bf92
  Author: Stephane Eranian <eranian@xxxxxxxxxx>
  Date:   Thu Sep 3 15:23:40 2015 +0200

      perf stat: Fix per-pkg event reporting bug

      Per-pkg events need to be captured once per processor socket. The code
      in check_per_pkg() ensures only one value per processor package is used.
      However there is a problem with this function in case the first CPU of
      the package does not measure anything for the per-pkg event, but other
      CPUs do.

      Consider the following:

        $ create cgroup FOO; echo $$ >FOO/tasks; taskset -c 1 noploop &
        $ perf stat -a -I 1000 -e intel_cqm/llc_occupancy/ -G FOO sleep 100
          1.00000 <not counted> Bytes intel_cqm/llc_occupancy/  FOO

      The reason for this is that CPU0 in the cgroup has nothing running on it.
      Yet check_per_plg() will mark socket0 as processed and no other event
      value will be considered for the socket.

      This patch fixes the problem by having check_per_pkg() only consider
      events which actually ran.

      Signed-off-by: Stephane Eranian <eranian@xxxxxxxxxx>
      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441286620-10117-1-git-send-email-eranian@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 0f1d08dd6aaf7e9dd1039dce910c1f8ff58ee8c1
  Author: Andrew F. Davis <afd@xxxxxx>
  Date:   Tue Sep 15 15:34:22 2015 -0500

      regulator: tps65218: Fix missing zero typo

      Add missing zero to value. This will be needed when range checking
      is implemented.

      Signed-off-by: Andrew F. Davis <afd@xxxxxx>
      Acked-by: Dan Murphy <dmurphy@xxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 3c8f7710c1c44fb650bc29b6ef78ed8b60cfaa28
  Author: Robert Jarzmik <robert.jarzmik@xxxxxxx>
  Date:   Tue Sep 15 20:51:31 2015 +0200

      ASoC: fix broken pxa SoC support

      The previous fix of pxa library support, which was introduced to fix the
      library dependency, broke the previous SoC behavior, where a machine
      code binding pxa2xx-ac97 with a coded relied on :
       - sound/soc/pxa/pxa2xx-ac97.c
       - sound/soc/codecs/XXX.c

      For example, the mioa701_wm9713.c machine code is currently broken. The
      "select ARM" statement wrongly selects the soc/arm/pxa2xx-ac97 for
      compilation, as per an unfortunate fate SND_PXA2XX_AC97 is both declared
      in sound/arm/Kconfig and sound/soc/pxa/Kconfig.

      Fix this by ensuring that SND_PXA2XX_SOC correctly triggers the correct
      pxa2xx-ac97 compilation.

      Fixes: 846172dfe33c ("ASoC: fix SND_PXA2XX_LIB Kconfig warning")
      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit e26d15f735f570a1178c3bba4d85e6f58e098fdd
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 15 14:46:45 2015 +0200

      spi: mediatek: fix wrong error return value on probe

      Commit adcbcfea15d62 ("spi: mediatek: fix spi clock usage error")
      added a new sel_clk but introduced bugs in the error paths since
      the wrong struct clk pointers are passed to PTR_ERR().

      Fixes: adcbcfea15d62 ("spi: mediatek: fix spi clock usage error")
      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 0243ed44ad4a25dbd2e92ad97e5e12a1a6c72d6c
  Author: Geliang Tang <geliangtang@xxxxxxx>
  Date:   Tue Sep 15 04:59:21 2015 -0700

      spi: fix kernel-doc warnings in spi.h

      Fix the following 'make htmldocs' warnings:

        .//include/linux/spi/spi.h:71: warning: No description found for 
parameter 'lock'
        .//include/linux/spi/spi.h:71: warning: Excess 
struct/union/enum/typedef member 'clock' description in 'spi_statistics'

      Signed-off-by: Geliang Tang <geliangtang@xxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 92243b6fc8fcb16bf401b055f7a0ba79f70a4115
  Merge: a394d63 6ff33f3
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Wed Sep 16 20:44:25 2015 +0100

      Merge tag 'v4.3-rc1' into spi-fix-doc

      Linux 4.3-rc1

  commit 385877c01361401113c101ef5a80a9f0998e072b
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Tue Sep 1 09:52:21 2015 +0800

      ARM: pxa: balloon3: Fix build error

      irq_data_get_chip() function does not exist, call irq_desc_get_chip()
      instead.

      Fixes: 9ec97561aa6d ("ARM/pxa: Prepare balloon3_irq_handler for irq 
argument removal")
      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>

  commit c2f58514cfb374d5368c9da945f1765cd48eb0da
  Author: Pavel Fedin <p.fedin@xxxxxxxxxxx>
  Date:   Wed Aug 5 11:53:57 2015 +0100

      arm/arm64: KVM: vgic: Check for !irqchip_in_kernel() when mapping 
resources

      Until b26e5fdac43c ("arm/arm64: KVM: introduce per-VM ops"),
      kvm_vgic_map_resources() used to include a check on irqchip_in_kernel(),
      and vgic_v2_map_resources() still has it.

      But now vm_ops are not initialized until we call kvm_vgic_create().
      Therefore kvm_vgic_map_resources() can being called without a VGIC,
      and we die because vm_ops.map_resources is NULL.

      Fixing this restores QEMU's kernel-irqchip=off option to a working state,
      allowing to use GIC emulation in userspace.

      Fixes: b26e5fdac43c ("arm/arm64: KVM: introduce per-VM ops")
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Pavel Fedin <p.fedin@xxxxxxxxxxx>
      [maz: reworked commit message]
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 54c3cf65aefd5e49e58201adb3dc7595c4b3ad9f
  Merge: 6ff33f3 60fdcb8
  Author: Kevin Hilman <khilman@xxxxxxxxxx>
  Date:   Wed Sep 16 09:27:24 2015 -0700

      Merge tag 'omap-for-v4.3/fixes-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into fixes

      Merge "omap fixes against v4.3-rc1" from Tony Lindgren:

      Fixes for omaps against v4.3-rc1:

      - Fix long time regression on beagle for tfp410 pin muxing

      - Fix dm814x control base address typo and related Ethernet
        phy configuration

      - Fix igepv2 Ethernet pinmuxing as only some boards have it

      - Fix pbias regulator compatible values as a pending regulator
        fix needs those for MMC1 to work properly

      - Fix beagle-x15 MMC1 regulator and make pcf857x built-in

      - Fix omap5 and dra7 Kconfig options when built as the only
        SoCs selected

      - Fix PM errata for omap5 and dra7 as they too need it

      - Fix phycore mpu voltage

      Also included are a few cosmetic fixes:

      - Remove unused of_irq macros

      - Fix dra7 ethernet name

      * tag 'omap-for-v4.3/fixes-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
        ARM: dts: Fixup model name for HP t410 dts
        ARM: dts: DRA7: fix a typo in ethernet
        ARM: omap2plus_defconfig: make PCF857x built-in
        ARM: dts: Use ti,pbias compatible string for pbias
        ARM: OMAP5: Cleanup options for SoC only build
        ARM: DRA7: Select missing options for SoC only build
        ARM: OMAP2+: board-generic: Remove stale of_irq macros
        ARM: OMAP4+: PM: erratum is used by OMAP5 and DRA7 as well
        ARM: dts: omap3-igep: Move eth IRQ pinmux to IGEPv2 common dtsi
        ARM: dts: am57xx-beagle-x15: Add wakeup irq for mcp79410
        ARM: dts: am335x-phycore-som: Fix mpu voltage
        ARM: dts: am57xx-beagle-x15: Fix regulator populated in MMC1 dt node
        ARM: dts: Fix dm814x control base to properly initialize Ethernet PHY
        ARM: dts: omap3-beagle: make i2c3, ddc and tfp410 gpio work again

  commit 72714841b705a5b9bccf37ee85a62352bee3a3ef
  Merge: 3025510 447e9a4
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 16 09:16:20 2015 -0700

      Merge tag 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma

      Pull rdma driver move from Doug Ledford:
       "This is a move only, no functional changes.

        I tried to get it in prior to the rc1 release, but we were waiting on
        IBM to get back to us that they were OK with the deprecation and
        eventual removal of this driver.  That OK didn't materialize until
        last week, so integration and testing time pushed us beyond the rc1
        release.

        Summary:

         - Move ehca driver to staging/rdma and schedule for deletion"

      * tag 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma:
        IB/ehca: Deprecate driver, move to staging, schedule deletion

  commit 0c986253b939cc14c69d4adbe2b4121bdf4aa220
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Wed Sep 16 11:51:12 2015 -0400

      Revert "sched, cgroup: replace signal_struct->group_rwsem with a global 
percpu_rwsem"

      This reverts commit d59cfc09c32a2ae31f1c3bc2983a0cd79afb3f14.

      d59cfc09c32a ("sched, cgroup: replace signal_struct->group_rwsem with
      a global percpu_rwsem") and b5ba75b5fc0e ("cgroup: simplify
      threadgroup locking") changed how cgroup synchronizes against task
      fork and exits so that it uses global percpu_rwsem instead of
      per-process rwsem; unfortunately, the write [un]lock paths of
      percpu_rwsem always involve synchronize_rcu_expedited() which turned
      out to be too expensive.

      Improvements for percpu_rwsem are scheduled to be merged in the coming
      v4.4-rc1 merge window which alleviates this issue.  For now, revert
      the two commits to restore per-process rwsem.  They will be re-applied
      for the v4.4-rc1 merge window.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Link: http://lkml.kernel.org/g/55F8097A.7000206@xxxxxxxxxx
      Reported-by: Christian Borntraeger <borntraeger@xxxxxxxxxx>
      Cc: Oleg Nesterov <oleg@xxxxxxxxxx>
      Cc: "Paul E. McKenney" <paulmck@xxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # v4.2+

  commit f9f9e7b776142fb1c0782cade004cc8e0147a199
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Wed Sep 16 11:51:12 2015 -0400

      Revert "cgroup: simplify threadgroup locking"

      This reverts commit b5ba75b5fc0e8404e2c50cb68f39bb6a53fc916f.

      d59cfc09c32a ("sched, cgroup: replace signal_struct->group_rwsem with
      a global percpu_rwsem") and b5ba75b5fc0e ("cgroup: simplify
      threadgroup locking") changed how cgroup synchronizes against task
      fork and exits so that it uses global percpu_rwsem instead of
      per-process rwsem; unfortunately, the write [un]lock paths of
      percpu_rwsem always involve synchronize_rcu_expedited() which turned
      out to be too expensive.

      Improvements for percpu_rwsem are scheduled to be merged in the coming
      v4.4-rc1 merge window which alleviates this issue.  For now, revert
      the two commits to restore per-process rwsem.  They will be re-applied
      for the v4.4-rc1 merge window.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Link: http://lkml.kernel.org/g/55F8097A.7000206@xxxxxxxxxx
      Reported-by: Christian Borntraeger <borntraeger@xxxxxxxxxx>
      Cc: Oleg Nesterov <oleg@xxxxxxxxxx>
      Cc: "Paul E. McKenney" <paulmck@xxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # v4.2+

  commit 30255100d7c253c82b596a0768235d5865eee2cf
  Merge: 9efeaaf cd1faefa
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 16 08:49:41 2015 -0700

      Merge tag 'hwmon-for-linus-v4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging

      Pull hwmon fixes from Guenter Roeck:
       "Two patches for the nct6775 driver: add support for NCT6793D, and fix
        swapped registers"

      * tag 'hwmon-for-linus-v4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (nct6775) Add support for NCT6793D
        hwmon: (nct6775) Swap STEP_UP_TIME and STEP_DOWN_TIME registers for 
most chips

  commit 9efeaaf9a0c1a27c2be8b2d37c73142555702a4f
  Merge: d1291eb fa84b52
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 16 08:07:04 2015 -0700

      Merge tag 'pinctrl-v4.3-2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl

      Pull pin control fixes from Linus Walleij:
       "This is a first set of pin control fixes for the v4.3 series.  Nothing
        special to say, business as usual.

         - Some IS_ERR() fixes from Julia Lawall.  I always wanted the
           compiler to catch these but error pointers by nailing them as an
           err pointer intrinsic type or something seem to be a "no can do".
           In any case, cocinelle is obviously up to the task, better than
           bugs staying around.

         - Better error handling for NULL GPIO chips.

         - Fix a compile error from the big irq desc refactoring.  I'm
           surprised the fallout wasn't bigger than this"

      * tag 'pinctrl-v4.3-2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
        pinctrl: samsung: s3c24xx: fix syntax error
        pinctrl: core: Warn about NULL gpio_chip in 
pinctrl_ready_for_gpio_range()
        pinctrl: join lines that can be a single line within 80 columns
        pinctrl: digicolor: convert null test to IS_ERR test
        pinctrl: qcom: ssbi: convert null test to IS_ERR test

  commit 9bf9fde2c98ba8362ea1d41d8bd8b32a23776e67
  Author: Jason J. Herne <jjherne@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 16 09:13:50 2015 -0400

      KVM: s390: Replace incorrect atomic_or with atomic_andnot

      The offending commit accidentally replaces an atomic_clear with an
      atomic_or instead of an atomic_andnot in kvm_s390_vcpu_request_handled.
      The symptom is that kvm guests on s390 hang on startup.
      This patch simply replaces the incorrect atomic_or with atomic_andnot

      Fixes: 805de8f43c20 (atomic: Replace atomic_{set,clear}_mask() usage)
      Signed-off-by: Jason J. Herne <jjherne@xxxxxxxxxxxxxxxxxx>
      Acked-by: Christian Borntraeger <borntraeger@xxxxxxxxxx>
      Acked-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Acked-by: Cornelia Huck <cornelia.huck@xxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit d1291ebd85770299857b355160864cd1a9f6e5e9
  Merge: aa57e0b 46d4f7c
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 16 07:58:58 2015 -0700

      Merge tag 'gpio-v4.3-2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio

      Pull GPIO fixes from Linus Walleij:
       "This is the first round of GPIO fixes for v4.3.  Quite a lot of
        patches, but the influx of new stuff in the merge window was equally
        big, so I'm not surprised.

         - Return value checks and thus nicer errorpath for two drivers.

         - Make GPIO_RCAR arch neutral.

         - Propagate errors from GPIO chip ->get() vtable call.  It turned out
           these can actually fail sometimes, especially on slowpath
           controllers doing I2C traffic and similar.

         - Update documentation to be in sync with the massive changes in the
           v4.3 merge window, phew.

         - Handle deferred probe properly in the OMAP driver.

         - Get rid of surplus MODULE_ALIAS() from sx150x"

      * tag 'gpio-v4.3-2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio:
        gpio: omap: Fix GPIO numbering for deferred probe
        Documentation: gpio: Explain that <function>-gpio is also supported
        gpio: omap: Fix gpiochip_add() handling for deferred probe
        gpio: sx150x: Remove unnecessary MODULE_ALIAS()
        Documentation: gpio: board: describe the con_id parameter
        Documentation: gpio: board: add flags parameter to gpiod_get*() 
functions
        gpio: Propagate errors from chip->get()
        gpio: rcar: GPIO_RCAR doesn't relate to ARM
        gpio: mxs: need to check return value of irq_alloc_generic_chip
        gpio: mxc: need to check return value of irq_alloc_generic_chip

  commit ae80a2f2d142b97ec68434313f0263256916683d
  Author: Rob Herring <robh@xxxxxxxxxx>
  Date:   Sat Aug 29 18:01:25 2015 -0500

      arm64: Remove ununsed set_irq_flags

      Now that all users of set_irq_flags and custom flags are converted to
      genirq functions, the ARM specific set_irq_flags can be removed.

      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
      Acked-by: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit eb811129ed9ea50ef2dfe8a83ddde6a16d1eb8d4
  Author: Rob Herring <robh@xxxxxxxxxx>
  Date:   Sat Aug 29 18:01:24 2015 -0500

      ARM: Remove ununsed set_irq_flags

      Now that all users of set_irq_flags and custom flags are converted to
      genirq functions, the ARM specific set_irq_flags can be removed.

      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
      Tested-by: Kevin Hilman <khilman@xxxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 3e15135b98ecaa0228eb5dad42be7516cac38aa0
  Author: Rob Herring <robh@xxxxxxxxxx>
  Date:   Sat Aug 29 18:01:23 2015 -0500

      sh: Kill off set_irq_flags usage

      set_irq_flags is ARM specific with custom flags which have genirq
      equivalents. Convert drivers to use the genirq interfaces directly, so we
      can kill off set_irq_flags. The translation of flags is as follows:

      IRQF_VALID -> !IRQ_NOREQUEST
      IRQF_PROBE -> !IRQ_NOPROBE
      IRQF_NOAUTOEN -> IRQ_NOAUTOEN

      For IRQs managed by an irqdomain, the irqdomain core code handles clearing
      and setting IRQ_NOREQUEST already, so there is no need to do this in
      .map() functions and we can simply remove the set_irq_flags calls. Some
      users also modify IRQ_NOPROBE and this has been maintained although it
      is not clear that is really needed. There appears to be a great deal of
      blind copy and paste of this code.

      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
      Acked-by: Simon Horman <horms@xxxxxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: linux-sh@xxxxxxxxxxxxxxx
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: Magnus Damm <magnus.damm@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440889285-5637-4-git-send-email-robh@xxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit d17cab4451df1f25f3a46369e0aaeaa18390fa6b
  Author: Rob Herring <robh@xxxxxxxxxx>
  Date:   Sat Aug 29 18:01:22 2015 -0500

      irqchip: Kill off set_irq_flags usage

      set_irq_flags is ARM specific with custom flags which have genirq
      equivalents. Convert drivers to use the genirq interfaces directly, so we
      can kill off set_irq_flags. The translation of flags is as follows:

      IRQF_VALID -> !IRQ_NOREQUEST
      IRQF_PROBE -> !IRQ_NOPROBE
      IRQF_NOAUTOEN -> IRQ_NOAUTOEN

      For IRQs managed by an irqdomain, the irqdomain core code handles clearing
      and setting IRQ_NOREQUEST already, so there is no need to do this in
      .map() functions and we can simply remove the set_irq_flags calls. Some
      users also modify IRQ_NOPROBE and this has been maintained although it
      is not clear that is really needed. There appears to be a great deal of
      blind copy and paste of this code.

      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: Kukjin Kim <kgene@xxxxxxxxxx>
      Cc: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Cc: Stephen Warren <swarren@xxxxxxxxxxxxx>
      Cc: Lee Jones <lee@xxxxxxxxxx>
      Cc: Alexander Shiyan <shc_work@xxxxxxx>
      Cc: Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx>
      Cc: linux-rpi-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: linux-samsung-soc@xxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1440889285-5637-3-git-send-email-robh@xxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit ca0141de743dc7760fdfeb9210b82dadf6d9b221
  Author: Rob Herring <robh@xxxxxxxxxx>
  Date:   Sat Aug 29 18:01:21 2015 -0500

      gpu/drm: Kill off set_irq_flags usage

      set_irq_flags is ARM specific with custom flags which have genirq
      equivalents. Convert drivers to use the genirq interfaces directly, so we
      can kill off set_irq_flags. The translation of flags is as follows:

      IRQF_VALID -> !IRQ_NOREQUEST
      IRQF_PROBE -> !IRQ_NOPROBE
      IRQF_NOAUTOEN -> IRQ_NOAUTOEN

      For IRQs managed by an irqdomain, the irqdomain core code handles clearing
      and setting IRQ_NOREQUEST already, so there is no need to do this in
      .map() functions and we can simply remove the set_irq_flags calls. Some
      users also modify IRQ_NOPROBE and this has been maintained although it
      is not clear that is really needed. There appears to be a great deal of
      blind copy and paste of this code.

      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: David Airlie <airlied@xxxxxxxx>
      Cc: dri-devel@xxxxxxxxxxxxxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit aa57e0b281453334267e836d15cfdb933f6d6f97
  Merge: 865ca08 84cba17
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 16 07:53:33 2015 -0700

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6

      Pull crypto fixes from Herbert Xu:
       "This fixes the following issues:

         - The selftest overreads the IV test vector.

        - Fix potential infinite loop in sunxi-ss driver.

         - Fix powerpc build failure when VMX is set without VSX"

      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
        crypto: testmgr - don't copy from source IV too much
        crypto: sunxi-ss - Fix a possible driver hang with ciphers
        crypto: vmx - VMX crypto should depend on CONFIG_VSX

  commit 03da3ff1cfcd7774c8780d2547ba0d995f7dc03d
  Author: David Woodhouse <dwmw2@xxxxxxxxxxxxx>
  Date:   Wed Sep 16 14:10:03 2015 +0100

      x86/platform: Fix Geode LX timekeeping in the generic x86 build

      In 2007, commit 07190a08eef36 ("Mark TSC on GeodeLX reliable")
      bypassed verification of the TSC on Geode LX. However, this code
      (now in the check_system_tsc_reliable() function in
      arch/x86/kernel/tsc.c) was only present if CONFIG_MGEODE_LX was
      set.

      OpenWRT has recently started building its generic Geode target
      for Geode GX, not LX, to include support for additional
      platforms. This broke the timekeeping on LX-based devices,
      because the TSC wasn't marked as reliable:
      https://dev.openwrt.org/ticket/20531

      By adding a runtime check on is_geode_lx(), we can also include
      the fix if CONFIG_MGEODEGX1 or CONFIG_X86_GENERIC are set, thus
      fixing the problem.

      Signed-off-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Cc: Andres Salomon <dilinger@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Marcelo Tosatti <marcelo@xxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Link: http://lkml.kernel.org/r/1442409003.131189.87.camel@xxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit ca09f02f122b2ecb0f5ddfc5fd47b29ed657d4fd
  Author: Marek Majtyka <marek.majtyka@xxxxxxxxx>
  Date:   Wed Sep 16 12:04:55 2015 +0200

      arm: KVM: Fix incorrect device to IPA mapping

      A critical bug has been found in device memory stage1 translation for
      VMs with more then 4GB of address space. Once vm_pgoff size is smaller
      then pa (which is true for LPAE case, u32 and u64 respectively) some
      more significant bits of pa may be lost as a shift operation is performed
      on u32 and later cast onto u64.

      Example: vm_pgoff(u32)=0x00210030, PAGE_SHIFT=12
              expected pa(u64):   0x0000002010030000
              produced pa(u64):   0x0000000010030000

      The fix is to change the order of operations (casting first onto 
phys_addr_t
      and then shifting).

      Reviewed-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      [maz: fixed changelog and patch formatting]
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Marek Majtyka <marek.majtyka@xxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 1713e5aa05fff3951e747548b373bd2c81be4e7a
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Wed Sep 16 10:54:37 2015 +0100

      arm64: KVM: Fix user access for debug registers

      When setting the debug register from userspace, make sure that
      copy_from_user() is called with its parameters in the expected
      order. It otherwise doesn't do what you think.

      Fixes: 84e690bfbed1 ("KVM: arm64: introduce vcpu->arch.debug_ptr")
      Reported-by: Peter Maydell <peter.maydell@xxxxxxxxxx>
      Cc: Alex Bennée <alex.bennee@xxxxxxxxxx>
      Reviewed-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit bd0b9ac405e1794d72533c3d487aa65b6b955a0c
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Sep 14 10:42:37 2015 +0200

      genirq: Remove irq argument from irq flow handlers

      Most interrupt flow handlers do not use the irq argument. Those few
      which use it can retrieve the irq number from the irq descriptor.

      Remove the argument.

      Search and replace was done with coccinelle and some extra helper
      scripts around it. Thanks to Julia for her help!

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Julia Lawall <Julia.Lawall@xxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>

  commit b237721c5d95082a803c0be686f56d2dd1de995b
  Author: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
  Date:   Mon Jun 1 16:05:43 2015 +0800

      genirq: Move field 'msi_desc' from irq_data into irq_common_data

      MSI descriptors are per-irq instead of per irqchip, so move it into
      struct irq_common_data.

      Signed-off-by: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
      Cc: Tony Luck <tony.luck@xxxxxxxxx>
      Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Cc: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
      Cc: Yinghai Lu <yinghai@xxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: Kevin Cernekee <cernekee@xxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Marc Zyngier <marc.zyngier@xxxxxxx>
      Link: 
http://lkml.kernel.org/r/1433145945-789-35-git-send-email-jiang.liu@xxxxxxxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 9df872faa7e1619e9278bec00ceaed2236533530
  Author: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
  Date:   Wed Jun 3 11:47:50 2015 +0800

      genirq: Move field 'affinity' from irq_data into irq_common_data

      Irq affinity mask is per-irq instead of per irqchip, so move it into
      struct irq_common_data.

      Signed-off-by: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
      Cc: Tony Luck <tony.luck@xxxxxxxxx>
      Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Cc: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
      Cc: Yinghai Lu <yinghai@xxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: Kevin Cernekee <cernekee@xxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1433303281-27688-1-git-send-email-jiang.liu@xxxxxxxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit af7080e040d223b5e7d0a8de28f7cea24ef017c4
  Author: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
  Date:   Mon Jun 1 16:05:21 2015 +0800

      genirq: Move field 'handler_data' from irq_data into irq_common_data

      Handler data (handler_data) is per-irq instead of per irqchip, so move
      it into struct irq_common_data.

      Signed-off-by: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
      Cc: Tony Luck <tony.luck@xxxxxxxxx>
      Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Cc: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
      Cc: Yinghai Lu <yinghai@xxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: Kevin Cernekee <cernekee@xxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Marc Zyngier <marc.zyngier@xxxxxxx>
      Link: 
http://lkml.kernel.org/r/1433145945-789-13-git-send-email-jiang.liu@xxxxxxxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 449e9cae58b06be1293858ec8e5d8cb728238baa
  Author: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
  Date:   Mon Jun 1 16:05:16 2015 +0800

      genirq: Move field 'node' from irq_data into irq_common_data

      NUMA node information is per-irq instead of per-irqchip, so move it into
      struct irq_common_data. Also use CONFIG_NUMA to guard 
irq_common_data.node.

      Signed-off-by: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
      Cc: Tony Luck <tony.luck@xxxxxxxxx>
      Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Cc: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
      Cc: Yinghai Lu <yinghai@xxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: Kevin Cernekee <cernekee@xxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1433145945-789-8-git-send-email-jiang.liu@xxxxxxxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 4df7f54d16ebe9c37631182de84c4347f0e44db3
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Tue Sep 15 13:19:16 2015 +0200

      irqchip/gic-v3: Use IRQD_FORWARDED_TO_VCPU flag

      Get rid of the handler_data abuse.

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Acked-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 714665351cc718e01f0ce34ef5325932d56d8b4e
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Tue Sep 15 12:37:36 2015 +0200

      irqchip/gic: Use IRQD_FORWARDED_TO_VCPU flag

      Get rid of the handler_data abuse.

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Acked-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit fc5697126aa074c289df5e8baae28e115963023f
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Tue Sep 15 12:33:42 2015 +0200

      genirq: Provide IRQD_FORWARDED_TO_VCPU status flag

      Provide a irq data flag to mark an irq forwarded to a VCPU along with
      the accessor functions.

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Acked-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 755d119a6204974b2005a98549a48a75a7f5010b
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Wed Sep 16 14:37:12 2015 +0200

      genirq: Simplify irq_data_to_desc()

      Avoid the lookup of irq_desc and use the same mechanism for
      hierarchical and flat irqdomains.

      Based-on-a-patch-from: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 123236ccacc933daac3b39c5eb1f0011c70d41d8
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Wed Sep 16 12:54:23 2015 +0200

      genirq: Remove __irq_set_handler_locked()

      All users converted to irq_set_handler_locked()

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 7c51173adde2ec520348812214704313f5b36f75
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Wed Sep 16 12:52:53 2015 +0200

      pinctrl/pistachio: Use irq_set_handler_locked

      Use irq_set_handler_locked() as it avoids a redundant lookup of the
      irq descriptor. Search and replacement was done with coccinelle:

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Julia Lawall <julia.lawall@xxxxxxx>
      Cc: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Cc: linux-gpio@xxxxxxxxxxxxxxx

  commit a7147db0f5184954687546d430aed65cce483ffa
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Wed Sep 16 12:51:00 2015 +0200

      gpio: vf610: Use irq_set_handler_locked

      Use irq_set_handler_locked() as it avoids a redundant lookup of the
      irq descriptor. Search and replacement was done with coccinelle:

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Julia Lawall <julia.lawall@xxxxxxx>
      Cc: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Cc: linux-gpio@xxxxxxxxxxxxxxx

  commit 9ca86b204b3c874e6ada28309f607e3aa74d60a9
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Tue Jun 23 15:52:36 2015 +0200

      powerpc/mpc8xx: Use irq_set_handler_locked()

      Use irq_set_handler_locked() as it avoids a redundant lookup of the
      irq descriptor.

      Search and replacement was done with coccinelle:

      @@
      struct irq_data *d;
      expression E1;
      @@

      -__irq_set_handler_locked(d->irq, E1);
      +irq_set_handler_locked(d, E1);

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: Julia Lawall <julia.lawall@xxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Cc: Paul Mackerras <paulus@xxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: linuxppc-dev@xxxxxxxxxxxxxxxx

  commit 9758a7b0e5fdd5a08bcc73540bb3b98d59295a6d
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Tue Jun 23 15:52:34 2015 +0200

      powerpc/ipic: Use irq_set_handler_locked()

      Use irq_set_handler_locked() as it avoids a redundant lookup of the
      irq descriptor.

      Search and replacement was done with coccinelle:

      @@
      struct irq_data *d;
      expression E1;
      @@

      -__irq_set_handler_locked(d->irq, E1);
      +irq_set_handler_locked(d, E1);

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: Julia Lawall <julia.lawall@xxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Cc: Paul Mackerras <paulus@xxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: Anton Blanchard <anton@xxxxxxxxx>
      Cc: linuxppc-dev@xxxxxxxxxxxxxxxx

  commit e9e879a3d6cecc4258294c674627045da648fab0
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Tue Jun 23 15:52:32 2015 +0200

      powerpc/cpm2: Use irq_set_handler_locked()

      Use irq_set_handler_locked() as it avoids a redundant lookup of the
      irq descriptor.

      Search and replacement was done with coccinelle:

      @@
      struct irq_data *d;
      expression E1;
      @@

      -__irq_set_handler_locked(d->irq, E1);
      +irq_set_handler_locked(d, E1);

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: Julia Lawall <julia.lawall@xxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Cc: Paul Mackerras <paulus@xxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: linuxppc-dev@xxxxxxxxxxxxxxxx

  commit 6b83bd941479e99f6890ed4b5c54cb1f43c7146f
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Tue Jun 23 15:52:31 2015 +0200

      powerpc/mpc52xx: Use irq_set_handler_locked()

      Use irq_set_handler_locked() as it avoids a redundant lookup of the
      irq descriptor.

      Search and replacement was done with coccinelle:

      @@
      struct irq_data *d;
      expression E1;
      @@

      -__irq_set_handler_locked(d->irq, E1);
      +irq_set_handler_locked(d, E1);

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: Julia Lawall <julia.lawall@xxxxxxx>
      Cc: Anatolij Gustschin <agust@xxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Cc: Paul Mackerras <paulus@xxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: linuxppc-dev@xxxxxxxxxxxxxxxx

  commit 04bb92e4b4cf06a66889d37b892b78f926faa9d4
  Author: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
  Date:   Wed Sep 16 19:31:11 2015 +0800

      KVM: vmx: fix VPID is 0000H in non-root operation

      Reference SDM 28.1:

      The current VPID is 0000H in the following situations:
      - Outside VMX operation. (This includes operation in system-management
        mode under the default treatment of SMIs and SMM with VMX operation;
        see Section 34.14.)
      - In VMX root operation.
      - In VMX non-root operation when the â??enable VPIDâ?? VM-execution 
control
        is 0.

      The VPID should never be 0000H in non-root operation when "enable VPID"
      VM-execution control is 1. However, commit 34a1cd60 ("kvm: x86: vmx:
      move some vmx setting from vmx_init() to hardware_setup()") remove the
      codes which reserve 0000H for VMX root operation.

      This patch fix it by again reserving 0000H for VMX root operation.

      Cc: stable@xxxxxxxxxxxxxxx # 3.19+
      Fixes: 34a1cd60d17f62c1f077c1478a6c2ca8c3d17af4
      Reported-by: Wincy Van <fanwenyi0529@xxxxxxxxx>
      Signed-off-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 36b35d5d807b7e57aff7d08e63de8b17731ee211
  Author: Aneesh Kumar K.V <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 15 12:30:08 2015 +0530

      powerpc/mm: Recompute hash value after a failed update

      If we had secondary hash flag set, we ended up modifying hash value in
      the updatepp code path. Hence with a failed updatepp we will be using
      a wrong hash value for the following hash insert. Fix this by
      recomputing hash before insert.

      Without this patch we can end up with using wrong slot number in linux
      pte. That can result in us missing an hash pte update or invalidate
      which can cause memory corruption or even machine check.

      Fixes: 6d492ecc6489 ("powerpc/THP: Add code to handle HPTE faults for 
hugepages")
      Cc: stable@xxxxxxxxxxxxxxx # v3.11+
      Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Paul Mackerras <paulus@xxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 655471f54c2e395ba29ae4156ba0f49928177cc1
  Author: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 15 11:24:17 2015 +1000

      powerpc/boot: Specify ABI v2 when building an LE boot wrapper

      The kernel does it, not the boot wrapper, which breaks with some
      cross compilers that still default to ABI v1.

      Fixes: 147c05168fc8 ("powerpc/boot: Add support for 64bit little endian 
wrapper")
      Cc: stable@xxxxxxxxxxxxxxx # v3.16+
      Signed-off-by: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit e902e14549e04c040fb6e15785efd35f810a223a
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Wed Sep 16 12:36:04 2015 +0200

      genirq: Remove __irq_set_chip_handler_name_locked()

      All users converted to irq_set_chip_handler_name_locked()

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit b9a5ec33e32069a2f8af09d46266091602902bf4
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Wed Sep 16 12:32:40 2015 +0200

      pinctrl: sunxi: Use irq_set_chip_handler_name_locked()

      __irq_set_chip_handler_name_locked() is about to be replaced. Use
      irq_set_chip_handler_name_locked() instead.

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Cc: linux-gpio@xxxxxxxxxxxxxxx

  commit 62bea5bff486644ecf363fe8a1a2f6f32c614a49
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Tue Sep 15 18:27:57 2015 +0200

      KVM: add halt_attempted_poll to VCPU stats

      This new statistic can help diagnosing VCPUs that, for any reason,
      trigger bad behavior of halt_poll_ns autotuning.

      For example, say halt_poll_ns = 480000, and wakeups are spaced exactly
      like 479us, 481us, 479us, 481us. Then KVM always fails polling and wastes
      10+20+40+80+160+320+480 = 1110 microseconds out of every
      479+481+479+481+479+481+479 = 3359 microseconds. The VCPU then
      is consuming about 30% more CPU than it would use without
      polling.  This would show as an abnormally high number of
      attempted polling compared to the successful polls.

      Acked-by: Christian Borntraeger <borntraeger@xxxxxxxxxx<
      Reviewed-by: David Matlack <dmatlack@xxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit ad2aa04218de9bd734d593adb0ac59854ec0cb68
  Author: Pierre Morel <pmorel@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 10 16:35:08 2015 +0200

      virtio/s390: handle failures of READ_VQ_CONF ccw

      In virtio_ccw_read_vq_conf() the return value of ccw_io_helper()
      was not checked.
      If the configuration could not be read properly, we'd wrongly assume a
      queue size of 0.

      Let's propagate any I/O error to virtio_ccw_setup_vq() so it may
      properly fail.

      Signed-off-by: Pierre Morel <pmorel@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Cornelia Huck <cornelia.huck@xxxxxxxxxx>
      Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>

  commit fd2e8d4300c56f9660679d629c449118e14c00cd
  Author: Michael S. Tsirkin <mst@xxxxxxxxxx>
  Date:   Wed Sep 9 22:26:25 2015 +0300

      tools/virtio: propagate V=X to kernel build

      Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>

  commit 4e9fa50c6ccbebef0c4a4aae84090badf81359e6
  Author: Michael S. Tsirkin <mst@xxxxxxxxxx>
  Date:   Wed Sep 9 22:24:56 2015 +0300

      vhost: move features to core

      virtio 1 and any layout are core features, move them
      there. This fixes vhost test.

      Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>

  commit 9b55613f42e8d40d5c9ccb8970bde6af4764b2ab
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 16:44:02 2015 +0100

      ARM: fix Thumb2 signal handling when ARMv6 is enabled

      When a kernel is built covering ARMv6 to ARMv7, we omit to clear the
      IT state when entering a signal handler.  This can cause the first
      few instructions to be conditionally executed depending on the parent
      context.

      In any case, the original test for >= ARMv7 is broken - ARMv6 can have
      Thumb-2 support as well, and an ARMv6T2 specific build would omit this
      code too.

      Relax the test back to ARMv6 or greater.  This results in us always
      clearing the IT state bits in the PSR, even on CPUs where these bits
      are reserved.  However, they're reserved for the IT state, so this
      should cause no harm.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Fixes: d71e1352e240 ("Clear the IT state when invoking a Thumb-2 signal 
handler")
      Acked-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Tested-by: H. Nikolaus Schaller <hns@xxxxxxxxxxxxx>
      Tested-by: Grazvydas Ignotas <notasas@xxxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit f6cf87f748ff9480f97ff9c5caf6d6faacf52aa1
  Merge: 91a4dc9 c5e6bd2
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Wed Sep 16 09:06:54 2015 +0200

      Merge tag 'perf-urgent-for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent

      Pull perf/urgent fixes from Arnaldo Carvalho de Melo:

      - Fix segfault pressing -> in 'perf top' with no hist entries. (Wang Nan)

         E.g:
        perf top -e page-faults --pid 11400 # 11400 generates no page-fault

      - Fix propagation of thread and cpu maps, that got broken when doing 
incomplete
        changes to better support events with a PMU cpu mask, leading to Intel 
PT to
        fail with an error like:

          $ perf record -e intel_pt//u uname
          Error: The sys_perf_event_open() syscall returned with
                    22 (Invalid argument) for event (sched:sched_switch).

        Because intel_pt adds that sched:sched_switch evsel to the evlist after 
the
        thread/cpu maps were propagated to the evsels, fix it. (Adrian Hunter)

      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 8315b77d72c5f0b18ceb513303d845e73166133c
  Author: Li Jun <jun.li@xxxxxxxxxxxxx>
  Date:   Wed Sep 16 14:46:32 2015 +0800

      usb: chipidea: imx: fix a typo for imx6sx

      Use imx6sx instead of imx6sl's platform flags for imx6sx.

      Fixes: e14db48dfcf3 ("usb: chipidea: imx: add runtime power management 
support")
      Cc: <stable@xxxxxxxxxxxxxxx> # v4.1+
      Signed-off-by: Li Jun <jun.li@xxxxxxxxxxxxx>
      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit 1f0bd44e937468446d080b98b5669844744c24a1
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Wed Sep 16 02:17:49 2015 +0200

      cpufreq: acpi-cpufreq: Use cpufreq_cpu_get_raw() in ->get()

      cpufreq_cpu_get() called by get_cur_freq_on_cpu() is overkill,
      because the ->get() callback is always invoked in a context in
      which all of the conditions checked by cpufreq_cpu_get() are
      guaranteed to be satisfied.

      Use cpufreq_cpu_get_raw() instead of it and drop the
      corresponding cpufreq_cpu_put() from get_cur_freq_on_cpu().

      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>

  commit f0b2e563bc419df7c1b3d2f494574c25125f6aed
  Author: Jeff Moyer <jmoyer@xxxxxxxxxx>
  Date:   Fri Aug 14 16:15:32 2015 -0400

      blockdev: don't set S_DAX for misaligned partitions

      The dax code doesn't currently support misaligned partitions,
      so disable O_DIRECT via dax until such time as that support
      materializes.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Suggested-by: Boaz Harrosh <boaz@xxxxxxxxxxxxx>
      Signed-off-by: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit e94f5a2285fc94202a9efb2c687481f29b64132c
  Author: Jeff Moyer <jmoyer@xxxxxxxxxx>
  Date:   Fri Aug 14 16:15:31 2015 -0400

      dax: fix O_DIRECT I/O to the last block of a blockdev

      commit bbab37ddc20b (block: Add support for DAX reads/writes to
      block devices) caused a regression in mkfs.xfs.  That utility
      sets the block size of the device to the logical block size
      using the BLKBSZSET ioctl, and then issues a single sector read
      from the last sector of the device.  This results in the dax_io
      code trying to do a page-sized read from 512 bytes from the end
      of the device.  The result is -ERANGE being returned to userspace.

      The fix is to align the block to the page size before calling
      get_block.

      Thanks to willy for simplifying my original patch.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Tested-by:  Linda Knippers <linda.knippers@xxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 20471ed4d403a5f4de6aa0c10cd1e446f7f2b3c7
  Author: Julia Lawall <julia.lawall@xxxxxxx>
  Date:   Sun Sep 13 14:15:27 2015 +0200

      dccp: drop null test before destroy functions

      Remove unneeded NULL test.

      The semantic patch that makes this change is as follows:
      (http://coccinelle.lip6.fr/)

      // <smpl>
      @@
      expression x;
      @@

      -if (x != NULL)
        \(kmem_cache_destroy\|mempool_destroy\|dma_pool_destroy\)(x);

      @@
      expression x;
      @@

      -if (x != NULL) {
        \(kmem_cache_destroy\|mempool_destroy\|dma_pool_destroy\)(x);
        x = NULL;
      -}
      // </smpl>

      Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit adf78edac09f9640cd9676571586c4be46fb527c
  Author: Julia Lawall <julia.lawall@xxxxxxx>
  Date:   Sun Sep 13 14:15:18 2015 +0200

      net: core: drop null test before destroy functions

      Remove unneeded NULL test.

      The semantic patch that makes this change is as follows:
      (http://coccinelle.lip6.fr/)

      // <smpl>
      @@ expression x; @@
      -if (x != NULL) {
        \(kmem_cache_destroy\|mempool_destroy\|dma_pool_destroy\)(x);
        x = NULL;
      -}
      // </smpl>

      Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 58d29e3ce903dcafacee9e355225d64922325cf0
  Author: Julia Lawall <julia.lawall@xxxxxxx>
  Date:   Sun Sep 13 14:15:03 2015 +0200

      atm: he: drop null test before destroy functions

      Remove unneeded NULL test.

      The semantic patch that makes this change is as follows:
      (http://coccinelle.lip6.fr/)

      // <smpl>
      @@ expression x; @@
      -if (x != NULL)
        \(kmem_cache_destroy\|mempool_destroy\|dma_pool_destroy\)(x);
      // </smpl>

      Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 982b527004826b40de1e821b123c70f05b41496c
  Author: Jesse Gross <jesse@xxxxxxxxxx>
  Date:   Fri Sep 11 18:38:28 2015 -0700

      openvswitch: Fix mask generation for nested attributes.

      Masks were added to OVS flows in a way that was backwards compatible
      with userspace programs that did not generate masks. As a result, it is
      possible that we may receive flows that do not have a mask and we need
      to synthesize one.

      Generating a mask requires iterating over attributes and descending into
      nested attributes. For each level we need to know the size to generate the
      correct mask. We do this with a linked table of attribute types.

      Although the logic to handle these nested attributes was there in concept,
      there are a number of bugs in practice. Examples include incomplete links
      between tables, variable length attributes being treated as nested and
      missing sanity checks.

      Signed-off-by: Jesse Gross <jesse@xxxxxxxxxx>
      Acked-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 865ca084fdc68cd9b658da4b098008278da8fed3
  Author: Luck, Tony <tony.luck@xxxxxxxxx>
  Date:   Tue Sep 15 13:50:18 2015 -0700

      ia64: Enable userfaultfd and membarrier system calls

      Signed-off-by: Tony Luck <tony.luck@xxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 9fd60088ffed7573c2d409ddc63a2150a5edd5d8
  Author: Jenny Derzhavetz <jennyf@xxxxxxxxxxxx>
  Date:   Sun Sep 6 14:52:26 2015 +0300

      iser-target: Skip data copy if all the command data comes as immediate

      Given that supporting zcopy immediate data for all IOs requires
      iser driver to use its own buffer allocations, we settle with
      avoiding data copy for IOs with data length of up to 8K (which
      is more latency sensitive anyway).

      This trims IO write latency by up to 3us and increase IOPs
      by up to 40% by saving CPU time doing sg_copy_from_buffer
      (8K IO size is the obvious winner here).

      Signed-off-by: Jenny Derzhavetz <jennyf@xxxxxxxxxxxx>
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit 4366b19ca5eb15e63d6640565ade135cf06be91a
  Author: Jenny Derzhavetz <jennyf@xxxxxxxxxxxx>
  Date:   Sun Sep 6 14:52:25 2015 +0300

      iser-target: Change the recv buffers posting logic

      iser target batches post recv operations to avoid
      the overhead of acquiring the recv queue lock and
      posting a HW doorbell for each command.

      We change it to be per command in order to support
      zcopy immediate data for IOs that fits in the 8K
      transfer boundary (in the next patch).

      (Fix minor patch fuzz due to ib_mr removal - nab)

      Signed-off-by: Jenny Derzhavetz <jennyf@xxxxxxxxxxxx>
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit bd3792205aaeb79b994338af2e5499fa503d79c7
  Author: Jenny Derzhavetz <jennyf@xxxxxxxxxxxx>
  Date:   Sun Sep 6 14:52:24 2015 +0300

      iser-target: Fix pending connections handling in target stack shutdown 
sequnce

      Instead of handing a connection to the iscsi stack
      for processing right after accepting (rdma_accept) we only hand
      the connection to the iscsi core after we reached to a connected
      state (ESTABLISHED CM event). This will prevent two error scenrios:

      1. race between rdma connection teardown and iscsi login sequence
         reported by Nic in: (ce9a9fc20a78a "iser-target: Fix REJECT CM event
         use-after-free OOPs")

      2. target stack shutdown sequence race with constant login attempts by
         multiple initiators.

      We address this by maintaining two queues at the isert_np level:
      - accepted: connections that were accepted but have not reached
        connected state (might get rejected, unreachable or error).
      - pending: connections in connected state, but have yet to handed
        to the iscsi core for login processing. iser connections are promoted
        to the pending queue only from the accepted queue.

      This way the iscsi core now will only handle functional iser connections
      and once we shutdown the target stack, we look for any stales that
      got left behind so we can safely release them.

      Signed-off-by: Jenny Derzhavetz <jennyf@xxxxxxxxxxxx>
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # v3.10+
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit ed8cb0a4378c0e7035db047987fe0e7309020ab5
  Author: Jenny Derzhavetz <jennyf@xxxxxxxxxxxx>
  Date:   Sun Sep 6 14:52:23 2015 +0300

      iser-target: Remove np_ prefix from isert_np members

      These are always referenced from np-> so no need
      for the prefix.

      Signed-off-by: Jenny Derzhavetz <jennyf@xxxxxxxxxxxx>
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit f27dfa1f0eb91494577a395e6b8a9aac2832e9cf
  Author: Jenny Derzhavetz <jennyf@xxxxxxxxxxxx>
  Date:   Sun Sep 6 14:52:22 2015 +0300

      iser-target: Remove unused variables

      Signed-off-by: Jenny Derzhavetz <jennyf@xxxxxxxxxxxx>
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit 3e03c4b01da3e6a5f3081eb0aa252490fe83e352
  Author: Jenny Derzhavetz <jennyf@xxxxxxxxxxxx>
  Date:   Sun Sep 6 14:52:21 2015 +0300

      iser-target: Put the reference on commands waiting for unsol data

      The iscsi target core teardown sequence calls wait_conn for
      all active commands to finish gracefully by:
      - move the queue-pair to error state
      - drain all the completions
      - wait for the core to finish handling all session commands

      However, when tearing down a session while there are sequenced
      commands that are still waiting for unsolicited data outs, we can
      block forever as these are missing an extra reference put.

      We basically need the equivalent of iscsit_free_queue_reqs_for_conn()
      which is called after wait_conn has returned. Address this by an
      explicit walk on conn_cmd_list and put the extra reference.

      Signed-off-by: Jenny Derzhavetz <jennyf@xxxxxxxxxxxx>
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # v3.10+
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit a4c15cd957cbd728f685645de7a150df5912591a
  Author: Jenny Derzhavetz <jennyf@xxxxxxxxxxxx>
  Date:   Sun Sep 6 14:52:20 2015 +0300

      iser-target: remove command with state ISTATE_REMOVE

      As documented in iscsit_sequence_cmd:
      /*
       * Existing callers for iscsit_sequence_cmd() will silently
       * ignore commands with CMDSN_LOWER_THAN_EXP, so force this
       * return for CMDSN_MAXCMDSN_OVERRUN as well..
       */

      We need to silently finish a command when it's in ISTATE_REMOVE.
      This fixes an teardown hang we were seeing where a mis-behaved
      initiator (triggered by allocation error injections) sent us a
      cmdsn which was lower than expected.

      Signed-off-by: Jenny Derzhavetz <jennyf@xxxxxxxxxxxx>
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # v3.10+
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit 892aa01df2ad67237f213c8f9d9b491e908aa910
  Author: Sjoerd Simons <sjoerd.simons@xxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 22:25:48 2015 +0200

      net: stmmac: Use msleep rather then udelay for reset delay

      The reset delays used for stmmac are in the order of 10ms to 1 second,
      which is far too long for udelay usage, so switch to using msleep.

      Practically this fixes the PHY not being reliably detected in some cases
      as udelay wouldn't actually delay for long enough to let the phy
      reliably be reset.

      Signed-off-by: Sjoerd Simons <sjoerd.simons@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d64f69b0373a7d0bcec8b5da7712977518a8f42b
  Author: Roopa Prabhu <roopa@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 15 14:44:29 2015 -0700

      rtnetlink: catch -EOPNOTSUPP errors from ndo_bridge_getlink

      problem reported:
        kernel 4.1.3
        ------------
        # bridge vlan
        port    vlan ids
        eth0     1 PVID Egress Untagged
                90
                91
                92
                93
                94
                95
                96
                97
                98
                99
                100

        vmbr0    1 PVID Egress Untagged
                94

        kernel 4.2
        -----------
        # bridge vlan
        port    vlan ids

      ndo_bridge_getlink can return -EOPNOTSUPP when an interfaces
      ndo_bridge_getlink op is set to switchdev_port_bridge_getlink
      and CONFIG_SWITCHDEV is not defined. This today can happen to
      bond, rocker and team devices. This patch adds -EOPNOTSUPP
      checks after calls to ndo_bridge_getlink.

      Fixes: 85fdb956726ff2a ("switchdev: cut over to new 
switchdev_port_bridge_getlink")
      Reported-by: Alexandre DERUMIER <aderumier@xxxxxxxxx>
      Signed-off-by: Roopa Prabhu <roopa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit daf158d0d544cec80b7b30deff8cfc59a6e17610
  Author: Simon Guinot <simon.guinot@xxxxxxxxxxxx>
  Date:   Tue Sep 15 22:41:21 2015 +0200

      net: mvneta: fix DMA buffer unmapping in mvneta_rx()

      This patch fixes a regression introduced by the commit a84e32894191
      ("net: mvneta: fix refilling for Rx DMA buffers"). Due to this commit
      the newly allocated Rx buffers are DMA-unmapped in place of those passed
      to the networking stack. Obviously, this causes data corruptions.

      This patch fixes the issue by ensuring that the right Rx buffers are
      DMA-unmapped.

      Reported-by: Oren Laskin <oren@xxxxxxxxxx>
      Signed-off-by: Simon Guinot <simon.guinot@xxxxxxxxxxxx>
      Fixes: a84e32894191 ("net: mvneta: fix refilling for Rx DMA buffers")
      Cc: <stable@xxxxxxxxxxxxxxx> # v3.8+
      Tested-by: Oren Laskin <oren@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 244b7f4324895e7c796cc94e8a8f70288ed20bdc
  Merge: e8684c8 70da5b5
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Sep 15 14:53:46 2015 -0700

      Merge branch 'ip6tunnel_dst'

      Martin KaFai Lau says:

      ====================
      ipv6: Fix dst_entry refcnt bugs in ip6_tunnel

      v4:
      - Fix a compilation error in patch 5 when CONFIG_LOCKDEP is turned on and
        re-test it

      v3:
      - Merge a 'if else if' test in patch 4
      - Use rcu_dereference_protected in patch 5 to fix a sparse check when
        CONFIG_SPARSE_RCU_POINTER is enabled

      v2:
      - Add patch 4 and 5 to remove the spinlock

      v1:
      This patch series is to fix the dst refcnt bugs in ip6_tunnel.

      Patch 1 and 2 are the prep works.  Patch 3 is the fix.

      I can reproduce the bug by adding and removing the ip6gre tunnel
      while running a super_netperf TCP_CRR test.  I get the following
      trace by adding WARN_ON_ONCE(newrefcnt < 0) to dst_release():

      [  312.760432] ------------[ cut here ]------------
      [  312.774664] WARNING: CPU: 2 PID: 10263 at net/core/dst.c:288 
dst_release+0xf3/0x100()
      [  312.776041] Modules linked in: k10temp coretemp hwmon ip6_gre 
ip6_tunnel tunnel6 ipmi_devintf ipmi_ms\
      ghandler ip6table_filter ip6_tables xt_NFLOG nfnetlink_log nfnetlink 
xt_comment xt_statistic iptable_fil\
      ter ip_tables x_tables nfsv3 nfs_acl nfs fscache lockd grace mptctl 
netconsole autofs4 rpcsec_gss_krb5 a\
      uth_rpcgss oid_registry sunrpc ipv6 dm_mod loop iTCO_wdt 
iTCO_vendor_support serio_raw rtc_cmos pcspkr i\
      2c_i801 i2c_core lpc_ich mfd_core ehci_pci ehci_hcd e1000e mlx4_en ptp 
pps_core vxlan udp_tunnel ip6_udp\
      _tunnel mlx4_core sg button ext3 jbd mpt2sas raid_class
      [  312.785302] CPU: 2 PID: 10263 Comm: netperf Not tainted 
4.2.0-rc8-00046-g4db9b63-dirty #15
      [  312.791695] Hardware name: Quanta Freedom /Windmill-EP, BIOS F03_3B04 
09/12/2013
      [  312.792965]  ffffffff819dca2c ffff8811dfbdf6f8 ffffffff816537de 
ffff88123788fdb8
      [  312.794263]  0000000000000000 ffff8811dfbdf738 ffffffff81052646 
ffff8811dfbdf768
      [  312.795593]  ffff881203a98180 00000000ffffffff ffff88242927a000 
ffff88120a2532e0
      [  312.796946] Call Trace:
      [  312.797380]  [<ffffffff816537de>] dump_stack+0x45/0x57
      [  312.798288]  [<ffffffff81052646>] warn_slowpath_common+0x86/0xc0
      [  312.799699]  [<ffffffff8105273a>] warn_slowpath_null+0x1a/0x20
      [  312.800852]  [<ffffffff8159f9b3>] dst_release+0xf3/0x100
      [  312.801834]  [<ffffffffa03f1308>] ip6_tnl_dst_store+0x48/0x70 
[ip6_tunnel]
      [  312.803738]  [<ffffffffa03fd0b6>] ip6gre_xmit2+0x536/0x720 [ip6_gre]
      [  312.804774]  [<ffffffffa03fd40a>] ip6gre_tunnel_xmit+0x16a/0x410 
[ip6_gre]
      [  312.805986]  [<ffffffff8159934b>] dev_hard_start_xmit+0x23b/0x390
      [  312.808810]  [<ffffffff815a2f5f>] ? neigh_destroy+0xef/0x140
      [  312.809843]  [<ffffffff81599a6c>] __dev_queue_xmit+0x48c/0x4f0
      [  312.813931]  [<ffffffff81599ae3>] dev_queue_xmit_sk+0x13/0x20
      [  312.814993]  [<ffffffff815a0832>] neigh_direct_output+0x12/0x20
      [  312.817448]  [<ffffffffa021d633>] ip6_finish_output2+0x183/0x460 [ipv6]
      [  312.818762]  [<ffffffff81306fc5>] ? find_next_bit+0x15/0x20
      [  312.819671]  [<ffffffffa021fd79>] ip6_finish_output+0x89/0xe0 [ipv6]
      [  312.820720]  [<ffffffffa021fe14>] ip6_output+0x44/0xe0 [ipv6]
      [  312.821762]  [<ffffffff815c8809>] ? nf_hook_slow+0x69/0xc0
      [  312.823123]  [<ffffffffa021d232>] ip6_xmit+0x242/0x4c0 [ipv6]
      [  312.824073]  [<ffffffffa021c9f0>] ? ac6_proc_exit+0x20/0x20 [ipv6]
      [  312.825116]  [<ffffffffa024c751>] inet6_csk_xmit+0x61/0xa0 [ipv6]
      [  312.826127]  [<ffffffff815eb590>] tcp_transmit_skb+0x4f0/0x9b0
      [  312.827441]  [<ffffffff815ed267>] tcp_connect+0x637/0x7a0
      [  312.828327]  [<ffffffffa0245906>] tcp_v6_connect+0x2d6/0x550 [ipv6]
      [  312.829581]  [<ffffffff81606f05>] __inet_stream_connect+0x95/0x2f0
      [  312.830600]  [<ffffffff810ae13a>] ? hrtimer_try_to_cancel+0x1a/0xf0
      [  312.833456]  [<ffffffff812fba19>] ? timerqueue_add+0x59/0xb0
      [  312.834407]  [<ffffffff81607198>] inet_stream_connect+0x38/0x50
      [  312.835886]  [<ffffffff8157cb17>] SYSC_connect+0xb7/0xf0
      [  312.840035]  [<ffffffff810af6d3>] ? do_setitimer+0x1b3/0x200
      [  312.840983]  [<ffffffff810af75a>] ? alarm_setitimer+0x3a/0x70
      [  312.841941]  [<ffffffff8157d7ae>] SyS_connect+0xe/0x10
      [  312.842818]  [<ffffffff81659297>] entry_SYSCALL_64_fastpath+0x12/0x6a
      [  312.844206] ---[ end trace 43f3ecd86c3b1313 ]---
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 70da5b5c532f0ec8aa76b4f46158da5f010f34b3
  Author: Martin KaFai Lau <kafai@xxxxxx>
  Date:   Tue Sep 15 14:30:09 2015 -0700

      ipv6: Replace spinlock with seqlock and rcu in ip6_tunnel

      This patch uses a seqlock to ensure consistency between idst->dst and
      idst->cookie.  It also makes dst freeing from fib tree to undergo a
      rcu grace period.

      Signed-off-by: Martin KaFai Lau <kafai@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8e3d5be7368107f0c27a1f8126d79b01a47e9567
  Author: Martin KaFai Lau <kafai@xxxxxx>
  Date:   Tue Sep 15 14:30:08 2015 -0700

      ipv6: Avoid double dst_free

      It is a prep work to get dst freeing from fib tree undergo
      a rcu grace period.

      The following is a common paradigm:
      if (ip6_del_rt(rt))
        dst_free(rt)

      which means, if rt cannot be deleted from the fib tree, dst_free(rt) now.
      1. We don't know the ip6_del_rt(rt) failure is because it
         was not managed by fib tree (e.g. DST_NOCACHE) or it had already been
         removed from the fib tree.
      2. If rt had been managed by the fib tree, ip6_del_rt(rt) failure means
         dst_free(rt) has been called already.  A second
         dst_free(rt) is not always obviously safe.  The rt may have
         been destroyed already.
      3. If rt is a DST_NOCACHE, dst_free(rt) should not be called.
      4. It is a stopper to make dst freeing from fib tree undergo a
         rcu grace period.

      This patch is to use a DST_NOCACHE flag to indicate a rt is
      not managed by the fib tree.

      Signed-off-by: Martin KaFai Lau <kafai@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit cdf3464e6c6bd764277cbbe992cd12da735b92fb
  Author: Martin KaFai Lau <kafai@xxxxxx>
  Date:   Tue Sep 15 14:30:07 2015 -0700

      ipv6: Fix dst_entry refcnt bugs in ip6_tunnel

      Problems in the current dst_entry cache in the ip6_tunnel:

      1. ip6_tnl_dst_set is racy.  There is no lock to protect it:
         - One major problem is that the dst refcnt gets messed up. F.e.
           the same dst_cache can be released multiple times and then
           triggering the infamous dst refcnt < 0 warning message.
         - Another issue is the inconsistency between dst_cache and
           dst_cookie.

         It can be reproduced by adding and removing the ip6gre tunnel
         while running a super_netperf TCP_CRR test.

      2. ip6_tnl_dst_get does not take the dst refcnt before returning
         the dst.

      This patch:
      1. Create a percpu dst_entry cache in ip6_tnl
      2. Use a spinlock to protect the dst_cache operations
      3. ip6_tnl_dst_get always takes the dst refcnt before returning

      Signed-off-by: Martin KaFai Lau <kafai@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f230d1e891ba1da5953460516960894154f265db
  Author: Martin KaFai Lau <kafai@xxxxxx>
  Date:   Tue Sep 15 14:30:06 2015 -0700

      ipv6: Rename the dst_cache helper functions in ip6_tunnel

      It is a prep work to fix the dst_entry refcnt bugs in
      ip6_tunnel.

      This patch rename:
      1. ip6_tnl_dst_check() to ip6_tnl_dst_get() to better
         reflect that it will take a dst refcnt in the next patch.
      2. ip6_tnl_dst_store() to ip6_tnl_dst_set() to have a more
         conventional name matching with ip6_tnl_dst_get().

      Signed-off-by: Martin KaFai Lau <kafai@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a3c119d392d7d7c68865fe76f5732ca9b8164d68
  Author: Martin KaFai Lau <kafai@xxxxxx>
  Date:   Tue Sep 15 14:30:05 2015 -0700

      ipv6: Refactor common ip6gre_tunnel_init codes

      It is a prep work to fix the dst_entry refcnt bugs in ip6_tunnel.

      This patch refactors some common init codes used by both
      ip6gre_tunnel_init and ip6gre_tap_init.

      Signed-off-by: Martin KaFai Lau <kafai@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 09a77a885233e2a20dac2635a79c83ccf50a26a1
  Author: David Woodhouse <dwmw2@xxxxxxxxxxxxx>
  Date:   Tue Sep 15 16:03:36 2015 +0100

      modsign: Fix GPL/OpenSSL licence incompatibility

      The GPL does not permit us to link against the OpenSSL library. Use
      LGPL for sign-file and extract-file instead.

      [ The whole "openssl isn't compatible with gpl" is really just
        fear-mongering, but there's no reason not to make modsign LGPL, so
        nobody cares.  - Linus ]

      Reported-by: Julian Andres Klode <jak@xxxxxxxxxxxxx>
      Signed-off-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
      Reviewed-by: Julian Andres Klode <jak@xxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 237865f195f6b10e4724ce49eeb3972641da882a
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Tue Sep 15 13:18:04 2015 -0500

      PCI: Revert "PCI: Call pci_read_bridge_bases() from core instead of arch 
code"

      Revert dff22d2054b5 ("PCI: Call pci_read_bridge_bases() from core instead
      of arch code").

      Reading PCI bridge windows is not arch-specific in itself, but there is 
PCI
      core code that doesn't work correctly if we read them too early.  For
      example, Hannes found this case on an ARM Freescale i.mx6 board:

        pci_bus 0000:00: root bus resource [mem 0x01000000-0x01efffff]
        pci 0000:00:00.0: PCI bridge to [bus 01-ff]
        pci 0000:00:00.0: BAR 8: no space for [mem size 0x01000000] (mem window)
        pci 0000:01:00.0: BAR 2: failed to assign [mem size 0x00200000]
        pci 0000:01:00.0: BAR 1: failed to assign [mem size 0x00004000]
        pci 0000:01:00.0: BAR 0: failed to assign [mem size 0x00000100]

      The 00:00.0 mem window needs to be at least 3MB: the 01:00.0 device needs
      0x204100 of space, and mem windows are megabyte-aligned.

      Bus sizing can increase a bridge window size, but never *decrease* it (see
      d65245c3297a ("PCI: don't shrink bridge resources")).  Prior to
      dff22d2054b5, ARM didn't read bridge windows at all, so the "original 
size"
      was zero, and we assigned a 3MB window.

      After dff22d2054b5, we read the bridge windows before sizing the bus.  The
      firmware programmed a 16MB window (size 0x01000000) in 00:00.0, and since
      we never decrease the size, we kept 16MB even though we only needed 3MB.
      But 16MB doesn't fit in the host bridge aperture, so we failed to assign
      space for the window and the downstream devices.

      I think this is a defect in the PCI core: we shouldn't rely on the 
firmware
      to assign sensible windows.

      Ray reported a similar problem, also on ARM, with Broadcom iProc.

      Issues like this are too hard to fix right now, so revert dff22d2054b5.

      Reported-by: Hannes <oe5hpm@xxxxxxxxx>
      Reported-by: Ray Jui <rjui@xxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/CAAa04yFQEUJm7Jj1qMT57-LG7ZGtnhNDBe=PpSRa70Mj+XhW-A@xxxxxxxxxxxxxx
      Link: http://lkml.kernel.org/r/55F75BB8.4070405@xxxxxxxxxxxx
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Acked-by: Yinghai Lu <yinghai@xxxxxxxxxx>
      Acked-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>

  commit 6584d84c3e504c76ad291cc2e381bbeed59798ab
  Author: Huang Shijie <shijie.huang@xxxxxxx>
  Date:   Tue Sep 1 10:35:50 2015 +0800

      genirq: Update the comment for generic_handle_irq_desc

      __do_IRQ() was removed by commit 1c77ff2 "genirq: Remove __do_IRQ",
      but the comment referring to __do_IRQ() was left.

      Update the comment for generic_handle_irq_desc().

      Signed-off-by: Huang Shijie <shijie.huang@xxxxxxx>
      Cc: jiang.liu@xxxxxxxxxxxxxxx
      Cc: peterz@xxxxxxxxxxxxx
      Cc: rafael.j.wysocki@xxxxxxxxx
      Cc: jason@xxxxxxxxxxxxxx
      Cc: marc.zyngier@xxxxxxx
      Link: 
http://lkml.kernel.org/r/1441074950-3893-1-git-send-email-shijie.huang@xxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 3829c664b1eec243f2a355829efa40f0f414de8d
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Tue Sep 15 13:47:24 2015 +0200

      genirq: Remove stale comment

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 4cd7863ecb90010533c178fba6ecc84d5529b402
  Author: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
  Date:   Tue Sep 8 19:00:36 2015 +0200

      irqchip/renesas-irqc: Propagate wake-up settings to parent

      The renesas-irqc interrupt controller is cascaded to the GIC, but its
      driver doesn't propagate wake-up settings to the parent interrupt
      controller.

      Since commit aec89ef72ba6c944 ("irqchip/gic: Enable SKIP_SET_WAKE and
      MASK_ON_SUSPEND"), the GIC driver masks interrupts during suspend, and
      wake-up through gpio-keys now fails on r8a73a4/ape6evm.

      Fix this by propagating wake-up settings to the parent interrupt
      controller. There's no need to handle irq_set_irq_wake() failures, as
      the renesas-irqc interrupt controller is always cascaded to a GIC, and
      the GIC driver always sets SKIP_SET_WAKE since the aforementioned
      commit.

      Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Cc: Sudeep Holla <sudeep.holla@xxxxxxx>
      Cc: Magnus Damm <magnus.damm@xxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: Marc Zyngier <marc.zyngier@xxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441731636-17610-3-git-send-email-geert%2Brenesas@xxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit f4e209cdc7a00f934007f40cf885471799073b0d
  Author: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
  Date:   Tue Sep 8 19:00:35 2015 +0200

      irqchip/renesas-intc-irqpin: Propagate wake-up settings to parent

      The renesas-intc-irqpin interrupt controller is cascaded to the GIC, but
      its driver doesn't propagate wake-up settings to the parent interrupt
      controller.

      Since commit aec89ef72ba6c944 ("irqchip/gic: Enable SKIP_SET_WAKE and
      MASK_ON_SUSPEND"), the GIC driver masks interrupts during suspend, and
      wake-up through gpio-keys now fails on r8a7740/armadillo and
      sh73a0/kzm9g.

      Fix this by propagating wake-up settings to the parent interrupt
      controller. There's no need to handle irq_set_irq_wake() failures, as
      the renesas-intc-irqpin interrupt controller is always cascaded to a
      GIC, and the GIC driver always sets SKIP_SET_WAKE since the
      aforementioned commit.

      Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Cc: Sudeep Holla <sudeep.holla@xxxxxxx>
      Cc: Magnus Damm <magnus.damm@xxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: Marc Zyngier <marc.zyngier@xxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441731636-17610-2-git-send-email-geert%2Brenesas@xxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 769b5cf78e6c653c2f513649ee6c4e7a06723872
  Author: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
  Date:   Wed Sep 9 13:42:54 2015 +0200

      irqchip/renesas-intc-irqpin: Use a separate lockdep class

      The renesas-intc-irqpin interrupt controller is cascaded to the GIC.
      Hence when propagating wake-up settings to its parent interrupt
      controller, the following lockdep warning is printed:

          =============================================
          [ INFO: possible recursive locking detected ]
          4.2.0-armadillo-10725-g50fcd7643c034198 #781 Not tainted
          ---------------------------------------------
          s2ram/1179 is trying to acquire lock:
          (&irq_desc_lock_class){-.-...}, at: [<c005bb54>] 
__irq_get_desc_lock+0x78/0x94

          but task is already holding lock:
          (&irq_desc_lock_class){-.-...}, at: [<c005bb54>] 
__irq_get_desc_lock+0x78/0x94

          other info that might help us debug this:
          Possible unsafe locking scenario:

          CPU0
          ----
           lock(&irq_desc_lock_class);
           lock(&irq_desc_lock_class);

          *** DEADLOCK ***

          May be due to missing lock nesting notation

          7 locks held by s2ram/1179:
          #0:  (sb_writers#7){.+.+.+}, at: [<c00c9708>] 
__sb_start_write+0x64/0xb8
          #1:  (&of->mutex){+.+.+.}, at: [<c0125a00>] 
kernfs_fop_write+0x78/0x1a0
          #2:  (s_active#23){.+.+.+}, at: [<c0125a08>] 
kernfs_fop_write+0x80/0x1a0
          #3:  (autosleep_lock){+.+.+.}, at: [<c0058244>] 
pm_autosleep_lock+0x18/0x20
          #4:  (pm_mutex){+.+.+.}, at: [<c0057e50>] pm_suspend+0x54/0x248
          #5:  (&dev->mutex){......}, at: [<c0243a20>] 
__device_suspend+0xdc/0x240
          #6:  (&irq_desc_lock_class){-.-...}, at: [<c005bb54>] 
__irq_get_desc_lock+0x78/0x94

          stack backtrace:
          CPU: 0 PID: 1179 Comm: s2ram Not tainted 
4.2.0-armadillo-10725-g50fcd7643c034198

          Hardware name: Generic R8A7740 (Flattened Device Tree)
          [<c00129f4>] (dump_backtrace) from [<c0012bec>] (show_stack+0x18/0x1c)
          [<c0012bd4>] (show_stack) from [<c03f5d94>] (dump_stack+0x20/0x28)
          [<c03f5d74>] (dump_stack) from [<c00514d4>] 
(__lock_acquire+0x67c/0x1b88)
          [<c0050e58>] (__lock_acquire) from [<c0052df8>] 
(lock_acquire+0x9c/0xbc)
          [<c0052d5c>] (lock_acquire) from [<c03fb068>] 
(_raw_spin_lock_irqsave+0x44/0x58)
          [<c03fb024>] (_raw_spin_lock_irqsave) from [<c005bb54>] 
(__irq_get_desc_lock+0x78/0x94
          [<c005badc>] (__irq_get_desc_lock) from [<c005c3d8>] 
(irq_set_irq_wake+0x28/0x100)
          [<c005c3b0>] (irq_set_irq_wake) from [<c01e50d0>] 
(intc_irqpin_irq_set_wake+0x24/0x4c)
          [<c01e50ac>] (intc_irqpin_irq_set_wake) from [<c005c17c>] 
(set_irq_wake_real+0x3c/0x50
          [<c005c140>] (set_irq_wake_real) from [<c005c414>] 
(irq_set_irq_wake+0x64/0x100)
          [<c005c3b0>] (irq_set_irq_wake) from [<c02a19b4>] 
(gpio_keys_suspend+0x60/0xa0)
          [<c02a1954>] (gpio_keys_suspend) from [<c023b750>] 
(platform_pm_suspend+0x3c/0x5c)

      Avoid this false positive by using a separate lockdep class for INTC
      External IRQ Pin interrupts.

      Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Cc: Grygorii Strashko <grygorii.strashko@xxxxxx>
      Cc: Magnus Damm <magnus.damm@xxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441798974-25716-3-git-send-email-geert%2Brenesas@xxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit b1370658804510f6a1c0517a8ff1c9534d371edd
  Author: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
  Date:   Wed Sep 9 13:42:53 2015 +0200

      irqchip/renesas-irqc: Use a separate lockdep class

      The renesas-irqc interrupt controller is cascaded to the GIC. Hence when
      propagating wake-up settings to its parent interrupt controller, the
      following lockdep warning is printed:

          =============================================
          [ INFO: possible recursive locking detected ]
          4.2.0-ape6evm-10725-g50fcd7643c034198 #280 Not tainted
          ---------------------------------------------
          s2ram/1072 is trying to acquire lock:
          (&irq_desc_lock_class){-.-...}, at: [<c008d3fc>] 
__irq_get_desc_lock+0x58/0x98

          but task is already holding lock:
          (&irq_desc_lock_class){-.-...}, at: [<c008d3fc>] 
__irq_get_desc_lock+0x58/0x98

          other info that might help us debug this:
          Possible unsafe locking scenario:

          CPU0
          ----
           lock(&irq_desc_lock_class);
           lock(&irq_desc_lock_class);

          *** DEADLOCK ***

          May be due to missing lock nesting notation

          6 locks held by s2ram/1072:
          #0:  (sb_writers#7){.+.+.+}, at: [<c012eb14>] 
__sb_start_write+0xa0/0xa8
          #1:  (&of->mutex){+.+.+.}, at: [<c019396c>] 
kernfs_fop_write+0x4c/0x1bc
          #2:  (s_active#24){.+.+.+}, at: [<c0193974>] 
kernfs_fop_write+0x54/0x1bc
          #3:  (pm_mutex){+.+.+.}, at: [<c008213c>] pm_suspend+0x10c/0x510
          #4:  (&dev->mutex){......}, at: [<c02af3c4>] 
__device_suspend+0xdc/0x2cc
          #5:  (&irq_desc_lock_class){-.-...}, at: [<c008d3fc>] 
__irq_get_desc_lock+0x58/0x98

          stack backtrace:
          CPU: 0 PID: 1072 Comm: s2ram Not tainted 
4.2.0-ape6evm-10725-g50fcd7643c034198 #280
          Hardware name: Generic R8A73A4 (Flattened Device Tree)
          [<c0018078>] (unwind_backtrace) from [<c00144f0>] 
(show_stack+0x10/0x14)
          [<c00144f0>] (show_stack) from [<c0451f14>] (dump_stack+0x88/0x98)
          [<c0451f14>] (dump_stack) from [<c007b29c>] 
(__lock_acquire+0x15cc/0x20e4)
          [<c007b29c>] (__lock_acquire) from [<c007c6e0>] 
(lock_acquire+0xac/0x12c)
          [<c007c6e0>] (lock_acquire) from [<c0457c00>] 
(_raw_spin_lock_irqsave+0x40/0x54)
          [<c0457c00>] (_raw_spin_lock_irqsave) from [<c008d3fc>] 
(__irq_get_desc_lock+0x58/0x98)
          [<c008d3fc>] (__irq_get_desc_lock) from [<c008ebbc>] 
(irq_set_irq_wake+0x20/0xf8)
          [<c008ebbc>] (irq_set_irq_wake) from [<c0260770>] 
(irqc_irq_set_wake+0x20/0x4c)
          [<c0260770>] (irqc_irq_set_wake) from [<c008ec28>] 
(irq_set_irq_wake+0x8c/0xf8)
          [<c008ec28>] (irq_set_irq_wake) from [<c02cb8c0>] 
(gpio_keys_suspend+0x74/0xc0)
          [<c02cb8c0>] (gpio_keys_suspend) from [<c02ae8cc>] 
(dpm_run_callback+0x54/0x124)

      Avoid this false positive by using a separate lockdep class for IRQC
      interrupts.

      Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Cc: Grygorii Strashko <grygorii.strashko@xxxxxx>
      Cc: Magnus Damm <magnus.damm@xxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441798974-25716-2-git-send-email-geert%2Brenesas@xxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 157add60cb35913b8a848a3d7e6456b8ed134796
  Author: Pavel Fedin <p.fedin@xxxxxxxxxxx>
  Date:   Sun Sep 13 12:14:33 2015 +0100

      irqchip/GICv2m: Fix GICv2m build warning on 32 bits

      After GICv2m was enabled for 32-bit ARM kernel, a warning popped up:

      drivers/irqchip/irq-gic-v2m.c: In function gicv2m_compose_msi_msg:
      drivers/irqchip/irq-gic-v2m.c:100:2: warning: right shift count >= width
      of type [enabled by default]
        msg->address_hi = (u32) (addr >> 32);
        ^

      This patch fixes it by using proper macros for splitting up the value.

      Signed-off-by: Pavel Fedin <p.fedin@xxxxxxxxxxx>
      Reviewed-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: Stuart Yoder <stuart.yoder@xxxxxxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1442142873-20213-4-git-send-email-marc.zyngier@xxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 5a9a8915c8888b615521b17d70a4342187eae60b
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Sun Sep 13 12:14:32 2015 +0100

      irqchip/gic-v3-its: Add missing cache flushes

      When the ITS is configured for non-cacheable transactions, make sure
      that the allocated, zeroed memory is flushed to the Point of
      Coherency, allowing the ITS to observe the zeros instead of random
      garbage (or even get its own data overwritten by zeros being evicted
      from the cache...).

      Fixes: 241a386c7dbb "irqchip: gicv3-its: Use non-cacheable accesses when 
no shareability"
      Reported-and-tested-by: Stuart Yoder <stuart.yoder@xxxxxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: Pavel Fedin <p.fedin@xxxxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1442142873-20213-3-git-send-email-marc.zyngier@xxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 12e14066f4835f5ee1ca795f0309415b54c067a9
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Sun Sep 13 12:14:31 2015 +0100

      irqchip/GIC: Add workaround for aliased GIC400

      The GICv2 architecture mandates that the two 4kB GIC regions are
      contiguous, and on two separate physical pages (so that access to
      the second page can be trapped by a hypervisor). This doesn't work
      very well when PAGE_SIZE is 64kB.

      A relatively common hack^Wway to work around this is to alias each
      4kB region over its own 64kB page. Of course in this case, the base
      address you want to use is not really the begining of the region,
      but base + 60kB (so that you get a contiguous 8kB region over two
      distinct pages).

      Normally, this would be described in DT with a new property, but
      some HW is already out there, and the firmware makes sure that
      it will override whatever you put in the GIC node. Duh. And of course,
      said firmware source code is not available, despite being based
      on u-boot.

      The workaround is to detect the case where the CPU interface size
      is set to 128kB, and verify the aliasing by checking that the ID
      register for GIC400 (which is the only GIC wired this way so far)
      is the same at base and base + 0xF000. In this case, we update
      the GIC base address and let it roll.

      And if you feel slightly sick by looking at this, rest assured that
      I do too...

      Reported-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: Stuart Yoder <stuart.yoder@xxxxxxxxxxxxx>
      Cc: Pavel Fedin <p.fedin@xxxxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1442142873-20213-2-git-send-email-marc.zyngier@xxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit e4084a16bbe07957811c75dfb7c9bf25c5862ba0
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Sun Sep 13 13:37:03 2015 +0100

      platform-msi: Do not cache msi_desc in handler_data

      The current implementation of platform MSI caches the msi_desc
      pointer in irq_data::handler_data. This is a bit silly, as
      we also have irq_data::msi_desc, which is perfectly valid.

      Remove the useless assignment and simplify the whole flow.

      Reported-by: Ma Jun <majun258@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Reviewed-by: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1442147824-20971-1-git-send-email-marc.zyngier@xxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit dc2ec62f75fd9be78d07b3b453aeb0d201ead419
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Tue Sep 15 13:34:05 2015 +0200

      net/mlx4_en: Use access helper irq_data_get_affinity_mask()

      This is a preparatory patch for moving irq_data struct members. Search
      and replace was done with coccinelle

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Julia Lawall <Julia.Lawall@xxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: Amir Vadai <amirv@xxxxxxxxxxxx>

  commit da92b4eb7e2ec9866f14a0c8f453788e8052dee7
  Author: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
  Date:   Mon Jun 1 16:05:33 2015 +0800

      powerpc, irq: Use access helper irq_data_get_affinity_mask()

      Use access helper irq_data_get_affinity_mask() so we can move the
      affinity mask to irq_common_data.

      Signed-off-by: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: linuxppc-dev@xxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1433145945-789-25-git-send-email-jiang.liu@xxxxxxxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 8f4216c7d28976f7ec1b2bcbfa0a9f787133c45e
  Author: Jason Wang <jasowang@xxxxxxxxxx>
  Date:   Tue Sep 15 14:41:57 2015 +0800

      kvm: fix zero length mmio searching

      Currently, if we had a zero length mmio eventfd assigned on
      KVM_MMIO_BUS. It will never be found by kvm_io_bus_cmp() since it
      always compares the kvm_io_range() with the length that guest
      wrote. This will cause e.g for vhost, kick will be trapped by qemu
      userspace instead of vhost. Fixing this by using zero length if an
      iodevice is zero length.

      Cc: stable@xxxxxxxxxxxxxxx
      Cc: Gleb Natapov <gleb@xxxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Signed-off-by: Jason Wang <jasowang@xxxxxxxxxx>
      Reviewed-by: Cornelia Huck <cornelia.huck@xxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit eefd6b06b17c5478e7c24bea6f64beaa2c431ca6
  Author: Jason Wang <jasowang@xxxxxxxxxx>
  Date:   Tue Sep 15 14:41:56 2015 +0800

      kvm: fix double free for fast mmio eventfd

      We register wildcard mmio eventfd on two buses, once for KVM_MMIO_BUS
      and once on KVM_FAST_MMIO_BUS but with a single iodev
      instance. This will lead to an issue: kvm_io_bus_destroy() knows
      nothing about the devices on two buses pointing to a single dev. Which
      will lead to double free[1] during exit. Fix this by allocating two
      instances of iodevs then registering one on KVM_MMIO_BUS and another
      on KVM_FAST_MMIO_BUS.

      CPU: 1 PID: 2894 Comm: qemu-system-x86 Not tainted 3.19.0-26-generic 
#28-Ubuntu
      Hardware name: LENOVO 2356BG6/2356BG6, BIOS G7ET96WW (2.56 ) 09/12/2013
      task: ffff88009ae0c4b0 ti: ffff88020e7f0000 task.ti: ffff88020e7f0000
      RIP: 0010:[<ffffffffc07e25d8>]  [<ffffffffc07e25d8>] 
ioeventfd_release+0x28/0x60 [kvm]
      RSP: 0018:ffff88020e7f3bc8  EFLAGS: 00010292
      RAX: dead000000200200 RBX: ffff8801ec19c900 RCX: 000000018200016d
      RDX: ffff8801ec19cf80 RSI: ffffea0008bf1d40 RDI: ffff8801ec19c900
      RBP: ffff88020e7f3bd8 R08: 000000002fc75a01 R09: 000000018200016d
      R10: ffffffffc07df6ae R11: ffff88022fc75a98 R12: ffff88021e7cc000
      R13: ffff88021e7cca48 R14: ffff88021e7cca50 R15: ffff8801ec19c880
      FS:  00007fc1ee3e6700(0000) GS:ffff88023e240000(0000) 
knlGS:0000000000000000
      CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      CR2: 00007f8f389d8000 CR3: 000000023dc13000 CR4: 00000000001427e0
      Stack:
      ffff88021e7cc000 0000000000000000 ffff88020e7f3be8 ffffffffc07e2622
      ffff88020e7f3c38 ffffffffc07df69a ffff880232524160 ffff88020e792d80
       0000000000000000 ffff880219b78c00 0000000000000008 ffff8802321686a8
      Call Trace:
      [<ffffffffc07e2622>] ioeventfd_destructor+0x12/0x20 [kvm]
      [<ffffffffc07df69a>] kvm_put_kvm+0xca/0x210 [kvm]
      [<ffffffffc07df818>] kvm_vcpu_release+0x18/0x20 [kvm]
      [<ffffffff811f69f7>] __fput+0xe7/0x250
      [<ffffffff811f6bae>] ____fput+0xe/0x10
      [<ffffffff81093f04>] task_work_run+0xd4/0xf0
      [<ffffffff81079358>] do_exit+0x368/0xa50
      [<ffffffff81082c8f>] ? recalc_sigpending+0x1f/0x60
      [<ffffffff81079ad5>] do_group_exit+0x45/0xb0
      [<ffffffff81085c71>] get_signal+0x291/0x750
      [<ffffffff810144d8>] do_signal+0x28/0xab0
      [<ffffffff810f3a3b>] ? do_futex+0xdb/0x5d0
      [<ffffffff810b7028>] ? __wake_up_locked_key+0x18/0x20
      [<ffffffff810f3fa6>] ? SyS_futex+0x76/0x170
      [<ffffffff81014fc9>] do_notify_resume+0x69/0xb0
      [<ffffffff817cb9af>] int_signal+0x12/0x17
      Code: 5d c3 90 0f 1f 44 00 00 55 48 89 e5 53 48 89 fb 48 83 ec 08 48 8b 
7f 20 e8 06 d6 a5 c0 48 8b 43 08 48 8b 13 48 89 df 48 89 42 08 <48> 89 10 48 b8 
00 01 10 00 00
       RIP  [<ffffffffc07e25d8>] ioeventfd_release+0x28/0x60 [kvm]
       RSP <ffff88020e7f3bc8>

      Cc: stable@xxxxxxxxxxxxxxx
      Cc: Gleb Natapov <gleb@xxxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Signed-off-by: Jason Wang <jasowang@xxxxxxxxxx>
      Reviewed-by: Cornelia Huck <cornelia.huck@xxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 85da11ca587c8eb73993a1b503052391a73586f9
  Author: Jason Wang <jasowang@xxxxxxxxxx>
  Date:   Tue Sep 15 14:41:55 2015 +0800

      kvm: factor out core eventfd assign/deassign logic

      This patch factors out core eventfd assign/deassign logic and leaves
      the argument checking and bus index selection to callers.

      Cc: stable@xxxxxxxxxxxxxxx
      Cc: Gleb Natapov <gleb@xxxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Signed-off-by: Jason Wang <jasowang@xxxxxxxxxx>
      Reviewed-by: Cornelia Huck <cornelia.huck@xxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 8453fecbecae26edb3f278627376caab05d9a88d
  Author: Jason Wang <jasowang@xxxxxxxxxx>
  Date:   Tue Sep 15 14:41:54 2015 +0800

      kvm: don't try to register to KVM_FAST_MMIO_BUS for non mmio eventfd

      We only want zero length mmio eventfd to be registered on
      KVM_FAST_MMIO_BUS. So check this explicitly when arg->len is zero to
      make sure this.

      Cc: stable@xxxxxxxxxxxxxxx
      Cc: Gleb Natapov <gleb@xxxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Signed-off-by: Jason Wang <jasowang@xxxxxxxxxx>
      Reviewed-by: Cornelia Huck <cornelia.huck@xxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit d10bcd473301888f957ec4b6b12aa3621be78d59
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Wed Sep 2 18:49:28 2015 +0100

      arm64: head.S: initialise mdcr_el2 in el2_setup

      When entering the kernel at EL2, we fail to initialise the MDCR_EL2
      register which controls debug access and PMU capabilities at EL1.

      This patch ensures that the register is initialised so that all traps
      are disabled and all the PMU counters are available to the host. When a
      guest is scheduled, KVM takes care to configure trapping appropriately.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Acked-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit 2314ee4d444e28d4670ff80c84df68c25887decb
  Author: Leo Yan <leo.yan@xxxxxxxxxx>
  Date:   Fri Aug 21 04:40:22 2015 +0100

      arm64: enable generic idle loop

      Enable generic idle loop for ARM64, so can support for hlt/nohlt
      command line options to override default idle loop behavior.

      Acked-by: Catalin Marinas <catalin.marinas@xxxxxxx>
      Signed-off-by: Leo Yan <leo.yan@xxxxxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit c5e6bd2ed3e81df443e4ae11e95ed71ff77bf9e5
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Tue Sep 8 10:59:02 2015 +0300

      perf tests: Fix software clock events test setting maps

      The test titled "Test software clock events have valid period values"
      was setting cpu/thread maps directly.  Make it use the proper function
      perf_evlist__set_maps() especially now that it also propagates the maps.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441699142-18905-15-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 2998272275fc31fc3d478ef9c95e7eaef67dafa3
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Tue Sep 8 10:59:01 2015 +0300

      perf tests: Fix task exit test setting maps

      The test titled "Test number of exit event of a simple workload" was
      setting cpu/thread maps directly.  Make it use the proper function
      perf_evlist__set_maps() especially now that it also propagates the maps.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441699142-18905-14-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 8c0498b6891d7ca5c379c6283de7fc7fe8eebe5c
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Tue Sep 8 10:59:00 2015 +0300

      perf evlist: Fix create_syswide_maps() not propagating maps

      Fix it by making it call perf_evlist__set_maps() instead of setting the
      maps itself.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441699142-18905-13-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 44c42d71c659527c81bf169808959c9339116d85
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Tue Sep 8 10:58:59 2015 +0300

      perf evlist: Fix add() not propagating maps

      If evsels are added after maps are created, then they won't have any
      maps propagated to them.  Fix that.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441699142-18905-12-git-send-email-adrian.hunter@xxxxxxxxx
      [ Moved the moving of propagate_maps() to the patch before, so that this
        one does _just_ the one lile fix calling in add()]
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit adc0c3e87b0e1baeccabe09b6dba738f17d0e91d
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Tue Sep 8 10:58:58 2015 +0300

      perf evlist: Factor out a function to propagate maps for a single evsel

      Subsequent fixes will need a function that just propagates maps for a
      single evsel so factor it out.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441699142-18905-11-git-send-email-adrian.hunter@xxxxxxxxx
      [ Moved them to before perf_evlist__add() to avoid having to move it in 
the next patch ]
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 74bfd2b25de354feb4484c553dce4fe8d9c3b60b
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Tue Sep 8 10:58:57 2015 +0300

      perf evlist: Make create_maps() use set_maps()

      Since there is a function to set maps, perf_evlist__create_maps() should
      use it.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441699142-18905-10-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 934e0f2053ce299893ca48a411bf7fdc8ac6254f
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Tue Sep 8 10:58:56 2015 +0300

      perf evlist: Make set_maps() more resilient

      Make perf_evlist__set_maps() more resilient by allowing for the
      possibility that one or another of the maps isn't being changed and
      therefore should not be "put".

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441699142-18905-9-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit fce4d296b405b03fba033a55017348bf55b10db6
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Tue Sep 8 10:58:55 2015 +0300

      perf evsel: Add own_cpus member

      perf_evlist__propagate_maps() cannot easily tell if an evsel has its own
      cpu map.  To make that simpler, keep a copy of the PMU cpu map and
      adjust the propagation logic accordingly.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441699142-18905-8-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit b278c364b35ae940b05f6a9edf8061fc886cd09e
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Tue Sep 8 10:58:54 2015 +0300

      perf evlist: Fix missing thread_map__put in propagate_maps()

      perf_evlist__propagate_maps() incorrectly assumes evsel->threads is NULL
      before reassigning it, but it won't be NULL when perf_evlist__set_maps()
      is used to set different (or NULL) maps.  Thus thread_map__put must be
      used, which works even if evsel->threads is NULL.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441699142-18905-7-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit f114d6eff76d20b521d8716e969e71b1f56f82b5
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Tue Sep 8 10:58:53 2015 +0300

      perf evlist: Fix splice_list_tail() not setting evlist

      Commit d49e46950772 ("perf evsel: Add a backpointer to the evlist a
      evsel is in") updated perf_evlist__add() but not
      perf_evlist__splice_list_tail().

      This illustrates that it is better if perf_evlist__splice_list_tail()
      calls perf_evlist__add() instead of duplicating the logic, so do that.
      This will also simplify a subsequent fix for propagating maps.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441699142-18905-6-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit ec9a77a7e3346a05b1287597982d0dd09dd1c3bd
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Tue Sep 8 10:58:52 2015 +0300

      perf evlist: Add has_user_cpus member

      Subsequent patches will need to call perf_evlist__propagate_maps without
      reference to a "target".  Add evlist->has_user_cpus to record whether
      the user has specified which cpus to target (and therefore whether that
      list of cpus should override the default settings for a selected event
      i.e. the cpu maps should be propagated)

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441699142-18905-5-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit d5bc056e73841d4bc941474a342ef9b6a207ac84
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Tue Sep 8 10:58:51 2015 +0300

      perf evlist: Remove redundant validation from propagate_maps()

      The validation checks that the values that were just assigned, got
      assigned i.e. the error can't ever happen.  Subsequent patches will call
      this code in places where errors are not being returned.  Changing those
      code paths to return this non-existent error is counter-productive, so
      just remove it.

      That in turn results in perf_evlist__set_maps not needing to return an
      error, but callers aren't checking it either, so remove that too.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441699142-18905-4-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 725e06b2e2754fbff61521fa76fee51cee5bcb5f
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Tue Sep 8 10:58:50 2015 +0300

      perf evlist: Simplify set_maps() logic

      Don't need to check for NULL when "putting" evlist->maps and
      evlist->threads because the "put" functions already do that.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441699142-18905-3-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit a69b09e2342a9c144b0291b9aeb849ab7d5843bf
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Tue Sep 8 10:58:49 2015 +0300

      perf evlist: Simplify propagate_maps() logic

      If evsel->cpus is to be reassigned then the current value must be "put",
      which works even if it is NULL.  Simplify the current logic by moving
      the "put" next to the assignment.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441699142-18905-2-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 2cd55c68c0a49a75433b15c7dbd1991fef81e662
  Author: Ian Munsie <imunsie@xxxxxxxxxxx>
  Date:   Tue Sep 15 15:48:34 2015 +1000

      cxl: Fix build failure due to -Wunused-variable behaviour change

      A recent change in gcc caused this build failure:

      
/var/lib/jenkins/workspace/gcc_kernel_build/linux/drivers/misc/cxl/cxl.h:72:27:
      error: â??CXL_PSL_DLCNTLâ?? defined but not used 
[-Werror=unused-const-variable]
       static const cxl_p1_reg_t CXL_PSL_DLCNTL  = {0x0060};

      Because of this gcc commit:

      Commit 1bca8cbd0c68366f07277f98ce6963e10c2aa617 by mark
      PR28901 -Wunused-variable ignores unused const initialised variables in C
      12 years ago it was decided that -Wunused-variable shouldn't warn about
      static const variables because some code used const static char rcsid[]
      strings which were never used but wanted in the code anyway. But as the
      bug points out this hides some real bugs. These days the usage of
      rcsids is not very popular anymore. So this patch changes the default
      to warn about unused static const variables in C with
      -Wunused-variable. And it adds a new option -Wno-unused-const-variable
      to turn this warning off. For C++ this new warning is off by default,
      since const variables can be used as #defines in C++. New testcases for
      the new defaults in C and C++ are included testing the new warning and
      suppressing it with an unused attribute or using
      -Wno-unused-const-variable. gcc/ChangeLog

      The cxl driver uses static consts in place of #defines in some cases
      for type safety, so this change causes the driver to fail to build on
      new copilers as these constants are not all used in every file that
      imports the header. Suppress the warning for this driver to return to
      the old behaviour of -Wunused-variable.

      Reported-by: Anton Blanchard <anton@xxxxxxxxxxx>
      Signed-off-by: Ian Munsie <imunsie@xxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 2925c2fdf1e0eb642482f5b30577e9435aaa8edb
  Author: Daniel Axtens <dja@xxxxxxxxxx>
  Date:   Tue Sep 15 15:04:07 2015 +1000

      cxl: Fix unbalanced pci_dev_get in cxl_probe

      Currently the first thing we do in cxl_probe is to grab a reference
      on the pci device. Later on, we call device_register on our adapter.
      In our remove path, we call device_unregister, but we never call
      pci_dev_put. We therefore leak the device every time we do a
      reflash.

      device_register/unregister is sufficient to hold the reference.
      Therefore, drop the call to pci_dev_get.

      Here's why this is safe.
      The proposed cxl_probe(pdev) calls cxl_adapter_init:
          a) init calls cxl_adapter_alloc, which creates a struct cxl,
             conventionally called adapter. This struct contains a
             device entry, adapter->dev.

          b) init calls cxl_configure_adapter, where we set
             adapter->dev.parent = &dev->dev (here dev is the pci dev)

      So at this point, the cxl adapter's device's parent is the PCI
      device that I want to be refcounted properly.

          c) init calls cxl_register_adapter
             *) cxl_register_adapter calls device_register(&adapter->dev)

      So now we're in device_register, where dev is the adapter device, and
      we want to know if the PCI device is safe after we return.

      device_register(&adapter->dev) calls device_initialize() and then
      device_add().

      device_add() does a get_device(). device_add() also explicitly grabs
      the device's parent, and calls get_device() on it:

               parent = get_device(dev->parent);

      So therefore, device_register() takes a lock on the parent PCI dev,
      which is what pci_dev_get() was guarding. pci_dev_get() can therefore
      be safely removed.

      Fixes: f204e0b8cedd ("cxl: Driver code for powernv PCIe based cards for 
userspace access")
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Daniel Axtens <dja@xxxxxxxxxx>
      Acked-by: Ian Munsie <imunsie@xxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit c1ceb5fff01c0357de0386f87a620a4636ca68d1
  Author: Nathan Sullivan <nathan.sullivan@xxxxxx>
  Date:   Mon Aug 31 09:49:52 2015 -0500

      Documentation: bindings: add doc for zynq USB

      Document the binding for the zynq specific chipidea UDC binding.

      Signed-off-by: Nathan Sullivan <nathan.sullivan@xxxxxx>
      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit 84bc70f94d81f1d3107dbcdafc1b193169e82131
  Author: Nathan Sullivan <nathan.sullivan@xxxxxx>
  Date:   Mon Aug 31 09:49:51 2015 -0500

      usb: chipidea: add xilinx zynq platform data

      Due to having hardware tx buffers less than 512 bytes in size, streaming
      must be enabled on the Zynq for the udc to work at all.  Add platform data
      specific to the Zynq udc, which does not set the CI_HDRC_DISABLE_STREAMING
      flag.

      Based on a patch by the same name from the Xilinx vendor tree.

      Signed-off-by: Nathan Sullivan <nathan.sullivan@xxxxxx>
      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit 56ffa1d154c7e12af16273f0cdc42690dd05caf5
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Mon Aug 24 14:10:07 2015 +0800

      usb: chipidea: udc: using the correct stall implementation

      According to spec, there are functional and protocol stalls.

      For functional stall, it is for bulk and interrupt endpoints,
      below are cases for it:
      - Host sends SET_FEATURE request for Set-Halt, the udc driver
      needs to set stall, and return true unconditionally.
      - The gadget driver may call usb_ep_set_halt to stall certain
      endpoints, if there is a transfer in pending, the udc driver
      should not set stall, and return -EAGAIN accordingly.
      These two kinds of stall need to be cleared by host using CLEAR_FEATURE
      request (Clear-Halt).

      For protocol stall, it is for control endpoint, this stall will
      be set if the control request has failed. This stall will be
      cleared by next setup request (hardware will do it).

      It fixed usbtest (drivers/usb/misc/usbtest.c) Test 13 "set/clear halt"
      test failure, meanwhile, this change has been verified by
      USB2 CV Compliance Test and MSC Tests.

      Cc: <stable@xxxxxxxxxxxxxxx> #3.10+
      Cc: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>
      Cc: Felipe Balbi <balbi@xxxxxx>
      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit e30f3963f2c3c03119d71f1804bdb94ccd33580b
  Author: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
  Date:   Mon Sep 14 01:24:41 2015 -0700

      drm/ttm: Fix memory space allocation v2

      In the event that TTM doesn't find a compatible memory type for the
      driver's first placement choice (placement without eviction), TTM
      returns -EINVAL without trying the driver's second choice.
      This causes problems on vmwgfx when VRAM is disabled before first modeset
      and during VT switches when fbdev is not enabled.

      Fix this by also trying the driver's second choice before returning
      -EINVAL.

      v2: Also check that man->use_type is true for the driver's second choice.
      Fixes a bug where disallowed memory types could be used.

      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
      Reviewed-by: Brian Paul <brianp@xxxxxxxxxx>
      Reviewed-by: Sinclair Yeh <syeh@xxxxxxxxxx>

  commit 1975dbc276c6ab62230cf4f9df5ddc9ff0e0e473
  Author: Jonathan Corbet <corbet@xxxxxxx>
  Date:   Mon Sep 14 17:11:05 2015 -0600

      locking/static_keys: Fix up the static keys documentation

      Fix a few small mistakes in the static key documentation and
      delete an unneeded sentence.

      Suggested-by: Jason Baron <jbaron@xxxxxxxxxx>
      Signed-off-by: Jonathan Corbet <corbet@xxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: http://lkml.kernel.org/r/20150914171105.511e1e21@xxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit a30e577c96f59b1e1678ea5462432b09bf7d5cbc
  Author: Jeff Mahoney <jeffm@xxxxxxxx>
  Date:   Fri Sep 11 21:44:17 2015 -0400

      btrfs: skip waiting on ordered range for special files

      In btrfs_evict_inode, we properly truncate the page cache for evicted
      inodes but then we call btrfs_wait_ordered_range for every inode as well.
      It's the right thing to do for regular files but results in incorrect
      behavior for device inodes for block devices.

      filemap_fdatawrite_range gets called with inode->i_mapping which gets
      resolved to the block device inode before getting passed to
      wbc_attach_fdatawrite_inode and ultimately to inode_to_bdi.  What happens
      next depends on whether there's an open file handle associated with the
      inode.  If there is, we write to the block device, which is unexpected
      behavior.  If there isn't, we through normally and inode->i_data is used.
      We can also end up racing against open/close which can result in crashes
      when i_mapping points to a block device inode that has been closed.

      Since there can't be any page cache associated with special file inodes,
      it's safe to skip the btrfs_wait_ordered_range call entirely and avoid
      the problem.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=100911
      Tested-by: Christoph Biedl <linux-kernel.bfrz@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Jeff Mahoney <jeffm@xxxxxxxx>
      Reviewed-by: Filipe Manana <fdmanana@xxxxxxxx>

  commit bcb2b0b2bae2de744223c68521cd51c57feb486c
  Author: Sudeep Holla <Sudeep.Holla@xxxxxxx>
  Date:   Mon Sep 14 16:01:55 2015 +0100

      ACPI: Eliminate CONFIG_.*{, _MODULE} #ifdef in favor of IS_ENABLED()

      This commit removes all CONFIG_.*{,_MODULE} in ACPI code, replacing it
      with IS_ENABLED().

      Signed-off-by: Sudeep Holla <sudeep.holla@xxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit cf3a51059efd653aa38667db799e85d77231af9d
  Author: Sudeep Holla <Sudeep.Holla@xxxxxxx>
  Date:   Mon Sep 14 16:01:54 2015 +0100

      ACPI: int340x_thermal: add missing CONFIG_ prefix

      This patch adds the missing CONFIG_ prefix to INTEL_SOC_DTS_THERMAL
      macros.

      Signed-off-by: Sudeep Holla <sudeep.holla@xxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 005efedf2c7d0a270ffbe28d8997b03844f3e3e7
  Author: Filipe Manana <fdmanana@xxxxxxxx>
  Date:   Mon Sep 14 09:09:31 2015 +0100

      Btrfs: fix read corruption of compressed and shared extents

      If a file has a range pointing to a compressed extent, followed by
      another range that points to the same compressed extent and a read
      operation attempts to read both ranges (either completely or part of
      them), the pages that correspond to the second range are incorrectly
      filled with zeroes.

      Consider the following example:

        File layout
        [0 - 8K]                      [8K - 24K]
            |                             |
            |                             |
         points to extent X,         points to extent X,
         offset 4K, length of 8K     offset 0, length 16K

        [extent X, compressed length = 4K uncompressed length = 16K]

      If a readpages() call spans the 2 ranges, a single bio to read the extent
      is submitted - extent_io.c:submit_extent_page() would only create a new
      bio to cover the second range pointing to the extent if the extent it
      points to had a different logical address than the extent associated with
      the first range. This has a consequence of the compressed read end io
      handler (compression.c:end_compressed_bio_read()) finish once the extent
      is decompressed into the pages covering the first range, leaving the
      remaining pages (belonging to the second range) filled with zeroes (done
      by compression.c:btrfs_clear_biovec_end()).

      So fix this by submitting the current bio whenever we find a range
      pointing to a compressed extent that was preceded by a range with a
      different extent map. This is the simplest solution for this corner
      case. Making the end io callback populate both ranges (or more, if we
      have multiple pointing to the same extent) is a much more complex
      solution since each bio is tightly coupled with a single extent map and
      the extent maps associated to the ranges pointing to the shared extent
      can have different offsets and lengths.

      The following test case for fstests triggers the issue:

        seq=`basename $0`
        seqres=$RESULT_DIR/$seq
        echo "QA output created by $seq"
        tmp=/tmp/$$
        status=1        # failure is the default!
        trap "_cleanup; exit \$status" 0 1 2 3 15

        _cleanup()
        {
            rm -f $tmp.*
        }

        # get standard environment, filters and checks
        . ./common/rc
        . ./common/filter

        # real QA test starts here
        _need_to_be_root
        _supported_fs btrfs
        _supported_os Linux
        _require_scratch
        _require_cloner

        rm -f $seqres.full

        test_clone_and_read_compressed_extent()
        {
            local mount_opts=$1

            _scratch_mkfs >>$seqres.full 2>&1
            _scratch_mount $mount_opts

            # Create a test file with a single extent that is compressed (the
            # data we write into it is highly compressible no matter which
            # compression algorithm is used, zlib or lzo).
            $XFS_IO_PROG -f -c "pwrite -S 0xaa 0K 4K"        \
                            -c "pwrite -S 0xbb 4K 8K"        \
                            -c "pwrite -S 0xcc 12K 4K"       \
                            $SCRATCH_MNT/foo | _filter_xfs_io

            # Now clone our extent into an adjacent offset.
            $CLONER_PROG -s $((4 * 1024)) -d $((16 * 1024)) -l $((8 * 1024)) \
                $SCRATCH_MNT/foo $SCRATCH_MNT/foo

            # Same as before but for this file we clone the extent into a lower
            # file offset.
            $XFS_IO_PROG -f -c "pwrite -S 0xaa 8K 4K"         \
                            -c "pwrite -S 0xbb 12K 8K"        \
                            -c "pwrite -S 0xcc 20K 4K"        \
                            $SCRATCH_MNT/bar | _filter_xfs_io

            $CLONER_PROG -s $((12 * 1024)) -d 0 -l $((8 * 1024)) \
                $SCRATCH_MNT/bar $SCRATCH_MNT/bar

            echo "File digests before unmounting filesystem:"
            md5sum $SCRATCH_MNT/foo | _filter_scratch
            md5sum $SCRATCH_MNT/bar | _filter_scratch

            # Evicting the inode or clearing the page cache before reading
            # again the file would also trigger the bug - reads were returning
            # all bytes in the range corresponding to the second reference to
            # the extent with a value of 0, but the correct data was persisted
            # (it was a bug exclusively in the read path). The issue happened
            # only if the same readpages() call targeted pages belonging to the
            # first and second ranges that point to the same compressed extent.
            _scratch_remount

            echo "File digests after mounting filesystem again:"
            # Must match the same digests we got before.
            md5sum $SCRATCH_MNT/foo | _filter_scratch
            md5sum $SCRATCH_MNT/bar | _filter_scratch
        }

        echo -e "\nTesting with zlib compression..."
        test_clone_and_read_compressed_extent "-o compress=zlib"

        _scratch_unmount

        echo -e "\nTesting with lzo compression..."
        test_clone_and_read_compressed_extent "-o compress=lzo"

        status=0
        exit

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Filipe Manana <fdmanana@xxxxxxxx>
      Reviewed-by: Qu Wenruo<quwenruo@xxxxxxxxxxxxxx>
      Reviewed-by: Liu Bo <bo.li.liu@xxxxxxxxxx>

  commit d25ed277fbd4c20247286fda2014ae6a2b88316b
  Merge: 9c488de 3bba75a
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Sep 14 16:58:35 2015 -0700

      Merge tag 'clk-fixes-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux

      Pull clk fixes from Stephen Boyd:
       "A couple build fixes for drivers introduced in the merge window and a
        handful of patches to add more critical clocks on rockchip SoCs that
        are affected by newly introduced gpio clock handling"

      * tag 'clk-fixes-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
        clk: rockchip: Add pclk_peri to critical clocks on RK3066/RK3188
        clk: rockchip: add pclk_cpu to the list of rk3188 critical clocks
        clk: rockchip: handle critical clocks after registering all clocks
        clk: Hi6220: separately build stub clock driver
        clk: h8s2678: Fix compile error

  commit 4184a8fc57a43faa2625988cc87031db77af9d98
  Merge: 6ff33f3 5f25f066
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Tue Sep 15 01:29:43 2015 +0200

      Merge branch 'for-rafael' of 
https://git.kernel.org/pub/scm/linux/kernel/git/mzx/devfreq into pm-devfreq

      Pull devfreq updates for v4.3 from MyungJoo Ham.

      * 'for-rafael' of 
https://git.kernel.org/pub/scm/linux/kernel/git/mzx/devfreq:
        PM / devfreq: Fix incorrect type issue.
        PM / devfreq: tegra: Update governor to use devfreq_update_stats()
        PM / devfreq: comments for get_dev_status usage updated
        PM / devfreq: drop comment about thermal setting max_freq
        PM / devfreq: cache the last call to get_dev_status()
        PM / devfreq: Drop unlikely before IS_ERR(_OR_NULL)
        PM / devfreq: exynos-ppmu: bit-wise operation bugfix.
        PM / devfreq: exynos-ppmu: Update documentation to support PPMUv2
        PM / devfreq: exynos-ppmu: Add the support of PPMUv2 for Exynos5433
        PM / devfreq: event: Remove incorrect property in exynos-ppmu DT binding

      Conflicts:
        drivers/devfreq/event/exynos-ppmu.c

  commit ae7858180510d6fd0dfaf66d209bc6103db1678f
  Author: Bamvor Jian Zhang <bamvor.zhangjian@xxxxxxxxxx>
  Date:   Wed Sep 9 21:06:29 2015 +0800

      selftests: exec: revert to default emit rule

      With the previous patch, the installation method change from install
      to rsync. There is no need to create subdir during test, the
      default EMIT_TESTS is enough.

      This patch essentially revert commit 84cbd9e4 ("selftests/exec: do not
      install subdir as it is already created").

      Suggested-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Signed-off-by: Bamvor Jian Zhang <bamvor.zhangjian@xxxxxxxxxx>
      Signed-off-by: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>

  commit 900d65ee11aae3a23cb963f484b65eb3e269dd9c
  Author: Bamvor Jian Zhang <bamvor.zhangjian@xxxxxxxxxx>
  Date:   Wed Sep 9 21:06:28 2015 +0800

      selftests: change install command to rsync

      The command of install could not handle the special files in exec
      testcases, change the default rule to rsync to fix this.

      The installation is unchanged after this commit.

      Suggested-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Signed-off-by: Bamvor Jian Zhang <bamvor.zhangjian@xxxxxxxxxx>
      Signed-off-by: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>

  commit b11054b959cf921a646b64983bc35193c1597739
  Author: Bamvor Jian Zhang <bamvor.zhangjian@xxxxxxxxxx>
  Date:   Wed Sep 9 21:06:27 2015 +0800

      selftests: mqueue: simplify the Makefile

      Use make's implict rule for building simple C programs.

      Suggested-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Signed-off-by: Bamvor Jian Zhang <bamvor.zhangjian@xxxxxxxxxx>
      Signed-off-by: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>

  commit cc19ada7340b5ed87a94ea381ff7ade6a053b2f3
  Author: Bamvor Jian Zhang <bamvor.zhangjian@xxxxxxxxxx>
  Date:   Wed Sep 9 21:06:26 2015 +0800

      selftests: mqueue: allow extra cflags

      Change from = to += in order to allows the user to pass whatever
      CFLAGS they wish(E.g. pass the proper headers and librareis
      (popt.h and libpopt.so) in cross-compiling)

      Suggested-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Signed-off-by: Bamvor Jian Zhang <bamvor.zhangjian@xxxxxxxxxx>
      Acked-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Signed-off-by: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>

  commit 1087d019176df7e406387de3fe76129c74d24081
  Author: Bamvor Jian Zhang <bamvor.zhangjian@xxxxxxxxxx>
  Date:   Wed Sep 9 21:06:25 2015 +0800

      selftests: rename jump label to static_keys

      Commit 2bf9e0ab08c6 ("locking/static_keys: Provide a selftest")
      renamed jump_label directory to static_keys and failed to update
      the Makefile, causing the selftests build to fail.

      This commit fixes it by updating the Makefile with the new name
      and also moves the entry into the correct position to keep the
      list alphabetically sorted.

      Fixes: 2bf9e0ab08c6 ("locking/static_keys: Provide a selftest")
      Signed-off-by: Bamvor Jian Zhang <bamvor.zhangjian@xxxxxxxxxx>
      Acked-by: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Acked-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Signed-off-by: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>

  commit b623c4daadb5a4bfaef62783085b95bd9ba5a77c
  Author: Kees Cook <keescook@xxxxxxxxxxxx>
  Date:   Fri Aug 21 11:22:35 2015 -0700

      selftests/seccomp: add support for s390

      This adds support for s390 to the seccomp selftests. Some improvements
      were made to enhance the accuracy of failure reporting, and additional
      tests were added to validate assumptions about the currently traced
      syscall. Also adds early asserts for running on older kernels to avoid
      noise when the seccomp syscall is not implemented.

      Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Signed-off-by: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>

  commit 7ef7cc9fdf9853b3027c55b9481991695ad5e5b2
  Author: Zhang Zhen <zhenzhang.zhang@xxxxxxxxxx>
  Date:   Mon Sep 14 12:13:27 2015 +0800

      seltests/zram: fix syntax error

      Not all shells define a variable UID. This is a bash and zsh feature only.
      In other shells, the UID variable is not defined, so here test command
      expands to [ != 0 ] which is a syntax error.

      Without this patch:
      root@HGH1000007090:/opt/work/linux/tools/testing/selftests/zram# sh 
zram.sh
      zram.sh: 8: [: !=: unexpected operator
      zram.sh : No zram.ko module or /dev/zram0 device file not found
      zram.sh : CONFIG_ZRAM is not set

      With this patch:
      root@HGH1000007090:/opt/work/linux/tools/testing/selftests/zram# sh 
./zram.sh
      zram.sh : No zram.ko module or /dev/zram0 device file not found
      zram.sh : CONFIG_ZRAM is not set

      Signed-off-by: Zhang Zhen <zhenzhang.zhang@xxxxxxxxxx>
      Signed-off-by: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>

  commit 7168e947291f0ead07e5638b4599fb7845288b69
  Merge: 21b430d 60fdcb8
  Author: Tony Lindgren <tony@xxxxxxxxxxx>
  Date:   Mon Sep 14 13:42:11 2015 -0700

      Merge branch 'fixes-rc1' into omap-for-v4.3/fixes

  commit 60fdcb8863d9b4a8b6c6b367886fadb50d4c0b07
  Author: Nicolas Chauvet <kwizart@xxxxxxxxx>
  Date:   Thu Sep 3 17:34:40 2015 +0200

      ARM: dts: Fixup model name for HP t410 dts

      This fix the model name for the device.
      Whole string taken from the HP support center web page

      Signed-off-by: Nicolas Chauvet <kwizart@xxxxxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit c263a5b8120523b736ed4641657075f2024e75b7
  Author: Vishal Mahaveer <vishalm@xxxxxx>
  Date:   Tue Aug 25 13:57:49 2015 -0500

      ARM: dts: DRA7: fix a typo in ethernet

      Register address in name of the node is wrong

      Signed-off-by: Vishal Mahaveer <vishalm@xxxxxx>
      Acked-by: Mugunthan V N <mugunthanvnm@xxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 3ab74b89c4d50e6d29d3ace2d400a8a3f1e6de3f
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Wed Aug 5 19:13:49 2015 +0530

      ARM: omap2plus_defconfig: make PCF857x built-in

      One of the lines from PCF857x is connected to the vdd line of MMC1
      in DRA74x and DRA72x EVMs and is modelled as a regulator. If PCF857x
      is not made as built-in, the regulator_get in omap_hsmmc fails making
      it difficult to use MMC1 as rootfs.

      Make PCF857x built-in.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Signed-off-by: Sekhar Nori <nsekhar@xxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 737f146fe0dd1353f5e2c6153fedd81f48b5cd65
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Fri Sep 4 17:30:25 2015 +0530

      ARM: dts: Use ti,pbias compatible string for pbias

      Use platform specific compatible strings instead of the common
      "ti,pbias-omap" compatible string.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Acked-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 380528f742796e1244e931c51e77c9ed664f566c
  Author: Heiko Stübner <heiko@xxxxxxxxx>
  Date:   Sun Sep 13 13:20:36 2015 +0200

      clk: rockchip: add critical clock for rk3368

      Again a result of the gpio-clock-liberation the rk3368 needs the
      pclk_pd_pmu marked as critical, to boot successfully.

      Reported-by: Mark Rutland <mark.rutland@xxxxxxx>
      Signed-off-by: Heiko Stuebner <heiko@xxxxxxxxx>
      Tested-by: Mark Rutland <mark.rutland@xxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 9c488de24f7264f08d341024bffdd637b4d04c96
  Merge: 57e6bbc eda2116
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Sep 14 12:49:15 2015 -0700

      Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6

      Pull CIFS fixes from Steve French:
       "Two small cifs fixes"

      * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
        [CIFS] mount option sec=none not displayed properly in /proc/mounts
        CIFS: fix type confusion in copy offload ioctl

  commit 57e6bbcb4beb4c87aa93e78a1db08fdaab9ee65f
  Merge: 6ff33f3 c2172ce
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Sep 14 12:24:10 2015 -0700

      Merge branch 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm

      Pull ARM fixes from Russell King:
       "A number of fixes for the merge window, fixing a number of cases
        missed when testing the uaccess code, particularly cases which only
        show up with certain compiler versions"

      * 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
        ARM: 8431/1: fix alignement of __bug_table section entries
        arm/xen: Enable user access to the kernel before issuing a privcmd call
        ARM: domains: add memory dependencies to get_domain/set_domain
        ARM: domains: thread_info.h no longer needs asm/domains.h
        ARM: uaccess: fix undefined instruction on ARMv7M/noMMU
        ARM: uaccess: remove unneeded uaccess_save_and_disable macro
        ARM: swpan: fix nwfpe for uaccess changes
        ARM: 8429/1: disable GCC SRA optimization

  commit d8f8004ec7048fb2faa6967ab51259b5603562fb
  Author: Nishanth Menon <nm@xxxxxx>
  Date:   Wed Sep 9 16:18:14 2015 -0500

      ARM: OMAP5: Cleanup options for SoC only build

      OMAP5 SoC has Cortex-A15 which does not use TWD timer. It uses
      ARCH_TIMER instead, clean up unwanted configuration and enable
      OMAP_INTERCONNECT and OPP which is necessary for expected functionality
      on the SoC.

      Reported-by: Carlos Hernandez <ceh@xxxxxx>
      Reported-by: Felipe Balbi <balbi@xxxxxx>
      Signed-off-by: Nishanth Menon <nm@xxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit d2e104c63a81e64574a6af9806f2a5d5a48248d9
  Author: Nishanth Menon <nm@xxxxxx>
  Date:   Wed Sep 9 16:18:13 2015 -0500

      ARM: DRA7: Select missing options for SoC only build

      DRA7 does use OPP, uses OMAP interconnect and also does require SCU.
      These are missing in the SoC only build of DRA7 breaking various PM
      features in DRA7 only build.

      Reported-by: Carlos Hernandez <ceh@xxxxxx>
      Signed-off-by: Nishanth Menon <nm@xxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit a3b7470951ab49e5592d20c2bcfe5ee675221591
  Author: Nishanth Menon <nm@xxxxxx>
  Date:   Wed Sep 9 16:18:12 2015 -0500

      ARM: OMAP2+: board-generic: Remove stale of_irq macros

      When commit c4082d499fa2 ("ARM: omap2+: board-generic: clean up the
      irq data from board file") cleaned up the direct usage of gic_of_init
      and omap_intc_of_init, it failed to clean up the macros properly.

      Since these macros are no longer used, lets just remove them.

      Fixes: c4082d499fa2 ("ARM: omap2+: board-generic: clean up the irq data 
from board file")
      Reported-by: Carlos Hernandez <ceh@xxxxxx>
      Signed-off-by: Nishanth Menon <nm@xxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 6d785c963a660b0279c43a2b1cd9b1c89ce5514b
  Author: Nishanth Menon <nm@xxxxxx>
  Date:   Wed Sep 9 16:18:11 2015 -0500

      ARM: OMAP4+: PM: erratum is used by OMAP5 and DRA7 as well

      OMAP5 and DRA7 reuse the same pm44xx_erratum variable so, enable the
      same, else PM features such as Suspend to ram is broken in a SoC only
      build configuration.

      Reported-by: Carlos Hernandez <ceh@xxxxxx>
      Signed-off-by: Nishanth Menon <nm@xxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit d34cf0d56658ff040c707313b4a71e86a767cbc2
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Mon Sep 7 18:24:18 2015 +0200

      ARM: dts: omap3-igep: Move eth IRQ pinmux to IGEPv2 common dtsi

      Only the IGEPv2 boards have a LAN9221i chip connected to the GPMC
      so the pinmux configuration for the GPIO connected to the IRQ line
      of the LAN chip should not be defined in the IGEP common dtsi but
      in the one common to the IGEPv2 boards.

      While there, use the OMAP3_CORE1_IOPAD() macro for the padconf reg.

      Suggested-by: Ladislav Michl <ladis@xxxxxxxxxxxxxx>
      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Acked-by: Enric Balletbo i Serra <enric.balletbo@xxxxxxxxxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit c22c7f3e667bece46efe97780ab2df3af700aea0
  Author: Nishanth Menon <nm@xxxxxx>
  Date:   Thu Sep 3 14:24:00 2015 -0500

      ARM: dts: am57xx-beagle-x15: Add wakeup irq for mcp79410

      With the support in the generic PM framework for wakeirq and capability
      added to the rtc-ds1307 driver to support this, we can now define the
      optional wakeup irq to allow the RTC to wakeup the system from low power
      modes as part of suspend.

      Signed-off-by: Nishanth Menon <nm@xxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 259c0c04acde19d6286def1661ed22d0fb3b05b9
  Author: Teresa Remmet <t.remmet@xxxxxxxxx>
  Date:   Thu Sep 3 14:00:06 2015 +0200

      ARM: dts: am335x-phycore-som: Fix mpu voltage

      Fix the mpu voltage as it is set too low for the silicon
      revision 2.1.

      Signed-off-by: Teresa Remmet <t.remmet@xxxxxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 423fe5f3c35ff0f374d5452eb2db93a28bf6b9e2
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Wed Jul 29 16:39:42 2015 +0530

      ARM: dts: am57xx-beagle-x15: Fix regulator populated in MMC1 dt node

      For beagle x15, both the vdd and io lines are connected to the
      same regulator (ldo1_reg). However vmmc_aux is populated to vdd_3v3.
      Remove it.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Acked-by: Nishanth Menon <nm@xxxxxx>
      [tony@xxxxxxxxxxx: updated to apply]
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 87ee15ec26000c6edc10e63c415bee1239e042c8
  Author: Tony Lindgren <tony@xxxxxxxxxxx>
  Date:   Mon Sep 14 07:07:28 2015 -0700

      ARM: dts: Fix dm814x control base to properly initialize Ethernet PHY

      Looks like I made a typo on the control base, all the 81xx
      SoCs have it at 0x48140000 base. We've just gotten away with
      the typo as the Ethernet phy was configured by the bootloader
      on my test system and we're not yet using the pinctrl.

      In addition to fixing the contol base, we need to also use the
      right Ethernet phy flags to initialize it. And we are still
      missing the PLL driver for dm814x and only relying on the
      divider and mux clocks.

      Fixes: f3d953ea3721 ("ARM: dts: Add minimal dm814x support")
      Cc: Matthijs van Duin <matthijsvanduin@xxxxxxxxx>
      Cc: Nicolas Chauvet <kwizart@xxxxxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 3a2fa775bd1d0579113666c1a2e37654a34018a0
  Author: Carl Frederik Werner <frederik@xxxxxxx>
  Date:   Wed Sep 2 10:07:57 2015 +0900

      ARM: dts: omap3-beagle: make i2c3, ddc and tfp410 gpio work again

      Let's fix pinmux address of gpio 170 used by tfp410 powerdown-gpio.

      According to the OMAP35x Technical Reference Manual
        CONTROL_PADCONF_I2C3_SDA[15:0]  0x480021C4 mode0: i2c3_sda
        CONTROL_PADCONF_I2C3_SDA[31:16] 0x480021C4 mode4: gpio_170
      the pinmux address of gpio 170 must be 0x480021C6.

      The former wrong address broke i2c3 (used by hdmi ddc), resulting in
      kernel message:
        omap_i2c 48060000.i2c: controller timed out

      Fixes: 8cecf52befd7 ("ARM: omap3-beagle.dts: add display information")
      Cc: stable@xxxxxxxxxxxxxxx # v3.15+
      Signed-off-by: Carl Frederik Werner <frederik@xxxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit df5c79e982b38eec1d184668d66f9ce0c426e2a1
  Merge: f17b329 721b51f
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Mon Sep 14 19:53:39 2015 +0100

      Merge branch 'fix/rt5645' of 
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-fix-rt5645

  commit 295c3405a8bbd69ee8c8eb6580f30b0b8739b33a
  Author: Jyri Sarha <jsarha@xxxxxx>
  Date:   Wed Sep 9 21:27:42 2015 +0300

      ASoC: davinci-mcasp: Set .symmetric_rates = 1 in snd_soc_dai_driver

      The TX and RX direction share the same bit clock and frame sync, so
      the samplerate must be the same to both directions.

      Signed-off-by: Jyri Sarha <jsarha@xxxxxx>
      Acked-by: Peter Ujfalusi <peter.ujfalusi@xxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit bd315aab8a3ab1bc7074774b89a5d8ec7c1ff7ab
  Author: Wang Nan <wangnan0@xxxxxxxxxx>
  Date:   Mon Sep 14 10:23:55 2015 +0000

      perf top: Fix segfault pressing -> with no hist entries

      'perf top' segfaults with following operation:

       # perf top -e page-faults -p 11400 # 11400 never generates page-fault

      Then on the resulting empty interface, press right key:

        # ./perf top -e page-faults -p 11400
        perf: Segmentation fault
        -------- backtrace --------
        ./perf[0x535428]
        /lib64/libc.so.6(+0x3545f)[0x7f0dd360745f]
        ./perf[0x531d46]
        ./perf(perf_evlist__tui_browse_hists+0x96)[0x5340d6]
        ./perf[0x44ba2f]
        /lib64/libpthread.so.0(+0x81d0)[0x7f0dd49dc1d0]
        /lib64/libc.so.6(clone+0x6c)[0x7f0dd36b90dc]

      The bug resides in perf_evsel__hists_browse() that, in the above
      circumstance browser->selection can be NULL, but code after
      skip_annotation doesn't consider it.

      This patch fix it by checking browser->selection before fetching
      browser->selection->map.

      Signed-off-by: Wang Nan <wangnan0@xxxxxxxxxx>
      Tested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Zefan Li <lizefan@xxxxxxxxxx>
      Cc: pi3orama@xxxxxxx
      Link: 
http://lkml.kernel.org/r/1442226235-117265-1-git-send-email-wangnan0@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 921e54680aefe52f28d9ce9485edb1bfef4b92a8
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Tue Sep 1 14:50:15 2015 +0800

      ASoC: au1x: psc-i2s: Fix unused variable 'ret' warning

      Fix below build warning:
      sound/soc/au1x/psc-i2s.c: In function 'au1xpsc_i2s_drvprobe':
      sound/soc/au1x/psc-i2s.c:299:6: warning: unused variable 'ret' 
[-Wunused-variable]

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Acked-by: Manuel Lauss <manuel.lauss@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 42617869bf095c650e67aad4001cab4224e7fa98
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Tue Sep 1 12:31:24 2015 +0800

      ASoC: SPEAr: Make SND_SPEAR_SOC select SND_SOC_GENERIC_DMAENGINE_PCM

      devm_snd_dmaengine_pcm_register() is guarded by
      CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit e4fba9b5be12d577d2e2c19fdca6b0744c3f271e
  Author: Koro Chen <koro.chen@xxxxxxxxxxxx>
  Date:   Mon Sep 14 14:51:17 2015 +0800

      ASoC: mediatek: Increase periods_min in capture

      In capture, there is chance that hw_ptr reported at IRQ is
      a little smaller than period_size due to internal AFE buffer.
      In the case of ping-pong buffer:

      |xxxxxxxxxxxxxxxxxxxxxxxxxxxx--|-----------------------------|
                                  hw_ptr < period_size

      This available buffer will not be read since its size is smaller than
      avail_min (which is period_size by default), and read thread continues
      to sleep. If the next hw_ptr is just a little larger than buffer_size,
      overrun occurs. One more period can hold the possible unread buffer.

      Signed-off-by: Koro Chen <koro.chen@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 81523aac01a7f68af2576800c8623edfb6323017
  Author: Wei Yang <weiyang@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 14:12:53 2015 +0800

      KVM: make the declaration of functions within 80 characters

      After 'commit 0b8ba4a2b658 ("KVM: fix checkpatch.pl errors in
      kvm/coalesced_mmio.h")', the declaration of the two function will exceed 
80
      characters.

      This patch reduces the TAPs to make each line in 80 characters.

      Signed-off-by: Wei Yang <weiyang@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 5d7c631d926b59aa16f3c56eaeb83f1036c81dc7
  Author: Shaohua Li <shli@xxxxxx>
  Date:   Thu Jul 30 16:24:43 2015 -0700

      x86/apic: Serialize LVTT and TSC_DEADLINE writes

      The APIC LVTT register is MMIO mapped but the TSC_DEADLINE register is an
      MSR. The write to the TSC_DEADLINE MSR is not serializing, so it's not
      guaranteed that the write to LVTT has reached the APIC before the
      TSC_DEADLINE MSR is written. In such a case the write to the MSR is
      ignored and as a consequence the local timer interrupt never fires.

      The SDM decribes this issue for xAPIC and x2APIC modes. The
      serialization methods recommended by the SDM differ.

      xAPIC:
       "1. Memory-mapped write to LVT Timer Register, setting bits 18:17 to 10b.
        2. WRMSR to the IA32_TSC_DEADLINE MSR a value much larger than current 
time-stamp counter.
        3. If RDMSR of the IA32_TSC_DEADLINE MSR returns zero, go to step 2.
        4. WRMSR to the IA32_TSC_DEADLINE MSR the desired deadline."

      x2APIC:
       "To allow for efficient access to the APIC registers in x2APIC mode,
        the serializing semantics of WRMSR are relaxed when writing to the
        APIC registers. Thus, system software should not use 'WRMSR to APIC
        registers in x2APIC mode' as a serializing instruction. Read and write
        accesses to the APIC registers will occur in program order. A WRMSR to
        an APIC register may complete before all preceding stores are globally
        visible; software can prevent this by inserting a serializing
        instruction, an SFENCE, or an MFENCE before the WRMSR."

      The xAPIC method is to just wait for the memory mapped write to hit
      the LVTT by checking whether the MSR write has reached the hardware.
      There is no reason why a proper MFENCE after the memory mapped write would
      not do the same. Andi Kleen confirmed that MFENCE is sufficient for the
      xAPIC case as well.

      Issue MFENCE before writing to the TSC_DEADLINE MSR. This can be done
      unconditionally as all CPUs which have TSC_DEADLINE also have MFENCE
      support.

      [ tglx: Massaged the changelog ]

      Signed-off-by: Shaohua Li <shli@xxxxxx>
      Reviewed-by: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: <Kernel-team@xxxxxx>
      Cc: <lenb@xxxxxxxxxx>
      Cc: <fenghua.yu@xxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx #v3.7+
      Link: 
http://lkml.kernel.org/r/20150909041352.GA2059853@xxxxxxxxxxxxxxxxxxxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 723831927e8813b5b336d383174f686ad708bf10
  Author: Peter Ujfalusi <peter.ujfalusi@xxxxxx>
  Date:   Mon Sep 14 16:06:48 2015 +0300

      ASoC: davinci-mcasp: Revise the FIFO threshold calculation

      The FIFO threshold for McASP should be <=[tx/rx]numevt so the initial 
value
      for the refining should meet this requirement as well.

      Signed-off-by: Peter Ujfalusi <peter.ujfalusi@xxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 4857c91f0d195f05908fff296ba1ec5fca87066c
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Sep 14 12:00:55 2015 +0200

      x86/ioapic: Force affinity setting in setup_ioapic_dest()

      The recent ioapic cleanups changed the affinity setting in
      setup_ioapic_dest() from a direct write to the hardware to the delayed
      affinity setup via irq_set_affinity().

      That results in a warning from chained_irq_exit():
      WARNING: CPU: 0 PID: 5 at kernel/irq/migration.c:32 irq_move_masked_irq
      [<ffffffff810a0a88>] irq_move_masked_irq+0xb8/0xc0
      [<ffffffff8103c161>] ioapic_ack_level+0x111/0x130
      [<ffffffff812bbfe8>] intel_gpio_irq_handler+0x148/0x1c0

      The reason is that irq_set_affinity() does not write directly to the
      hardware. It marks the affinity setting as pending and executes it
      from the next interrupt. The chained handler infrastructure does not
      take the irq descriptor lock for performance reasons because such a
      chained interrupt is not visible to any interfaces. So the delayed
      affinity setting triggers the warning in irq_move_masked_irq().

      Restore the old behaviour by calling the set_affinity function of the
      ioapic chip in setup_ioapic_dest(). This is safe as none of the
      interrupts can be on the fly at this point.

      Fixes: aa5cb97f14a2 'x86/irq: Remove x86_io_apic_ops.set_affinity and 
related interfaces'
      Reported-and-tested-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: jarkko.nikula@xxxxxxxxxxxxxxx

  commit ba378ca9c04a5fc1b2cf0f0274a9d02eb3d1bad9
  Author: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>
  Date:   Mon Sep 14 18:04:09 2015 +0200

      netfilter: nft_compat: skip family comparison in case of NFPROTO_UNSPEC

      Fix lookup of existing match/target structures in the corresponding list
      by skipping the family check if NFPROTO_UNSPEC is used.

      This is resulting in the allocation and insertion of one match/target
      structure for each use of them. So this not only bloats memory
      consumption but also severely affects the time to reload the ruleset
      from the iptables-compat utility.

      After this patch, iptables-compat-restore and iptables-compat take
      almost the same time to reload large rulesets.

      Fixes: 0ca743a55991 ("netfilter: nf_tables: add compatibility layer for 
x_tables")
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit 63cdbc06b357dcb3a7104a421ee4a4550d7fadfd
  Author: Florian Westphal <fw@xxxxxxxxx>
  Date:   Mon Sep 14 17:06:27 2015 +0200

      netfilter: bridge: fix routing of bridge frames with call-iptables=1

      We can't re-use the physoutdev storage area.

      1.  When using NFQUEUE in PREROUTING, we attempt to bump a bogus
      refcnt since nf_bridge->physoutdev is garbage (ipv4/ipv6 address)

      2. for same reason, we crash in physdev match in FORWARD or later if
      skb is routed instead of bridged.

      This increases nf_bridge_info to 40 bytes, but we have no other choice.

      Fixes: 72b1e5e4cac7 ("netfilter: bridge: reduce nf_bridge_info to 32 
bytes again")
      Reported-by: Sander Eikelenboom <linux@xxxxxxxxxxxxxx>
      Signed-off-by: Florian Westphal <fw@xxxxxxxxx>
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit 586b286b110e94eb31840ac5afc0c24e0881fe34
  Author: Mike Snitzer <snitzer@xxxxxxxxxx>
  Date:   Wed Sep 9 21:34:51 2015 -0400

      dm crypt: constrain crypt device's max_segment_size to PAGE_SIZE

      Setting the dm-crypt device's max_segment_size to PAGE_SIZE is an
      unfortunate constraint that is required to avoid the potential for
      exceeding dm-crypt's underlying device's max_segments limits -- due to
      crypt_alloc_buffer() possibly allocating pages for the encryption bio
      that are not as physically contiguous as the original bio.

      It is interesting to note that this problem was already fixed back in
      2007 via commit 91e106259 ("dm crypt: use bio_add_page").  But Linux 4.0
      commit cf2f1abfb ("dm crypt: don't allocate pages for a partial
      request") regressed dm-crypt back to _not_ using bio_add_page().  But
      given dm-crypt's cpu parallelization changes all depend on commit
      cf2f1abfb's abandoning of the more complex io fragments processing that
      dm-crypt previously had we cannot easily go back to using
      bio_add_page().

      So all said the cleanest way to resolve this issue is to fix dm-crypt to
      properly constrain the original bios entering dm-crypt so the encryption
      bios that dm-crypt generates from the original bios are always
      compatible with the underlying device's max_segments queue limits.

      It should be noted that technically Linux 4.3 does _not_ need this fix
      because of the block core's new late bio-splitting capability.  But, it
      is reasoned, there is little to be gained by having the block core split
      the encrypted bio that is composed of PAGE_SIZE segments.  That said, in
      the future we may revert this change.

      Fixes: cf2f1abfb ("dm crypt: don't allocate pages for a partial request")
      Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=104421
      Suggested-by: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # 4.0+

  commit 43297dda0a51e4ffed0888ce727c218cfb7474b6
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Mon Sep 14 16:06:03 2015 +0100

      KVM: arm64: add workaround for Cortex-A57 erratum #852523

      When restoring the system register state for an AArch32 guest at EL2,
      writes to DACR32_EL2 may not be correctly synchronised by Cortex-A57,
      which can lead to the guest effectively running with junk in the DACR
      and running into unexpected domain faults.

      This patch works around the issue by re-ordering our restoration of the
      AArch32 register aliases so that they happen before the AArch64 system
      registers. Ensuring that the registers are restored in this order
      guarantees that they will be correctly synchronised by the core.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Reviewed-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 762982db33b23029e98c844611e2e8beeb75bc0d
  Author: Roger Quadros <rogerq@xxxxxx>
  Date:   Thu Aug 13 13:28:42 2015 +0300

      usb: phy: phy-generic: Fix reset behaviour on legacy boot

      The gpio-desc migration done in v4.0 caused a regression
      with legacy boots due to reversed reset logic.
      e.g. omap3-beagle USB host breaks on legacy boot.

      Request the reset GPIO with GPIOF_ACTIVE_LOW flag so that
      it matches the driver logic and pin behaviour.

      Fixes: e9f2cefb0cdc ("usb: phy: generic: migrate to gpio_desc")
      Cc: <stable@xxxxxxxxxxxxxxx> # 4.0+
      Tested-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Roger Quadros <rogerq@xxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit 523d5daf86e5e8b540bdc91e090197b5665f0519
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 17:45:37 2015 +0200

      usb: musb: ux500: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit 6fc6f4b87cb32fcd0bf5e5bce434301958a3b624
  Author: Pascal Huerst <pascal.huerst@xxxxxxxxx>
  Date:   Thu Sep 3 10:50:58 2015 +0200

      usb: musb: Disable interrupts on suspend, enable them on resume

      In certain situations, an interrupt triggers on resume, before 
musb_start()
      has been called. This has been observed to cause enumeration issues after
      suspend/resume cycles with AM335x.

      Signed-off-by: Pascal Huerst <pascal.huerst@xxxxxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit 6527cc27761a124de8c08e6488ce17fdcc74dbba
  Author: Alexey Khoroshilov <khoroshilov@xxxxxxxxx>
  Date:   Sun Sep 6 01:11:51 2015 +0300

      usb: gadget: amd5536udc: fix error handling in udc_pci_probe()

      If a failure happens early in udc_pci_probe(), error handling code
      just kfree(dev) and returns. The patch adds proper resource
      deallocations in udc_pci_probe() itself,
      since udc_pci_remove() is not suitabe to be called so early
      in initialization process.

      By the way, iounmap(dev->regs) is replaced by iounmap(dev->virt_addr)
      in udc_pci_remove() for clarity.

      Found by Linux Driver Verification project (linuxtesting.org).

      Signed-off-by: Alexey Khoroshilov <khoroshilov@xxxxxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit 88ccdbd5fc59ce8c69261a20746ca2533be7e358
  Author: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
  Date:   Thu Sep 10 10:37:39 2015 -0700

      usb: phy: fix phy-qcom-8x16-usb build

      Fix build errors that happen when USB_QCOM_8X16_PHY=y and EXTCON=m:

      drivers/built-in.o: In function `phy_8x16_init':
      phy-qcom-8x16-usb.c:(.text+0x86ef4): undefined reference to 
`extcon_get_cable_state'
      drivers/built-in.o: In function `phy_8x16_probe':
      phy-qcom-8x16-usb.c:(.text+0x870bf): undefined reference to 
`extcon_get_edev_by_phandle'
      phy-qcom-8x16-usb.c:(.text+0x87133): undefined reference to 
`extcon_register_interest'
      phy-qcom-8x16-usb.c:(.text+0x87151): undefined reference to 
`extcon_unregister_interest'
      drivers/built-in.o: In function `phy_8x16_remove':
      phy-qcom-8x16-usb.c:(.text+0x872ec): undefined reference to 
`extcon_unregister_interest'

      Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
      Cc: Felipe Balbi <balbi@xxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit 40af177efc9385af15c49a40976f71e58e6af418
  Author: Bin Liu <b-liu@xxxxxx>
  Date:   Mon Sep 14 09:12:34 2015 -0500

      usb: musb: ensure in peripheral mode when checking session

      The change ensures otg is not in a A- state when checking for VBUS in
      peripheral mode.

      musb_start() where VBUS checking is in can be called in many situations.
      One example is in babble recovery routine, in which otg is transitioning
      from A-HOST to A-WAIT-BCON, but VBUS discharge takes time, so
      musb->is_active could be set to 1 due to this improper checking, then it
      causes musb_bus_suspend() failed which leads to warning log message
      flooding.

      Signed-off-by: Bin Liu <b-liu@xxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit 51256484c033a6d57d71aa8f788c24e5dc82348a
  Merge: edb9272 0c06729
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Mon Sep 14 17:07:35 2015 +0200

      Merge tag 'kvm-arm-for-4.3-rc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into kvm-master

      KVM/ARM changes for 4.3-rc2

      - Fix timer interrupt injection after the rework
        that went in during the merge window
      - Reset the timer to zero on reboot
      - Make sure the TCR_EL2 RES1 bits are really set to 1
      - Fix a PSCI affinity bug for non-existing vcpus

  commit edb9272f35d8bc97c86101a13f67d0ba16f3eecc
  Author: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
  Date:   Mon Sep 14 17:38:51 2015 +0800

      KVM: fix polling for guest halt continued even if disable it

      If there is already some polling ongoing, it's impossible to disable the
      polling, since as soon as somebody sets halt_poll_ns to 0, polling will
      never stop, as grow and shrink are only handled if halt_poll_ns is != 0.

      This patch fix it by reset vcpu->halt_poll_ns in order to stop polling
      when polling is disabled.

      Reported-by: Christian Borntraeger <borntraeger@xxxxxxxxxx>
      Signed-off-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit e2ae0692bf6f71c8b841889b655d0dc08413e4e3
  Author: Felipe Balbi <balbi@xxxxxx>
  Date:   Tue Aug 25 12:07:45 2015 -0500

      usb: dwc3: omap: enable irqs lately

      If we enable IRQs before requesting our
      extcon device, we might fall into a situation
      where and IRQ fires before we're ready to
      handle it.

      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit e4c1b1ba7f663fd77204201eef83baf58e2e5777
  Author: Robert Baldyga <r.baldyga@xxxxxxxxxxx>
  Date:   Fri Aug 21 11:01:29 2015 +0200

      usb: gadget: fix possible regression introduced with ep->claimed

      This patch fixes possible regression introduced by
      patch reworking endpoint claiming mechanism. It restores
      setring ep->driver_data to NULL in usb_ep_autoconfig_reset(),
      which was removed by patch commit cc476b42a39d.

      Fixes: cc476b42a39d ("usb: gadget: encapsulate endpoint
        claiming mechanism")
      Reported-by: Felipe Balbi <balbi@xxxxxx>
      Signed-off-by: Robert Baldyga <r.baldyga@xxxxxxxxxxx>
      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit f5cbb182586ea36c6ad0e90e3534d18a5e9af094
  Author: Javi Merino <javi.merino@xxxxxxx>
  Date:   Mon Sep 14 14:23:53 2015 +0100

      thermal: power_allocator: don't require tzp to be present for the thermal 
zone

      Thermal zones created using thermal_zone_device_create() may not have
      tzp.  As the governor gets its parameters from there, allocate it while
      the governor is bound to the thermal zone so that it can operate in it.
      In this case, tzp is freed when the thermal zone switches to another
      governor.

      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: Eduardo Valentin <edubezval@xxxxxxxxx>
      Reviewed-by: Daniel Kurtz <djkurtz@xxxxxxxxxxxx>
      Signed-off-by: Javi Merino <javi.merino@xxxxxxx>
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit 8b7b390f805f09ff252351468a79ebabde1ab55a
  Author: Javi Merino <javi.merino@xxxxxxx>
  Date:   Mon Sep 14 14:23:52 2015 +0100

      thermal: power_allocator: relax the requirement of two passive trip points

      The power allocator governor currently requires that the thermal zone
      has at least two passive trip points.  If there aren't, the governor
      refuses to bind to the thermal zone.

      This commit relaxes that requirement.  Now the governor will bind to all
      thermal zones regardless of how many trip points they have.

      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: Eduardo Valentin <edubezval@xxxxxxxxx>
      Reviewed-by: Daniel Kurtz <djkurtz@xxxxxxxxxxxx>
      Signed-off-by: Javi Merino <javi.merino@xxxxxxx>
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit e055bb0f9a6e5c09bedf41c2a5b881edbd7f2ed0
  Author: Javi Merino <javi.merino@xxxxxxx>
  Date:   Mon Sep 14 14:23:51 2015 +0100

      thermal: power_allocator: relax the requirement of a sustainable_power in 
tzp

      The power allocator governor currently requires that a sustainable power
      is passed as part of the thermal zone's thermal zone parameters.  If
      that parameter is not provided, it doesn't register with the thermal
      zone.

      While this parameter is strongly recommended for optimal performance, it
      doesn't need to be mandatory.  Relax the requirement and allow the
      governor to bind to thermal zones that don't provide it by estimating it
      from the cooling devices' power model.

      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: Eduardo Valentin <edubezval@xxxxxxxxx>
      Reviewed-by: Daniel Kurtz <djkurtz@xxxxxxxxxxxx>
      Signed-off-by: Javi Merino <javi.merino@xxxxxxx>
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit c973c3bcec3752455c4d7545edd42935cd7942d9
  Author: Javi Merino <javi.merino@xxxxxxx>
  Date:   Mon Sep 14 14:23:50 2015 +0100

      thermal: Add a function to get the minimum power

      The thermal core already has a function to get the maximum power of a
      cooling device: power_actor_get_max_power().  Add a function to get the
      minimum power of a cooling device.

      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: Eduardo Valentin <edubezval@xxxxxxxxx>
      Reviewed-by: Daniel Kurtz <djkurtz@xxxxxxxxxxxx>
      Signed-off-by: Javi Merino <javi.merino@xxxxxxx>
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit 205ee117d4dc4a11ac3bd9638bb9b2e839f4de9a
  Author: Florian Westphal <fw@xxxxxxxxx>
  Date:   Wed Sep 9 02:57:21 2015 +0200

      netfilter: nf_log: don't zap all loggers on unregister

      like nf_log_unset, nf_log_unregister must not reset the list of loggers.
      Otherwise, a call to nf_log_unregister() will render loggers of other nf
      protocols unusable:

      iptables -A INPUT -j LOG
      modprobe nf_log_arp ; rmmod nf_log_arp
      iptables -A INPUT -j LOG
      iptables: No chain/target/match by that name

      Fixes: 30e0c6a6be ("netfilter: nf_log: prepare net namespace support for 
loggers")
      Signed-off-by: Florian Westphal <fw@xxxxxxxxx>
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit cda34fc774d114afe98515a21c2063a803f922bc
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Mon Sep 14 12:42:23 2015 +0200

      x86/paravirt: Remove the unused pv_time_ops::get_tsc_khz method

      It's not used anywhere.

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Acked-by: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Brian Gerst <brgerst@xxxxxxxxx>
      Cc: Denys Vlasenko <dvlasenk@xxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: akataria@xxxxxxxxxx
      Cc: chrisw@xxxxxxxxxxxx
      Cc: jeremy@xxxxxxxx
      Cc: virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1442227343-403-1-git-send-email-jgross@xxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit bf950040a53da35522e38066d9eb6ab7a1c9d136
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Fri Sep 11 18:22:02 2015 +0100

      arm64: pgtable: use a single bit for PTE_WRITE regardless of DBM

      Depending on CONFIG_ARM64_HW_AFDBM, we use either bit 57 or 51 of the
      pte to represent PTE_WRITE. Given that bit 51 is reserved prior to
      ARMv8.1, we can just use that bit regardless of the config option. That
      also matches what happens if a kernel configured with ARM64_HW_AFDBM=y
      is run on a CPU without the DBM functionality.

      Cc: Julien Grall <julien.grall@xxxxxxxxxx>
      Tested-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit 62d96c71d248834af2891293dc23cc344ae2ec36
  Author: Catalin Marinas <catalin.marinas@xxxxxxx>
  Date:   Fri Sep 11 18:22:01 2015 +0100

      arm64: Fix pte_modify() to preserve the hardware dirty information

      The pte_modify() function with hardware AF/DBM enabled must transfer the
      hardware dirty information to the software PTE_DIRTY bit. However, it
      was setting this bit in newprot and the mask does not cover such bit.
      This patch sets PTE_DIRTY on the original pte which will be preserved in
      the returned value.

      Fixes: 2f4b829c625e ("arm64: Add support for hardware updates of the 
access and dirty pte bits")
      Cc: Julien Grall <julien.grall@xxxxxxxxxx>
      Tested-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Tested-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Catalin Marinas <catalin.marinas@xxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit b847415ce96efef819534b230d84695b1bc6d36b
  Author: Catalin Marinas <catalin.marinas@xxxxxxx>
  Date:   Fri Sep 11 18:22:00 2015 +0100

      arm64: Fix the pte_hw_dirty() check when AF/DBM is enabled

      Commit 2f4b829c625e ("arm64: Add support for hardware updates of the
      access and dirty pte bits") introduced support for handling hardware
      updates of the access flag and dirty status. The PTE is automatically
      dirtied in hardware (if supported) by clearing the PTE_RDONLY bit when
      the PTE_DBM/PTE_WRITE bit is set. The pte_hw_dirty() macro was added to
      detect a hardware dirtied pte. The pte_dirty() macro checks for both
      software PTE_DIRTY and pte_hw_dirty().

      Functions like pte_modify() clear the PTE_RDONLY bit since it is meant
      to be set in set_pte_at() when written to memory. In such cases,
      pte_hw_dirty() would return true even though such pte is clean. This
      patch changes pte_hw_dirty() to test the PTE_DBM/PTE_WRITE bit together
      with PTE_RDONLY.

      Fixes: 2f4b829c625e ("arm64: Add support for hardware updates of the 
access and dirty pte bits")
      Reported-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Tested-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Tested-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Catalin Marinas <catalin.marinas@xxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit ba9cc453c400049f632d4eb2f2835e2f96654ddc
  Author: Jisheng Zhang <jszhang@xxxxxxxxxxx>
  Date:   Fri Sep 11 08:49:47 2015 +0100

      arm64: dma-mapping: check whether cma area is initialized or not

      If CMA is turned on and CMA size is set to zero, kernel should
      behave as if CMA was not enabled at compile time.
      Every dma allocation should check existence of cma area
      before requesting memory.

      Arm has done this by commit e464ef16c4f0 ("arm: dma-mapping: add
      checking cma area initialized"), also do this for arm64.

      Acked-by: Catalin Marinas <catalin.marinas@xxxxxxx>
      Signed-off-by: Jisheng Zhang <jszhang@xxxxxxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit f454b478861325f067fd58ba7ee9f1b5c4a9d6a0
  Author: Jan Beulich <JBeulich@xxxxxxxx>
  Date:   Wed Sep 2 09:45:58 2015 -0600

      x86/ldt: Fix small LDT allocation for Xen

      While the following commit:

        37868fe113 ("x86/ldt: Make modify_ldt synchronous")

      added a nice comment explaining that Xen needs page-aligned
      whole page chunks for guest descriptor tables, it then
      nevertheless used kzalloc() on the small size path.

      As I'm unaware of guarantees for kmalloc(PAGE_SIZE, ) to return
      page-aligned memory blocks, I believe this needs to be switched
      back to __get_free_page() (or better get_zeroed_page()).

      Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Brian Gerst <brgerst@xxxxxxxxx>
      Cc: David Vrabel <david.vrabel@xxxxxxxxxx>
      Cc: Denys Vlasenko <dvlasenk@xxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/55E735D6020000780009F1E6@xxxxxxxxxxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit eef7635a22f6b144206b5ca2f1398f637acffc4d
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Fri Sep 11 09:34:26 2015 +0530

      clockevents: Remove unused set_mode() callback

      All users are migrated to the per-state callbacks, get rid of the
      unused interface and the core support code.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linaro-kernel@xxxxxxxxxxxxxxxx
      Cc: John Stultz <john.stultz@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/fd60de14cf6d125489c031207567bb255ad946f6.1441943991.git.viresh.kumar@xxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 1e6428124fe22906be0de1622c8fed8e50e5de05
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Sat Sep 5 08:58:10 2015 +0200

      x86/vm86: Fix the misleading CONFIG_VM86 Kconfig help text

      The CONFIG_VM86 Kconfig help text is actively misleading, so fix it:

        - Don't mark it 'obsolete' in the text as we'll support the ABI as long 
as CPUs
          support it.

        - Qualify the part about software emulation and mention that for some 
apps you
          want a real vm86 mode.

        - Don't scare users away from the option, instead explain what it does.

      Reported-by: Stas Sergeev <stsp@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: Arjan van de Ven <arjan@xxxxxxxxxxxxxxx>
      Cc: Austin S Hemmelgarn <ahferroin7@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Brian Gerst <brgerst@xxxxxxxxx>
      Cc: Josh Boyer <jwboyer@xxxxxxxxxxxxxxxxx>
      Cc: Kees Cook <keescook@xxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Matthew Garrett <mjg59@xxxxxxxxxxxxx>
      Cc: Oleg Nesterov <oleg@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit b838c950b397ebed94eb11b473f1f17428a1443d
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Sep 14 10:20:25 2015 +0200

      soc: dove: Prepare irq handler for irq argument removal

      The irq argument of most interrupt flow handlers is unused or merily
      used instead of a local variable. The handlers which need the irq
      argument can retrieve the irq number from the irq descriptor.

      Search and update was done with coccinelle and the invaluable help of
      Julia Lawall.

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Julia Lawall <Julia.Lawall@xxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: Gregory CLEMENT <gregory.clement@xxxxxxxxxxxxxxxxxx>

  commit 5230347ea70a811f0a526e8e4f0f529ac31b7d18
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Sep 14 10:27:13 2015 +0200

      soc: dove: Use irq_desc_get_xxx() to avoid redundant lookup of irq_desc

      Search and replace done with coccinelle

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Julia Lawall <Julia.Lawall@xxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>

  commit 391de7f9ef9e6a500343d977ccd037b70e62aa45
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Sep 14 10:17:00 2015 +0200

      powerpc/cell: Prepare irq handler for irq argument removal

      The irq argument of most interrupt flow handlers is unused or merily
      used instead of a local variable. The handlers which need the irq
      argument can retrieve the irq number from the irq descriptor.

      Search and update was done with coccinelle and the invaluable help of
      Julia Lawall.

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Julia Lawall <Julia.Lawall@xxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: linuxppc-dev@xxxxxxxxxxxxxxxx

  commit 0a0dbd92584061549d9775030269365dc16ad289
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Sep 14 10:13:42 2015 +0200

      powerpc/85xx: Prepare irq handlers for irq argument removal

      The irq argument of most interrupt flow handlers is unused or merily
      used instead of a local variable. The handlers which need the irq
      argument can retrieve the irq number from the irq descriptor.

      Search and update was done with coccinelle and the invaluable help of
      Julia Lawall.

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Julia Lawall <Julia.Lawall@xxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: Scott Wood <scottwood@xxxxxxxxxxxxx>
      Cc: linuxppc-dev@xxxxxxxxxxxxxxxx

  commit 5aac2d3368210f15c2fc73f158e2110a0bb611ca
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Sep 14 10:11:26 2015 +0200

      powerpc/mpc5121_ads_cpld: Prepare irq handler for irq argument removal

      The irq argument of most interrupt flow handlers is unused or merily
      used instead of a local variable. The handlers which need the irq
      argument can retrieve the irq number from the irq descriptor.

      Search and update was done with coccinelle and the invaluable help of
      Julia Lawall.

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Julia Lawall <Julia.Lawall@xxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: Anatolij Gustschin <agust@xxxxxxx>
      Cc: linuxppc-dev@xxxxxxxxxxxxxxxx

  commit 2e586a7e017a502410ba1c1a7411179e1d3fbb2b
  Author: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
  Date:   Mon Sep 14 01:17:43 2015 -0700

      drm/vmwgfx: Map the fifo as cached

      On the guest kernel side, previously the FIFO has been mapped write-
      combined. This has worked since VMs up to now has not honored the mapping
      type and mapped the FIFO cached anyway. Since the FIFO is accessed cached
      by the CPU on the virtual device side, this leads to inconsistent
      mappings once the guest starts to honor the mapping types.

      So ask for cached mappings when we map the FIFO. We do this by
      using ioremap_cache() instead of ioremap_wc(), and remove the MTRR setup.
      On the TTM side, MOBs, GMRs and VRAM buffers are already requesting
      cached mappings for kernel- and user-space.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
      Reviewed-by: Sinclair Yeh <syeh@xxxxxxxxxx>

  commit 54c12bc374408faddbff75dbf1a6167c19af39c4
  Author: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
  Date:   Mon Sep 14 01:13:11 2015 -0700

      drm/vmwgfx: Fix up user_dmabuf refcounting

      If user space calls unreference on a user_dmabuf it will typically
      kill the struct ttm_base_object member which is responsible for the
      user-space visibility. However the dmabuf part may still be alive and
      refcounted. In some situations, like for shared guest-backed surface
      referencing/opening, the driver may try to reference the
      struct ttm_base_object member again, causing an immediate kernel warning
      and a later kernel NULL pointer dereference.

      Fix this by always maintaining a reference on the struct
      ttm_base_object member, in situations where it might subsequently be
      referenced.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
      Reviewed-by: Brian Paul <brianp@xxxxxxxxxx>
      Reviewed-by: Sinclair Yeh <syeh@xxxxxxxxxx>

  commit 19ab6bc5674a30fdb6a2436b068d19a3c17dc73e
  Author: Liu.Zhao <lzsos369@xxxxxxx>
  Date:   Mon Aug 24 08:36:12 2015 -0700

      USB: option: add ZTE PIDs

      This is intended to add ZTE device PIDs on kernel.

      Signed-off-by: Liu.Zhao <lzsos369@xxxxxxx>
      Cc: stable <stable@xxxxxxxxxxxxxxx>
      [johan: sort the new entries ]
      Signed-off-by: Johan Hovold <johan@xxxxxxxxxx>

  commit 91a4dc9f71e4b8f9b8da547d19f80e7be89d7539
  Merge: ebfb498 caa4704
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Mon Sep 14 09:29:22 2015 +0200

      Merge tag 'perf-urgent-for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent

      Pull perf/urgent fix from Arnaldo Carvalho de Melo:

        - The values of _SC_NPROCESSORS_CONF and _SC_NPROCESSORS_ONLN 
(sysconf(3)) were
          being read from perf.data files in the inverse order they are 
written, fix it.
          (Arnaldo Carvalho de Melo)

      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit fa84b52cb681b27e6b5e003457562e25a239b9c4
  Author: Linus Walleij <linus.walleij@xxxxxxxxxx>
  Date:   Tue Sep 8 16:46:40 2015 +0200

      pinctrl: samsung: s3c24xx: fix syntax error

      ?SYNTAX ERROR

      irq_desc_get_irq_chip() does not exist. It should
      be irq_desc_get_chip(). Tested by compiling
      s3c2410_defconfig.

      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Reported-by: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 942cde724075f840ded89390b10dce1a47a4d712
  Author: Tony Lindgren <tony@xxxxxxxxxxx>
  Date:   Thu Sep 3 10:34:30 2015 -0700

      pinctrl: core: Warn about NULL gpio_chip in pinctrl_ready_for_gpio_range()

      If the gpio driver is confused about the numbers for gpio-ranges,
      pinctrl_ready_for_gpio_range() may get called with invalid GPIO
      causing a NULL pointer exception. Let's instead provide a warning
      that allows fixing the problem and return with error.

      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 163dc9f39a26b41fc49319fce4145b35f9705789
  Author: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
  Date:   Sat Aug 1 13:22:38 2015 +0900

      pinctrl: join lines that can be a single line within 80 columns

      There is no reason to break a line shorter than 80 columns.

      Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 5a99233e9bcacc7ea23e173a75bbb7301abd3e6f
  Author: Julia Lawall <Julia.Lawall@xxxxxxx>
  Date:   Mon Aug 24 23:12:27 2015 +0200

      pinctrl: digicolor: convert null test to IS_ERR test

      Since commit 323de9efdf3e ("pinctrl: make pinctrl_register() return proper
      error code"), pinctrl_register returns an error code rather than NULL on
      failure.  Update a driver that was introduced more recently.

      The semantic patch that makes this change is as follows:
      (http://coccinelle.lip6.fr/)

      // <smpl>
      @@
      expression e,e1,e2;
      @@

      e = pinctrl_register(...)
      ... when != e = e1
      if (
      -   e == NULL
      +   IS_ERR(e)
         ) {
           ...
           return
      -      e2
      +      PTR_ERR(e)
           ;
           }
      // </smpl>

      Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Acked-by: Baruch Siach <baruch@xxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit d259ec26a6c541a5437e9ed0a1e1891342af3cff
  Author: Julia Lawall <Julia.Lawall@xxxxxxx>
  Date:   Mon Aug 24 23:12:26 2015 +0200

      pinctrl: qcom: ssbi: convert null test to IS_ERR test

      Since commit 323de9efdf3e ("pinctrl: make pinctrl_register() return proper
      error code"), pinctrl_register returns an error code rather than NULL on
      failure.  Update some drivers that were introduced more recently.

      The semantic patch that makes this change is as follows:
      (http://coccinelle.lip6.fr/)

      // <smpl>
      @@
      expression e,e1,e2;
      @@

      e = pinctrl_register(...)
      ... when != e = e1
      if (
      -   e == NULL
      +   IS_ERR(e)
         ) {
           ...
           return
      -      e2
      +      PTR_ERR(e)
           ;
           }
      // </smpl>

      Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 46d4f7c25e1bb59b1663878b843a7ec06eaf5806
  Author: Tony Lindgren <tony@xxxxxxxxxxx>
  Date:   Thu Sep 3 10:31:27 2015 -0700

      gpio: omap: Fix GPIO numbering for deferred probe

      If gpio-omap probe fails with -EPROBE_DEFER, the GPIO numbering
      keeps increasing. Only increase the gpio count if gpiochip_add()
      was successful as otherwise the numbers will increase for each
      probe attempt.

      Cc: Javier Martinez Canillas <javier@xxxxxxxxxxxx>
      Cc: Kevin Hilman <khilman@xxxxxxxxxxxxxxxxxxx>
      Cc: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Reviewed-by: Grygorii Strashko <grygorii.strashko@xxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit ae80d64ee8c88b77c58254bcdc5c0981faab672d
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 10:46:15 2015 +0200

      Documentation: gpio: Explain that <function>-gpio is also supported

      The GPIO documentation mentions that GPIOs are mapped by defining a
      <function>-gpios property in the consumer device's node but a -gpio
      sufix is also supported after commit:

      dd34c37aa3e8 ("gpio: of: Allow -gpio suffix for property names")

      Update the documentation to match the implementation.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 5e606abef57a89b3ca25f5d97a953c6cdad7cbac
  Author: Tony Lindgren <tony@xxxxxxxxxxx>
  Date:   Fri Aug 28 11:44:49 2015 -0700

      gpio: omap: Fix gpiochip_add() handling for deferred probe

      Currently we gpio-omap breaks if gpiochip_add() returns -EPROBE_DEFER:

      [    0.570000] gpiochip_add: GPIOs 0..31 (gpio) failed to register
      [    0.570000] omap_gpio 48310000.gpio: Could not register gpio chip -517
      ...
      [    3.670000] omap_gpio 48310000.gpio: Unbalanced pm_runtime_enable!

      Let's fix the issue by adding the missing pm_runtime_put() on error.

      Cc: Grygorii Strashko <grygorii.strashko@xxxxxx>
      Cc: Javier Martinez Canillas <javier@xxxxxxxxxxxx>
      Cc: Kevin Hilman <khilman@xxxxxxxxxxxxxxxxxxx>
      Cc: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Acked-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit e799f35c32ea940222b568abf38d6abcab7fa8c1
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Sun Aug 30 23:58:44 2015 +0200

      gpio: sx150x: Remove unnecessary MODULE_ALIAS()

      The driver has a I2C device id table that is used to create the module
      aliases and also "sx150x" isn't a supported I2C id, so it's never used.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 87e77e46c61a9333227ab41cdefb1875758a4f13
  Author: Dirk Behme <dirk.behme@xxxxxxxxx>
  Date:   Wed Sep 2 20:07:10 2015 +0200

      Documentation: gpio: board: describe the con_id parameter

      The con_id parameter has to match the GPIO description and is 
automatically
      extended by the GPIO suffix if not NULL. I had to look into the code to
      understand this and properly find the GPIO I've been looking for, so 
document
      this.

      Signed-off-by: Dirk Behme <dirk.behme@xxxxxxxxx>
      Acked-by: Alexandre Courbot <acourbot@xxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 69de52ba321dda8dd7f632d1e480983494325ba0
  Author: Dirk Behme <dirk.behme@xxxxxxxxx>
  Date:   Wed Sep 2 20:07:09 2015 +0200

      Documentation: gpio: board: add flags parameter to gpiod_get*() functions

      With commit 39b2bbe3d715 ("gpio: add flags argument to gpiod_get*()
      functions") the gpiod_get*() functions got a 'flags' parameter. Reflect
      this in the documentation, too.

      Signed-off-by: Dirk Behme <dirk.behme@xxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit e20538b82f1ffcc06e68feb117f24f211cff7a4d
  Author: Bjorn Andersson <bjorn.andersson@xxxxxxxxxxxxxx>
  Date:   Fri Aug 28 09:44:18 2015 -0700

      gpio: Propagate errors from chip->get()

      It's possible to have gpio chips hanging off unreliable remote buses
      where the get() operation will fail to acquire a readout of the current
      gpio state. Propagate these errors to the consumer so that they can
      act on, retry or ignore these failing reads, instead of treating them as
      the line being held high.

      Signed-off-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxxxxxx>
      Reviewed-by: Alexandre Courbot <acourbot@xxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit aad38b75fb632200eb64282469458d21ce2cc39a
  Author: Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx>
  Date:   Tue Aug 25 09:12:43 2015 +0000

      gpio: rcar: GPIO_RCAR doesn't relate to ARM

      8cd1470("gpio: rcar: Add r8a7795 (R-Car H3) support") added
      GPIO support for r8a7795. r8a7795 based on CONFIG_ARM64.
      OTOH, GPIO_RCAR driver can be compiled fine on non-ARM.
      This patch removed ARM dependency for it.

      Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx>
      Acked-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Acked-by: Simon Horman <horms+renesas@xxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 1bbc557d976b4e5ae9a41d619bd79f09ccac9afc
  Author: Peng Fan <van.freenix@xxxxxxxxx>
  Date:   Sun Aug 23 21:11:53 2015 +0800

      gpio: mxs: need to check return value of irq_alloc_generic_chip

      Need to check return value of irq_alloc_generic_chip, because
      it may return NULL.
      1. Change mxs_gpio_init_gc return type from void to int.
      2. Add a new lable out_irqdomain_remove to remove the irq domain
         when mxc_gpio_init_gc fail.

      Signed-off-by: Peng Fan <van.freenix@xxxxxxxxx>
      Cc: Alexandre Courbot <gnurou@xxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 9e26b0b114adb321a9bf41520bac304ef49e77d1
  Author: Peng Fan <van.freenix@xxxxxxxxx>
  Date:   Sun Aug 23 21:11:52 2015 +0800

      gpio: mxc: need to check return value of irq_alloc_generic_chip

      Need to check return value of irq_alloc_generic_chip, because
      it may return NULL.
      1. Change mxc_gpio_init_gc return type from void to int.
      2. Add a new lable out_irqdomain_remove to remove the irq domain
         when mxc_gpio_init_gc fail.

      Signed-off-by: Peng Fan <van.freenix@xxxxxxxxx>
      Cc: Alexandre Courbot <gnurou@xxxxxxxxx>
      [Manually rebased]
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit eba4f88d5af84e0fcaa5d6eb4fe35a75c47203cb
  Author: Javi Merino <javi.merino@xxxxxxx>
  Date:   Mon Aug 17 19:21:43 2015 +0100

      thermal: cpu_cooling: free power table on error or when unregistering

      The power table is not being freed on error from cpufreq_cooling
      register or when unregistering.  Free it.

      Fixes: c36cf0717631 ("thermal: cpu_cooling: implement the power cooling 
device API")
      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: Eduardo Valentin <edubezval@xxxxxxxxx>
      Signed-off-by: Javi Merino <javi.merino@xxxxxxx>
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit 459ac37506d195713b5e82271a2ac44a777e47df
  Author: Javi Merino <javi.merino@xxxxxxx>
  Date:   Mon Aug 17 19:21:42 2015 +0100

      thermal: cpu_cooling: don't call kcalloc() under rcu_read_lock

      build_dyn_power_table() allocates the power table while holding
      rcu_read_lock.  kcalloc using GFP_KERNEL may sleep, so it can't be
      called in an RCU read-side path.

      Move the rcu protection to the part of the function that really needs
      it: the part that handles the dev_pm_opp pointer received from
      dev_pm_opp_find_freq_ceil().  In the unlikely case that there is an OPP
      added to the cpu while this function is running, return -EAGAIN.

      Fixes: c36cf0717631 ("thermal: cpu_cooling: implement the power cooling 
device API")
      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: Eduardo Valentin <edubezval@xxxxxxxxx>
      Signed-off-by: Javi Merino <javi.merino@xxxxxxx>
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit 0847e26a84faa0fcb4572d7e42d0a44cab69a83d
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 13:10:14 2015 +0200

      thermal: db8500_cpufreq_cooling: Fix module autoload for OF platform 
driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit 64e05d8bcc837bc66cb2c6e71796c8883aa45939
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Thu Aug 27 07:32:11 2015 +0530

      thermal: cpu_cooling: Add MAINTAINERS entry

      None of the patches are reaching Viresh or Daniel directly as
      get_maintainers doesn't report us as maintainers. Looks like file header
      or history of commits isn't able to do that properly.

      Add a separate entry for cpu_cooling driver in MAINTAINERS.

      Acked-by: Eduardo Valentin <edubezval@xxxxxxxxx>
      Acked-by: Amit Daniel Kachhap <amit.daniel@xxxxxxxxxxx>
      Acked-by: Amit Daniel Kachhap <amit.kachhap@xxxxxxxxx>
      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit ec2feb475f4880246166a47e066e7a601a6103af
  Author: Eduardo Valentin <edubezval@xxxxxxxxx>
  Date:   Wed Sep 9 21:13:41 2015 -0700

      thermal: ti-soc: Kconfig fix to avoid menu showing wrongly

      Move the dependencies to menu, so we avoid showing it wrongly.

      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: linux-pm@xxxxxxxxxxxxxxx
      Cc: linux-omap@xxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit 41ae3c02743e8f1f21ceebca614342d26b4eb080
  Author: Eduardo Valentin <edubezval@xxxxxxxxx>
  Date:   Wed Sep 9 20:58:36 2015 -0700

      thermal: ti-soc: allow compile test

      Adding COMPILE_TEST flag to ti-soc driver to facilitate
      maintenance.

      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: linux-pm@xxxxxxxxxxxxxxx
      Cc: linux-omap@xxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit cb7fb4d342023d03070fcc1ed73fcd43682973d7
  Author: Eduardo Valentin <edubezval@xxxxxxxxx>
  Date:   Wed Sep 9 20:56:26 2015 -0700

      thermal: qcom_spmi: allow compile test

      Adding COMPILE_TEST flag to qcom_spmi driver to facilitate
      maintenance.

      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: linux-pm@xxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit 2bf427353eb606481d15d2843c76cdffa29ed418
  Author: Eduardo Valentin <edubezval@xxxxxxxxx>
  Date:   Wed Sep 9 20:53:35 2015 -0700

      thermal: exynos: allow compile test

      Adding COMPILE_TEST flag to exynos driver to facilitate
      maintenance.

      Cc: Lukasz Majewski <l.majewski@xxxxxxxxxxx>
      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: linux-pm@xxxxxxxxxxxxxxx
      Cc: linux-samsung-soc@xxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit 1b1582672121e1c1138e68b64128d94e7f61d10c
  Author: Eduardo Valentin <edubezval@xxxxxxxxx>
  Date:   Wed Sep 9 20:48:00 2015 -0700

      thermal: armada: allow compile test

      Adding COMPILE_TEST flag to armada driver to facilitate
      maintenance.

      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: linux-pm@xxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit 07fffd5ccab70bc00fd69b9ce2297a5e8d05b838
  Author: Eduardo Valentin <edubezval@xxxxxxxxx>
  Date:   Wed Sep 9 20:45:25 2015 -0700

      thermal: dove: allow compile test

      Adding COMPILE_TEST flag to dove driver to facilitate
      maintenance.

      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: linux-pm@xxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit 9c8aa959e13f5cb082ad244d2c9b806a67d9a8b6
  Author: Eduardo Valentin <edubezval@xxxxxxxxx>
  Date:   Wed Sep 9 20:44:46 2015 -0700

      thermal: kirkwood: allow compile test

      Adding COMPILE_TEST flag to kirkwood driver to facilitate
      maintenance.

      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: linux-pm@xxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit 444f9b00073668f028db0c14f609cf08abc9a2b3
  Author: Eduardo Valentin <edubezval@xxxxxxxxx>
  Date:   Wed Sep 9 20:43:57 2015 -0700

      thermal: rockchip: allow compile test

      Adding COMPILE_TEST flag to rockchip driver to facilitate
      maintenance.

      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: Heiko Stuebner <heiko@xxxxxxxxx>
      Cc: linux-pm@xxxxxxxxxxxxxxx
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: linux-rockchip@xxxxxxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit aa2937b73a45e49704b24db8d9163d83002332d9
  Author: Eduardo Valentin <edubezval@xxxxxxxxx>
  Date:   Wed Sep 9 20:42:01 2015 -0700

      thermal: spear: allow compile test

      Adding COMPILE_TEST flag to spear driver to facilitate
      maintenance.

      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: linux-pm@xxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit f9e2b05218e64fc6c614b90a650863981701f974
  Author: Eduardo Valentin <edubezval@xxxxxxxxx>
  Date:   Wed Sep 9 20:39:44 2015 -0700

      thermal: hisi: allow compile test

      Adding COMPILE_TEST flag to hisi driver to facilitate maintenance.

      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Cc: linux-pm@xxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit cd33dc9ac2977ebe30cecbf39d2992190fbac5b4
  Author: Punit Agrawal <punit.agrawal@xxxxxxx>
  Date:   Tue Sep 8 14:51:12 2015 +0100

      thermal: Fix thermal_zone_of_sensor_register to match documentation

      thermal_zone_of_sensor_register is documented as returning a pointer
      to either a valid thermal_zone_device on success, or a corresponding
      ERR_PTR() value.

      In contrast, the function returns NULL when THERMAL_OF is configured
      off. Fix this.

      Signed-off-by: Punit Agrawal <punit.agrawal@xxxxxxx>
      Acked-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Eduardo Valentin <edubezval@xxxxxxxxx>
      Cc: Zhang Rui <rui.zhang@xxxxxxxxx>
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>

  commit 216076705d6ac291d42e0f8dd85e6a0da98c0fa3
  Author: Mike Snitzer <snitzer@xxxxxxxxxx>
  Date:   Tue Sep 8 08:56:13 2015 -0400

      dm thin: disable discard support for thin devices if pool's is disabled

      If the pool is configured with 'ignore_discard' its discard support is
      disabled.  The pool's thin devices should also have queue_limits that
      reflect discards are disabled.

      Fixes: 34fbcf62 ("dm thin: range discard support")
      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # 4.1+

  commit cbc41d0a761bffb3166a413a3c77100a737c0cd7
  Author: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
  Date:   Tue Aug 4 14:28:15 2015 +0200

      drivers: sh: Disable PM runtime for multi-platform ARM with genpd

      If the default PM Domain using PM_CLK is used for PM runtime, the real
      Clock Domain cannot be registered from DT later.

      Hence do not enable it when running a multi-platform kernel with genpd
      support on R-Car or RZ.  The CPG/MSTP Clock Domain driver will take care
      of PM runtime management of the module clocks.

      Now most multi-platform ARM shmobile platforms (SH-Mobile, R-Mobile,
      R-Car, RZ) use DT-based PM Domains to take care of PM runtime management
      of the module clocks, simplify the platform logic by replacing the
      explicit SoC checks by a single check for the presence of MSTP clocks in
      DT.

      Backwards-compatiblity with old DTs (mainly for R-Car Gen2) is provided
      by checking for the presence of a "#power-domain-cells" property in DT.

      The default PM Domain is still needed for:
        - backwards-compatibility with old DTs that lack PM Domain properties,
        - the CONFIG_PM=n case,
        - legacy (non-DT) ARM/shmobile platforms without genpd support
          (r8a7778, r8a7779),
        - legacy SuperH.

      Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Reviewed-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
      Signed-off-by: Simon Horman <horms+renesas@xxxxxxxxxxxx>

  commit 9b302c1acf4114d51b7f0962df0b0ddee0dc75cd
  Author: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
  Date:   Tue Aug 4 14:28:14 2015 +0200

      drivers: sh: Disable legacy default PM Domain on emev2

      EMMA Mobile EV2 doesn't have MSTP clocks. All its device drivers manage
      clocks explicitly, without relying on Runtime PM, so it doesn't need the
      legacy default PM Domain.

      Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Reviewed-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
      Signed-off-by: Simon Horman <horms+renesas@xxxxxxxxxxxx>

  commit 8b5081c876bde9b1df5e96ee6990d5acd20c128b
  Author: Benjamin Romer <benjamin.romer@xxxxxxxxxx>
  Date:   Fri Sep 4 12:01:33 2015 -0400

      staging: unisys: visornic: handle error return from device registration

      There is no code to handle an error return in visornic, when it tries to
      register with visorbus. This patch handles an error return from
      visorbus_register_visor_driver() by dropping out of initialization.

      Signed-off-by: Benjamin Romer <benjamin.romer@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 6155a3cf11a6d4ed102ef5a30f655d4d2a38076b
  Author: Benjamin Romer <benjamin.romer@xxxxxxxxxx>
  Date:   Fri Sep 4 12:01:32 2015 -0400

      staging: unisys: stop device registration before visorbus registration

      In cases where visorbus is compiled directly into the kernel, if
      visorbus registration fails for any reason, it is still possible for
      other drivers to call visorbus_register_visor_driver(), which could
      cause an oops. Prevent this by saving the result of the call to
      create_bus() in a static variable, and return an error code when the bus
      hasn't been registered successfully.

      Signed-off-by: Benjamin Romer <benjamin.romer@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 418627ddc6d1ed50a3dfd2c8f938741b0cbcc1ed
  Author: David Kershner <david.kershner@xxxxxxxxxx>
  Date:   Fri Sep 4 12:01:31 2015 -0400

      staging: unisys: visorbus: Unregister driver on error

      If there is an error in registering driver attributes, unregister
      the driver as well.

      Signed-off-by: David Kershner <david.kershner@xxxxxxxxxx>
      Signed-off-by: Benjamin Romer <benjamin.romer@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit f6b6a8ec9a3bcba8cc9a9c302b514cf3848e7d35
  Author: David Kershner <david.kershner@xxxxxxxxxx>
  Date:   Fri Sep 4 12:01:30 2015 -0400

      staging: unisys: visornic: Fix receive bytes statistics

      The receive byte statistics was wrong in /proc/net/dev.

      Move the collection of statistics after the proper amount
      of bytes has been calculated and make sure you add it to
      rx_bytes instead of just replacing it.

      Signed-off-by: David Kershner <david.kershner@xxxxxxxxxx>
      Signed-off-by: Benjamin Romer <benjamin.romer@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 5b12100a53c11ef760e78c2899be8f1bf33812ca
  Author: David Kershner <david.kershner@xxxxxxxxxx>
  Date:   Fri Sep 4 12:01:29 2015 -0400

      staging: unisys: unregister netdev when create debugfs fails

      Noticed we were not unregistering the netdevice if we failed to
      create the debugfs entries. This patch fixes that problem.

      Signed-off-by: David Kershner <david.kershner@xxxxxxxxxx>
      Signed-off-by: Benjamin Romer <benjamin.romer@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit dd3afa57c515801f37071734f56be9035fdeaa8c
  Author: Stefan Wahren <stefan.wahren@xxxxxxxx>
  Date:   Tue Aug 25 21:04:12 2015 +0000

      staging: fbtft: replace master->setup() with spi_setup()

      Calling the setup of the SPI master directly causes a NULL pointer
      dereference with master drivers without a separate setup function.
      This problem is reproduceable on ARM MXS platform.

      So fix this issue by using spi_setup() instead.

      Signed-off-by: Stefan Wahren <stefan.wahren@xxxxxxxx>
      Acked-by: Noralf Trønnes <noralf@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit cabb5b2a2866829177df2f1cee70f0dd42ee6ae0
  Author: Stefan Wahren <stefan.wahren@xxxxxxxx>
  Date:   Tue Aug 25 21:04:11 2015 +0000

      staging: fbtft: fix 9-bit SPI support detection

      Since the result of the setup function isn't adequate to check
      9-bit SPI support, we better check bits_per_word_mask. Btw this
      change avoids a NULL pointer dereference with master drivers
      without a separate setup function.

      Signed-off-by: Stefan Wahren <stefan.wahren@xxxxxxxx>
      Acked-by: Noralf Trønnes <noralf@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit d98229f0299d5d5a741873c5900159844b2b2de5
  Author: Andreas Dilger <andreas.dilger@xxxxxxxxx>
  Date:   Mon Aug 24 11:11:49 2015 -0400

      staging/lustre: change Lustre URLs and mailing list

      Now that the lustre.org domain has been liberated we can again
      use that for the main website URL and mailing list.

      Also update the URL for userspace tools downloads and Git repo.

      Signed-off-by: Andreas Dilger <andreas.dilger@xxxxxxxxx>
      Signed-off-by: Oleg Drokin <oleg.drokin@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit a6ee5ac15ddf2425a066339f1ab030c97ec74b25
  Author: Daniel Vetter <daniel.vetter@xxxxxxxx>
  Date:   Fri Aug 21 14:02:57 2015 -0700

      staging/android: Update ION TODO per LPC discussion

      We discussed a bit with the folks on the Cc: list below what to do
      with ION. Two big take-aways:

      - High-performance drivers (like gpus) always want to play tricks with
        coherency and will lie to the dma api (radeon, nouveau, i915 gpu
        drivers all do so in upstream). What needs to be done here is fill
        gaps in dma-buf so that we can do this without breaking the dma-api
        expections of other clients like v4l. The consesus is that hw won't
        stop needing these tricks anytime soon.

      - Placement constraints for shared buffers won't be solved any other
        way than through something platform-specific like ion with
        platform-specific knowledge in userspace in something like gralloc.
        For general-purpose devices where this assumption would be painful
        for userspace (like servers) the consensus is that such devices will
        have proper MMUs where placement constraint handling is fairly
        irrelevant.

      Hence it is reasonable to destage ion as-is without changing the
      overall design to enable these use-cases and just fixing up a these
      few fairly minor things. Since there won't relly be an open-source
      userspace for ion (and hence drm maintainers won't take it) the
      proposal is to eventually move it to drivers/android/ion.[hc]. Laura
      would be ok with being maintainer once this is all done and ion is
      destaged.

      Note that Thiago is working on exposing the cpu cache flushing for
      cpu access from userspace through mmaps so this is alread in progress.
      Also adding him to the Cc: list.

      v2: Add ION_IOC_IMPORT to the list of ioctl that probably should go.

      Cc: Laura Abbott <labbott@xxxxxxxxxx>
      Cc: sumit.semwal@xxxxxxxxxx
      Cc: laurent.pinchart@xxxxxxxxxxxxxxxx
      Cc: ghackmann@xxxxxxxxxx
      Cc: robdclark@xxxxxxxxx
      Cc: david.brown@xxxxxxx
      Cc: romlem@xxxxxxxxxx
      Cc: Tiago Vignatti <tiago.vignatti@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit b786a8ad6a34b45ff6e40cf9c21f9c13c38e2f70
  Author: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
  Date:   Tue Sep 1 22:05:58 2015 +0200

      Staging: most: MOST and MOSTCORE should depend on HAS_DMA

      If NO_DMA=y:

          ERROR: "dma_free_coherent" 
[drivers/staging/most/mostcore/mostcore.ko] undefined!
          ERROR: "dma_alloc_coherent" 
[drivers/staging/most/mostcore/mostcore.ko] undefined!

      As all MOST sub drivers use DMA functionality, add a dependency on
      HAS_DMA to MOSTCORE, and to MOST, which selects MOSTCORE.

      Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Acked-by: Christian Gromm <christian.gromm@xxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 4de2ced795272db3ee5d668510b3a91a2bf1d1fb
  Author: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 11:08:23 2015 -0700

      staging: most: fix HDM_USB dependencies and build errors

      Fix kconfig dependency warning and build errors.

      warning: (HDM_USB) selects AIM_NETWORK which has unmet direct 
dependencies (STAGING && MOST && NET)

      drivers/built-in.o: In function `aim_resume_tx_channel':
      networking.c:(.text+0xd6f7a2): undefined reference to 
`netif_tx_wake_queue'
      drivers/built-in.o: In function `aim_rx_data':
      networking.c:(.text+0xd6f8c5): undefined reference to `__netdev_alloc_skb'
      networking.c:(.text+0xd6f99a): undefined reference to `skb_put'
      networking.c:(.text+0xd6fa44): undefined reference to `eth_type_trans'
      networking.c:(.text+0xd6fa6f): undefined reference to `netif_rx'
      drivers/built-in.o: In function `most_nd_setup':
      networking.c:(.text+0xd6fad2): undefined reference to `ether_setup'
      drivers/built-in.o: In function `most_nd_set_mac_address':
      networking.c:(.text+0xd6fb0f): undefined reference to `eth_mac_addr'
      drivers/built-in.o: In function `most_nd_open':
      networking.c:(.text+0xd6fd37): undefined reference to 
`netif_tx_wake_queue'
      drivers/built-in.o: In function `aim_probe_channel':
      networking.c:(.text+0xd6febb): undefined reference to `alloc_netdev_mqs'
      networking.c:(.text+0xd6ff18): undefined reference to `register_netdev'
      networking.c:(.text+0xd6ff4a): undefined reference to `free_netdev'
      drivers/built-in.o: In function `most_net_rm_netdev_safe.isra.0':
      networking.c:(.text+0xd6ffcf): undefined reference to `unregister_netdev'
      networking.c:(.text+0xd6ffdf): undefined reference to `free_netdev'
      drivers/built-in.o: In function `most_nd_start_xmit':
      networking.c:(.text+0xd70390): undefined reference to `kfree_skb'
      drivers/built-in.o: In function `most_deliver_netinfo':
      (.text+0xd70499): undefined reference to `netif_tx_wake_queue'

      Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
      Cc: Christian Gromm <christian.gromm@xxxxxxxxxxxxx>
      Cc: Michael Fabry <Michael.Fabry@xxxxxxxxxxxxx>
      Cc: Christian Gromm <chris@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit caa470475d9b59eeff093ae650800d34612c4379
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Fri Sep 11 12:36:12 2015 -0300

      perf header: Fixup reading of HEADER_NRCPUS feature

      The original patch introducing this header wrote the number of CPUs 
available
      and online in one order and then swapped those values when reading, fix 
it.

      Before:

        # perf record usleep 1
        # perf report --header-only | grep 'nrcpus \(online\|avail\)'
        # nrcpus online : 4
        # nrcpus avail : 4
        # echo 0 > /sys/devices/system/cpu/cpu2/online
        # perf record usleep 1
        # perf report --header-only | grep 'nrcpus \(online\|avail\)'
        # nrcpus online : 4
        # nrcpus avail : 3
        # echo 0 > /sys/devices/system/cpu/cpu1/online
        # perf record usleep 1
        # perf report --header-only | grep 'nrcpus \(online\|avail\)'
        # nrcpus online : 4
        # nrcpus avail : 2

      After the fix, bringing back the CPUs online:

        # perf report --header-only | grep 'nrcpus \(online\|avail\)'
        # nrcpus online : 2
        # nrcpus avail : 4
        # echo 1 > /sys/devices/system/cpu/cpu2/online
        # perf record usleep 1
        # perf report --header-only | grep 'nrcpus \(online\|avail\)'
        # nrcpus online : 3
        # nrcpus avail : 4
        # echo 1 > /sys/devices/system/cpu/cpu1/online
        # perf record usleep 1
        # perf report --header-only | grep 'nrcpus \(online\|avail\)'
        # nrcpus online : 4
        # nrcpus avail : 4

      Acked-by: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Cc: Wang Nan <wangnan0@xxxxxxxxxx>
      Fixes: fbe96f29ce4b ("perf tools: Make perf.data more self-descriptive 
(v8)")
      Link: http://lkml.kernel.org/r/20150911153323.GP23511@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit a797451b3a595759b4df48150e611237d4bd204a
  Author: Douglas Anderson <dianders@xxxxxxxxxxxx>
  Date:   Wed Sep 2 14:25:48 2015 -0700

      ARM: dts: Add ddc i2c reference to veyron

      The ddc-i2c-bus property was missing from the veyron dtsi file since
      downstream the ddc-i2c-bus was still being specified in rk3288.dtsi and
      nobody noticed when the veyron dtsi was sent upstream.  Add it.

      Signed-off-by: Douglas Anderson <dianders@xxxxxxxxxxxx>
      Tested-by: Brian Norris <briannorris@xxxxxxxxxxxx>
      Signed-off-by: Heiko Stuebner <heiko@xxxxxxxxx>

  commit b692cb83b14d2f741f513221f5f78042c674c2a9
  Author: Jarkko Nikula <jarkko.nikula@xxxxxxxxxxxxxxx>
  Date:   Mon Sep 7 10:23:01 2015 +0300

      ARM: pxa: ssp: Fix build error by removing originally incorrect DT binding

      Commit 03fbf488cece ("spi: pxa2xx: Differentiate Intel LPSS types") caused
      build error here because it removed the type LPSS_SSP and I didn't notice
      the type was used here too.

      I believe commit a6e56c28a178 ("ARM: pxa: ssp: add DT bindings") added it
      accidentally by copying all enum pxa_ssp_type types from
      include/linux/pxa2xx_ssp.h even LPSS_SSP was for Intel LPSS SPI devices.

      Fix the build error by removing this incorrect binding.

      Fixes: 03fbf488cece ("spi: pxa2xx: Differentiate Intel LPSS types")
      Signed-off-by: Jarkko Nikula <jarkko.nikula@xxxxxxxxxxxxxxx>
      Reported-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # 4.2
      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>

  commit adf3442cc890f04af1e8e2c0b335c84e5092dca9
  Author: Robert Jarzmik <robert.jarzmik@xxxxxxx>
  Date:   Sun Aug 23 21:13:57 2015 +0200

      ARM: pxa: fix DFI bus lockups on startup

      After the conversion of pxa architecture to common clock framework, the
      NAND clock can be disabled on startup if no nand driver claims it.

      In this case, it happens that if the bootloader used the NAND and set
      the DFI arbitration bit, the next access to a static memory controller
      area, such as an ethernet card, the system bus will stall, and the core
      will be stalled forever.

      Fix this by clearing the DFI arbritration bit in pxa3xx startup. The bit
      will be enabled the pxa3xx-nand driver on need anyway. The only left
      requirement is that upon pxa3xx-nand removal, the bit should be cleared
      before the clock is disabled.

      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>

  commit 2619d7e9c92d524cb155ec89fd72875321512e5b
  Author: John Stultz <john.stultz@xxxxxxxxxx>
  Date:   Wed Sep 9 16:07:30 2015 -0700

      time: Fix timekeeping_freqadjust()'s incorrect use of abs() instead of 
abs64()

      The internal clocksteering done for fine-grained error
      correction uses a logarithmic approximation, so any time
      adjtimex() adjusts the clock steering, timekeeping_freqadjust()
      quickly approximates the correct clock frequency over a series
      of ticks.

      Unfortunately, the logic in timekeeping_freqadjust(), introduced
      in commit:

        dc491596f639 ("timekeeping: Rework frequency adjustments to work better 
w/ nohz")

      used the abs() function with a s64 error value to calculate the
      size of the approximated adjustment to be made.

      Per include/linux/kernel.h:

        "abs() should not be used for 64-bit types (s64, u64, long long) - use 
abs64()".

      Thus on 32-bit platforms, this resulted in the clocksteering to
      take a quite dampended random walk trying to converge on the
      proper frequency, which caused the adjustments to be made much
      slower then intended (most easily observed when large
      adjustments are made).

      This patch fixes the issue by using abs64() instead.

      Reported-by: Nuno Gonçalves <nunojpg@xxxxxxxxx>
      Tested-by: Nuno Goncalves <nunojpg@xxxxxxxxx>
      Signed-off-by: John Stultz <john.stultz@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # v3.17+
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Miroslav Lichvar <mlichvar@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Prarit Bhargava <prarit@xxxxxxxxxx>
      Cc: Richard Cochran <richardcochran@xxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441840051-20244-1-git-send-email-john.stultz@xxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit ebfb4988f0378e2ac3b4a0aa1ea20d724293f392
  Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
  Date:   Thu Sep 10 11:58:27 2015 +0200

      perf/x86/intel: Fix constraint access

      Sasha reported that we can get here with .idx==-1, and
      cpuc->event_constraints unallocated.

      Suggested-by: Stephane Eranian <eranian@xxxxxxxxxx>
      Reported-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Fixes: b371b5943178 ("perf/x86: Fix event/group validation")
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 7c5b190e115a2f7a51a85f261e7d7dca4b4bbe64
  Author: Borislav Petkov <bp@xxxxxxx>
  Date:   Thu Sep 10 21:55:27 2015 +0200

      x86/cpu: Print family/model/stepping in hex

      924e101a7ab6 ("x86/debug: Dump family, model, stepping of the
      boot CPU") had its good intentions to dump the exact F/M/S as an
      aid during debugging sessions but its output can be ambiguous.
      Fix that:

      -smpboot: CPU0: Intel Core Processor (Broadwell) (fam: 06, model: 47, 
stepping: 02)
      +smpboot: CPU0: Intel Core Processor (Broadwell) (family: 0x6, model: 
0x47, stepping: 0x2)

      Also, spell out "family".

      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441914927-32037-1-git-send-email-bp@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit cd1faefa66425c3fa338777773c5c017edea3439
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Sun Aug 30 19:45:19 2015 -0700

      hwmon: (nct6775) Add support for NCT6793D

      NCT6793D is register compatible with NCT6792D.

      Also move nct6775_sio_names[] closer to enum kinds to simplify
      adding new chips.

      Tested-by: Grazvydas Ignotas <notasas@xxxxxxxxx>
      Reviewed-by: Jean Delvare <jdelvare@xxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit 728d29400488d54974d3317fe8a232b45fdb42ee
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Mon Aug 31 16:13:47 2015 -0700

      hwmon: (nct6775) Swap STEP_UP_TIME and STEP_DOWN_TIME registers for most 
chips

      The STEP_UP_TIME and STEP_DOWN_TIME registers are swapped for all chips 
but
      NCT6775.

      Reported-by: Grazvydas Ignotas <notasas@xxxxxxxxx>
      Reviewed-by: Jean Delvare <jdelvare@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # v3.10+
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit 6ff33f3902c3b1c5d0db6b1e2c70b6d76fba357f
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 12 16:35:56 2015 -0700

      Linux 4.3-rc1

  commit 6917b51dee54f21816706af2278517b7af218f9a
  Merge: 10fbd36 254a0f4
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 12 12:24:29 2015 -0700

      Merge tag 'cris-for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jesper/cris

      Pull CRIS updates from Jesper Nilsson:
       "Mostly removal of old cruft of which we can use a generic version, or
        fixes for code not commonly run in the cris port, but also additions
        to enable some good debug"

      * tag 'cris-for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jesper/cris: (25 commits)
        CRISv10: delete unused lib/dmacopy.c
        CRISv10: delete unused lib/old_checksum.c
        CRIS: fix switch_mm() lockdep splat
        CRISv32: enable LOCKDEP_SUPPORT
        CRIS: add STACKTRACE_SUPPORT
        CRISv32: annotate irq enable in idle loop
        CRISv32: add support for irqflags tracing
        CRIS: UAPI: use generic types.h
        CRIS: UAPI: use generic shmbuf.h
        CRIS: UAPI: use generic msgbuf.h
        CRIS: UAPI: use generic socket.h
        CRIS: UAPI: use generic sembuf.h
        CRIS: UAPI: use generic sockios.h
        CRIS: UAPI: use generic auxvec.h
        CRIS: UAPI: use generic headers via Kbuild
        CRIS: UAPI: fix elf.h export
        CRIS: don't make asm/elf.h depend on asm/user.h
        CRIS: UAPI: fix ptrace.h
        CRISv32: Squash compile warnings for axisflashmap
        CRISv32: Add GPIO driver to the default configs
        ...

  commit 10fbd36e362a0f367e34a7cd876a81295d8fc5ca
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed May 27 15:32:15 2015 -0700

      blk: rq_data_dir() should not return a boolean

      rq_data_dir() returns either READ or WRITE (0 == READ, 1 == WRITE), not
      a boolean value.

      Now, admittedly the "!= 0" doesn't really change the value (0 stays as
      zero, 1 stays as one), but it's not only redundant, it confuses gcc, and
      causes gcc to warn about the construct

          switch (rq_data_dir(req)) {
              case READ:
                  ...
              case WRITE:
                  ...

      that we have in a few drivers.

      Now, the gcc warning is silly and stupid (it seems to warn not about the
      switch value having a different type from the case statements, but about
      _any_ boolean switch value), but in this case the code itself is silly
      and stupid too, so let's just change it, and get rid of warnings like
      this:

        drivers/block/hd.c: In function â??hd_requestâ??:
        drivers/block/hd.c:630:11: warning: switch condition has boolean value 
[-Wswitch-bool]
           switch (rq_data_dir(req)) {

      The odd '!= 0' came in when "cmd_flags" got turned into a "u64" in
      commit 5953316dbf90 ("block: make rq->cmd_flags be 64-bit") and is
      presumably because the old code (that just did a logical 'and' with 1)
      would then end up making the type of rq_data_dir() be u64 too.

      But if we want to retain the old regular integer type, let's just cast
      the result to 'int' rather than use that rather odd '!= 0'.

      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit e1df8b0a1bb2ac8254616d6075e40f9ca447fa29
  Merge: dfb22fc 505a666
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 12 11:19:01 2015 -0700

      Merge branch 'writeback-plugging'

      Fix up the writeback plugging introduced in commit d353d7587d02
      ("writeback: plug writeback at a high level") that then caused problems
      due to the unplug happening with a spinlock held.

      * writeback-plugging:
        writeback: plug writeback in wb_writeback() and writeback_inodes_wb()
        Revert "writeback: plug writeback at a high level"

  commit 505a666ee3fc611518e85df203eb8c707995ceaa
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 13:37:19 2015 -0700

      writeback: plug writeback in wb_writeback() and writeback_inodes_wb()

      We had to revert the pluggin in writeback_sb_inodes() because the
      wb->list_lock is held, but we could easily plug at a higher level before
      taking that lock, and unplug after releasing it.  This does that.

      Chris will run performance numbers, just to verify that this approach is
      comparable to the alternative (we could just drop and re-take the lock
      around the blk_finish_plug() rather than these two commits.

      I'd have preferred waiting for actual performance numbers before picking
      one approach over the other, but I don't want to release rc1 with the
      known "sleeping function called from invalid context" issue, so I'll
      pick this cleanup version for now.  But if the numbers show that we
      really want to plug just at the writeback_sb_inodes() level, and we
      should just play ugly games with the spinlock, we'll switch to that.

      Cc: Chris Mason <clm@xxxxxx>
      Cc: Josef Bacik <jbacik@xxxxxx>
      Cc: Dave Chinner <david@xxxxxxxxxxxxx>
      Cc: Neil Brown <neilb@xxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 31409c97640ff5f1a49e34ac7f3c82097bf57bec
  Merge: e713c80 dc3a04d
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Sat Sep 12 10:26:24 2015 +0200

      Merge branch 'for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/urgent

      Pull RCU fix from Paul E. McKenney, fixing an inverted RCU_LOCKDEP_WARN() 
condition.

      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit dfb22fc5c0eb7645f47a752ce537bfb2c8a6aea6
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 20:06:59 2015 -0700

      thermal: fix intel PCH thermal driver mismerge

      I didn't notice this when merging the thermal code from Zhang, but his
      merge (commit 5a924a07f882: "Merge branches 'thermal-core' and
      'thermal-intel' of .git into next") of the thermal-core and
      thermal-intel branches was wrong.

      In thermal-core, commit 17e8351a7739 ("thermal: consistently use int for
      temperatures") converted the thermal layer to use "int" for
      temperatures.

      But in parallel, in the thermal-intel branch commit d0a12625d2ff
      ("thermal: Add Intel PCH thermal driver") added support for the intel
      PCH thermal sensor using the old interfaces that used "unsigned long"
      pointers.

      This resulted in warnings like this:

        drivers/thermal/intel_pch_thermal.c:184:14: warning: initialization 
from incompatible pointer type [-Wincompatible-pointer-types]
          .get_temp = pch_thermal_get_temp,
                      ^
        drivers/thermal/intel_pch_thermal.c:184:14: note: (near initialization 
for â??tzd_ops.get_tempâ??)
        drivers/thermal/intel_pch_thermal.c:186:19: warning: initialization 
from incompatible pointer type [-Wincompatible-pointer-types]
          .get_trip_temp = pch_get_trip_temp,
                           ^
        drivers/thermal/intel_pch_thermal.c:186:19: note: (near initialization 
for â??tzd_ops.get_trip_tempâ??)

      This fixes it.

      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 01b0c014eeb0bb857a5dc572cd108be7becddfe7
  Merge: 3ebb054 e527b22
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 19:34:09 2015 -0700

      Merge branch 'akpm' (patches from Andrew)

      Merge fourth patch-bomb from Andrew Morton:

       - sys_membarier syscall

       - seq_file interface changes

       - a few misc fixups

      * emailed patches from Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>:
        revert "ocfs2/dlm: use list_for_each_entry instead of list_for_each"
        mm/early_ioremap: add explicit #include of asm/early_ioremap.h
        fs/seq_file: convert int seq_vprint/seq_printf/etc... returns to void
        selftests: enhance membarrier syscall test
        selftests: add membarrier syscall test
        sys_membarrier(): system-wide memory barrier (generic, x86)
        MODSIGN: fix a compilation warning in extract-cert

  commit 3ebb0540c20d6670396ccee9ff6794c095fa9311
  Author: Vineet Gupta <Vineet.Gupta1@xxxxxxxxxxxx>
  Date:   Fri Sep 11 16:32:22 2015 -0700

      ARCv2: [axs103_smp] Reduce clk for SMP FPGA configs

      Newer bitfiles needs the reduced clk even for SMP builds

      Cc: <stable@xxxxxxxxxxxxxxx>  #4.2
      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ded0e250b58a27af6034a8ab9226cbcdf7c0d847
  Merge: f0c032d 9a07826
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 19:29:00 2015 -0700

      Merge tag 'ntb-4.3' of git://github.com/jonmason/ntb

      Pull NTB fixes from Jon Mason:
       "NTB bug and documentation fixes, new device IDs, performance
        improvements, and adding a mailing list to MAINTAINERS for NTB"

      * tag 'ntb-4.3' of git://github.com/jonmason/ntb:
        NTB: Fix range check on memory window index
        NTB: Improve index handling in B2B MW workaround
        NTB: Fix documentation for ntb_peer_db_clear.
        NTB: Fix documentation for ntb_link_is_up
        NTB: Use unique DMA channels for TX and RX
        NTB: Remove dma_sync_wait from ntb_async_rx
        NTB: Clean up QP stats info
        NTB: Make the transport list in order of discovery
        NTB: Add PCI Device IDs for Broadwell Xeon
        NTB: Add flow control to the ntb_netdev
        NTB: Add list to MAINTAINERS

  commit f0c032d81f58c99b63a6e57cf883e923db910928
  Merge: fa9a67e 53431d0
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 19:17:28 2015 -0700

      Merge branch 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input

      Pull more input updates from Dmitry Torokhov:
       "Second round of updates for the input subsystem.

        This introduces two brand new touchscreen drivers (Colibri and
        imx6ul_tsc), some small driver fixes, and we are no longer report
        errors from evdev_flush() as users do not really have a way of
        handling errors, error codes that we were returning were not on the
        list of errors supposed to be returned by close(), and errors were
        causing issues with one of older versions of systemd"

      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
        Input: imx_keypad - remove obsolete comment
        Input: touchscreen - add imx6ul_tsc driver support
        Input: Add touchscreen support for Colibri VF50
        Input: i8042 - lower log level for "no controller" message
        Input: evdev - do not report errors form flush()
        Input: elants_i2c - extend the calibration timeout to 12 seconds
        Input: sparcspkr - fix module autoload for OF platform drivers
        Input: regulator-haptic - fix module autoload for OF platform driver
        Input: pwm-beeper - fix module autoload for OF platform driver
        Input: ab8500-ponkey - Fix module autoload for OF platform driver
        Input: cyttsp - remove unnecessary MODULE_ALIAS()
        Input: elan_i2c - add ACPI ID "ELAN1000"

  commit fa9a67ef9de48de5474ea1e5a358340369e78b74
  Merge: 05c7808 4614e0c
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 19:11:06 2015 -0700

      Merge tag 'pm+acpi-4.3-rc1-2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

      Pull more power management and ACPI updates from Rafael Wysocki:
       "These are mostly fixes and cleanups on top of the previous PM+ACPI
        pull request (cpufreq core and drivers, cpuidle, generic power domains
        framework).  Some of them didn't make to that pull request and some
        fix issues introduced by it.

        The only really new thing is the support for suspend frequency in the
        cpufreq-dt driver, but it is needed to fix an issue with Exynos
        platforms.

        Specifics:

         - build fix for the new Mediatek MT8173 cpufreq driver (Guenter
           Roeck).

         - generic power domains framework fixes (power on error code path,
           subdomain removal) and cleanup of a deprecated API user (Geert
           Uytterhoeven, Jon Hunter, Ulf Hansson).

         - cpufreq-dt driver fixes including two fixes for bugs related to the
           new Operating Performance Points Device Tree bindings introduced
           recently (Viresh Kumar).

         - suspend frequency support for the cpufreq-dt driver (Bartlomiej
           Zolnierkiewicz, Viresh Kumar).

         - cpufreq core cleanups (Viresh Kumar).

         - intel_pstate driver fixes (Chen Yu, Kristen Carlson Accardi).

         - additional sanity check in the cpuidle core (Xunlei Pang).

         - fix for a comment related to CPU power management (Lina Iyer)"

      * tag 'pm+acpi-4.3-rc1-2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        intel_pstate: fix PCT_TO_HWP macro
        intel_pstate: Fix user input of min/max to legal policy region
        PM / OPP: Return suspend_opp only if it is enabled
        cpufreq-dt: add suspend frequency support
        cpufreq: allow cpufreq_generic_suspend() to work without suspend 
frequency
        PM / OPP: add dev_pm_opp_get_suspend_opp() helper
        staging: board: Migrate away from __pm_genpd_name_add_device()
        cpufreq: Use __func__ to print function's name
        cpufreq: staticize cpufreq_cpu_get_raw()
        PM / Domains: Ensure subdomain is not in use before removing
        cpufreq: Add ARM_MT8173_CPUFREQ dependency on THERMAL
        cpuidle/coupled: Add sanity check for safe_state_index
        PM / Domains: Try power off masters in error path of 
__pm_genpd_poweron()
        cpufreq: dt: Tolerance applies on both sides of target voltage
        cpufreq: dt: Print error on failing to mark OPPs as shared
        cpufreq: dt: Check OPP count before marking them shared
        kernel/cpu_pm: fix cpu_cluster_pm_exit comment

  commit 05c78081d2d8eaf04bf60946fcc53380febf3376
  Merge: 8e78b7d ac64a2c
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 19:00:42 2015 -0700

      Merge branch 'for-next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending

      Pull SCSI target updates from Nicholas Bellinger:
       "Here are the outstanding target-pending updates for v4.3-rc1.

        Mostly bug-fixes and minor changes this round.  The fallout from the
        big v4.2-rc1 RCU conversion have (thus far) been minimal.

        The highlights this round include:

         - Move sense handling routines into scsi_common code (Sagi)

         - Return ABORTED_COMMAND sense key for PI errors (Sagi)

         - Add tpg_enabled_sendtargets attribute for disabled iscsi-target
           discovery (David)

         - Shrink target struct se_cmd by rearranging fields (Roland)

         - Drop iSCSI use of mutex around max_cmd_sn increment (Roland)

         - Replace iSCSI __kernel_sockaddr_storage with sockaddr_storage (Andy +
           Chris)

         - Honor fabric max_data_sg_nents I/O transfer limit (Arun + Himanshu +
           nab)

         - Fix EXTENDED_COPY >= v4.1 regression OOPsen (Alex + nab)"

      * 'for-next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (37 commits)
        target: use stringify.h instead of own definition
        target/user: Fix UFLAG_UNKNOWN_OP handling
        target: Remove no-op conditional
        target/user: Remove unused variable
        target: Fix max_cmd_sn increment w/o cmdsn mutex regressions
        target: Attach EXTENDED_COPY local I/O descriptors to xcopy_pt_sess
        target/qla2xxx: Honor max_data_sg_nents I/O transfer limit
        target/iscsi: Replace __kernel_sockaddr_storage with sockaddr_storage
        target/iscsi: Replace conn->login_ip with login_sockaddr
        target/iscsi: Keep local_ip as the actual sockaddr
        target/iscsi: Fix np_ip bracket issue by removing np_ip
        target: Drop iSCSI use of mutex around max_cmd_sn increment
        qla2xxx: Update tcm_qla2xxx module description to 24xx+
        iscsi-target: Add tpg_enabled_sendtargets for disabled discovery
        drivers: target: Drop unlikely before IS_ERR(_OR_NULL)
        target: check DPO/FUA usage for COMPARE AND WRITE
        target: Shrink struct se_cmd by rearranging fields
        target: Remove cmd->se_ordered_id (unused except debug log lines)
        target: add support for START_STOP_UNIT SCSI opcode
        target: improve unsupported opcode message
        ...

  commit 8e78b7dc93c580c050435b0f88991c26e02166bc
  Merge: 06a660a 294ab78
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 18:15:18 2015 -0700

      Merge tag 'scsi-misc' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi

      Pull second round of SCSI updates from James Bottomley:
       "There's one late arriving patch here (added today), fixing a build
        issue which the scsi_dh patch set in here uncovered.  Other than that,
        everything has been incubated in -next and the checkers for a week.

        The major pieces of this patch are a set patches facilitating better
        integration between scsi and scsi_dh (the device handling layer used
        by multi-path; all the dm parts are acked by Mike Snitzer).

        This also includes driver updates for mp3sas, scsi_debug and an
        assortment of bug fixes"

      * tag 'scsi-misc' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (50 commits)
        scsi_dh: fix randconfig build error
        scsi: fix scsi_error_handler vs. scsi_host_dev_release race
        fcoe: Convert use of __constant_htons to htons
        mpt2sas: setpci reset kernel oops fix
        pm80xx: Don't override ts->stat on IO_OPEN_CNX_ERROR_HW_RESOURCE_BUSY
        lpfc: Fix possible use-after-free and double free in 
lpfc_mbx_cmpl_rdp_page_a2()
        bfa: Fix incorrect de-reference of pointer
        bfa: Fix indentation
        scsi_transport_sas: Remove check for SAS expander when querying 
bay/enclosure IDs.
        scsi_debug: resp_request: remove unused variable
        scsi_debug: fix REPORT LUNS Well Known LU
        scsi_debug: schedule_resp fix input variable check
        scsi_debug: make dump_sector static
        scsi_debug: vfree is null safe so drop the check
        scsi_debug: use SCSI_W_LUN_REPORT_LUNS instead of SAM2_WLUN_REPORT_LUNS;
        scsi_debug: define pr_fmt() for consistent logging
        mpt2sas: Refcount fw_events and fix unsafe list usage
        mpt2sas: Refcount sas_device objects and fix unsafe list usage
        scsi_dh: return SCSI_DH_NOTCONN in scsi_dh_activate()
        scsi_dh: don't allow to detach device handlers at runtime
        ...

  commit eda2116f4ab6d79cfcffc202b5d2bbb0797ba013
  Author: Steve French <smfrench@xxxxxxxxx>
  Date:   Fri Sep 11 19:24:19 2015 -0500

      [CIFS] mount option sec=none not displayed properly in /proc/mounts

      When the user specifies "sec=none" in a cifs mount, we set
      sec_type as unspecified (and set a flag and the username will be
      null) rather than setting sectype as "none" so
      cifs_show_security was not properly displaying it in
      cifs /proc/mounts entries.

      Signed-off-by: Steve French <steve.french@xxxxxxxxxxxxxxx>
      Reviewed-by: Jeff Layton <jlayton@xxxxxxxxxxxxxxx>

  commit 06a660ada2064bbdcd09aeb8173f2ad128c71978
  Merge: d9b44fe 63540f0
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 16:42:39 2015 -0700

      Merge tag 'media/v4.3-2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media

      Pull media updates from Mauro Carvalho Chehab:
       "A series of patches that move part of the code used to allocate memory
        from the media subsystem to the mm subsystem"

      [ The mm parts have been acked by VM people, and the series was
        apparently in -mm for a while   - Linus ]

      * tag 'media/v4.3-2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
        [media] drm/exynos: Convert g2d_userptr_get_dma_addr() to use 
get_vaddr_frames()
        [media] media: vb2: Remove unused functions
        [media] media: vb2: Convert vb2_dc_get_userptr() to use frame vector
        [media] media: vb2: Convert vb2_vmalloc_get_userptr() to use frame 
vector
        [media] media: vb2: Convert vb2_dma_sg_get_userptr() to use frame vector
        [media] vb2: Provide helpers for mapping virtual addresses
        [media] media: omap_vout: Convert omap_vout_uservirt_to_phys() to use 
get_vaddr_pfns()
        [media] mm: Provide new get_vaddr_frames() helper
        [media] vb2: Push mmap_sem down to memops

  commit d9b44fe30fb8637b23f804eab2e7afbce129d714
  Merge: 9ebd051 12f0721
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 16:21:12 2015 -0700

      Merge tag 'edac/v4.3-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-edac

      Pull edac updates from Mauro Carvalho Chehab:
       "Two EDAC fixes for Intel systems (Haswell and Ivy Bridge)"

      * tag 'edac/v4.3-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-edac:
        sb_edac: correctly fetch DIMM width on Ivy Bridge and Haswell
        sb_edac: look harder for DDRIO on Haswell systems

  commit e8684c88774c0ddfeefdbed0aa469b25b9962f3e
  Author: Alexey Khoroshilov <khoroshilov@xxxxxxxxx>
  Date:   Sat Sep 12 00:34:48 2015 +0300

      irda: ali-ircc: Fix deadlock in ali_ircc_sir_change_speed()

      ali_ircc_sir_change_speed() is always called with self->lock held,
      so acquiring the lock inside it leads to unavoidable deadlock.

      Call graph:
      ali_ircc_sir_change_speed() is called from ali_ircc_change_speed()
        ali_ircc_fir_hard_xmit() under spin_lock_irqsave(&self->lock, flags);
        ali_ircc_sir_hard_xmit() under spin_lock_irqsave(&self->lock, flags);
        ali_ircc_net_ioctl() under spin_lock_irqsave(&self->lock, flags);
        ali_ircc_dma_xmit_complete()
          ali_ircc_fir_interrupt()
            ali_ircc_interrupt() under spin_lock(&self->lock);
        ali_ircc_sir_write_wakeup()
          ali_ircc_sir_interrupt()
            ali_ircc_interrupt() under spin_lock(&self->lock);

      The patch removes spin_lock/unlock from ali_ircc_sir_change_speed().

      Found by Linux Driver Verification project (linuxtesting.org).

      Signed-off-by: Alexey Khoroshilov <khoroshilov@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9ebd051a7d5aa7b0ce813c3c2e5b9c851e7774b9
  Merge: 51a73ba 5a924a0
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 16:13:47 2015 -0700

      Merge branch 'next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux

      Pull thermal updates from Zhang Rui:

       - use int instead of unsigned long to represent temperature to avoid
         bogus overheat detection when negative temperature reported.  From
         Sascha Hauer.

       - export available thermal governors information to user space via
         sysfs.  From Wei Ni.

       - introduce new thermal driver for Wildcat Point platform controller
         hub, which uses PCH thermal sensor and associated critical and hot
         trip points.  From Tushar Dave.

       - add suuport for Intel Skylake and Denlow platforms in powerclamp
         driver.

       - some small cleanups in thermal core.

      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux:
        thermal: Add Intel PCH thermal driver
        thermal: Add comment explaining test for critical temperature
        thermal: Use IS_ENABLED instead of #ifdef
        thermal: remove unnecessary call to thermal_zone_device_set_polling
        thermal: trivial: fix typo in comment
        thermal: consistently use int for temperatures
        thermal: add available policies sysfs attribute
        thermal/powerclamp: add cpu id for denlow platform
        thermal/powerclamp: add cpu id for Skylake u/y
        thermal/powerclamp: add cpu id for skylake h/s

  commit 38c089d1d8d058f5dff018a811568aa8e8bc47fc
  Author: Joe Stringer <joestringer@xxxxxxxxxx>
  Date:   Fri Sep 11 15:01:16 2015 -0700

      openvswitch: Fix dependency on IPv6 defrag.

      When NF_CONNTRACK is built-in, NF_DEFRAG_IPV6 is a module, and
      OPENVSWITCH is built-in, the following build error would occur:

      net/built-in.o: In function `ovs_ct_execute':
      (.text+0x10f587): undefined reference to `nf_ct_frag6_gather'

      Fixes: 7f8a436eaa2c ("openvswitch: Add conntrack action")
      Reported-by: Jim Davis <jim.epost@xxxxxxxxx>
      Signed-off-by: Joe Stringer <joestringer@xxxxxxxxxx>
      Acked-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e527b22c3f63c02832ac4cb8ed0ec3a9b638bbdf
  Author: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 13:07:53 2015 -0700

      revert "ocfs2/dlm: use list_for_each_entry instead of list_for_each"

      Revert commit f83c7b5e9fd6 ("ocfs2/dlm: use list_for_each_entry instead
      of list_for_each").

      list_for_each_entry() will dereference its `pos' argument, which can be
      NULL in dlm_process_recovery_data().

      Reported-by: Julia Lawall <julia.lawall@xxxxxxx>
      Reported-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Cc: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Cc: Mark Fasheh <mfasheh@xxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 4f1af60bcc2fc6caa7fa3036238b5994708e9a84
  Author: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
  Date:   Fri Sep 11 13:07:50 2015 -0700

      mm/early_ioremap: add explicit #include of asm/early_ioremap.h

      Commit 6b0f68e32ea8 ("mm: add utility for early copy from unmapped ram")
      introduces a function copy_from_early_mem() into mm/early_ioremap.c
      which itself calls early_memremap()/early_memunmap().  However, since
      early_memunmap() has not been declared yet at this point in the .c file,
      nor by any explicitly included header files, we are depending on a
      transitive include of asm/early_ioremap.h to declare it, which is
      fragile.

      So instead, include this header explicitly.

      Signed-off-by: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Acked-by: Mark Salter <msalter@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 6798a8caaf64fa68b9ab2044e070fe4545034e03
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Fri Sep 11 13:07:48 2015 -0700

      fs/seq_file: convert int seq_vprint/seq_printf/etc... returns to void

      The seq_<foo> function return values were frequently misused.

      See: commit 1f33c41c03da ("seq_file: Rename seq_overflow() to
           seq_has_overflowed() and make public")

      All uses of these return values have been removed, so convert the
      return types to void.

      Miscellanea:

      o Move seq_put_decimal_<type> and seq_escape prototypes closer the
        other seq_vprintf prototypes
      o Reorder seq_putc and seq_puts to return early on overflow
      o Add argument names to seq_vprintf and seq_printf
      o Update the seq_escape kernel-doc
      o Convert a couple of leading spaces to tabs in seq_escape

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Cc: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
      Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Cc: Mark Brown <broonie@xxxxxxxxxx>
      Cc: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      Cc: Joerg Roedel <jroedel@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c9946c4208a3725e116c05180d93154eb406d451
  Author: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
  Date:   Fri Sep 11 13:07:45 2015 -0700

      selftests: enhance membarrier syscall test

      Update the membarrier syscall self-test to match the membarrier
      interface.  Extend coverage of the interface.  Consider ENOSYS as a
      "SKIP" test, since it is a valid configuration, but does not allow
      testing the system call.

      Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: Pranith Kumar <bobby.prani@xxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit b6d973441675222a4e6c8cad8208c2fe098a0b25
  Author: Pranith Kumar <bobby.prani@xxxxxxxxx>
  Date:   Fri Sep 11 13:07:42 2015 -0700

      selftests: add membarrier syscall test

      Add a self test for the membarrier system call.

      Signed-off-by: Pranith Kumar <bobby.prani@xxxxxxxxx>
      Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 5b25b13ab08f616efd566347d809b4ece54570d1
  Author: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
  Date:   Fri Sep 11 13:07:39 2015 -0700

      sys_membarrier(): system-wide memory barrier (generic, x86)

      Here is an implementation of a new system call, sys_membarrier(), which
      executes a memory barrier on all threads running on the system.  It is
      implemented by calling synchronize_sched().  It can be used to
      distribute the cost of user-space memory barriers asymmetrically by
      transforming pairs of memory barriers into pairs consisting of
      sys_membarrier() and a compiler barrier.  For synchronization primitives
      that distinguish between read-side and write-side (e.g.  userspace RCU
      [1], rwlocks), the read-side can be accelerated significantly by moving
      the bulk of the memory barrier overhead to the write-side.

      The existing applications of which I am aware that would be improved by
      this system call are as follows:

      * Through Userspace RCU library (http://urcu.so)
        - DNS server (Knot DNS) https://www.knot-dns.cz/
        - Network sniffer (http://netsniff-ng.org/)
        - Distributed object storage (https://sheepdog.github.io/sheepdog/)
        - User-space tracing (http://lttng.org)
        - Network storage system (https://www.gluster.org/)
        - Virtual routers 
(https://events.linuxfoundation.org/sites/events/files/slides/DPDK_RCU_0MQ.pdf)
        - Financial software (https://lkml.org/lkml/2015/3/23/189)

      Those projects use RCU in userspace to increase read-side speed and
      scalability compared to locking.  Especially in the case of RCU used by
      libraries, sys_membarrier can speed up the read-side by moving the bulk of
      the memory barrier cost to synchronize_rcu().

      * Direct users of sys_membarrier
        - core dotnet garbage collector 
(https://github.com/dotnet/coreclr/issues/198)

      Microsoft core dotnet GC developers are planning to use the mprotect()
      side-effect of issuing memory barriers through IPIs as a way to implement
      Windows FlushProcessWriteBuffers() on Linux.  They are referring to
      sys_membarrier in their github thread, specifically stating that
      sys_membarrier() is what they are looking for.

      To explain the benefit of this scheme, let's introduce two example 
threads:

      Thread A (non-frequent, e.g. executing liburcu synchronize_rcu())
      Thread B (frequent, e.g. executing liburcu
      rcu_read_lock()/rcu_read_unlock())

      In a scheme where all smp_mb() in thread A are ordering memory accesses
      with respect to smp_mb() present in Thread B, we can change each
      smp_mb() within Thread A into calls to sys_membarrier() and each
      smp_mb() within Thread B into compiler barriers "barrier()".

      Before the change, we had, for each smp_mb() pairs:

      Thread A                    Thread B
      previous mem accesses       previous mem accesses
      smp_mb()                    smp_mb()
      following mem accesses      following mem accesses

      After the change, these pairs become:

      Thread A                    Thread B
      prev mem accesses           prev mem accesses
      sys_membarrier()            barrier()
      follow mem accesses         follow mem accesses

      As we can see, there are two possible scenarios: either Thread B memory
      accesses do not happen concurrently with Thread A accesses (1), or they
      do (2).

      1) Non-concurrent Thread A vs Thread B accesses:

      Thread A                    Thread B
      prev mem accesses
      sys_membarrier()
      follow mem accesses
                                  prev mem accesses
                                  barrier()
                                  follow mem accesses

      In this case, thread B accesses will be weakly ordered. This is OK,
      because at that point, thread A is not particularly interested in
      ordering them with respect to its own accesses.

      2) Concurrent Thread A vs Thread B accesses

      Thread A                    Thread B
      prev mem accesses           prev mem accesses
      sys_membarrier()            barrier()
      follow mem accesses         follow mem accesses

      In this case, thread B accesses, which are ensured to be in program
      order thanks to the compiler barrier, will be "upgraded" to full
      smp_mb() by synchronize_sched().

      * Benchmarks

      On Intel Xeon E5405 (8 cores)
      (one thread is calling sys_membarrier, the other 7 threads are busy
      looping)

      1000 non-expedited sys_membarrier calls in 33s =3D 33 milliseconds/call.

      * User-space user of this system call: Userspace RCU library

      Both the signal-based and the sys_membarrier userspace RCU schemes
      permit us to remove the memory barrier from the userspace RCU
      rcu_read_lock() and rcu_read_unlock() primitives, thus significantly
      accelerating them. These memory barriers are replaced by compiler
      barriers on the read-side, and all matching memory barriers on the
      write-side are turned into an invocation of a memory barrier on all
      active threads in the process. By letting the kernel perform this
      synchronization rather than dumbly sending a signal to every process
      threads (as we currently do), we diminish the number of unnecessary wake
      ups and only issue the memory barriers on active threads. Non-running
      threads do not need to execute such barrier anyway, because these are
      implied by the scheduler context switches.

      Results in liburcu:

      Operations in 10s, 6 readers, 2 writers:

      memory barriers in reader:    1701557485 reads, 2202847 writes
      signal-based scheme:          9830061167 reads,    6700 writes
      sys_membarrier:               9952759104 reads,     425 writes
      sys_membarrier (dyn. check):  7970328887 reads,     425 writes

      The dynamic sys_membarrier availability check adds some overhead to
      the read-side compared to the signal-based scheme, but besides that,
      sys_membarrier slightly outperforms the signal-based scheme. However,
      this non-expedited sys_membarrier implementation has a much slower grace
      period than signal and memory barrier schemes.

      Besides diminishing the number of wake-ups, one major advantage of the
      membarrier system call over the signal-based scheme is that it does not
      need to reserve a signal. This plays much more nicely with libraries,
      and with processes injected into for tracing purposes, for which we
      cannot expect that signals will be unused by the application.

      An expedited version of this system call can be added later on to speed
      up the grace period. Its implementation will likely depend on reading
      the cpu_curr()->mm without holding each CPU's rq lock.

      This patch adds the system call to x86 and to asm-generic.

      [1] http://urcu.so

      membarrier(2) man page:

      MEMBARRIER(2)              Linux Programmer's Manual             
MEMBARRIER(2)

      NAME
             membarrier - issue memory barriers on a set of threads

      SYNOPSIS
             #include <linux/membarrier.h>

             int membarrier(int cmd, int flags);

      DESCRIPTION
             The cmd argument is one of the following:

             MEMBARRIER_CMD_QUERY
                    Query  the  set  of  supported commands. It returns a 
bitmask of
                    supported commands.

             MEMBARRIER_CMD_SHARED
                    Execute a memory barrier on all threads running on  the  
system.
                    Upon  return from system call, the caller thread is ensured 
that
                    all running threads have passed through a state where all 
memory
                    accesses  to  user-space  addresses  match program order 
between
                    entry to and return from the system  call  (non-running  
threads
                    are de facto in such a state). This covers threads from all 
pro=E2=80=90
                    cesses running on the system.  This command returns 0.

             The flags argument needs to be 0. For future extensions.

             All memory accesses performed  in  program  order  from  each  
targeted
             thread is guaranteed to be ordered with respect to 
sys_membarrier(). If
             we use the semantic "barrier()" to represent a compiler barrier 
forcing
             memory  accesses  to  be performed in program order across the 
barrier,
             and smp_mb() to represent explicit memory barriers forcing full  
memory
             ordering  across  the barrier, we have the following ordering 
table for
             each pair of barrier(), sys_membarrier() and smp_mb():

             The pair ordering is detailed as (O: ordered, X: not ordered):

                                    barrier()   smp_mb() sys_membarrier()
                    barrier()          X           X            O
                    smp_mb()           X           O            O
                    sys_membarrier()   O           O            O

      RETURN VALUE
             On success, these system calls return zero.  On error, -1 is  
returned,
             and errno is set appropriately. For a given command, with flags
             argument set to 0, this system call is guaranteed to always return 
the
             same value until reboot.

      ERRORS
             ENOSYS System call is not implemented.

             EINVAL Invalid arguments.

      Linux                             2015-04-15                     
MEMBARRIER(2)

      Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx>
      Reviewed-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Josh Triplett <josh@xxxxxxxxxxxxxxxx>
      Cc: KOSAKI Motohiro <kosaki.motohiro@xxxxxxxxxxxxxx>
      Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Cc: Nicholas Miell <nmiell@xxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Alan Cox <gnomes@xxxxxxxxxxxxxxxxxxx>
      Cc: Lai Jiangshan <laijs@xxxxxxxxxxxxxx>
      Cc: Stephen Hemminger <stephen@xxxxxxxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: David Howells <dhowells@xxxxxxxxxx>
      Cc: Pranith Kumar <bobby.prani@xxxxxxxxx>
      Cc: Michael Kerrisk <mtk.manpages@xxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 7c0d35a339db612aae5496424030307128f088a9
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Fri Sep 11 13:07:36 2015 -0700

      MODSIGN: fix a compilation warning in extract-cert

      Fix the following warning when compiling extract-cert:

        scripts/extract-cert.c: In function `write_cert':
        scripts/extract-cert.c:89:2: warning: format not a string literal and 
no format arguments [-Wformat-security]
          ERR(!i2d_X509_bio(wb, x509), cert_dst);
          ^

      whereby the ERR() macro is taking cert_dst as the format string.  "%s"
      should be used as the format string as the path could contain special
      characters.

      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
      Reported-by: Jim Davis <jim.epost@xxxxxxxxx>
      Acked-by : David Woodhouse <david.woodhouse@xxxxxxxxx>
      Cc: James Morris <jmorris@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 447e9a4d27484175a84daaa8e03d35c650f443b7
  Author: Doug Ledford <dledford@xxxxxxxxxx>
  Date:   Fri Sep 11 12:52:26 2015 -0400

      IB/ehca: Deprecate driver, move to staging, schedule deletion

      The ehca driver is only supported on IBM machines with a custom EBus.
      As they have opted to build their newer machines using more industry
      standard technology and haven't really been pushing EBus capable
      machines for a while, this driver can now safely be moved to the
      staging area and scheduled for eventual removal.  This plan was brought
      to IBM's attention and received their sign-off.

      Cc: alexs@xxxxxxxxxxxxxxxxxx
      Cc: hnguyen@xxxxxxxxxx
      Cc: raisch@xxxxxxxxxx
      Cc: stefan.roscher@xxxxxxxxxx
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 51a73ba5f409ef6f419c8ec3a0d1257633500aaa
  Merge: e91eb62 6551881
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 15:12:59 2015 -0700

      Merge git://www.linux-watchdog.org/linux-watchdog

      Pull watchdog updates from Wim Van Sebroeck:
       - new driver for NXP LPC18xx Watchdog Timer
       - new driver for SAMA5D4 watchdog timer
       - add support for MCP79 to nv_tco driver
       - clean-up and improvement of the mpc8xxx watchdog driver
       - improvements to gpio-wdt
       - at91sam9_wdt clock improvements
       ... and other small fixes and improvements

      * git://www.linux-watchdog.org/linux-watchdog: (25 commits)
        Watchdog: Fix parent of watchdog_devices
        watchdog: at91rm9200: Correct check for syscon_node_to_regmap() errors
        watchdog: at91sam9: get and use slow clock
        Documentation: dt: binding: atmel-sama5d4-wdt: for SAMA5D4 watchdog 
driver
        watchdog: add a driver to support SAMA5D4 watchdog timer
        watchdog: mpc8xxx: allow to compile for MPC512x
        watchdog: mpc8xxx: use better error code when watchdog cannot be enabled
        watchdog: mpc8xxx: use dynamic memory for device specific data
        watchdog: mpc8xxx: use devm_ioremap_resource to map memory
        watchdog: mpc8xxx: make use of of_device_get_match_data
        watchdog: mpc8xxx: simplify registration
        watchdog: mpc8xxx: remove dead code
        watchdog: lpc18xx_wdt_get_timeleft() can be static
        DT: watchdog: Add NXP LPC18xx Watchdog Timer binding documentation
        watchdog: NXP LPC18xx Watchdog Timer Driver
        watchdog: gpio-wdt: ping already at startup for always running devices
        watchdog: gpio-wdt: be more strict about hw_algo matching
        Documentation: watchdog: at91sam9_wdt: add clocks property
        watchdog: booke_wdt: Use infrastructure to check timeout limits
        watchdog: (nv_tco) add support for MCP79
        ...

  commit c2d4fbd2163e607915cc05798ce7fb7f31117cc1
  Author: Linus Lüssing <linus.luessing@xxxxxxxxx>
  Date:   Fri Sep 11 18:39:48 2015 +0200

      bridge: fix igmpv3 / mldv2 report parsing

      With the newly introduced helper functions the skb pulling is hidden in
      the checksumming function - and undone before returning to the caller.

      The IGMPv3 and MLDv2 report parsing functions in the bridge still
      assumed that the skb is pointing to the beginning of the IGMP/MLD
      message while it is now kept at the beginning of the IPv4/6 header,
      breaking the message parsing and creating packet loss.

      Fixing this by taking the offset between IP and IGMP/MLD header into
      account, too.

      Fixes: 9afd85c9e455 ("net: Export IGMP/MLD message validation code")
      Reported-by: Tobias Powalowski <tobias.powalowski@xxxxxxxxxxxxxx>
      Tested-by: Tobias Powalowski <tobias.powalowski@xxxxxxxxxxxxxx>
      Signed-off-by: Linus Lüssing <linus.luessing@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a19a19de8310fb8ca2ca0621a9db1aab082943c5
  Author: Arnd Bergmann <arnd@xxxxxxxx>
  Date:   Fri Sep 11 11:33:01 2015 +0200

      bnx2x: use ktime_get_seconds() for timestamp

      commit c48f350ff5e7 "bnx2x: Add MFW dump support" added the
      bnx2x_update_mfw_dump() function that reads the current time and stores
      it in a 32-bit field that gets passed into a buffer in a fixed format.

      This is potentially broken when the epoch overflows in 2038, and
      otherwise overflows in 2106. As we're trying to avoid uses of
      struct timeval for this reason, I noticed the addition of this
      function, and tried to rewrite it in a way that is more explicit
      about the overflow and that will keep working once we deprecate
      struct timeval.

      I assume that it is not possible to change the ABI any more, otherwise
      we should try to use a 64-bit field for the seconds right away.

      Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Yuval Mintz <Yuval.Mintz@xxxxxxxxxx>
      Cc: Ariel Elior <Ariel.Elior@xxxxxxxxxx>
      Acked-by: Yuval Mintz <Yuval.Mintz@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8e2d61e0aed2b7c4ecb35844fe07e0b2b762dee4
  Author: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
  Date:   Thu Sep 10 17:31:15 2015 -0300

      sctp: fix race on protocol/netns initialization

      Consider sctp module is unloaded and is being requested because an user
      is creating a sctp socket.

      During initialization, sctp will add the new protocol type and then
      initialize pernet subsys:

              status = sctp_v4_protosw_init();
              if (status)
                      goto err_protosw_init;

              status = sctp_v6_protosw_init();
              if (status)
                      goto err_v6_protosw_init;

              status = register_pernet_subsys(&sctp_net_ops);

      The problem is that after those calls to sctp_v{4,6}_protosw_init(), it
      is possible for userspace to create SCTP sockets like if the module is
      already fully loaded. If that happens, one of the possible effects is
      that we will have readers for net->sctp.local_addr_list list earlier
      than expected and sctp_net_init() does not take precautions while
      dealing with that list, leading to a potential panic but not limited to
      that, as sctp_sock_init() will copy a bunch of blank/partially
      initialized values from net->sctp.

      The race happens like this:

           CPU 0                           |  CPU 1
        socket()                           |
         __sock_create                     | socket()
          inet_create                      |  __sock_create
           list_for_each_entry_rcu(        |
              answer, &inetsw[sock->type], |
              list) {                      |   inet_create
            /* no hits */                  |
           if (unlikely(err)) {            |
            ...                            |
            request_module()               |
            /* socket creation is blocked  |
             * the module is fully loaded  |
             */                            |
             sctp_init                     |
              sctp_v4_protosw_init         |
               inet_register_protosw       |
                list_add_rcu(&p->list,     |
                             last_perm);   |
                                           |  list_for_each_entry_rcu(
                                           |     answer, &inetsw[sock->type],
              sctp_v6_protosw_init         |     list) {
                                           |     /* hit, so assumes protocol
                                           |      * is already loaded
                                           |      */
                                           |  /* socket creation continues
                                           |   * before netns is initialized
                                           |   */
              register_pernet_subsys       |

      Simply inverting the initialization order between
      register_pernet_subsys() and sctp_v4_protosw_init() is not possible
      because register_pernet_subsys() will create a control sctp socket, so
      the protocol must be already visible by then. Deferring the socket
      creation to a work-queue is not good specially because we loose the
      ability to handle its errors.

      So, as suggested by Vlad, the fix is to split netns initialization in
      two moments: defaults and control socket, so that the defaults are
      already loaded by when we register the protocol, while control socket
      initialization is kept at the same moment it is today.

      Fixes: 4db67e808640 ("sctp: Make the address lists per network namespace")
      Signed-off-by: Vlad Yasevich <vyasevich@xxxxxxxxx>
      Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 19539ce783dd27768d4f7f3b753152bf983db65b
  Author: Tycho Andersen <tycho.andersen@xxxxxxxxxxxxx>
  Date:   Thu Sep 10 18:25:07 2015 -0600

      ebpf: emit correct src_reg for conditional jumps

      Instead of always emitting BPF_REG_X, let's emit BPF_REG_X only when the
      source actually is BPF_X. This causes programs generated by the classic
      converter to not be importable via bpf(), as the eBPF verifier checks that
      the src_reg is correct or 0. While not a problem yet, this will be a
      problem when BPF_PROG_DUMP lands, and we can potentially dump and 
re-import
      programs generated by the converter.

      Signed-off-by: Tycho Andersen <tycho.andersen@xxxxxxxxxxxxx>
      CC: Alexei Starovoitov <ast@xxxxxxxxxx>
      CC: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Acked-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1853c949646005b5959c483becde86608f548f24
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Thu Sep 10 20:05:46 2015 +0200

      netlink, mmap: transform mmap skb into full skb on taps

      Ken-ichirou reported that running netlink in mmap mode for receive in
      combination with nlmon will throw a NULL pointer dereference in
      __kfree_skb() on nlmon_xmit(), in my case I can also trigger an "unable
      to handle kernel paging request". The problem is the skb_clone() in
      __netlink_deliver_tap_skb() for skbs that are mmaped.

      I.e. the cloned skb doesn't have a destructor, whereas the mmap netlink
      skb has it pointed to netlink_skb_destructor(), set in the handler
      netlink_ring_setup_skb(). There, skb->head is being set to NULL, so
      that in such cases, __kfree_skb() doesn't perform a skb_release_data()
      via skb_release_all(), where skb->head is possibly being freed through
      kfree(head) into slab allocator, although netlink mmap skb->head points
      to the mmap buffer. Similarly, the same has to be done also for large
      netlink skbs where the data area is vmalloced. Therefore, as discussed,
      make a copy for these rather rare cases for now. This fixes the issue
      on my and Ken-ichirou's test-cases.

      Reference: http://thread.gmane.org/gmane.linux.network/371129
      Fixes: bcbde0d449ed ("net: netlink: virtual tap device management")
      Reported-by: Ken-ichirou MATSUZAWA <chamaken@xxxxxxxxx>
      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Tested-by: Ken-ichirou MATSUZAWA <chamaken@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0ba13fd19d39b7cb672bcec052bc813389c079a4
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 13:26:39 2015 -0700

      Revert "writeback: plug writeback at a high level"

      This reverts commit d353d7587d02116b9732d5c06615aed75a4d3a47.

      Doing the block layer plug/unplug inside writeback_sb_inodes() is
      broken, because that function is actually called with a spinlock held:
      wb->list_lock, as pointed out by Chris Mason.

      Chris suggested just dropping and re-taking the spinlock around the
      blk_finish_plug() call (the plgging itself can happen under the
      spinlock), and that would technically work, but is just disgusting.

      We do something fairly similar - but not quite as disgusting because we
      at least have a better reason for it - in writeback_single_inode(), so
      it's not like the caller can depend on the lock being held over the
      call, but in this case there just isn't any good reason for that
      "release and re-take the lock" pattern.

      [ In general, we should really strive to avoid the "release and retake"
        pattern for locks, because in the general case it can easily cause
        subtle bugs when the caller caches any state around the call that
        might be invalidated by dropping the lock even just temporarily. ]

      But in this case, the plugging should be easy to just move up to the
      callers before the spinlock is taken, which should even improve the
      effectiveness of the plug.  So there is really no good reason to play
      games with locking here.

      I'll send off a test-patch so that Dave Chinner can verify that that
      plug movement works.  In the meantime this just reverts the problematic
      commit and adds a comment to the function so that we hopefully don't
      make this mistake again.

      Reported-by: Chris Mason <clm@xxxxxx>
      Cc: Josef Bacik <jbacik@xxxxxx>
      Cc: Dave Chinner <david@xxxxxxxxxxxxx>
      Cc: Neil Brown <neilb@xxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit e91eb6204fb826116453e43d4f5cf0f666bf46fe
  Merge: e013f74 527afb4
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 12:38:25 2015 -0700

      Merge branch 'for-linus-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs

      Pull btrfs cleanups and fixes from Chris Mason:
       "These are small cleanups, and also some fixes for our async worker
        thread initialization.

        I was having some trouble testing these, but it ended up being a
        combination of changing around my test servers and a shiny new
        schedule while atomic from the new start/finish_plug in
        writeback_sb_inodes().

        That one only hits on btrfs raid5/6 or MD raid10, and if I wasn't
        changing a bunch of things in my test setup at once it would have been
        really clear.  Fix for writeback_sb_inodes() on the way as well"

      * 'for-linus-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
        Btrfs: cleanup: remove unnecessary check before btrfs_free_path is 
called
        btrfs: async_thread: Fix workqueue 'max_active' value when initializing
        btrfs: Add raid56 support for updating  
num_tolerated_disk_barrier_failures in btrfs_balance
        btrfs: Cleanup for btrfs_calc_num_tolerated_disk_barrier_failures
        btrfs: Remove noused chunk_tree and chunk_objectid from 
scrub_enumerate_chunks and scrub_chunk
        btrfs: Update out-of-date "skip parity stripe" comment

  commit e013f74b60bbd37ee8c3a55214eb351ea3101c15
  Merge: 01cab55 4383868
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 12:33:03 2015 -0700

      Merge branch 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client

      Pull Ceph update from Sage Weil:
       "There are a few fixes for snapshot behavior with CephFS and support
        for the new keepalive protocol from Zheng, a libceph fix that affects
        both RBD and CephFS, a few bug fixes and cleanups for RBD from Ilya,
        and several small fixes and cleanups from Jianpeng and others"

      * 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:
        ceph: improve readahead for file holes
        ceph: get inode size for each append write
        libceph: check data_len in ->alloc_msg()
        libceph: use keepalive2 to verify the mon session is alive
        rbd: plug rbd_dev->header.object_prefix memory leak
        rbd: fix double free on rbd_dev->header_name
        libceph: set 'exists' flag for newly up osd
        ceph: cleanup use of ceph_msg_get
        ceph: no need to get parent inode in ceph_open
        ceph: remove the useless judgement
        ceph: remove redundant test of head->safe and silence static analysis 
warnings
        ceph: fix queuing inode to mdsdir's snaprealm
        libceph: rename con_work() to ceph_con_workfn()
        libceph: Avoid holding the zero page on ceph_msgr_slab_init errors
        libceph: remove the unused macro AES_KEY_SIZE
        ceph: invalidate dirty pages after forced umount
        ceph: EIO all operations after forced umount

  commit 01cab5549c3e9a0fe7248fc5ad0fd79361cc0d39
  Merge: 64d1def 8f7e0a8
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 12:23:51 2015 -0700

      Merge tag 'gfs2-merge-window' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2

      Pull GFS2 updates from Bob Peterson:
       "Here is a list of patches we've accumulated for GFS2 for the current
        upstream merge window.  This time we've only got six patches, many of
        which are very small:

         - three cleanups from Andreas Gruenbacher, including a nice cleanup
           of the sequence file code for the sbstats debugfs file.

         - a patch from Ben Hutchings that changes statistics variables from
           signed to unsigned.

         - two patches from me that increase GFS2's glock scalability by
           switching from a conventional hash table to rhashtable"

      * tag 'gfs2-merge-window' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2:
        gfs2: A minor "sbstats" cleanup
        gfs2: Fix a typo in a comment
        gfs2: Make statistics unsigned, suitable for use with do_div()
        GFS2: Use resizable hash table for glocks
        GFS2: Move glock superblock pointer to field gl_name
        gfs2: Simplify the seq file code for "sbstats"

  commit 294ab783ad98066b87296db1311c7ba2a60206a5
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Wed Sep 9 18:04:18 2015 +0200

      scsi_dh: fix randconfig build error

      It looks like the Kconfig check that was meant to fix this (commit
      fe9233fb6914a0eb20166c967e3020f7f0fba2c9 [SCSI] scsi_dh: fix kconfig 
related
      build errors) was actually reversed, but no-one noticed until the new set 
of
      patches which separated DM and SCSI_DH).

      Fixes: fe9233fb6914a0eb20166c967e3020f7f0fba2c9
      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Tested-by: Mike Snitzer <snitzer@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit c2172ce2303051764829d4958bd50a11ada0590f
  Merge: a4a5a73 0b61f2c
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 19:18:28 2015 +0100

      Merge branch 'uaccess' into fixes

  commit a4a5a7379e4ca03c192b732d61e446994eb67bbc
  Author: Robert Jarzmik <robert.jarzmik@xxxxxxx>
  Date:   Fri Sep 11 17:12:27 2015 +0100

      ARM: 8431/1: fix alignement of __bug_table section entries

      On old ARM chips, unaligned accesses to memory are not trapped and
      fixed.  On module load, symbols are relocated, and the relocation of
      __bug_table symbols is done on a u32 basis. Yet the section is not
      aligned to a multiple of 4 address, but to a multiple of 2.

      This triggers an Oops on pxa architecture, where address 0xbf0021ea
      is the first relocation in the __bug_table section :
        apply_relocate(): pxa3xx_nand: section 13 reloc 0 sym ''
        Unable to handle kernel paging request at virtual address bf0021ea
        pgd = e1cd0000
        [bf0021ea] *pgd=c1cce851, *pte=c1cde04f, *ppte=c1cde01f
        Internal error: Oops: 23 [#1] ARM
        Modules linked in:
        CPU: 0 PID: 606 Comm: insmod Not tainted 
4.2.0-rc8-next-20150828-cm-x300+ #887
        Hardware name: CM-X300 module
        task: e1c68700 ti: e1c3e000 task.ti: e1c3e000
        PC is at apply_relocate+0x2f4/0x3d4
        LR is at 0xbf0021ea
        pc : [<c000e7c8>]    lr : [<bf0021ea>]    psr: 80000013
        sp : e1c3fe30  ip : 60000013  fp : e49e8c60
        r10: e49e8fa8  r9 : 00000000  r8 : e49e7c58
        r7 : e49e8c38  r6 : e49e8a58  r5 : e49e8920  r4 : e49e8918
        r3 : bf0021ea  r2 : bf007034  r1 : 00000000  r0 : bf000000
        Flags: Nzcv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment none
        Control: 0000397f  Table: c1cd0018  DAC: 00000051
        Process insmod (pid: 606, stack limit = 0xe1c3e198)
        [<c000e7c8>] (apply_relocate) from [<c005ce5c>] 
(load_module+0x1248/0x1f5c)
        [<c005ce5c>] (load_module) from [<c005dc54>] 
(SyS_init_module+0xe4/0x170)
        [<c005dc54>] (SyS_init_module) from [<c000a420>] 
(ret_fast_syscall+0x0/0x38)

      Fix this by ensuring entries in __bug_table are all aligned to at least
      of multiple of 4. This transforms a module section  __bug_table as :
      -   [12] __bug_table       PROGBITS        00000000 002232 000018 00   A  
0   0  1
      +   [12] __bug_table       PROGBITS        00000000 002232 000018 00   A  
0   0  4

      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Reviewed-by: Dave Martin <Dave.Martin@xxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 0b61f2c0f37983c98ed4207f3f5e265938371b68
  Author: Julien Grall <julien.grall@xxxxxxxxxx>
  Date:   Fri Sep 11 17:25:59 2015 +0100

      arm/xen: Enable user access to the kernel before issuing a privcmd call

      When Xen is copying data to/from the guest it will check if the kernel
      has the right to do the access. If not, the hypercall will return an
      error.

      After the commit a5e090acbf545c0a3b04080f8a488b17ec41fe02 "ARM:
      software-based privileged-no-access support", the kernel can't access
      any longer the user space by default. This will result to fail on every
      hypercall made by the userspace (i.e via privcmd).

      We have to enable the userspace access and then restore the correct
      permission every time the privcmd is used to made an hypercall.

      I didn't find generic helpers to do a these operations, so the change
      is only arm32 specific.

      Reported-by: Riku Voipio <riku.voipio@xxxxxxxxxx>
      Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 64d1def7d33856824d2c5c6fd6d4579d4d54bb87
  Merge: 04d78e3 5ee20bc
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 09:42:32 2015 -0700

      Merge tag 'sound-fix-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound

      Pull sound fixes from Takashi Iwai:
       "A collection of small fixes since the last update: the HD-audio quirks
        as usual with a USB-audio fix and a trivial fix for the old sparc
        driver"

      * tag 'sound-fix-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: usb-audio: Change internal PCM order
        ALSA: hda - Fix white noise on Dell M3800
        ALSA: hda - Use ALC880_FIXUP_FUJITSU for FSC Amilo M1437
        ALSA: hda - Enable headphone jack detect on old Fujitsu laptops
        ALSA: sparc: amd7930: Fix module autoload for OF platform driver
        ALSA: hda - Add some FIXUP quirks for white noise on Dell laptop.

  commit 04d78e39ee1a7aa3712fce016b37b43a03f810c1
  Merge: b0a1ea5 9fbcc7c
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 09:35:56 2015 -0700

      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux

      Pull drm fixes from Dave Airlie:
       "Just a bunch of fixes to squeeze in before -rc1:

         - three nouveau regression fixes

         - one qxl regression fix

         - a bunch of i915 fixes

        ... and some core displayport/atomic fixes"

      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
        drm/nouveau/device: enable c800 quirk for tecra w50
        drm/nouveau/clk/gt215: Unbreak engine pausing for GT21x/MCP7x
        drm/nouveau/gr/nv04: fix big endian setting on gr context
        drm/qxl: validate monitors config modes
        drm/i915: Allow DSI dual link to be configured on any pipe
        drm/i915: Don't try to use DDR DVFS on CHV when disabled in the BIOS
        drm/i915: Fix CSR MMIO address check
        drm/i915: Limit the number of loops for reading a split 64bit register
        drm/i915: Fix broken mst get_hw_state.
        drm/i915: Pass hpd_status_i915[] to intel_get_hpd_pins() in pre-g4x
        uapi/drm/i915_drm.h: fix userspace compilation.
        drm/i915: Always mark the object as dirty when used by the GPU
        drm/dp: Add dp_aux_i2c_speed_khz module param to set the assume i2c bus 
speed
        drm/dp: Adjust i2c-over-aux retry count based on message size and i2c 
bus speed
        drm/dp: Define AUX_RETRY_INTERVAL as 500 us
        drm/atomic: Fix bookkeeping with TEST_ONLY, v3.

  commit 53431d0a3534263168c8ee576bad1c2c3a4cd9e0
  Merge: 01b944f ade9c1a
  Author: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
  Date:   Fri Sep 11 09:02:36 2015 -0700

      Merge branch 'next' into for-linus

      Prepare second round of input updates for 4.3 merge window.

  commit 6e8f580d1fcc18e290713984c379cb97131c015a
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 08:34:52 2015 +0100

      ARM: domains: add memory dependencies to get_domain/set_domain

      We need to have memory dependencies on get_domain/set_domain to avoid
      the compiler over-optimising these inline assembly instructions.

      Loads/stores must not be reordered across a set_domain(), so introduce
      a compiler barrier for that assembly.

      The value of get_domain() must not be cached across a set_domain(), but
      we still want to allow the compiler to optimise it away.  Introduce a
      dependency on current_thread_info()->cpu_domain to avoid this; the new
      memory clobber in set_domain() should therefore cause the compiler to
      re-load this.  The other advantage of using this is we should have its
      address in the register set already, or very soon after at most call
      sites.

      Tested-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 716ff1921a86c637b8875c7bb312fc6755fa9300
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Sep 11 08:17:39 2015 +0100

      ARM: domains: thread_info.h no longer needs asm/domains.h

      As of 1eef5d2f1b46 ("ARM: domains: switch to keeping domain value in
      register") we no longer need to include asm/domains.h into
      asm/thread_info.h.  Remove it.

      Tested-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 6fe810bda0bd9a5d7674fc671fac27b8aa8ec243
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Sat Sep 5 15:47:36 2015 -0400

      block: blkg_destroy_all() should clear q->root_blkg and ->root_rl.blkg

      While making the root blkg unconditional, ec13b1d6f0a0 ("blkcg: always
      create the blkcg_gq for the root blkcg") removed the part which clears
      q->root_blkg and ->root_rl.blkg during q exit.  This leaves the two
      pointers dangling after blkg_destroy_all().  blk-throttle exit path
      performs blkg traversals and dereferences ->root_blkg and can lead to
      the following oops.

       BUG: unable to handle kernel NULL pointer dereference at 0000000000000558
       IP: [<ffffffff81389746>] __blkg_lookup+0x26/0x70
       ...
       task: ffff88001b4e2580 ti: ffff88001ac0c000 task.ti: ffff88001ac0c000
       RIP: 0010:[<ffffffff81389746>]  [<ffffffff81389746>] 
__blkg_lookup+0x26/0x70
       ...
       Call Trace:
        [<ffffffff8138d14a>] blk_throtl_drain+0x5a/0x110
        [<ffffffff8138a108>] blkcg_drain_queue+0x18/0x20
        [<ffffffff81369a70>] __blk_drain_queue+0xc0/0x170
        [<ffffffff8136a101>] blk_queue_bypass_start+0x61/0x80
        [<ffffffff81388c59>] blkcg_deactivate_policy+0x39/0x100
        [<ffffffff8138d328>] blk_throtl_exit+0x38/0x50
        [<ffffffff8138a14e>] blkcg_exit_queue+0x3e/0x50
        [<ffffffff8137016e>] blk_release_queue+0x1e/0xc0
       ...

      While the bug is a straigh-forward use-after-free bug, it is tricky to
      reproduce because blkg release is RCU protected and the rest of exit
      path usually finishes before RCU grace period.

      This patch fixes the bug by updating blkg_destro_all() to clear
      q->root_blkg and ->root_rl.blkg.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Reported-by: "Richard W.M. Jones" <rjones@xxxxxxxxxx>
      Reported-by: Josh Boyer <jwboyer@xxxxxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/g/CA+5PVA5rzQ0s4723n5rHBcxQa9t0cW8BPPBekr_9aMRoWt2aYg@xxxxxxxxxxxxxx
      Fixes: ec13b1d6f0a0 ("blkcg: always create the blkcg_gq for the root 
blkcg")
      Cc: stable@xxxxxxxxxxxxxxx # v4.2+
      Tested-by: Richard W.M. Jones <rjones@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 46348456c1791053dcbe5a9e21825b10a3c8a8fb
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Sep 3 19:28:23 2015 +0300

      block: Copy a user iovec if it includes gaps

      For drivers that don't support gaps in the SG lists handed to
      them we must bounce (copy the user buffers) and pass a bio that
      does not include gaps. This doesn't matter for any current user,
      but will help to allow iser which can't handle gaps to use the
      block virtual boundary instead of using driver-local bounce
      buffering when handling SG_IO commands.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 87a816df537e096d404add543ef47b796906c130
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Tue Sep 8 09:33:35 2015 -0600

      block: Refuse adding appending a gapped integrity page to a bio

      This is only theoretical at the moment given that the only
      subsystems that generate integrity payloads are the block layer
      itself and the scsi target (which generate well aligned integrity
      payloads). But when we will expose integrity meta-data to user-space,
      we'll need to refuse appending a page with a gap (if the queue
      virtual boundary is set).

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 7f39add3b08cbbdb99abe50e6d7c342e6800d684
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Fri Sep 11 09:03:04 2015 -0600

      block: Refuse request/bio merges with gaps in the integrity payload

      If a driver sets the block queue virtual boundary mask, it means that
      it cannot handle gaps so we must not allow those in the integrity
      payload as well.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>

      Fixed up by me to have duplicate integrity merge functions, depending
      on whether block integrity is enabled or not. Fixes a compilations
      issue with CONFIG_BLK_DEV_INTEGRITY unset.

      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 4c17a6d56bb0cad3066a714e94f7185a24b40f49
  Author: Jann Horn <jann@xxxxxxxxx>
  Date:   Fri Sep 11 16:27:27 2015 +0200

      CIFS: fix type confusion in copy offload ioctl

      This might lead to local privilege escalation (code execution as
      kernel) for systems where the following conditions are met:

       - CONFIG_CIFS_SMB2 and CONFIG_CIFS_POSIX are enabled
       - a cifs filesystem is mounted where:
        - the mount option "vers" was used and set to a value >=2.0
        - the attacker has write access to at least one file on the filesystem

      To attack this, an attacker would have to guess the target_tcon
      pointer (but guessing wrong doesn't cause a crash, it just returns an
      error code) and win a narrow race.

      CC: Stable <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Jann Horn <jann@xxxxxxxxx>
      Signed-off-by: Steve French <smfrench@xxxxxxxxx>

  commit 84cba178a3b88efe2668a9039f70abda072faa21
  Author: Andrey Ryabinin <aryabinin@xxxxxxxxxxxxx>
  Date:   Thu Sep 10 13:11:55 2015 +0300

      crypto: testmgr - don't copy from source IV too much

      While the destination buffer 'iv' is MAX_IVLEN size,
      the source 'template[i].iv' could be smaller, thus
      memcpy may read read invalid memory.
      Use crypto_skcipher_ivsize() to get real ivsize
      and pass it to memcpy.

      Signed-off-by: Andrey Ryabinin <aryabinin@xxxxxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 4614e0cc66a8ea1d163efc364ba743424dee5c0a
  Merge: 3e66c4b 21dd33b abceaa9 f33b774
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Fri Sep 11 15:37:36 2015 +0200

      Merge branches 'pm-cpu', 'pm-cpuidle' and 'pm-domains'

      * pm-cpu:
        kernel/cpu_pm: fix cpu_cluster_pm_exit comment

      * pm-cpuidle:
        cpuidle/coupled: Add sanity check for safe_state_index

      * pm-domains:
        staging: board: Migrate away from __pm_genpd_name_add_device()
        PM / Domains: Ensure subdomain is not in use before removing
        PM / Domains: Try power off masters in error path of 
__pm_genpd_poweron()

  commit 3e66c4b86035884e00f008086b183b925fb0592b
  Merge: 7c97666 74da56c
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Fri Sep 11 15:37:25 2015 +0200

      Merge branch 'pm-cpufreq'

      * pm-cpufreq:
        intel_pstate: fix PCT_TO_HWP macro
        intel_pstate: Fix user input of min/max to legal policy region
        cpufreq-dt: add suspend frequency support
        cpufreq: allow cpufreq_generic_suspend() to work without suspend 
frequency
        cpufreq: Use __func__ to print function's name
        cpufreq: staticize cpufreq_cpu_get_raw()
        cpufreq: Add ARM_MT8173_CPUFREQ dependency on THERMAL
        cpufreq: dt: Tolerance applies on both sides of target voltage
        cpufreq: dt: Print error on failing to mark OPPs as shared
        cpufreq: dt: Check OPP count before marking them shared

  commit 7c976664d537bca19c9bf892b4d9e5ab7ecea927
  Merge: ae98207 1b2b90c
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Fri Sep 11 15:37:17 2015 +0200

      Merge branch 'pm-opp'

      * pm-opp:
        PM / OPP: Return suspend_opp only if it is enabled
        PM / OPP: add dev_pm_opp_get_suspend_opp() helper

  commit 7e90f9b2b56669260e5f6f97974735d187f79b7d
  Author: Zidan Wang <zidan.wang@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 19:29:11 2015 +0800

      ASoC: wm8960: correct gain value for input PGA and add microphone PGA

      The input PGAs have a gain range from -17.25dB to +30dB in 0.75dB steps.

      The boost stage can provide additional gain. For line inputs, -12dB to
      +6dB gain is available on the boost mixer. For micphone inputs, it can
      provide up to +29dB additional gain from the microphone PGA.

      Signed-off-by: Zidan Wang <zidan.wang@xxxxxxxxxxxxx>
      Acked-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 3758ff5f3dab57cd768d54279962a2f6bbc17188
  Author: Zidan Wang <zidan.wang@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 19:29:10 2015 +0800

      ASoC: wm8960: correct the min gain value of some PGA

      The min gain is the corresponding gain value when the register value is 0
      instead of 1, just correct it.

      Signed-off-by: Zidan Wang <zidan.wang@xxxxxxxxxxxxx>
      Acked-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit dd85ebf681ef0ee1fc985c353dd45e8b53b5dc1e
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Thu Sep 10 16:48:13 2015 +0530

      spi: spidev: fix possible NULL dereference

      During the last close we are freeing spidev if spidev->spi is NULL, but
      just before checking if spidev->spi is NULL we are dereferencing it.
      Lets add a check there to avoid the NULL dereference.

      Fixes: 9169051617df ("spi: spidev: Don't mangle max_speed_hz in 
underlying spi device")
      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Reviewed-by: Jarkko Nikula <jarkko.nikula@xxxxxxxxxxxxxxx>
      Tested-by: Jarkko Nikula <jarkko.nikula@xxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit f17b329b73a0393dc9d5fc5b4457189f92e5bbef
  Author: Oder Chiou <oder_chiou@xxxxxxxxxxx>
  Date:   Thu Sep 10 13:40:16 2015 +0800

      ASoC: rt5645: Remove incorrect settings

      The patch removes the incorrect settings to avoid the pop sound in the
      first playback with headphone after boot.

      Signed-off-by: Oder Chiou <oder_chiou@xxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 75881df3fd7708f234c1e2573ade812eb5701708
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Thu Sep 10 18:01:44 2015 +0530

      ASoC: dapm: fix memory leak

      Incase of an unknown event we were directly returning but we missed
      freeing params.

      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit d249872939bfa86c9cce44a56a8cbdbc7086519b
  Author: Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx>
  Date:   Fri Jul 17 16:34:10 2015 +0300

      perf/x86/intel/bts: Set event->hw.itrace_started in pmu::start to match 
the new logic

      Since event->hw.itrace_started is now set in pmu::start() to signal the 
beginning of
      the trace, do so also in the intel_bts driver.

      Signed-off-by: Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: acme@xxxxxxxxxxxxx
      Cc: adrian.hunter@xxxxxxxxx
      Cc: hpa@xxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1437140050-23363-4-git-send-email-alexander.shishkin@xxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit ac64a2ce509104a746321a4f9646b6750cf281eb
  Author: David Disseldorp <ddiss@xxxxxxx>
  Date:   Fri Sep 4 01:39:56 2015 +0200

      target: use stringify.h instead of own definition

      Signed-off-by: David Disseldorp <ddiss@xxxxxxx>
      Acked-by: Andy Grover <agrover@xxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit ed97d0cd78a337450e17eb613bdeec15e729af46
  Author: Andy Grover <agrover@xxxxxxxxxx>
  Date:   Thu Sep 3 16:03:44 2015 -0700

      target/user: Fix UFLAG_UNKNOWN_OP handling

      Calling transport_generic_request_failure() from here causes list
      corruption. We should be using target_complete_cmd() instead.

      Which we do in all other cases, so the UNKNOWN_OP case can become just
      another member of the big else/if chain in tcmu_handle_completion().

      Signed-off-by: Andy Grover <agrover@xxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit 06b967e429cfb76494badb9ffdd69e934ba72c77
  Author: Andy Grover <agrover@xxxxxxxxxx>
  Date:   Thu Sep 3 16:03:43 2015 -0700

      target: Remove no-op conditional

      This does nothing, and there are many other places where
      transport_cmd_check_stop_to_fabric()'s retval is not checked>, If we
      wanted to check it here, we should probably do it those other places too.

      Signed-off-by: Andy Grover <agrover@xxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit 4824640ec3fc84337cb2baa9fb780e95864feb88
  Author: Andy Grover <agrover@xxxxxxxxxx>
  Date:   Thu Sep 3 16:03:42 2015 -0700

      target/user: Remove unused variable

      We don't use it any more.

      Signed-off-by: Andy Grover <agrover@xxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit 7dd03aca9d61a9b64cd2a8cf6f5ea6f1f5391e8d
  Author: Roland Dreier <roland@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 06:14:18 2015 -0700

      target: Fix max_cmd_sn increment w/o cmdsn mutex regressions

      Current for-next iscsi target is broken:

      commit 109e2381749c1cfd94a0d22b2b54142539024973
      Author: Roland Dreier <roland@xxxxxxxxxxxxxxx>
      Date:   Thu Jul 23 14:53:32 2015 -0700

          target: Drop iSCSI use of mutex around max_cmd_sn increment

      This patch fixes incorrect pr_debug() + atomic_inc_return() usage
      within iscsit_increment_maxcmdsn() code.

      Also fix funny iscsit_determine_maxcmdsn() usage and update
      iscsi_target_do_tx_login_io() code.

      Reported-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Cc: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Roland Dreier <roland@xxxxxxxxxxxxxxx>
      Cc: Roland Dreier <roland@xxxxxxxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit 4416f89b8cfcb794d040fc3b68e5fb159b7d8d02
  Author: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 06:30:45 2015 +0000

      target: Attach EXTENDED_COPY local I/O descriptors to xcopy_pt_sess

      This patch is a >= v4.1 regression bug-fix where control CDB
      emulation logic in commit 38b57f82 now expects a se_cmd->se_sess
      pointer to exist when determining T10-PI support is to be exposed
      for initiator host ports.

      To address this bug, go ahead and add locally generated se_cmd
      descriptors for copy-offload block-copy to it's own stand-alone
      se_session nexus, while the parent EXTENDED_COPY se_cmd descriptor
      remains associated with it's originating se_cmd->se_sess nexus.

      Note a valid se_cmd->se_sess is also required for future support
      of WRITE_INSERT and READ_STRIP software emulation when submitting
      backend I/O to se_device that exposes T10-PI suport.

      Reported-by: Alex Gorbachev <ag@xxxxxxxxxxxxxxxxxxx>
      Tested-by: Alex Gorbachev <ag@xxxxxxxxxxxxxxxxxxx>
      Cc: "Martin K. Petersen" <martin.petersen@xxxxxxxxxx>
      Cc: Hannes Reinecke <hare@xxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxx>
      Cc: Doug Gilbert <dgilbert@xxxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # v4.1+
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit 8f9b565482c537821588444e09ff732c7d65ed6e
  Author: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 18:28:13 2015 -0700

      target/qla2xxx: Honor max_data_sg_nents I/O transfer limit

      This patch adds an optional fabric driver provided SGL limit
      that target-core will honor as it's own internal I/O maximum
      transfer length limit, as exposed by EVPD=0xb0 block limits
      parameters.

      This is required for handling cases when host I/O transfer
      length exceeds the requested EVPD block limits maximum
      transfer length. The initial user of this logic is qla2xxx,
      so that we can avoid having to reject I/Os from some legacy
      FC hosts where EVPD=0xb0 parameters are not honored.

      When se_cmd payload length exceeds the provided limit in
      target_check_max_data_sg_nents() code, se_cmd->data_length +
      se_cmd->prot_length are reset with se_cmd->residual_count
      plus underflow bit for outgoing TFO response callbacks.
      It also checks for existing CDB level underflow + overflow
      and recalculates final residual_count as necessary.

      Note this patch currently assumes 1:1 mapping of PAGE_SIZE
      per struct scatterlist entry.

      Reported-by: Craig Watson <craig.watson@xxxxxxxxxxxxxxxxxxx>
      Cc: Craig Watson <craig.watson@xxxxxxxxxxxxxxxxxxx>
      Tested-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Cc: Roland Dreier <roland@xxxxxxxxxxxxxxx>
      Cc: Arun Easi <arun.easi@xxxxxxxxxx>
      Cc: Giridhar Malavali <giridhar.malavali@xxxxxxxxxx>
      Cc: Andrew Vasquez <andrew.vasquez@xxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxx>
      Cc: Hannes Reinecke <hare@xxxxxxx>
      Cc: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit 5473e0cc37c03c576adbda7591a6cc8e37c1bb7f
  Author: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
  Date:   Fri Aug 28 14:55:56 2015 +0800

      sched: 'Annotate' migrate_tasks()

      Kernel testing triggered this warning:

      | WARNING: CPU: 0 PID: 13 at kernel/sched/core.c:1156 
do_set_cpus_allowed+0x7e/0x80()
      | Modules linked in:
      | CPU: 0 PID: 13 Comm: migration/0 Not tainted 4.2.0-rc1-00049-g25834c7 #2
      | Call Trace:
      |   dump_stack+0x4b/0x75
      |   warn_slowpath_common+0x8b/0xc0
      |   warn_slowpath_null+0x22/0x30
      |   do_set_cpus_allowed+0x7e/0x80
      |   cpuset_cpus_allowed_fallback+0x7c/0x170
      |   select_fallback_rq+0x221/0x280
      |   migration_call+0xe3/0x250
      |   notifier_call_chain+0x53/0x70
      |   __raw_notifier_call_chain+0x1e/0x30
      |   cpu_notify+0x28/0x50
      |   take_cpu_down+0x22/0x40
      |   multi_cpu_stop+0xd5/0x140
      |   cpu_stopper_thread+0xbc/0x170
      |   smpboot_thread_fn+0x174/0x2f0
      |   kthread+0xc4/0xe0
      |   ret_from_kernel_thread+0x21/0x30

      As Peterz pointed out:

      | So the normal rules for changing task_struct::cpus_allowed are holding
      | both pi_lock and rq->lock, such that holding either stabilizes the mask.
      |
      | This is so that wakeup can happen without rq->lock and load-balance
      | without pi_lock.
      |
      | From this we already get the relaxation that we can omit acquiring
      | rq->lock if the task is not on the rq, because in that case
      | load-balancing will not apply to it.
      |
      | ** these are the rules currently tested in do_set_cpus_allowed() **
      |
      | Now, since __set_cpus_allowed_ptr() uses task_rq_lock() which
      | unconditionally acquires both locks, we could get away with holding just
      | rq->lock when on_rq for modification because that'd still exclude
      | __set_cpus_allowed_ptr(), it would also work against
      | __kthread_bind_mask() because that assumes !on_rq.
      |
      | That said, this is all somewhat fragile.
      |
      | Now, I don't think dropping rq->lock is quite as disastrous as it
      | usually is because !cpu_active at this point, which means load-balance
      | will not interfere, but that too is somewhat fragile.
      |
      | So we end up with a choice of two fragile..

      This patch fixes it by following the rules for changing
      task_struct::cpus_allowed with both pi_lock and rq->lock held.

      Reported-by: kernel test robot <ying.huang@xxxxxxxxx>
      Reported-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Signed-off-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      [ Modified changelog and patch. ]
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/BLU436-SMTP1660820490DE202E3934ED3806E0@xxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit a6b277857fd2c990bc208ca1958d3f34d26052f7
  Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
  Date:   Sat Sep 5 16:55:05 2015 +0200

      locking/qspinlock/x86: Only emit the test-and-set fallback when building 
guest support

      Only emit the test-and-set fallback for Hypervisors lacking
      PARAVIRT_SPINLOCKS support when building for guests.

      Suggested-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: stable@xxxxxxxxxxxxxxx # 4.2
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 43b3f02899f74ae9914a39547cc5492156f0027a
  Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
  Date:   Fri Sep 4 17:25:23 2015 +0200

      locking/qspinlock/x86: Fix performance regression under unaccelerated VMs

      Dave ran into horrible performance on a VM without PARAVIRT_SPINLOCKS
      set and Linus noted that the test-and-set implementation was retarded.

      One should spin on the variable with a load, not a RMW.

      While there, remove 'queued' from the name, as the lock isn't queued
      at all, but a simple test-and-set.

      Suggested-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Reported-by: Dave Chinner <david@xxxxxxxxxxxxx>
      Tested-by: Dave Chinner <david@xxxxxxxxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Waiman Long <Waiman.Long@xxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # v4.2+
      Link: 
http://lkml.kernel.org/r/20150904152523.GR18673@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 5f25f066f75a67835abb5e400471a27abd09395b
  Author: Xiaolong Ye <yexl@xxxxxxxxxxx>
  Date:   Fri Sep 11 11:05:23 2015 +0800

      PM / devfreq: Fix incorrect type issue.

      time_in_state in struct devfreq is defined as unsigned long, so
      devm_kzalloc should use sizeof(unsigned long) as argument instead
      of sizeof(unsigned int), otherwise it will cause unexpected result
      in 64bit system.

      Signed-off-by: Xiaolong Ye <yexl@xxxxxxxxxxx>
      Signed-off-by: Kevin Liu <kliu5@xxxxxxxxxxx>
      Signed-off-by: MyungJoo Ham <myungjoo.ham@xxxxxxxxxxx>

  commit 14de3903181ca41dde73d57ad4f7a79a314ee6bf
  Author: MyungJoo Ham <myungjoo.ham@xxxxxxxxxxx>
  Date:   Tue Aug 18 13:47:41 2015 +0900

      PM / devfreq: tegra: Update governor to use devfreq_update_stats()

      Direct invocation of get_dev_status() is no more recommended.

      Signed-off-by: MyungJoo Ham <myungjoo.ham@xxxxxxxxxxx>

  commit d54cdf3fc91aae3780433471d15d73413a845bc0
  Author: MyungJoo Ham <myungjoo.ham@xxxxxxxxxxx>
  Date:   Tue Aug 18 13:45:49 2015 +0900

      PM / devfreq: comments for get_dev_status usage updated

      With the introduction of devfreq_update_stats(), governors
      are not recommended to use get_dev_status() directly.

      Signed-off-by: MyungJoo Ham <myungjoo.ham@xxxxxxxxxxx>

  commit d3b7e1745c0d1be2add1bb58065eef142c5a098f
  Author: Javi Merino <javi.merino@xxxxxxx>
  Date:   Fri Aug 14 18:57:00 2015 +0100

      PM / devfreq: drop comment about thermal setting max_freq

      The thermal infrastructure should use the devfreq cooling device, which
      uses the OPP library to disable OPPs as necessary.

      Fix a couple of typos in the same comment while we are at it.

      Signed-off-by: Javi Merino <javi.merino@xxxxxxx>
      Signed-off-by: MyungJoo Ham <myungjoo.ham@xxxxxxxxxxx>

  commit 08e75e754a6d9838e490b74551d19fc04d0fd6f9
  Author: Javi Merino <javi.merino@xxxxxxx>
  Date:   Fri Aug 14 18:56:56 2015 +0100

      PM / devfreq: cache the last call to get_dev_status()

      The return value of get_dev_status() can be reused.  Cache it so that
      other parts of the kernel can reuse it instead of having to call the
      same function again.

      Cc: Kyungmin Park <kyungmin.park@xxxxxxxxxxx>
      Signed-off-by: Javi Merino <javi.merino@xxxxxxx>
      Signed-off-by: MyungJoo Ham <myungjoo.ham@xxxxxxxxxxx>

  commit 9348da2f1c2ca8e064d4907cdc5b3a19477df933
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Aug 10 11:42:25 2015 +0530

      PM / devfreq: Drop unlikely before IS_ERR(_OR_NULL)

      IS_ERR(_OR_NULL) already contain an 'unlikely' compiler flag and there
      is no need to do that again from its callers. Drop it.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: MyungJoo Ham <myungjoo.ham@xxxxxxxxxxx>

  commit 86fa4cdb0f1e16d7e27278e29e4f0b9ba22f1a9b
  Author: MyungJoo Ham <myungjoo.ham@xxxxxxxxxxx>
  Date:   Wed Aug 5 10:55:10 2015 +0900

      PM / devfreq: exynos-ppmu: bit-wise operation bugfix.

      Make it u64 before left-shifting 32bits.

      Signed-off-by: MyungJoo Ham <myungjoo.ham@xxxxxxxxxxx>

  commit d80f02231a1ee891f56f06ee6e4646db6ba28836
  Author: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>
  Date:   Fri Jul 24 13:17:25 2015 +0900

      PM / devfreq: exynos-ppmu: Update documentation to support PPMUv2

      This patch updates the documentation to include the information of PPMUv2.
      The PPMUv2 is used for Exynos5433 and Exynos7420 to monitor the 
performance
      of each IP in Exynos SoC.

      Cc: MyungJoo Ham <myungjoo.ham@xxxxxxxxxxx>
      Cc: Kyungmin Park <kyungmin.park@xxxxxxxxxxx>
      Signed-off-by: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>

  commit 77fe46a301a75795cf1d43ed2988a15c1600d1b5
  Author: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>
  Date:   Fri Jul 24 13:17:24 2015 +0900

      PM / devfreq: exynos-ppmu: Add the support of PPMUv2 for Exynos5433

      This patch adds the support for PPMU (Platform Performance Monitoring 
Unit)
      version 2.0 for Exynos5433 SoC. Exynos5433 SoC must need PPMUv2 which is
      quite different from PPMUv1.1. The exynos-ppmu.c driver supports both 
PPMUv1.1
      and PPMUv2.

      Cc: MyungJoo Ham <myungjoo.ham@xxxxxxxxxxx>
      Cc: Kyungmin Park <kyungmin.park@xxxxxxxxxxx>
      Signed-off-by: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>

  commit f47ff87f79a0f65db6af5b6bebd67b8f011994d1
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Mon Jul 13 08:58:51 2015 +0200

      PM / devfreq: event: Remove incorrect property in exynos-ppmu DT binding

      The exynos-ppmu driver is only a clock consumer and not a clock provider
      but its Device Tree binding listed #clock-cells as an optional property.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Reviewed-by: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>
      Signed-off-by: MyungJoo Ham <myungjoo.ham@xxxxxxxxxxx>

  commit 9fbcc7c007ea200357e2453c6b2b153646fbc165
  Merge: d1031d5 778613e5
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Sep 11 14:38:36 2015 +1000

      Merge branch 'linux-4.3' of 
git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-next

      three nouveau regression fixes.
      * 'linux-4.3' of git://anongit.freedesktop.org/git/nouveau/linux-2.6:
        drm/nouveau/device: enable c800 quirk for tecra w50
        drm/nouveau/clk/gt215: Unbreak engine pausing for GT21x/MCP7x
        drm/nouveau/gr/nv04: fix big endian setting on gr context

  commit b0a1ea51bda4c2bcdde460221e1772f3a4f8c44f
  Merge: 33e247c 69d7fde
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 10 18:56:14 2015 -0700

      Merge branch 'for-4.3/blkcg' of git://git.kernel.dk/linux-block

      Pull blk-cg updates from Jens Axboe:
       "A bit later in the cycle, but this has been in the block tree for a a
        while.  This is basically four patchsets from Tejun, that improve our
        buffered cgroup writeback.  It was dependent on the other cgroup
        changes, but they went in earlier in this cycle.

        Series 1 is set of 5 patches that has cgroup writeback updates:

         - bdi_writeback iteration fix which could lead to some wb's being
           skipped or repeated during e.g. sync under memory pressure.

         - Simplification of wb work wait mechanism.

         - Writeback tracepoints updated to report cgroup.

        Series 2 is is a set of updates for the CFQ cgroup writeback handling:

           cfq has always charged all async IOs to the root cgroup.  It didn't
           have much choice as writeback didn't know about cgroups and there
           was no way to tell who to blame for a given writeback IO.
           writeback finally grew support for cgroups and now tags each
           writeback IO with the appropriate cgroup to charge it against.

           This patchset updates cfq so that it follows the blkcg each bio is
           tagged with.  Async cfq_queues are now shared across cfq_group,
           which is per-cgroup, instead of per-request_queue cfq_data.  This
           makes all IOs follow the weight based IO resource distribution
           implemented by cfq.

           - Switched from GFP_ATOMIC to GFP_NOWAIT as suggested by Jeff.

           - Other misc review points addressed, acks added and rebased.

        Series 3 is the blkcg policy cleanup patches:

           This patchset contains assorted cleanups for blkcg_policy methods
           and blk[c]g_policy_data handling.

           - alloc/free added for blkg_policy_data.  exit dropped.

           - alloc/free added for blkcg_policy_data.

           - blk-throttle's async percpu allocation is replaced with direct
             allocation.

           - all methods now take blk[c]g_policy_data instead of blkcg_gq or
             blkcg.

        And finally, series 4 is a set of patches cleaning up the blkcg stats
        handling:

          blkcg's stats have always been somwhat of a mess.  This patchset
          tries to improve the situation a bit.

           - The following patches added to consolidate blkcg entry point and
             blkg creation.  This is in itself is an improvement and helps
             colllecting common stats on bio issue.

           - per-blkg stats now accounted on bio issue rather than request
             completion so that bio based and request based drivers can behave
             the same way.  The issue was spotted by Vivek.

           - cfq-iosched implements custom recursive stats and blk-throttle
             implements custom per-cpu stats.  This patchset make blkcg core
             support both by default.

           - cfq-iosched and blk-throttle keep track of the same stats
             multiple times.  Unify them"

      * 'for-4.3/blkcg' of git://git.kernel.dk/linux-block: (45 commits)
        blkcg: use CGROUP_WEIGHT_* scale for io.weight on the unified hierarchy
        blkcg: s/CFQ_WEIGHT_*/CFQ_WEIGHT_LEGACY_*/
        blkcg: implement interface for the unified hierarchy
        blkcg: misc preparations for unified hierarchy interface
        blkcg: separate out tg_conf_updated() from tg_set_conf()
        blkcg: move body parsing from blkg_conf_prep() to its callers
        blkcg: mark existing cftypes as legacy
        blkcg: rename subsystem name from blkio to io
        blkcg: refine error codes returned during blkcg configuration
        blkcg: remove unnecessary NULL checks from __cfqg_set_weight_device()
        blkcg: reduce stack usage of blkg_rwstat_recursive_sum()
        blkcg: remove cfqg_stats->sectors
        blkcg: move io_service_bytes and io_serviced stats into blkcg_gq
        blkcg: make blkg_[rw]stat_recursive_sum() to be able to index into 
blkcg_gq
        blkcg: make blkcg_[rw]stat per-cpu
        blkcg: add blkg_[rw]stat->aux_cnt and replace cfq_group->dead_stats 
with it
        blkcg: consolidate blkg creation in blkcg_bio_issue_check()
        blk-throttle: improve queue bypass handling
        blkcg: move root blkg lookup optimization from throtl_lookup_tg() to 
__blkg_lookup()
        blkcg: inline [__]blkg_lookup()
        ...

  commit 778613e583994d947960a7f177226d0e7b5ef124
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Sep 3 12:39:45 2015 +1000

      drm/nouveau/device: enable c800 quirk for tecra w50

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit c5bf4609e03e296d74cbbfe124ba49e0f907feb3
  Author: Roy Spliet <rspliet@xxxxxxxxxx>
  Date:   Wed Sep 2 23:21:02 2015 +0100

      drm/nouveau/clk/gt215: Unbreak engine pausing for GT21x/MCP7x

      Typo that snuck in with commit 6979c6303a4abf263753cd9d577d79f05c6e8c47

      Signed-off-by: Roy Spliet <rspliet@xxxxxxxxxx>
      Reported-by: Pierre Moreau <pierre.morrow@xxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 15ee005893c5ac8aabb66c2ad0033ef31dbdcfa3
  Author: Ilia Mirkin <imirkin@xxxxxxxxxxxx>
  Date:   Mon Aug 31 22:50:28 2015 -0400

      drm/nouveau/gr/nv04: fix big endian setting on gr context

      Broken since "gr: convert user classes to new-style nvkm_object"

      Tested on a PPC64 G5 + NV34

      Signed-off-by: Ilia Mirkin <imirkin@xxxxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 33e247c7e58d335d70ecb84fd869091e2e4b8dcb
  Merge: d71fc23 452e06a
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 10 18:19:42 2015 -0700

      Merge branch 'akpm' (patches from Andrew)

      Merge third patch-bomb from Andrew Morton:

       - even more of the rest of MM

       - lib/ updates

       - checkpatch updates

       - small changes to a few scruffy filesystems

       - kmod fixes/cleanups

       - kexec updates

       - a dma-mapping cleanup series from hch

      * emailed patches from Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>: (81 
commits)
        dma-mapping: consolidate dma_set_mask
        dma-mapping: consolidate dma_supported
        dma-mapping: cosolidate dma_mapping_error
        dma-mapping: consolidate dma_{alloc,free}_noncoherent
        dma-mapping: consolidate dma_{alloc,free}_{attrs,coherent}
        mm: use vma_is_anonymous() in create_huge_pmd() and wp_huge_pmd()
        mm: make sure all file VMAs have ->vm_ops set
        mm, mpx: add "vm_flags_t vm_flags" arg to do_mmap_pgoff()
        mm: mark most vm_operations_struct const
        namei: fix warning while make xmldocs caused by namei.c
        ipc: convert invalid scenarios to use WARN_ON
        zlib_deflate/deftree: remove bi_reverse()
        lib/decompress_unlzma: Do a NULL check for pointer
        lib/decompressors: use real out buf size for gunzip with kernel
        fs/affs: make root lookup from blkdev logical size
        sysctl: fix int -> unsigned long assignments in INT_MIN case
        kexec: export KERNEL_IMAGE_SIZE to vmcoreinfo
        kexec: align crash_notes allocation to make it be inside one physical 
page
        kexec: remove unnecessary test in kimage_alloc_crash_control_pages()
        kexec: split kexec_load syscall from kexec core code
        ...

  commit d71fc239b6915a8b750e9a447311029ff45b6580
  Merge: 519f526 c6e59bd
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 10 17:59:04 2015 -0700

      Merge tag 'armsoc-late' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

      Pull late ARM SoC updates from Kevin Hilman:
       "This is a collection of a few late fixes and other misc stuff that had
        dependencies on things being merged from other trees.

        The bulk of the changes are for samsung/exynos SoCs for some changes
        that needed a few minor reworks so ended up a bit late.  The others
        are mainly for qcom SoCs: a couple fixes and some DTS updates"

      * tag 'armsoc-late' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (37 commits)
        ARM: multi_v7_defconfig: Enable PBIAS regulator
        soc: qcom: smd: Correct fBLOCKREADINTR handling
        soc: qcom: smd: Use correct remote processor ID
        soc: qcom: smem: Fix errant private access
        ARM: dts: qcom: msm8974-sony-xperia-honami: Use stdout-path
        ARM: dts: qcom: msm8960-cdp: Use stdout-path
        ARM: dts: qcom: msm8660-surf: Use stdout-path
        ARM: dts: qcom: ipq8064-ap148: Use stdout-path
        ARM: dts: qcom: apq8084-mtp: Use stdout-path
        ARM: dts: qcom: apq8084-ifc6540: Use stdout-path
        ARM: dts: qcom: apq8074-dragonboard: Use stdout-path
        ARM: dts: qcom: apq8064-ifc6410: Use stdout-path
        ARM: dts: qcom: apq8064-cm-qs600: Use stdout-path
        ARM: dts: qcom: Label serial nodes for aliasing and stdout-path
        reset: ath79: Fix missing spin_lock_init
        reset: Add (devm_)reset_control_get stub functions
        ARM: EXYNOS: switch to using generic cpufreq driver for exynos4x12
        cpufreq: exynos: Remove unselectable rule for arm-exynos-cpufreq.o
        ARM: dts: add iommu property to JPEG device for exynos4
        ARM: dts: enable SPI1 for exynos4412-odroidu3
        ...

  commit d1031d576d7398ab2e2fce53796d733c5be13d64
  Merge: 91b6fc0 f36203b
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Sep 11 10:52:37 2015 +1000

      Merge tag 'topic/drm-fixes-2015-09-09' of 
git://anongit.freedesktop.org/drm-intel into drm-next

      bunch of drm fixes.

      * tag 'topic/drm-fixes-2015-09-09' of 
git://anongit.freedesktop.org/drm-intel:
        drm/dp: Add dp_aux_i2c_speed_khz module param to set the assume i2c bus 
speed
        drm/dp: Adjust i2c-over-aux retry count based on message size and i2c 
bus speed
        drm/dp: Define AUX_RETRY_INTERVAL as 500 us
        drm/atomic: Fix bookkeeping with TEST_ONLY, v3.

  commit 91b6fc02a258422bf342992add24cfe70a029eca
  Merge: bd3e1c7 8242578
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Sep 11 10:52:08 2015 +1000

      Merge tag 'drm-intel-next-fixes-2015-09-10' of 
git://anongit.freedesktop.org/drm-intel into drm-next

      Fixes headed for v4.3-rc1, including Maarten's DP MST state checker fix
      you requested.

      * tag 'drm-intel-next-fixes-2015-09-10' of 
git://anongit.freedesktop.org/drm-intel:
        drm/i915: Allow DSI dual link to be configured on any pipe
        drm/i915: Don't try to use DDR DVFS on CHV when disabled in the BIOS
        drm/i915: Fix CSR MMIO address check
        drm/i915: Limit the number of loops for reading a split 64bit register
        drm/i915: Fix broken mst get_hw_state.
        drm/i915: Pass hpd_status_i915[] to intel_get_hpd_pins() in pre-g4x
        uapi/drm/i915_drm.h: fix userspace compilation.
        drm/i915: Always mark the object as dirty when used by the GPU

  commit bd3e1c7c6de9f5f70d97cdb6c817151c0477c5e3
  Author: Jonathon Jongsma <jjongsma@xxxxxxxxxx>
  Date:   Thu Aug 20 14:04:32 2015 -0500

      drm/qxl: validate monitors config modes

      Due to some recent changes in
      drm_helper_probe_single_connector_modes_merge_bits(), old custom modes
      were not being pruned properly. In current kernels,
      drm_mode_validate_basic() is called to sanity-check each mode in the
      list. If the sanity-check passes, the mode's status gets set to to
      MODE_OK. In older kernels this check was not done, so old custom modes
      would still have a status of MODE_UNVERIFIED at this point, and would
      therefore be pruned later in the function.

      As a result of this new behavior, the list of modes for a device always
      includes every custom mode ever configured for the device, with the
      largest one listed first. Since desktop environments usually choose the
      first preferred mode when a hotplug event is emitted, this had the
      result of making it very difficult for the user to reduce the size of
      the display.

      The qxl driver did implement the mode_valid connector function, but it
      was empty. In order to restore the old behavior where old custom modes
      are pruned, we implement a proper mode_valid function for the qxl
      driver. This function now checks each mode against the last configured
      custom mode and the list of standard modes. If the mode doesn't match
      any of these, its status is set to MODE_BAD so that it will be pruned as
      expected.

      Signed-off-by: Jonathon Jongsma <jjongsma@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit 519f526d391b0ef775aeb04c4b6f632ea6b3ee50
  Merge: 06ab838 ba60c41
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 10 16:42:49 2015 -0700

      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

      Pull more kvm updates from Paolo Bonzini:
       "ARM:
         - Full debug support for arm64
         - Active state switching for timer interrupts
         - Lazy FP/SIMD save/restore for arm64
         - Generic ARMv8 target

        PPC:
         - Book3S: A few bug fixes
         - Book3S: Allow micro-threading on POWER8

        x86:
         - Compiler warnings

        Generic:
         - Adaptive polling for guest halt"

      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (49 
commits)
        kvm: irqchip: fix memory leak
        kvm: move new trace event outside #ifdef CONFIG_KVM_ASYNC_PF
        KVM: trace kvm_halt_poll_ns grow/shrink
        KVM: dynamic halt-polling
        KVM: make halt_poll_ns per-vCPU
        Silence compiler warning in arch/x86/kvm/emulate.c
        kvm: compile process_smi_save_seg_64() only for x86_64
        KVM: x86: avoid uninitialized variable warning
        KVM: PPC: Book3S: Fix typo in top comment about locking
        KVM: PPC: Book3S: Fix size of the PSPB register
        KVM: PPC: Book3S HV: Exit on H_DOORBELL if HOST_IPI is set
        KVM: PPC: Book3S HV: Fix race in starting secondary threads
        KVM: PPC: Book3S: correct width in XER handling
        KVM: PPC: Book3S HV: Fix preempted vcore stolen time calculation
        KVM: PPC: Book3S HV: Fix preempted vcore list locking
        KVM: PPC: Book3S HV: Implement H_CLEAR_REF and H_CLEAR_MOD
        KVM: PPC: Book3S HV: Fix bug in dirty page tracking
        KVM: PPC: Book3S HV: Fix race in reading change bit when removing HPTE
        KVM: PPC: Book3S HV: Implement dynamic micro-threading on POWER8
        KVM: PPC: Book3S HV: Make use of unused threads when running guests
        ...

  commit 06ab838c2024db468855118087db16d8fa905ddc
  Merge: 573c577 5f51042
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 10 16:21:11 2015 -0700

      Merge tag 'for-linus-4.3-rc0b-tag' of 
git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip

      Pull xen terminology fixes from David Vrabel:
       "Use the correct GFN/BFN terms more consistently"

      * tag 'for-linus-4.3-rc0b-tag' of 
git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen/xenbus: Rename the variable xen_store_mfn to xen_store_gfn
        xen/privcmd: Further s/MFN/GFN/ clean-up
        hvc/xen: Further s/MFN/GFN clean-up
        video/xen-fbfront: Further s/MFN/GFN clean-up
        xen/tmem: Use xen_page_to_gfn rather than pfn_to_gfn
        xen: Use correctly the Xen memory terminologies
        arm/xen: implement correctly pfn_to_mfn
        xen: Make clear that swiotlb and biomerge are dealing with DMA address

  commit 573c577af079184ca523984e3279644eb37756a3
  Merge: 0cdf5a4 b141327
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 10 16:20:00 2015 -0700

      Merge branch 'next' of git://git.monstr.eu/linux-2.6-microblaze

      Pull microblaze update from Michal Simek.

      * 'next' of git://git.monstr.eu/linux-2.6-microblaze:
        elf-em.h: move EM_MICROBLAZE to the common header

  commit 0cdf5a464070c8a2980a27113c47fb8e71babb9c
  Merge: 65c61bc 02cc2cc
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 10 16:19:07 2015 -0700

      Merge branch 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/rkuo/linux-hexagon-kernel

      Pull hexagon updates from Richard Kuo:
       "Just two fixes -- one for a uapi header and one for a timer interface"

      * 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/rkuo/linux-hexagon-kernel:
        Revert "Hexagon: fix signal.c compile error"
        hexagon/time: Migrate to new 'set-state' interface

  commit 53147b6cabee5e8d1997b5682fcc0c3b72ddf9c2
  Author: Azael Avalos <coproscefalo@xxxxxxxxx>
  Date:   Wed Sep 9 11:25:45 2015 -0600

      toshiba_acpi: Fix hotkeys registration on some toshiba models

      Commit a2b3471b5b13 ("toshiba_acpi: Use the Hotkey Event Type function
      for keymap choosing") changed the *setup_keyboard function to query for
      the Hotkey Event Type to help choose the correct keymap, but turns out
      that here are certain Toshiba models out there not implementing this
      feature, and thus, failing to continue the input device registration and
      leaving such laptops without hotkey support.

      This patch changes such check, and instead of returning an error if
      the Hotkey Event Type is not present, we simply inform userspace about it,
      changing the message printed from err to notice, making the function
      responsible for registering the input device to continue.

      This issue was found on a Toshiba Portege Z30-B, but there might be
      some other models out there affected by this regression as well.

      Cc: <stable@xxxxxxxxxxxxxxx> # 4.1+
      Signed-off-by: Azael Avalos <coproscefalo@xxxxxxxxx>
      Signed-off-by: Darren Hart <dvhart@xxxxxxxxxxxxxxx>

  commit cf680eae34d26bd474c2ed3bd7d3aff59054aed5
  Author: Azael Avalos <coproscefalo@xxxxxxxxx>
  Date:   Wed Sep 9 11:25:44 2015 -0600

      toshiba_acpi: Fix USB Sleep and Music always disabled

      Commit e1a949c1b988 ("toshiba_acpi: Refactor *{get, set} functions return
      value") made changes on the return type of the HCI/SCI functions, but a
      typo on the USB Sleep and Music code is always reporting non existent
      support for such feature.

      This patch corrects the typo, changing an assignment to a comparison,
      making the laptops with actual support for such feature to work again.

      Signed-off-by: Azael Avalos <coproscefalo@xxxxxxxxx>
      Signed-off-by: Darren Hart <dvhart@xxxxxxxxxxxxxxx>

  commit 3bba75a2ec32bd5fa7024a4de3b8cf9ee113a76a
  Author: Romain Perier <romain.perier@xxxxxxxxx>
  Date:   Sun Aug 23 11:32:37 2015 +0200

      clk: rockchip: Add pclk_peri to critical clocks on RK3066/RK3188

      Now that the rockchip clock subsystem does clock gating with GPIO banks,
      these are no longer enabled once during probe and no longer stay enabled
      for eternity. When all these clocks are disabled, the parent clock 
pclk_peri
      might be disabled too, as no other child claims it. So, we need to add 
pclk_peri
      to the critical clocks.

      Signed-off-by: Romain Perier <romain.perier@xxxxxxxxx>
      Tested-by: Michael Niewoehner <linux@xxxxxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 1166160ab531198f7abc773992c0e04d0f9b7600
  Author: Michael Niewoehner <linux@xxxxxxxxxxxxxx>
  Date:   Tue Aug 25 22:22:07 2015 +0200

      clk: rockchip: add pclk_cpu to the list of rk3188 critical clocks

      pclk_cpu needs to keep running because it is needed for devices like
      the act8865 regulator but with the recent gpio clock handling this is
      not always the case anymore. So add it to the list of critical clocks.

      Signed-off-by: Michael Niewoehner <linux@xxxxxxxxxxxxxx>
      Reviewed-by: Heiko Stuebner <heiko@xxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit bb0f73616396e7929b68d3bdea70064003599d33
  Author: Heiko Stuebner <heiko@xxxxxxxxx>
  Date:   Fri Aug 21 19:51:41 2015 +0200

      clk: rockchip: handle critical clocks after registering all clocks

      Currently the registration of critical clocks is done in the function
      shared between rk3066 and rk3188 clock trees. That results in them
      getting handled maybe before all of them are registered.

      Therefore move the critical clock handling down to the end of the soc-
      specific clock registration function, so that all clocks are registered
      before they're maybe handled as critical clock.

      Signed-off-by: Heiko Stuebner <heiko@xxxxxxxxx>
      Tested-by: Michael Niewoehner <linux@xxxxxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 65c61bc5dbbcfa1ff38e58aa834cb9a88e84a886
  Merge: b8889c4 3092752
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 10 13:53:15 2015 -0700

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

      Pull networking fixes from David Miller:

       1) Fix out-of-bounds array access in netfilter ipset, from Jozsef
          Kadlecsik.

       2) Use correct free operation on netfilter conntrack templates, from
          Daniel Borkmann.

       3) Fix route leak in SCTP, from Marcelo Ricardo Leitner.

       4) Fix sizeof(pointer) in mac80211, from Thierry Reding.

       5) Fix cache pointer comparison in ip6mr leading to missed unlock of
          mrt_lock.  From Richard Laing.

       6) rds_conn_lookup() needs to consider network namespace in key
          comparison, from Sowmini Varadhan.

       7) Fix deadlock in TIPC code wrt broadcast link wakeups, from Kolmakov
          Dmitriy.

       8) Fix fd leaks in bpf syscall, from Daniel Borkmann.

       9) Fix error recovery when installing ipv6 multipath routes, we would
          delete the old route before we would know if we could fully commit
          to the new set of nexthops.  Fix from Roopa Prabhu.

      10) Fix run-time suspend problems in r8152, from Hayes Wang.

      11) In fec, don't program the MAC address into the chip when the clocks
          are gated off.  From Fugang Duan.

      12) Fix poll behavior for netlink sockets when using rx ring mmap, from
          Daniel Borkmann.

      13) Don't allocate memory with GFP_KERNEL from get_stats64 in r8169
          driver, from Corinna Vinschen.

      14) In TCP Cubic congestion control, handle idle periods better where we
          are application limited, in order to keep cwnd from growing out of
          control.  From Eric Dumzet.

      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (65 commits)
        tcp_cubic: better follow cubic curve after idle period
        tcp: generate CA_EVENT_TX_START on data frames
        xen-netfront: respect user provided max_queues
        xen-netback: respect user provided max_queues
        r8169: Fix sleeping function called during get_stats64, v2
        ether: add IEEE 1722 ethertype - TSN
        netlink, mmap: fix edge-case leakages in nf queue zero-copy
        netlink, mmap: don't walk rx ring on poll if receive queue non-empty
        cxgb4: changes for new firmware 1.14.4.0
        net: fec: add netif status check before set mac address
        r8152: fix the runtime suspend issues
        r8152: split DRIVER_VERSION
        ipv6: fix ifnullfree.cocci warnings
        add microchip LAN88xx phy driver
        stmmac: fix check for phydev being open
        net: qlcnic: delete redundant memsets
        net: mv643xx_eth: use kzalloc
        net: jme: use kzalloc() instead of kmalloc+memset
        net: cavium: liquidio: use kzalloc in setup_glist()
        net: ipv6: use common fib_default_rule_pref
        ...

  commit 452e06af1f0149b01201f94264d452cd7a95db7a
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Wed Sep 9 15:39:53 2015 -0700

      dma-mapping: consolidate dma_set_mask

      Almost everyone implements dma_set_mask the same way, although some time
      that's hidden in ->set_dma_mask methods.

      This patch consolidates those into a common implementation that either
      calls ->set_dma_mask if present or otherwise uses the default
      implementation.  Some architectures used to only call ->set_dma_mask
      after the initial checks, and those instance have been fixed to do the
      full work.  h8300 implemented dma_set_mask bogusly as a no-ops and has
      been fixed.

      Unfortunately some architectures overload unrelated semantics like 
changing
      the dma_ops into it so we still need to allow for an architecture override
      for now.

      [jcmvbkbc@xxxxxxxxx: fix xtensa]
      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Cc: Yoshinori Sato <ysato@xxxxxxxxxxxxxxxxxxxx>
      Cc: Michal Simek <monstr@xxxxxxxxx>
      Cc: Jonas Bonn <jonas@xxxxxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Guan Xuetao <gxt@xxxxxxxxxxxxxxx>
      Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Cc: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>
      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ee196371d5cb1942ebdccc16bdce389812aa265e
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Wed Sep 9 15:39:49 2015 -0700

      dma-mapping: consolidate dma_supported

      Most architectures just call into ->dma_supported, but some also return 1
      if the method is not present, or 0 if no dma ops are present (although
      that should never happeb). Consolidate this more broad version into
      common code.

      Also fix h8300 which inorrectly always returned 0, which would have been
      a problem if it's dma_set_mask implementation wasn't a similarly buggy
      noop.

      As a few architectures have much more elaborate implementations, we
      still allow for arch overrides.

      [jcmvbkbc@xxxxxxxxx: fix xtensa]
      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Cc: Yoshinori Sato <ysato@xxxxxxxxxxxxxxxxxxxx>
      Cc: Michal Simek <monstr@xxxxxxxxx>
      Cc: Jonas Bonn <jonas@xxxxxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Guan Xuetao <gxt@xxxxxxxxxxxxxxx>
      Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Cc: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>
      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit efa21e432c7b3c8ae976039d614a017799b6e874
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Wed Sep 9 15:39:46 2015 -0700

      dma-mapping: cosolidate dma_mapping_error

      Currently there are three valid implementations of dma_mapping_error:

       (1) call ->mapping_error
       (2) check for a hardcoded error code
       (3) always return 0

      This patch provides a common implementation that calls ->mapping_error
      if present, then checks for DMA_ERROR_CODE if defined or otherwise
      returns 0.

      [jcmvbkbc@xxxxxxxxx: fix xtensa]
      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Cc: Yoshinori Sato <ysato@xxxxxxxxxxxxxxxxxxxx>
      Cc: Michal Simek <monstr@xxxxxxxxx>
      Cc: Jonas Bonn <jonas@xxxxxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Guan Xuetao <gxt@xxxxxxxxxxxxxxx>
      Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Cc: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>
      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1e8937526e2309d48fccd81bb30a590ac21a5516
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Wed Sep 9 15:39:42 2015 -0700

      dma-mapping: consolidate dma_{alloc,free}_noncoherent

      Most architectures do not support non-coherent allocations and either
      define dma_{alloc,free}_noncoherent to their coherent versions or stub
      them out.

      Openrisc uses dma_{alloc,free}_attrs to implement them, and only Mips
      implements them directly.

      This patch moves the Openrisc version to common code, and handles the
      DMA_ATTR_NON_CONSISTENT case in the mips dma_map_ops instance.

      Note that actual non-coherent allocations require a dma_cache_sync
      implementation, so if non-coherent allocations didn't work on
      an architecture before this patch they still won't work after it.

      [jcmvbkbc@xxxxxxxxx: fix xtensa]
      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Cc: Yoshinori Sato <ysato@xxxxxxxxxxxxxxxxxxxx>
      Cc: Michal Simek <monstr@xxxxxxxxx>
      Cc: Jonas Bonn <jonas@xxxxxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Guan Xuetao <gxt@xxxxxxxxxxxxxxx>
      Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Cc: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>
      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 6894258eda2f9badc28c878086c0e54bd5b7fb30
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Wed Sep 9 15:39:39 2015 -0700

      dma-mapping: consolidate dma_{alloc,free}_{attrs,coherent}

      Since 2009 we have a nice asm-generic header implementing lots of DMA API
      functions for architectures using struct dma_map_ops, but unfortunately
      it's still missing a lot of APIs that all architectures still have to
      duplicate.

      This series consolidates the remaining functions, although we still need
      arch opt outs for two of them as a few architectures have very
      non-standard implementations.

      This patch (of 5):

      The coherent DMA allocator works the same over all architectures 
supporting
      dma_map operations.

      This patch consolidates them and converges the minor differences:

       - the debug_dma helpers are now called from all architectures, including
         those that were previously missing them
       - dma_alloc_from_coherent and dma_release_from_coherent are now always
         called from the generic alloc/free routines instead of the ops
         dma-mapping-common.h always includes dma-coherent.h to get the 
defintions
         for them, or the stubs if the architecture doesn't support this feature
       - checks for ->alloc / ->free presence are removed.  There is only one
         magic instead of dma_map_ops without them (mic_dma_ops) and that one
         is x86 only anyway.

      Besides that only x86 needs special treatment to replace a default devices
      if none is passed and tweak the gfp_flags.  An optional arch hook is 
provided
      for that.

      [linux@xxxxxxxxxxxx: fix build]
      [jcmvbkbc@xxxxxxxxx: fix xtensa]
      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Cc: Yoshinori Sato <ysato@xxxxxxxxxxxxxxxxxxxx>
      Cc: Michal Simek <monstr@xxxxxxxxx>
      Cc: Jonas Bonn <jonas@xxxxxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Guan Xuetao <gxt@xxxxxxxxxxxxxxx>
      Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Cc: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit fb6dd5fa4165c4b82f1a11416c2fc192ae3a84e2
  Author: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:39:35 2015 -0700

      mm: use vma_is_anonymous() in create_huge_pmd() and wp_huge_pmd()

      Let's use helper rather than direct check of vma->vm_ops to distinguish
      anonymous VMA.

      Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Reviewed-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 6dc296e7df4c9a0857491cc3f55da16a9eeeeae7
  Author: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:39:32 2015 -0700

      mm: make sure all file VMAs have ->vm_ops set

      We rely on vma->vm_ops == NULL to detect anonymous VMA: see
      vma_is_anonymous(), but some drivers doesn't set ->vm_ops.

      As a result we can end up with anonymous page in private file mapping.
      That should not lead to serious misbehaviour, but nevertheless is wrong.

      Let's fix by setting up dummy ->vm_ops for file mmapping if f_op->mmap()
      didn't set its own.

      The patch also adds sanity check into __vma_link_rb(). It will help
      catch broken VMAs which inserted directly into mm_struct via
      insert_vm_struct().

      Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Reviewed-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1fcfd8db7f82fa1f533a6f0e4155614ff4144d56
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Wed Sep 9 15:39:29 2015 -0700

      mm, mpx: add "vm_flags_t vm_flags" arg to do_mmap_pgoff()

      Add the additional "vm_flags_t vm_flags" argument to do_mmap_pgoff(),
      rename it to do_mmap(), and re-introduce do_mmap_pgoff() as a simple
      wrapper on top of do_mmap().  Perhaps we should update the callers of
      do_mmap_pgoff() and kill it later.

      This way mpx_mmap() can simply call do_mmap(vm_flags => VM_MPX) and do not
      play with vm internals.

      After this change mmap_region() has a single user outside of mmap.c,
      arch/tile/mm/elf.c:arch_setup_additional_pages().  It would be nice to
      change arch/tile/ and unexport mmap_region().

      [kirill@xxxxxxxxxxxxx: fix build]
      [akpm@xxxxxxxxxxxxxxxxxxxx: coding-style fixes]
      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Acked-by: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Tested-by: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 7cbea8dc0127a95226c7722a738ac6534950ef67
  Author: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:39:26 2015 -0700

      mm: mark most vm_operations_struct const

      With two exceptions (drm/qxl and drm/radeon) all vm_operations_struct
      structs should be constant.

      Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Reviewed-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 2a78b857d3755a6f8d0c70d7e365e473925987c1
  Author: Masanari Iida <standby24x7@xxxxxxxxx>
  Date:   Wed Sep 9 15:39:23 2015 -0700

      namei: fix warning while make xmldocs caused by namei.c

      Fix the following warnings:

      Warning(.//fs/namei.c:2422): No description found for parameter 'nd'
      Warning(.//fs/namei.c:2422): Excess function parameter 'nameidata'
      description in 'path_mountpoint'

      Signed-off-by: Masanari Iida <standby24x7@xxxxxxxxx>
      Acked-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d0edd8528362c07216498340e928159510595e7b
  Author: Davidlohr Bueso <dave@xxxxxxxxxxxx>
  Date:   Wed Sep 9 15:39:20 2015 -0700

      ipc: convert invalid scenarios to use WARN_ON

      Considering Linus' past rants about the (ab)use of BUG in the kernel, I
      took a look at how we deal with such calls in ipc.  Given that any errors
      or corruption in ipc code are most likely contained within the set of
      processes participating in the broken mechanisms, there aren't really many
      strong fatal system failure scenarios that would require a BUG call.
      Also, if something is seriously wrong, ipc might not be the place for such
      a BUG either.

      1. For example, recently, a customer hit one of these BUG_ONs in shm
         after failing shm_lock().  A busted ID imho does not merit a BUG_ON,
         and WARN would have been better.

      2. MSG_COPY functionality of posix msgrcv(2) for checkpoint/restore.
         I don't see how we can hit this anyway -- at least it should be IS_ERR.
          The 'copy' arg from do_msgrcv is always set by calling prepare_copy()
         first and foremost.  We could also probably drop this check altogether.
          Either way, it does not merit a BUG_ON.

      3. No ->fault() callback for the fs getting the corresponding page --
         seems selfish to make the system unusable.

      Signed-off-by: Davidlohr Bueso <dbueso@xxxxxxx>
      Cc: Manfred Spraul <manfred@xxxxxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 8b235f2f16a472b8cfc10e8ef1286fcd3331e033
  Author: yalin wang <yalin.wang2010@xxxxxxxxx>
  Date:   Wed Sep 9 15:39:18 2015 -0700

      zlib_deflate/deftree: remove bi_reverse()

      Remove bi_reverse() and use generic bitrev32() instead - it should have
      better performance on some platforms.

      Signed-off-by: yalin wang <yalin.wang2010@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit e4e29dc4841d21943bec1bc5378ab421d2320d83
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:39:15 2015 -0700

      lib/decompress_unlzma: Do a NULL check for pointer

      Compare pointer-typed values to NULL rather than 0.

      The semantic patch that makes this change is available
      in scripts/coccinelle/null/badzero.cocci.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 2d3862d26e67a59340ba1cf1748196c76c5787de
  Author: Yinghai Lu <yinghai@xxxxxxxxxx>
  Date:   Wed Sep 9 15:39:12 2015 -0700

      lib/decompressors: use real out buf size for gunzip with kernel

      When loading x86 64bit kernel above 4GiB with patched grub2, got kernel
      gunzip error.

      | early console in decompress_kernel
      | decompress_kernel:
      |       input: [0x807f2143b4-0x807ff61aee]
      |      output: [0x807cc00000-0x807f3ea29b] 0x027ea29c: output_len
      | boot via startup_64
      | KASLR using RDTSC...
      |  new output: [0x46fe000000-0x470138cfff] 0x0338d000: output_run_size
      |  decompress: [0x46fe000000-0x47007ea29b] <=== 
[0x807f2143b4-0x807ff61aee]
      |
      | Decompressing Linux... gz...
      |
      | uncompression error
      |
      | -- System halted

      the new buffer is at 0x46fe000000ULL, decompressor_gzip is using
      0xffffffb901ffffff as out_len.  gunzip in lib/zlib_inflate/inflate.c cap
      that len to 0x01ffffff and decompress fails later.

      We could hit this problem with crashkernel booting that uses kexec loading
      kernel above 4GiB.

      We have decompress_* support:
          1. inbuf[]/outbuf[] for kernel preboot.
          2. inbuf[]/flush() for initramfs
          3. fill()/flush() for initrd.
      This bug only affect kernel preboot path that use outbuf[].

      Add __decompress and take real out_buf_len for gunzip instead of guessing
      wrong buf size.

      Fixes: 1431574a1c4 (lib/decompressors: fix "no limit" output buffer 
length)
      Signed-off-by: Yinghai Lu <yinghai@xxxxxxxxxx>
      Cc: Alexandre Courbot <acourbot@xxxxxxxxxx>
      Cc: Jon Medhurst <tixy@xxxxxxxxxx>
      Cc: Stephen Warren <swarren@xxxxxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit e852d82a5b55b44ce8be89078d0dfbddbeae3211
  Author: Pranay Kr. Srivastava <pranjas@xxxxxxxxx>
  Date:   Wed Sep 9 15:39:09 2015 -0700

      fs/affs: make root lookup from blkdev logical size

      This patch resolves https://bugzilla.kernel.org/show_bug.cgi?id=16531.

      When logical blkdev size > 512 then sector numbers become larger than the
      device can support.

      Make affs start lookup based on the device's logical sector size instead
      of 512.

      Reported-by: Mark <markk@xxxxxxxxxxx>
      Suggested-by: Mark <markk@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 9a5bc726d559221a3394bb8ef97d0abc1ee94d00
  Author: Ilya Dryomov <idryomov@xxxxxxxxx>
  Date:   Wed Sep 9 15:39:06 2015 -0700

      sysctl: fix int -> unsigned long assignments in INT_MIN case

      The following

          if (val < 0)
              *lvalp = (unsigned long)-val;

      is incorrect because the compiler is free to assume -val to be positive
      and use a sign-extend instruction for extending the bit pattern.  This is
      a problem if val == INT_MIN:

          # echo -2147483648 >/proc/sys/dev/scsi/logging_level
          # cat /proc/sys/dev/scsi/logging_level
          -18446744071562067968

      Cast to unsigned long before negation - that way we first sign-extend and
      then negate an unsigned, which is well defined.  With this:

          # cat /proc/sys/dev/scsi/logging_level
          -2147483648

      Signed-off-by: Ilya Dryomov <idryomov@xxxxxxxxx>
      Cc: Mikulas Patocka <mikulas@xxxxxxxxxxxxx>
      Cc: Robert Xiao <nneonneo@xxxxxxxxx>
      Cc: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>
      Cc: Kees Cook <keescook@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1303a27c9c32020a3b6ac89be270d2ab1f28be24
  Author: Baoquan He <bhe@xxxxxxxxxx>
  Date:   Wed Sep 9 15:39:03 2015 -0700

      kexec: export KERNEL_IMAGE_SIZE to vmcoreinfo

      In x86_64, since v2.6.26 the KERNEL_IMAGE_SIZE is changed to 512M, and
      accordingly the MODULES_VADDR is changed to 0xffffffffa0000000.  However,
      in v3.12 Kees Cook introduced kaslr to randomise the location of kernel.
      And the kernel text mapping addr space is enlarged from 512M to 1G.  That
      means now KERNEL_IMAGE_SIZE is variable, its value is 512M when kaslr
      support is not compiled in and 1G when kaslr support is compiled in.
      Accordingly the MODULES_VADDR is changed too to be:

          #define MODULES_VADDR    (__START_KERNEL_map + KERNEL_IMAGE_SIZE)

      So when kaslr is compiled in and enabled, the kernel text mapping addr
      space and modules vaddr space need be adjusted.  Otherwise makedumpfile
      will collapse since the addr for some symbols is not correct.

      Hence KERNEL_IMAGE_SIZE need be exported to vmcoreinfo and got in
      makedumpfile to help calculate MODULES_VADDR.

      Signed-off-by: Baoquan He <bhe@xxxxxxxxxx>
      Acked-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Acked-by: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit bbb78b8f3f4ea8eca14937b693bfe244838e1d4d
  Author: Baoquan He <bhe@xxxxxxxxxx>
  Date:   Wed Sep 9 15:39:00 2015 -0700

      kexec: align crash_notes allocation to make it be inside one physical page

      People reported that crash_notes in /proc/vmcore were corrupted and this
      cause crash kdump failure.  With code debugging and log we got the root
      cause.  This is because percpu variable crash_notes are allocated in 2
      vmalloc pages.  Currently percpu is based on vmalloc by default.  Vmalloc
      can't guarantee 2 continuous vmalloc pages are also on 2 continuous
      physical pages.  So when 1st kernel exports the starting address and size
      of crash_notes through sysfs like below:

      /sys/devices/system/cpu/cpux/crash_notes
      /sys/devices/system/cpu/cpux/crash_notes_size

      kdump kernel use them to get the content of crash_notes.  However the 2nd
      part may not be in the next neighbouring physical page as we expected if
      crash_notes are allocated accross 2 vmalloc pages.  That's why
      nhdr_ptr->n_namesz or nhdr_ptr->n_descsz could be very huge in
      update_note_header_size_elf64() and cause note header merging failure or
      some warnings.

      In this patch change to call __alloc_percpu() to passed in the align value
      by rounding crash_notes_size up to the nearest power of two.  This makes
      sure the crash_notes is allocated inside one physical page since
      sizeof(note_buf_t) in all ARCHS is smaller than PAGE_SIZE.  Meanwhile add
      a BUILD_BUG_ON to break compile if size is bigger than PAGE_SIZE since
      crash_notes definitely will be in 2 pages.  That need be avoided, and need
      be reported if it's unavoidable.

      [akpm@xxxxxxxxxxxxxxxxxxxx: use correct comment layout]
      Signed-off-by: Baoquan He <bhe@xxxxxxxxxx>
      Cc: Eric W. Biederman <ebiederm@xxxxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Dave Young <dyoung@xxxxxxxxxx>
      Cc: Lisa Mitchell <lisa.mitchell@xxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 04e9949b2d26ae1f0acd1181876a2a8ece92112d
  Author: Minfei Huang <mnfhuang@xxxxxxxxx>
  Date:   Wed Sep 9 15:38:58 2015 -0700

      kexec: remove unnecessary test in kimage_alloc_crash_control_pages()

      Transforming PFN(Page Frame Number) to struct page is never failure, so we
      can simplify the code logic to do the image->control_page assignment
      directly in the loop, and remove the unnecessary conditional judgement.

      Signed-off-by: Minfei Huang <mnfhuang@xxxxxxxxx>
      Acked-by: Dave Young <dyoung@xxxxxxxxxx>
      Acked-by: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Simon Horman <horms@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 2965faa5e03d1e71e9ff9aa143fff39e0a77543a
  Author: Dave Young <dyoung@xxxxxxxxxx>
  Date:   Wed Sep 9 15:38:55 2015 -0700

      kexec: split kexec_load syscall from kexec core code

      There are two kexec load syscalls, kexec_load another and kexec_file_load.
       kexec_file_load has been splited as kernel/kexec_file.c.  In this patch I
      split kexec_load syscall code to kernel/kexec.c.

      And add a new kconfig option KEXEC_CORE, so we can disable kexec_load and
      use kexec_file_load only, or vice verse.

      The original requirement is from Ted Ts'o, he want kexec kernel signature
      being checked with CONFIG_KEXEC_VERIFY_SIG enabled.  But kexec-tools use
      kexec_load syscall can bypass the checking.

      Vivek Goyal proposed to create a common kconfig option so user can compile
      in only one syscall for loading kexec kernel.  KEXEC/KEXEC_FILE selects
      KEXEC_CORE so that old config files still work.

      Because there's general code need CONFIG_KEXEC_CORE, so I updated all the
      architecture Kconfig with a new option KEXEC_CORE, and let KEXEC selects
      KEXEC_CORE in arch Kconfig.  Also updated general kernel code with to
      kexec_load syscall.

      [akpm@xxxxxxxxxxxxxxxxxxxx: coding-style fixes]
      Signed-off-by: Dave Young <dyoung@xxxxxxxxxx>
      Cc: Eric W. Biederman <ebiederm@xxxxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Petr Tesarik <ptesarik@xxxxxxx>
      Cc: Theodore Ts'o <tytso@xxxxxxx>
      Cc: Josh Boyer <jwboyer@xxxxxxxxxxxxxxxxx>
      Cc: David Howells <dhowells@xxxxxxxxxx>
      Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit a43cac0d9dc2073ff2245a171429ddbe1accece7
  Author: Dave Young <dyoung@xxxxxxxxxx>
  Date:   Wed Sep 9 15:38:51 2015 -0700

      kexec: split kexec_file syscall code to kexec_file.c

      Split kexec_file syscall related code to another file kernel/kexec_file.c
      so that the #ifdef CONFIG_KEXEC_FILE in kexec.c can be dropped.

      Sharing variables and functions are moved to kernel/kexec_internal.h per
      suggestion from Vivek and Petr.

      [akpm@xxxxxxxxxxxxxxxxxxxx: fix bisectability]
      [akpm@xxxxxxxxxxxxxxxxxxxx: declare the various arch_kexec functions]
      [akpm@xxxxxxxxxxxxxxxxxxxx: fix build]
      Signed-off-by: Dave Young <dyoung@xxxxxxxxxx>
      Cc: Eric W. Biederman <ebiederm@xxxxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Petr Tesarik <ptesarik@xxxxxxx>
      Cc: Theodore Ts'o <tytso@xxxxxxx>
      Cc: Josh Boyer <jwboyer@xxxxxxxxxxxxxxxxx>
      Cc: David Howells <dhowells@xxxxxxxxxx>
      Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit a202fbbf56e819de83876827c4bf5da2bfbac5ec
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:38:48 2015 -0700

      drivers/net/wireless/ath/wil6210: use seq_hex_dump() to dump buffers

      Instead of custom approach let's use recently introduced seq_hex_dump()
      helper.

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Cc: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx>
      Cc: Joe Perches <joe@xxxxxxxxxxx>
      Cc: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
      Cc: Helge Deller <deller@xxxxxx>
      Cc: Ingo Tuchscherer <ingo.tuchscherer@xxxxxxxxxx>
      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Vladimir Kondratiev <qca_vkondrat@xxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 6fc37c4900765d579f25fbd293fcda7be5037896
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:38:45 2015 -0700

      kmemleak: use seq_hex_dump() to dump buffers

      Instead of custom approach let's use recently introduced seq_hex_dump()
      helper.

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Cc: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx>
      Cc: Joe Perches <joe@xxxxxxxxxxx>
      Cc: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
      Cc: Helge Deller <deller@xxxxxx>
      Cc: Ingo Tuchscherer <ingo.tuchscherer@xxxxxxxxxx>
      Acked-by: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Vladimir Kondratiev <qca_vkondrat@xxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 5d2fe875c9e822aa55579ea2032153e2891db57a
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:38:42 2015 -0700

      drivers/s390/crypto/zcrypt_api.c: use seq_hex_dump() to dump buffers

      Instead of custom approach let's use recently introduced seq_hex_dump()
      helper.

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Acked-by: Ingo Tuchscherer <ingo.tuchscherer@xxxxxxxxxx>
      Cc: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx>
      Cc: Joe Perches <joe@xxxxxxxxxxx>
      Cc: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
      Cc: Helge Deller <deller@xxxxxx>
      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Vladimir Kondratiev <qca_vkondrat@xxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit b342a65dd71c02f606dfea51e99773c333a2439d
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:38:39 2015 -0700

      parisc: use seq_hex_dump() to dump buffers

      Instead of custom approach let's use recently introduced seq_hex_dump()
      helper.

      In one case it changes the output from
        1111111122222222333333334444444455555555666666667777777788888888
      to
        11111111 22222222 33333333 44444444 55555555 66666666 77777777 88888888

      though it seems it prints same data (by meaning) in both cases.  I decide
      to choose to use the space divided one.

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Acked-by: Helge Deller <deller@xxxxxx>
      Cc: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx>
      Cc: Joe Perches <joe@xxxxxxxxxxx>
      Cc: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
      Cc: Ingo Tuchscherer <ingo.tuchscherer@xxxxxxxxxx>
      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Vladimir Kondratiev <qca_vkondrat@xxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d0cce062217fedb448cf7f36e0b82a80ac9e1243
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:38:36 2015 -0700

      drivers/crypto/qat: use seq_hex_dump() to dump buffers

      Instead of custom approach let's use recently introduced seq_hex_dump()
      helper.

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Acked-by: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
      Cc: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx>
      Cc: Joe Perches <joe@xxxxxxxxxxx>
      Cc: Helge Deller <deller@xxxxxx>
      Cc: Ingo Tuchscherer <ingo.tuchscherer@xxxxxxxxxx>
      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Vladimir Kondratiev <qca_vkondrat@xxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 37607102c4426cf92aeb5da1b1d9a79ba6d95e3f
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:38:33 2015 -0700

      seq_file: provide an analogue of print_hex_dump()

      This introduces a new helper and switches current users to use it.  All
      patches are compiled tested. kmemleak is tested via its own test suite.

      This patch (of 6):

      The new seq_hex_dump() is a complete analogue of print_hex_dump().

      We have few users of this functionality already. It allows to reduce their
      codebase.

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Cc: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx>
      Cc: Joe Perches <joe@xxxxxxxxxxx>
      Cc: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
      Cc: Helge Deller <deller@xxxxxx>
      Cc: Ingo Tuchscherer <ingo.tuchscherer@xxxxxxxxxx>
      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Vladimir Kondratiev <qca_vkondrat@xxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 40f705a736eac10e7dca7ab5dd5ed675a6df031d
  Author: Jann Horn <jann@xxxxxxxxx>
  Date:   Wed Sep 9 15:38:30 2015 -0700

      fs: Don't dump core if the corefile would become world-readable.

      On a filesystem like vfat, all files are created with the same owner
      and mode independent of who created the file. When a vfat filesystem
      is mounted with root as owner of all files and read access for everyone,
      root's processes left world-readable coredumps on it (but other
      users' processes only left empty corefiles when given write access
      because of the uid mismatch).

      Given that the old behavior was inconsistent and insecure, I don't see
      a problem with changing it. Now, all processes refuse to dump core unless
      the resulting corefile will only be readable by their owner.

      Signed-off-by: Jann Horn <jann@xxxxxxxxx>
      Acked-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Cc: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit fbb1816942c04429e85dbf4c1a080accc534299e
  Author: Jann Horn <jann@xxxxxxxxx>
  Date:   Wed Sep 9 15:38:28 2015 -0700

      fs: if a coredump already exists, unlink and recreate with O_EXCL

      It was possible for an attacking user to trick root (or another user) into
      writing his coredumps into an attacker-readable, pre-existing file using
      rename() or link(), causing the disclosure of secret data from the victim
      process' virtual memory.  Depending on the configuration, it was also
      possible to trick root into overwriting system files with coredumps.  Fix
      that issue by never writing coredumps into existing files.

      Requirements for the attack:
       - The attack only applies if the victim's process has a nonzero
         RLIMIT_CORE and is dumpable.
       - The attacker can trick the victim into coredumping into an
         attacker-writable directory D, either because the core_pattern is
         relative and the victim's cwd is attacker-writable or because an
         absolute core_pattern pointing to a world-writable directory is used.
       - The attacker has one of these:
        A: on a system with protected_hardlinks=0:
           execute access to a folder containing a victim-owned,
           attacker-readable file on the same partition as D, and the
           victim-owned file will be deleted before the main part of the attack
           takes place. (In practice, there are lots of files that fulfill
           this condition, e.g. entries in Debian's /var/lib/dpkg/info/.)
           This does not apply to most Linux systems because most distros set
           protected_hardlinks=1.
        B: on a system with protected_hardlinks=1:
           execute access to a folder containing a victim-owned,
           attacker-readable and attacker-writable file on the same partition
           as D, and the victim-owned file will be deleted before the main part
           of the attack takes place.
           (This seems to be uncommon.)
        C: on any system, independent of protected_hardlinks:
           write access to a non-sticky folder containing a victim-owned,
           attacker-readable file on the same partition as D
           (This seems to be uncommon.)

      The basic idea is that the attacker moves the victim-owned file to where
      he expects the victim process to dump its core.  The victim process dumps
      its core into the existing file, and the attacker reads the coredump from
      it.

      If the attacker can't move the file because he does not have write access
      to the containing directory, he can instead link the file to a directory
      he controls, then wait for the original link to the file to be deleted
      (because the kernel checks that the link count of the corefile is 1).

      A less reliable variant that requires D to be non-sticky works with link()
      and does not require deletion of the original link: link() the file into
      D, but then unlink() it directly before the kernel performs the link count
      check.

      On systems with protected_hardlinks=0, this variant allows an attacker to
      not only gain information from coredumps, but also clobber existing,
      victim-writable files with coredumps.  (This could theoretically lead to a
      privilege escalation.)

      Signed-off-by: Jann Horn <jann@xxxxxxxxx>
      Cc: Kees Cook <keescook@xxxxxxxxxxxx>
      Cc: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit bb304a5c6fc63d8506cd9741a3a5f35b73605625
  Author: Frederic Weisbecker <fweisbec@xxxxxxxxx>
  Date:   Wed Sep 9 15:38:25 2015 -0700

      kmod: handle UMH_WAIT_PROC from system unbound workqueue

      The UMH_WAIT_PROC handler runs in its own thread in order to make sure
      that waiting for the exec kernel thread completion won't block other
      usermodehelper queued jobs.

      On older workqueue implementations, worklets couldn't sleep without
      blocking the rest of the queue.  But now the workqueue subsystem handles
      that.  Khelper still had the older limitation due to its singlethread
      properties but we replaced it to system unbound workqueues.

      Those are affine to the current node and can block up to some number of
      instances.

      They are a good candidate to handle UMH_WAIT_PROC assuming that we have
      enough system unbound workers to handle lots of parallel usermodehelper
      jobs.

      Signed-off-by: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Reviewed-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 90f023030e26ce8f981b3e688cb79329d8d07cc3
  Author: Frederic Weisbecker <fweisbec@xxxxxxxxx>
  Date:   Wed Sep 9 15:38:22 2015 -0700

      kmod: use system_unbound_wq instead of khelper

      We need to launch the usermodehelper kernel threads with the widest
      affinity and this is partly why we use khelper.  This workqueue has
      unbound properties and thus a wide affinity inherited by all its children.

      Now khelper also has special properties that we aren't much interested in:
      ordered and singlethread.  There is really no need about ordering as all
      we do is creating kernel threads.  This can be done concurrently.  And
      singlethread is a useless limitation as well.

      The workqueue engine already proposes generic unbound workqueues that
      don't share these useless properties and handle well parallel jobs.

      The only worrysome specific is their affinity to the node of the current
      CPU.  It's fine for creating the usermodehelper kernel threads but those
      inherit this affinity for longer jobs such as requesting modules.

      This patch proposes to use these node affine unbound workqueues assuming
      that a node is sufficient to handle several parallel usermodehelper
      requests.

      Signed-off-by: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Reviewed-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit b639e86bae431db3fbc9fae8d09a9bbf97b74711
  Author: Frederic Weisbecker <fweisbec@xxxxxxxxx>
  Date:   Wed Sep 9 15:38:19 2015 -0700

      kmod: add up-to-date explanations on the purpose of each asynchronous 
levels

      There seem to be quite some confusions on the comments, likely due to
      changes that came after them.

      Now since it's very non obvious why we have 3 levels of asynchronous code
      to implement usermodehelpers, it's important to comment in detail the
      reason of this layout.

      Signed-off-by: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Reviewed-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d097c0240ae8085dd39aa6ca9bd9960969b2b38e
  Author: Frederic Weisbecker <fweisbec@xxxxxxxxx>
  Date:   Wed Sep 9 15:38:16 2015 -0700

      kmod: remove unecessary explicit wide CPU affinity setting

      Khelper is affine to all CPUs.  Now since it creates the
      call_usermodehelper_exec_[a]sync() kernel threads, those inherit the wide
      affinity.

      As such explicitly forcing a wide affinity from those kernel threads
      is like a no-op.

      Just remove it. It's needless and it breaks CPU isolation users who
      rely on workqueue affinity tuning.

      Signed-off-by: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Reviewed-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit b6b50a814d0ece9c1f98f2b3b5c2a251a5c9a211
  Author: Frederic Weisbecker <fweisbec@xxxxxxxxx>
  Date:   Wed Sep 9 15:38:13 2015 -0700

      kmod: bunch of internal functions renames

      This patchset does a bunch of cleanups and converts khelper to use system
      unbound workqueues.  The 3 first patches should be uncontroversial.  The
      last 2 patches are debatable.

      Kmod creates kernel threads that perform userspace jobs and we want those
      to have a large affinity in order not to contend busy CPUs.  This is
      (partly) why we use khelper which has a wide affinity that the kernel
      threads it create can inherit from.  Now khelper is a dedicated workqueue
      that has singlethread properties which we aren't interested in.

      Hence those two debatable changes:

      _ We would like to use generic workqueues. System unbound workqueues are
        a very good candidate but they are not wide affine, only node affine.
        Now probably a node is enough to perform many parallel kmod jobs.

      _ We would like to remove the wait_for_helper kernel thread (UMH_WAIT_PROC
        handler) to use the workqueue. It means that if the workqueue blocks,
        and no other worker can take pending kmod request, we can be screwed.
        Now if we have 512 threads, this should be enough.

      This patch (of 5):

      Underscores on function names aren't much verbose to explain the purpose
      of a function.  And kmod has interesting such flavours.

      Lets rename the following functions:

      * __call_usermodehelper -> call_usermodehelper_exec_work
      * ____call_usermodehelper -> call_usermodehelper_exec_async
      * wait_for_helper -> call_usermodehelper_exec_sync

      Signed-off-by: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Reviewed-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 60b61a6f42f36e4fbfbc0139b7e86ce1494d2d9b
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Wed Sep 9 15:38:10 2015 -0700

      kmod: correct documentation of return status of request_module

      If request_module() successfully runs modprobe, but modprobe exits with a
      non-zero status, then the return value from request_module() will be that
      (positive) error status.  So the return from request_module can be:

       negative errno
       zero for success
       positive exit code.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>
      Cc: Goldwyn Rodrigues <rgoldwyn@xxxxxxx>
      Cc: Oleg Nesterov <oleg@xxxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit b4cc0efea4f0bfa2477c56af406cfcf3d3e58680
  Author: Hin-Tak Leung <htl10@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:38:07 2015 -0700

      hfs: fix B-tree corruption after insertion at position 0

      Fix B-tree corruption when a new record is inserted at position 0 in the
      node in hfs_brec_insert().

      This is an identical change to the corresponding hfs b-tree code to Sergei
      Antonov's "hfsplus: fix B-tree corruption after insertion at position 0",
      to keep similar code paths in the hfs and hfsplus drivers in sync, where
      appropriate.

      Signed-off-by: Hin-Tak Leung <htl10@xxxxxxxxxxxxxxxxxxxxx>
      Cc: Sergei Antonov <saproj@xxxxxxxxx>
      Cc: Joe Perches <joe@xxxxxxxxxxx>
      Reviewed-by: Vyacheslav Dubeyko <slava@xxxxxxxxxxx>
      Cc: Anton Altaparmakov <anton@xxxxxxxxxx>
      Cc: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 7cb74be6fd827e314f81df3c5889b87e4c87c569
  Author: Hin-Tak Leung <htl10@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:38:04 2015 -0700

      hfs,hfsplus: cache pages correctly between bnode_create and bnode_free

      Pages looked up by __hfs_bnode_create() (called by hfs_bnode_create() and
      hfs_bnode_find() for finding or creating pages corresponding to an inode)
      are immediately kmap()'ed and used (both read and write) and kunmap()'ed,
      and should not be page_cache_release()'ed until hfs_bnode_free().

      This patch fixes a problem I first saw in July 2012: merely running "du"
      on a large hfsplus-mounted directory a few times on a reasonably loaded
      system would get the hfsplus driver all confused and complaining about
      B-tree inconsistencies, and generates a "BUG: Bad page state".  Most
      recently, I can generate this problem on up-to-date Fedora 22 with shipped
      kernel 4.0.5, by running "du /" (="/" + "/home" + "/mnt" + other smaller
      mounts) and "du /mnt" simultaneously on two windows, where /mnt is a
      lightly-used QEMU VM image of the full Mac OS X 10.9:

      $ df -i / /home /mnt
      Filesystem                  Inodes   IUsed      IFree IUse% Mounted on
      /dev/mapper/fedora-root    3276800  551665    2725135   17% /
      /dev/mapper/fedora-home   52879360  716221   52163139    2% /home
      /dev/nbd0p2             4294967295 1387818 4293579477    1% /mnt

      After applying the patch, I was able to run "du /" (60+ times) and "du
      /mnt" (150+ times) continuously and simultaneously for 6+ hours.

      There are many reports of the hfsplus driver getting confused under load
      and generating "BUG: Bad page state" or other similar issues over the
      years.  [1]

      The unpatched code [2] has always been wrong since it entered the kernel
      tree.  The only reason why it gets away with it is that the
      kmap/memcpy/kunmap follow very quickly after the page_cache_release() so
      the kernel has not had a chance to reuse the memory for something else,
      most of the time.

      The current RW driver appears to have followed the design and development
      of the earlier read-only hfsplus driver [3], where-by version 0.1 (Dec
      2001) had a B-tree node-centric approach to
      read_cache_page()/page_cache_release() per bnode_get()/bnode_put(),
      migrating towards version 0.2 (June 2002) of caching and releasing pages
      per inode extents.  When the current RW code first entered the kernel [2]
      in 2005, there was an REF_PAGES conditional (and "//" commented out code)
      to switch between B-node centric paging to inode-centric paging.  There
      was a mistake with the direction of one of the REF_PAGES conditionals in
      __hfs_bnode_create().  In a subsequent "remove debug code" commit [4], the
      read_cache_page()/page_cache_release() per bnode_get()/bnode_put() were
      removed, but a page_cache_release() was mistakenly left in (propagating
      the "REF_PAGES <-> !REF_PAGE" mistake), and the commented-out
      page_cache_release() in bnode_release() (which should be spanned by
      !REF_PAGES) was never enabled.

      References:
      [1]:
      Michael Fox, Apr 2013
      http://www.spinics.net/lists/linux-fsdevel/msg63807.html
      ("hfsplus volume suddenly inaccessable after 'hfs: recoff %d too large'")

      Sasha Levin, Feb 2015
      http://lkml.org/lkml/2015/2/20/85 ("use after free")

      https://bugs.launchpad.net/ubuntu/+source/linux/+bug/740814
      https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1027887
      https://bugzilla.kernel.org/show_bug.cgi?id=42342
      https://bugzilla.kernel.org/show_bug.cgi?id=63841
      https://bugzilla.kernel.org/show_bug.cgi?id=78761

      [2]:
      http://git.kernel.org/cgit/linux/kernel/git/tglx/history.git/commit/\
      fs/hfs/bnode.c?id=d1081202f1d0ee35ab0beb490da4b65d4bc763db
      commit d1081202f1d0ee35ab0beb490da4b65d4bc763db
      Author: Andrew Morton <akpm@xxxxxxxx>
      Date:   Wed Feb 25 16:17:36 2004 -0800

          [PATCH] HFS rewrite

      http://git.kernel.org/cgit/linux/kernel/git/tglx/history.git/commit/\
      fs/hfsplus/bnode.c?id=91556682e0bf004d98a529bf829d339abb98bbbd

      commit 91556682e0bf004d98a529bf829d339abb98bbbd
      Author: Andrew Morton <akpm@xxxxxxxx>
      Date:   Wed Feb 25 16:17:48 2004 -0800

          [PATCH] HFS+ support

      [3]:
      http://sourceforge.net/projects/linux-hfsplus/

      
http://sourceforge.net/projects/linux-hfsplus/files/Linux%202.4.x%20patch/hfsplus%200.1/
      
http://sourceforge.net/projects/linux-hfsplus/files/Linux%202.4.x%20patch/hfsplus%200.2/

      http://linux-hfsplus.cvs.sourceforge.net/viewvc/linux-hfsplus/linux/\
      fs/hfsplus/bnode.c?r1=1.4&r2=1.5

      Date:   Thu Jun 6 09:45:14 2002 +0000
      Use buffer cache instead of page cache in bnode.c. Cache inode extents.

      [4]:
      http://git.kernel.org/cgit/linux/kernel/git/\
      
stable/linux-stable.git/commit/?id=a5e3985fa014029eb6795664c704953720cc7f7d

      commit a5e3985fa014029eb6795664c704953720cc7f7d
      Author: Roman Zippel <zippel@xxxxxxxxxxxxxx>
      Date:   Tue Sep 6 15:18:47 2005 -0700

      [PATCH] hfs: remove debug code

      Signed-off-by: Hin-Tak Leung <htl10@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Sergei Antonov <saproj@xxxxxxxxx>
      Reviewed-by: Anton Altaparmakov <anton@xxxxxxxxxx>
      Reported-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Cc: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: Vyacheslav Dubeyko <slava@xxxxxxxxxxx>
      Cc: Sougata Santra <sougata@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3725e9dd5bef376ab87d41e40c437a6b2a20eb59
  Author: Jan Harkes <jaharkes@xxxxxxxxxx>
  Date:   Wed Sep 9 15:38:01 2015 -0700

      fs/coda: fix readlink buffer overflow

      Dan Carpenter discovered a buffer overflow in the Coda file system
      readlink code.  A userspace file system daemon can return a 4096 byte
      result which then triggers a one byte write past the allocated readlink
      result buffer.

      This does not trigger with an unmodified Coda implementation because Coda
      has a 1024 byte limit for symbolic links, however other userspace file
      systems using the Coda kernel module could be affected.

      Although this is an obvious overflow, I don't think this has to be handled
      as too sensitive from a security perspective because the overflow is on
      the Coda userspace daemon side which already needs root to open Coda's
      kernel device and to mount the file system before we get to the point that
      links can be read.

      [akpm@xxxxxxxxxxxxxxxxxxxx: coding-style fixes]
      Signed-off-by: Jan Harkes <jaharkes@xxxxxxxxxx>
      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c5595fa2f1ce3c1a74dbd2ddc949257e80d81dc0
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Wed Sep 9 15:37:58 2015 -0700

      checkpatch: add constant comparison on left side test

      "CONST <comparison> variable" checks like:

              if (NULL != foo)
      and
              while (0 < bar(...))

      where a constant (or what appears to be a constant like an upper case
      identifier) is on the left of a comparison are generally preferred to be
      written using the constant on the right side like:

              if (foo != NULL)
      and
              while (bar(...) > 0)

      Add a test for this.

      Add a --fix option too, but only do it when the code is immediately
      surrounded by parentheses to avoid misfixing things like "(0 < bar() +
      constant)"

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Cc: Nicolas Morey Chaisemartin <nmorey@xxxxxxxxx>
      Cc: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 54507b5183cc4f8e4f1a58a312e1f30c130658b7
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Wed Sep 9 15:37:55 2015 -0700

      checkpatch: add __pmem to $Sparse annotations

      commit 61031952f4c8 ("arch, x86: pmem api for ensuring durability of
      persistent memory updates") added a new __pmem annotation for sparse
      verification.  Add __pmem to the $Sparse variable so checkpatch can
      appropriately ignore uses of this attribute too.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Reviewed-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Acked-by: Andy Whitcroft <apw@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 4e5d56bdf892e18832a6540b63ebf709966bce2a
  Author: Eddie Kovsky <ewk@xxxxxxxxxxxx>
  Date:   Wed Sep 9 15:37:52 2015 -0700

      checkpatch: fix left brace warning

      Using checkpatch.pl with Perl 5.22.0 generates the following warning:

          Unescaped left brace in regex is deprecated, passed through in regex;

      This patch fixes the warnings by escaping occurrences of the left brace
      inside the regular expression.

      Signed-off-by: Eddie Kovsky <ewk@xxxxxxxxxxxx>
      Cc: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit bf4daf12a9fbc818029051c97b65fbfca6366a44
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Wed Sep 9 15:37:50 2015 -0700

      checkpatch: avoid some commit message long line warnings

      Fixes: and Link: lines may exceed 75 chars in the commit log.

      So too can stack dump and dmesg lines and lines that seem
      like filenames.

      And Fixes: lines don't need to have a "commit" prefix before the
      commit id.

      Add exceptions for these types of lines.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Reported-by: Paul Bolle <pebolle@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 6e30075742316a1d72b7e8f794f6e0bd44d774e2
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Wed Sep 9 15:37:47 2015 -0700

      checkpatch: emit an error on formats with 0x%<decimal>

      Using 0x%d is wrong.  Emit a message when it happens.

      Miscellanea:

      Improve the %Lu warning to match formats like %16Lu.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 7bd7e483c27d884c2f59e286e42623abba413f83
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Wed Sep 9 15:37:44 2015 -0700

      checkpatch: make --strict the default for drivers/staging files and 
patches

      Making --strict the default for staging may help some people submit
      patches without obvious defects.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Cc: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 86406b1cb7ac4fa5e7691eae5f2fb10c9af03dc3
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Wed Sep 9 15:37:41 2015 -0700

      checkpatch: always check block comment styles

      Some of the block comment tests that are used only for networking are
      appropriate for all patches.

      For example, these styles are not encouraged:

        /*
         block comment without introductory *
        */
      and
        /*
         * block comment with line terminating */

      Remove the networking specific test and add comments.

      There are some infrequent false positives where code is lazily
      commented out using /* and */ rather than using #if 0/#endif blocks
      like:
        /* case foo:
        case bar: */
        case baz:

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 7d3a9f673e1bdb45f86d15a67e230e4a9b050850
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Wed Sep 9 15:37:39 2015 -0700

      checkpatch: report the right line # when using --emacs and --file

      commit 34d8815f9512 ("checkpatch: add --showfile to allow input via pipe
      to show filenames") broke the --emacs with --file option.

      Fix it.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 100425deeb7586c9d401f787aeab3b43a4c6a0c6
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Wed Sep 9 15:37:36 2015 -0700

      checkpatch: add some <foo>_destroy functions to NEEDLESS_IF tests

      Sergey Senozhatsky has modified several destroy functions that can
      now be called with NULL values.

       - kmem_cache_destroy()
       - mempool_destroy()
       - dma_pool_destroy()

      Update checkpatch to warn when those functions are preceded by an if.

      Update checkpatch to --fix all the calls too only when the code style
      form is using leading tabs.

      from:
        if (foo)
                <func>(foo);
      to:
        <func>(foo);

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Tested-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Julia Lawall <julia.lawall@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3e838b6c41e8ac86c992bdaaa78625faf528a578
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Wed Sep 9 15:37:33 2015 -0700

      checkpatch: Allow longer declaration macros

      Some really long declaration macros exist.

      For instance;
                DEFINE_DMA_BUF_EXPORT_INFO(exp_info);
      and
        DECLARE_DM_KCOPYD_THROTTLE_WITH_MODULE_PARM(name, description)

      Increase the limit from 2 words to 6 after DECLARE/DEFINE uses.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 9f5af480f4554aac12e002b6f5c2b04895857700
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Wed Sep 9 15:37:30 2015 -0700

      checkpatch: improve SUSPECT_CODE_INDENT test

      Many lines exist like

        if (foo)
                        bar;

      where the tabbed indentation of the branch is not one more than the "if"
      line above it.

      checkpatch should emit a warning on those lines.

      Miscellenea:

      o Remove comments from branch blocks
      o Skip blank lines in block

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 9d3e3c705eb395528fd8f17208c87581b134da48
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Wed Sep 9 15:37:27 2015 -0700

      checkpatch: add warning on BUG/BUG_ON use

      Using BUG/BUG_ON crashes the kernel and is just unfriendly.

      Enable code that emits a warning on BUG/BUG_ON use.

      Make the code emit the message at WARNING level when scanning a patch and
      at CHECK level when scanning files so that script users don't feel an
      obligation to fix code that might be above their pay grade.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Reported-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Tested-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit fe043ea1205695f2224b279ac9f5cc1742d18f0b
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Wed Sep 9 15:37:25 2015 -0700

      checkpatch: warn on bare SHA-1 commit IDs in commit logs

      Commit IDs should have commit descriptions too.  Warn when a 12 to 40 byte
      SHA-1 is used in commit logs.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 6b4a35fc19a9229080dead8a9c316e8857b3e94d
  Author: Wang Long <long.wanglong@xxxxxxxxxx>
  Date:   Wed Sep 9 15:37:22 2015 -0700

      lib/test_kasan.c: make kmalloc_oob_krealloc_less more correctly

      In kmalloc_oob_krealloc_less, I think it is better to test
      the size2 boundary.

      If we do not call krealloc, the access of position size1 will still cause
      out-of-bounds and access of position size2 does not.  After call krealloc,
      the access of position size2 cause out-of-bounds.  So using size2 is more
      correct.

      Signed-off-by: Wang Long <long.wanglong@xxxxxxxxxx>
      Cc: Andrey Ryabinin <ryabinin.a.a@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 9789d8e0cfc6b5e265d9b0aa6e86b394a6d216a1
  Author: Wang Long <long.wanglong@xxxxxxxxxx>
  Date:   Wed Sep 9 15:37:19 2015 -0700

      lib/test_kasan.c: fix a typo

      Signed-off-by: Wang Long <long.wanglong@xxxxxxxxxx>
      Cc: Andrey Ryabinin <ryabinin.a.a@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit b40bdb7fb2b8359d5dfe19a91c147465c3d0359b
  Author: Kees Cook <keescook@xxxxxxxxxxxx>
  Date:   Wed Sep 9 15:37:16 2015 -0700

      lib/string_helpers: rename "esc" arg to "only"

      To further clarify the purpose of the "esc" argument, rename it to "only"
      to reflect that it is a limit, not a list of additional characters to
      escape.

      Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Suggested-by: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d89a3f7335bb5d9e572ecc287b300161200364eb
  Author: Kees Cook <keescook@xxxxxxxxxxxx>
  Date:   Wed Sep 9 15:37:14 2015 -0700

      lib/string_helpers: clarify esc arg in string_escape_mem

      The esc argument is used to reduce which characters will be escaped.  For
      example, using " " with ESCAPE_SPACE will not produce any escaped spaces.

      Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Cc: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Cc: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
      Cc: Mathias Krause <minipli@xxxxxxxxxxxxxx>
      Cc: James Bottomley <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit cdf17449af1d9b596742c260134edd6c1fac2792
  Author: Linus Walleij <linus.walleij@xxxxxxxxxx>
  Date:   Wed Sep 9 15:37:11 2015 -0700

      hexdump: do not print debug dumps for !CONFIG_DEBUG

      print_hex_dump_debug() is likely supposed to be analogous to pr_debug() or
      dev_dbg() & friends.  Currently it will adhere to dynamic debug, but will
      not stub out prints if CONFIG_DEBUG is not set.  Let's make it do the
      right thing, because I am tired of having my dmesg buffer full of hex
      dumps on production systems.

      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 9bf98f168b7b004c94c766a6989071e0f858def3
  Author: Pan Xinhui <xinhuix.pan@xxxxxxxxx>
  Date:   Wed Sep 9 15:37:08 2015 -0700

      lib/bitmap.c: bitmap_parselist can accept string with whitespaces on head 
or tail

      In __bitmap_parselist we can accept whitespaces on head or tail during
      every parsing procedure.  If input has valid ranges, there is no reason to
      reject the user.

      For example, bitmap_parselist(" 1-3, 5, ", &mask, nmaskbits).  After
      separating the string, we get " 1-3", " 5", and " ".  It's possible and
      reasonable to accept such string as long as the parsing result is correct.

      Signed-off-by: Pan Xinhui <xinhuix.pan@xxxxxxxxx>
      Cc: Yury Norov <yury.norov@xxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
      Cc: Sudeep Holla <sudeep.holla@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d9282cb66353be502aae09aae75d05a6863eb979
  Author: Pan Xinhui <xinhuix.pan@xxxxxxxxx>
  Date:   Wed Sep 9 15:37:05 2015 -0700

      lib/bitmap.c: fix a special string handling bug in __bitmap_parselist

      If string end with '-', for exapmle, bitmap_parselist("1,0-",&mask,
      nmaskbits), It is not in a valid pattern, so add a check after loop.
      Return -EINVAL on such condition.

      Signed-off-by: Pan Xinhui <xinhuix.pan@xxxxxxxxx>
      Cc: Yury Norov <yury.norov@xxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
      Cc: Sudeep Holla <sudeep.holla@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d21c3d4d1c6b2a0b85aeae5cc774b1bacc64e5b4
  Author: Pan Xinhui <xinhuix.pan@xxxxxxxxx>
  Date:   Wed Sep 9 15:37:02 2015 -0700

      lib/bitmap.c: correct a code style and do some, optimization

      We can avoid in-loop incrementation of ndigits.  Save current totaldigits
      to ndigits before loop, and check ndigits against totaldigits after the
      loop.

      Signed-off-by: Pan Xinhui <xinhuix.pan@xxxxxxxxx>
      Cc: Yury Norov <yury.norov@xxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
      Cc: Sudeep Holla <sudeep.holla@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 774636e19ed514cdf560006813c0473409616de8
  Author: Alexey Dobriyan <adobriyan@xxxxxxxxx>
  Date:   Wed Sep 9 15:36:59 2015 -0700

      proc: convert to kstrto*()/kstrto*_from_user()

      Convert from manual allocation/copy_from_user/...  to kstrto*() family
      which were designed for exactly that.

      One case can not be converted to kstrto*_from_user() to make code even
      more simpler because of whitespace stripping, oh well...

      Signed-off-by: Alexey Dobriyan <adobriyan@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 2d2e4715a65ca7e81b292d01ae009a03ccedb9b5
  Author: Alexey Dobriyan <adobriyan@xxxxxxxxx>
  Date:   Wed Sep 9 15:36:17 2015 -0700

      kstrto*: accept "-0" for signed conversion

      strtol(3) et al accept "-0", so should we.

      Signed-off-by: Alexey Dobriyan <adobriyan@xxxxxxxxx>
      Cc: David Howells <dhowells@xxxxxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Cc: Mark Fasheh <mfasheh@xxxxxxxx>
      Cc: Theodore Ts'o <tytso@xxxxxxx>
      Cc: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3cdea4d71439fb5676b7334a333dab0f7b1bd2e9
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Wed Sep 9 15:36:14 2015 -0700

      MAINTAINERS/CREDITS: mark MaxRAID as Orphan, move Anil Ravindranath to 
CREDITS

      Anil's email address bounces and he hasn't had a signoff
      in over 5 years.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Cc: James Bottomley <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 515a9adce0f0c3d2ef20f869c12902d03851a273
  Author: Jason A. Donenfeld <Jason@xxxxxxxxx>
  Date:   Wed Sep 9 15:36:12 2015 -0700

      include/linux/printk.h: include pr_fmt in pr_debug_ratelimited

      The other two implementations of pr_debug_ratelimited include pr_fmt,
      along with every other pr_* function.  But pr_debug_ratelimited forgot to
      add it with the CONFIG_DYNAMIC_DEBUG implementation.

      This patch unifies the behavior.

      Signed-off-by: Jason A. Donenfeld <Jason@xxxxxxxxx>
      Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 52aa8536f8f41367d5f2938ad67aa87957e70010
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Wed Sep 9 15:36:09 2015 -0700

      kernel/cred.c: remove unnecessary kdebug atomic reads

      Commit e0e817392b9a ("CRED: Add some configurable debugging [try #6]")
      added the kdebug mechanism to this file back in 2009.

      The kdebug macro calls no_printk which always evaluates arguments.

      Most of the kdebug uses have an unnecessary call of
        atomic_read(&cred->usage)

      Make the kdebug macro do nothing by defining it with
        do { if (0) no_printk(...); } while (0)
      when not enabled.

      $ size kernel/cred.o* (defconfig x86-64)
         text      data     bss     dec     hex filename
         2748       336       8    3092     c14 kernel/cred.o.new
         2788       336       8    3132     c3c kernel/cred.o.old

      Miscellanea:
      o Neaten the #define kdebug macros while there

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Cc: David Howells <dhowells@xxxxxxxxxx>
      Cc: James Morris <jmorris@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 2307e1a3c0780d7b908f6809f34034a04f954806
  Author: Wei Yongjun <yongjun_wei@xxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:36:06 2015 -0700

      kernel/extable.c: remove duplicated include

      Signed-off-by: Wei Yongjun <yongjun_wei@xxxxxxxxxxxxxxxxx>
      Acked-by: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 8b839635e73575990e92cce1f19f5b1d7febd3fa
  Author: Vasily Kulikov <segoon@xxxxxxxxxxxx>
  Date:   Wed Sep 9 15:36:03 2015 -0700

      include/linux/poison.h: remove not-used poison pointer macros

      Signed-off-by: Vasily Kulikov <segoon@xxxxxxxxxxxx>
      Cc: Solar Designer <solar@xxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 8a5e5e02fc83aaf67053ab53b359af08c6c49aaf
  Author: Vasily Kulikov <segoon@xxxxxxxxxxxx>
  Date:   Wed Sep 9 15:36:00 2015 -0700

      include/linux/poison.h: fix LIST_POISON{1,2} offset

      Poison pointer values should be small enough to find a room in
      non-mmap'able/hardly-mmap'able space.  E.g.  on x86 "poison pointer space"
      is located starting from 0x0.  Given unprivileged users cannot mmap
      anything below mmap_min_addr, it should be safe to use poison pointers
      lower than mmap_min_addr.

      The current poison pointer values of LIST_POISON{1,2} might be too big for
      mmap_min_addr values equal or less than 1 MB (common case, e.g.  Ubuntu
      uses only 0x10000).  There is little point to use such a big value given
      the "poison pointer space" below 1 MB is not yet exhausted.  Changing it
      to a smaller value solves the problem for small mmap_min_addr setups.

      The values are suggested by Solar Designer:
      http://www.openwall.com/lists/oss-security/2015/05/02/6

      Signed-off-by: Vasily Kulikov <segoon@xxxxxxxxxxxx>
      Cc: Solar Designer <solar@xxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ecf1a3dfff22bd165532a3af64f32697ae97c1ef
  Author: Waiman Long <Waiman.Long@xxxxxx>
  Date:   Wed Sep 9 15:35:57 2015 -0700

      proc: change proc_subdir_lock to a rwlock

      The proc_subdir_lock spinlock is used to allow only one task to make
      change to the proc directory structure as well as looking up information
      in it.  However, the information lookup part can actually be entered by
      more than one task as the pde_get() and pde_put() reference count update
      calls in the critical sections are atomic increment and decrement
      respectively and so are safe with concurrent updates.

      The x86 architecture has already used qrwlock which is fair and other
      architectures like ARM are in the process of switching to qrwlock.  So
      unfairness shouldn't be a concern in that conversion.

      This patch changed the proc_subdir_lock to a rwlock in order to enable
      concurrent lookup. The following functions were modified to take a
      write lock:
       - proc_register()
       - remove_proc_entry()
       - remove_proc_subtree()

      The following functions were modified to take a read lock:
       - xlate_proc_name()
       - proc_lookup_de()
       - proc_readdir_de()

      A parallel /proc filesystem search with the "find" command (1000 threads)
      was run on a 4-socket Haswell-EX box (144 threads).  Before the patch, the
      parallel search took about 39s.  After the patch, the parallel find took
      only 25s, a saving of about 14s.

      The micro-benchmark that I used was artificial, but it was used to
      reproduce an exit hanging problem that I saw in real application.  In
      fact, only allow one task to do a lookup seems too limiting to me.

      Signed-off-by: Waiman Long <Waiman.Long@xxxxxx>
      Acked-by: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>
      Cc: Alexey Dobriyan <adobriyan@xxxxxxxxx>
      Cc: Nicolas Dichtel <nicolas.dichtel@xxxxxxxxx>
      Cc: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
      Cc: Scott J Norton <scott.norton@xxxxxx>
      Cc: Douglas Hatch <doug.hatch@xxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit bdb4d100afe9818aebd1d98ced575c5ef143456c
  Author: Calvin Owens <calvinowens@xxxxxx>
  Date:   Wed Sep 9 15:35:54 2015 -0700

      procfs: always expose /proc/<pid>/map_files/ and make it readable

      Currently, /proc/<pid>/map_files/ is restricted to CAP_SYS_ADMIN, and is
      only exposed if CONFIG_CHECKPOINT_RESTORE is set.

      Each mapped file region gets a symlink in /proc/<pid>/map_files/
      corresponding to the virtual address range at which it is mapped.  The
      symlinks work like the symlinks in /proc/<pid>/fd/, so you can follow them
      to the backing file even if that backing file has been unlinked.

      Currently, files which are mapped, unlinked, and closed are impossible to
      stat() from userspace.  Exposing /proc/<pid>/map_files/ closes this
      functionality "hole".

      Not being able to stat() such files makes noticing and explicitly
      accounting for the space they use on the filesystem impossible.  You can
      work around this by summing up the space used by every file in the
      filesystem and subtracting that total from what statfs() tells you, but
      that obviously isn't great, and it becomes unworkable once your filesystem
      becomes large enough.

      This patch moves map_files/ out from behind CONFIG_CHECKPOINT_RESTORE, and
      adjusts the permissions enforced on it as follows:

      * proc_map_files_lookup()
      * proc_map_files_readdir()
      * map_files_d_revalidate()

        Remove the CAP_SYS_ADMIN restriction, leaving only the current
        restriction requiring PTRACE_MODE_READ. The information made
        available to userspace by these three functions is already
        available in /proc/PID/maps with MODE_READ, so I don't see any
        reason to limit them any further (see below for more detail).

      * proc_map_files_follow_link()

        This stub has been added, and requires that the user have
        CAP_SYS_ADMIN in order to follow the links in map_files/,
        since there was concern on LKML both about the potential for
        bypassing permissions on ancestor directories in the path to
        files pointed to, and about what happens with more exotic
        memory mappings created by some drivers (ie dma-buf).

      In older versions of this patch, I changed every permission check in
      the four functions above to enforce MODE_ATTACH instead of MODE_READ.
      This was an oversight on my part, and after revisiting the discussion
      it seems that nobody was concerned about anything outside of what is
      made possible by ->follow_link(). So in this version, I've left the
      checks for PTRACE_MODE_READ as-is.

      [akpm@xxxxxxxxxxxxxxxxxxxx: catch up with concurrent 
proc_pid_follow_link() changes]
      Signed-off-by: Calvin Owens <calvinowens@xxxxxx>
      Reviewed-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Cyrill Gorcunov <gorcunov@xxxxxxxxxx>
      Cc: Joe Perches <joe@xxxxxxxxxxx>
      Cc: Kirill A. Shutemov <kirill@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d3691d2c6d3e72624c987bbef6f322631bbb2d5d
  Author: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:35:51 2015 -0700

      proc: add cond_resched to /proc/kpage* read/write loop

      Reading/writing a /proc/kpage* file may take long on machines with a lot
      of RAM installed.

      Signed-off-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Suggested-by: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Reviewed-by: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Raghavendra K T <raghavendra.kt@xxxxxxxxxxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Greg Thelen <gthelen@xxxxxxxxxx>
      Cc: Michel Lespinasse <walken@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Cyrill Gorcunov <gorcunov@xxxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit f074a8f49eb87cde95ac9d040ad5e7ea4f029738
  Author: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:35:48 2015 -0700

      proc: export idle flag via kpageflags

      As noted by Minchan, a benefit of reading idle flag from /proc/kpageflags
      is that one can easily filter dirty and/or unevictable pages while
      estimating the size of unused memory.

      Note that idle flag read from /proc/kpageflags may be stale in case the
      page was accessed via a PTE, because it would be too costly to iterate
      over all page mappings on each /proc/kpageflags read to provide an
      up-to-date value.  To make sure the flag is up-to-date one has to read
      /sys/kernel/mm/page_idle/bitmap first.

      Signed-off-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Reviewed-by: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Raghavendra K T <raghavendra.kt@xxxxxxxxxxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Greg Thelen <gthelen@xxxxxxxxxx>
      Cc: Michel Lespinasse <walken@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Cyrill Gorcunov <gorcunov@xxxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 33c3fc71c8cfa3cc3a98beaa901c069c177dc295
  Author: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:35:45 2015 -0700

      mm: introduce idle page tracking

      Knowing the portion of memory that is not used by a certain application or
      memory cgroup (idle memory) can be useful for partitioning the system
      efficiently, e.g.  by setting memory cgroup limits appropriately.
      Currently, the only means to estimate the amount of idle memory provided
      by the kernel is /proc/PID/{clear_refs,smaps}: the user can clear the
      access bit for all pages mapped to a particular process by writing 1 to
      clear_refs, wait for some time, and then count smaps:Referenced.  However,
      this method has two serious shortcomings:

       - it does not count unmapped file pages
       - it affects the reclaimer logic

      To overcome these drawbacks, this patch introduces two new page flags,
      Idle and Young, and a new sysfs file, /sys/kernel/mm/page_idle/bitmap.
      A page's Idle flag can only be set from userspace by setting bit in
      /sys/kernel/mm/page_idle/bitmap at the offset corresponding to the page,
      and it is cleared whenever the page is accessed either through page tables
      (it is cleared in page_referenced() in this case) or using the read(2)
      system call (mark_page_accessed()). Thus by setting the Idle flag for
      pages of a particular workload, which can be found e.g.  by reading
      /proc/PID/pagemap, waiting for some time to let the workload access its
      working set, and then reading the bitmap file, one can estimate the amount
      of pages that are not used by the workload.

      The Young page flag is used to avoid interference with the memory
      reclaimer.  A page's Young flag is set whenever the Access bit of a page
      table entry pointing to the page is cleared by writing to the bitmap file.
      If page_referenced() is called on a Young page, it will add 1 to its
      return value, therefore concealing the fact that the Access bit was
      cleared.

      Note, since there is no room for extra page flags on 32 bit, this feature
      uses extended page flags when compiled on 32 bit.

      [akpm@xxxxxxxxxxxxxxxxxxxx: fix build]
      [akpm@xxxxxxxxxxxxxxxxxxxx: kpageidle requires an MMU]
      [akpm@xxxxxxxxxxxxxxxxxxxx: decouple from page-flags rework]
      Signed-off-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Reviewed-by: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Raghavendra K T <raghavendra.kt@xxxxxxxxxxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Greg Thelen <gthelen@xxxxxxxxxx>
      Cc: Michel Lespinasse <walken@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Cyrill Gorcunov <gorcunov@xxxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1d7715c676a1566c2e4c3e77d16b1f9bb4909025
  Author: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:35:41 2015 -0700

      mmu-notifier: add clear_young callback

      In the scope of the idle memory tracking feature, which is introduced by
      the following patch, we need to clear the referenced/accessed bit not only
      in primary, but also in secondary ptes.  The latter is required in order
      to estimate wss of KVM VMs.  At the same time we want to avoid flushing
      tlb, because it is quite expensive and it won't really affect the final
      result.

      Currently, there is no function for clearing pte young bit that would meet
      our requirements, so this patch introduces one.  To achieve that we have
      to add a new mmu-notifier callback, clear_young, since there is no method
      for testing-and-clearing a secondary pte w/o flushing tlb.  The new method
      is not mandatory and currently only implemented by KVM.

      Signed-off-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Reviewed-by: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Acked-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Raghavendra K T <raghavendra.kt@xxxxxxxxxxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Greg Thelen <gthelen@xxxxxxxxxx>
      Cc: Michel Lespinasse <walken@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Cyrill Gorcunov <gorcunov@xxxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 80ae2fdceba8313b0433f899bdd9c6c463291a17
  Author: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:35:38 2015 -0700

      proc: add kpagecgroup file

      /proc/kpagecgroup contains a 64-bit inode number of the memory cgroup each
      page is charged to, indexed by PFN.  Having this information is useful for
      estimating a cgroup working set size.

      The file is present if CONFIG_PROC_PAGE_MONITOR && CONFIG_MEMCG.

      Signed-off-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Reviewed-by: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Raghavendra K T <raghavendra.kt@xxxxxxxxxxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Greg Thelen <gthelen@xxxxxxxxxx>
      Cc: Michel Lespinasse <walken@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Cyrill Gorcunov <gorcunov@xxxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit e993d905c81e2c0f669f2f8e8327df86738baebe
  Author: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:35:35 2015 -0700

      memcg: zap try_get_mem_cgroup_from_page

      It is only used in mem_cgroup_try_charge, so fold it in and zap it.

      Signed-off-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Reviewed-by: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Raghavendra K T <raghavendra.kt@xxxxxxxxxxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Greg Thelen <gthelen@xxxxxxxxxx>
      Cc: Michel Lespinasse <walken@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Cyrill Gorcunov <gorcunov@xxxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 94a59fb36ee91b3f977a9b914ec701efe40041de
  Author: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:35:31 2015 -0700

      hwpoison: use page_cgroup_ino for filtering by memcg

      Hwpoison allows to filter pages by memory cgroup ino.  Currently, it
      calls try_get_mem_cgroup_from_page to obtain the cgroup from a page and
      then its ino using cgroup_ino, but now we have a helper method for
      that, page_cgroup_ino, so use it instead.

      This patch also loosens the hwpoison memcg filter dependency rules - it
      makes it depend on CONFIG_MEMCG instead of CONFIG_MEMCG_SWAP, because
      hwpoison memcg filter does not require anything (nor it used to) from
      CONFIG_MEMCG_SWAP side.

      Signed-off-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Reviewed-by: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Raghavendra K T <raghavendra.kt@xxxxxxxxxxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Greg Thelen <gthelen@xxxxxxxxxx>
      Cc: Michel Lespinasse <walken@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Cyrill Gorcunov <gorcunov@xxxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 2fc045247089ad4ed611ec20cc3a736c0212bf1a
  Author: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:35:28 2015 -0700

      memcg: add page_cgroup_ino helper

      This patchset introduces a new user API for tracking user memory pages
      that have not been used for a given period of time.  The purpose of this
      is to provide the userspace with the means of tracking a workload's
      working set, i.e.  the set of pages that are actively used by the
      workload.  Knowing the working set size can be useful for partitioning the
      system more efficiently, e.g.  by tuning memory cgroup limits
      appropriately, or for job placement within a compute cluster.

      ==== USE CASES ====

      The unified cgroup hierarchy has memory.low and memory.high knobs, which
      are defined as the low and high boundaries for the workload working set
      size.  However, the working set size of a workload may be unknown or
      change in time.  With this patch set, one can periodically estimate the
      amount of memory unused by each cgroup and tune their memory.low and
      memory.high parameters accordingly, therefore optimizing the overall
      memory utilization.

      Another use case is balancing workloads within a compute cluster.  Knowing
      how much memory is not really used by a workload unit may help take a more
      optimal decision when considering migrating the unit to another node
      within the cluster.

      Also, as noted by Minchan, this would be useful for per-process reclaim
      (https://lwn.net/Articles/545668/). With idle tracking, we could reclaim 
idle
      pages only by smart user memory manager.

      ==== USER API ====

      The user API consists of two new files:

       * /sys/kernel/mm/page_idle/bitmap.  This file implements a bitmap where 
each
         bit corresponds to a page, indexed by PFN. When the bit is set, the
         corresponding page is idle. A page is considered idle if it has not 
been
         accessed since it was marked idle. To mark a page idle one should set 
the
         bit corresponding to the page by writing to the file. A value written 
to the
         file is OR-ed with the current bitmap value. Only user memory pages 
can be
         marked idle, for other page types input is silently ignored. Writing 
to this
         file beyond max PFN results in the ENXIO error. Only available when
         CONFIG_IDLE_PAGE_TRACKING is set.

         This file can be used to estimate the amount of pages that are not
         used by a particular workload as follows:

         1. mark all pages of interest idle by setting corresponding bits in the
            /sys/kernel/mm/page_idle/bitmap
         2. wait until the workload accesses its working set
         3. read /sys/kernel/mm/page_idle/bitmap and count the number of bits 
set

       * /proc/kpagecgroup.  This file contains a 64-bit inode number of the
         memory cgroup each page is charged to, indexed by PFN. Only available 
when
         CONFIG_MEMCG is set.

         This file can be used to find all pages (including unmapped file pages)
         accounted to a particular cgroup. Using 
/sys/kernel/mm/page_idle/bitmap, one
         can then estimate the cgroup working set size.

      For an example of using these files for estimating the amount of unused
      memory pages per each memory cgroup, please see the script attached
      below.

      ==== REASONING ====

      The reason to introduce the new user API instead of using
      /proc/PID/{clear_refs,smaps} is that the latter has two serious
      drawbacks:

       - it does not count unmapped file pages
       - it affects the reclaimer logic

      The new API attempts to overcome them both. For more details on how it
      is achieved, please see the comment to patch 6.

      ==== PATCHSET STRUCTURE ====

      The patch set is organized as follows:

       - patch 1 adds page_cgroup_ino() helper for the sake of
         /proc/kpagecgroup and patches 2-3 do related cleanup
       - patch 4 adds /proc/kpagecgroup, which reports cgroup ino each page is
         charged to
       - patch 5 introduces a new mmu notifier callback, clear_young, which is
         a lightweight version of clear_flush_young; it is used in patch 6
       - patch 6 implements the idle page tracking feature, including the
         userspace API, /sys/kernel/mm/page_idle/bitmap
       - patch 7 exports idle flag via /proc/kpageflags

      ==== SIMILAR WORKS ====

      Originally, the patch for tracking idle memory was proposed back in 2011
      by Michel Lespinasse (see http://lwn.net/Articles/459269/).  The main
      difference between Michel's patch and this one is that Michel implemented
      a kernel space daemon for estimating idle memory size per cgroup while
      this patch only provides the userspace with the minimal API for doing the
      job, leaving the rest up to the userspace.  However, they both share the
      same idea of Idle/Young page flags to avoid affecting the reclaimer logic.

      ==== PERFORMANCE EVALUATION ====

      SPECjvm2008 (https://www.spec.org/jvm2008/) was used to evaluate the
      performance impact introduced by this patch set.  Three runs were carried
      out:

       - base: kernel without the patch
       - patched: patched kernel, the feature is not used
       - patched-active: patched kernel, 1 minute-period daemon is used for
         tracking idle memory

      For tracking idle memory, idlememstat utility was used:
      https://github.com/locker/idlememstat

      testcase            base            patched        patched-active

      compiler       537.40 ( 0.00)%   532.26 (-0.96)%   538.31 ( 0.17)%
      compress       305.47 ( 0.00)%   301.08 (-1.44)%   300.71 (-1.56)%
      crypto         284.32 ( 0.00)%   282.21 (-0.74)%   284.87 ( 0.19)%
      derby          411.05 ( 0.00)%   413.44 ( 0.58)%   412.07 ( 0.25)%
      mpegaudio      189.96 ( 0.00)%   190.87 ( 0.48)%   189.42 (-0.28)%
      scimark.large   46.85 ( 0.00)%    46.41 (-0.94)%    47.83 ( 2.09)%
      scimark.small  412.91 ( 0.00)%   415.41 ( 0.61)%   421.17 ( 2.00)%
      serial         204.23 ( 0.00)%   213.46 ( 4.52)%   203.17 (-0.52)%
      startup         36.76 ( 0.00)%    35.49 (-3.45)%    35.64 (-3.05)%
      sunflow        115.34 ( 0.00)%   115.08 (-0.23)%   117.37 ( 1.76)%
      xml            620.55 ( 0.00)%   619.95 (-0.10)%   620.39 (-0.03)%

      composite      211.50 ( 0.00)%   211.15 (-0.17)%   211.67 ( 0.08)%

      time idlememstat:

      17.20user 65.16system 2:15:23elapsed 1%CPU (0avgtext+0avgdata 
8476maxresident)k
      448inputs+40outputs (1major+36052minor)pagefaults 0swaps

      ==== SCRIPT FOR COUNTING IDLE PAGES PER CGROUP ====
      #! /usr/bin/python
      #

      import os
      import stat
      import errno
      import struct

      CGROUP_MOUNT = "/sys/fs/cgroup/memory"
      BUFSIZE = 8 * 1024  # must be multiple of 8

      def get_hugepage_size():
          with open("/proc/meminfo", "r") as f:
              for s in f:
                  k, v = s.split(":")
                  if k == "Hugepagesize":
                      return int(v.split()[0]) * 1024

      PAGE_SIZE = os.sysconf("SC_PAGE_SIZE")
      HUGEPAGE_SIZE = get_hugepage_size()

      def set_idle():
          f = open("/sys/kernel/mm/page_idle/bitmap", "wb", BUFSIZE)
          while True:
              try:
                  f.write(struct.pack("Q", pow(2, 64) - 1))
              except IOError as err:
                  if err.errno == errno.ENXIO:
                      break
                  raise
          f.close()

      def count_idle():
          f_flags = open("/proc/kpageflags", "rb", BUFSIZE)
          f_cgroup = open("/proc/kpagecgroup", "rb", BUFSIZE)

          with open("/sys/kernel/mm/page_idle/bitmap", "rb", BUFSIZE) as f:
              while f.read(BUFSIZE): pass  # update idle flag

          idlememsz = {}
          while True:
              s1, s2 = f_flags.read(8), f_cgroup.read(8)
              if not s1 or not s2:
                  break

              flags, = struct.unpack('Q', s1)
              cgino, = struct.unpack('Q', s2)

              unevictable = (flags >> 18) & 1
              huge = (flags >> 22) & 1
              idle = (flags >> 25) & 1

              if idle and not unevictable:
                  idlememsz[cgino] = idlememsz.get(cgino, 0) + \
                      (HUGEPAGE_SIZE if huge else PAGE_SIZE)

          f_flags.close()
          f_cgroup.close()
          return idlememsz

      if __name__ == "__main__":
          print "Setting the idle flag for each page..."
          set_idle()

          raw_input("Wait until the workload accesses its working set, "
                    "then press Enter")

          print "Counting idle pages..."
          idlememsz = count_idle()

          for dir, subdirs, files in os.walk(CGROUP_MOUNT):
              ino = os.stat(dir)[stat.ST_INO]
              print dir + ": " + str(idlememsz.get(ino, 0) / 1024) + " kB"
      ==== END SCRIPT ====

      This patch (of 8):

      Add page_cgroup_ino() helper to memcg.

      This function returns the inode number of the closest online ancestor of
      the memory cgroup a page is charged to.  It is required for exporting
      information about which page is charged to which cgroup to userspace,
      which will be introduced by a following patch.

      Signed-off-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Reviewed-by: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Raghavendra K T <raghavendra.kt@xxxxxxxxxxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Greg Thelen <gthelen@xxxxxxxxxx>
      Cc: Michel Lespinasse <walken@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Cyrill Gorcunov <gorcunov@xxxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 9c4c5ef3760470cbf8bf408a173d1b2fdba065b1
  Author: Dan Streetman <ddstreet@xxxxxxxx>
  Date:   Wed Sep 9 15:35:25 2015 -0700

      zswap: update docs for runtime-changeable attributes

      Change the Documentation/vm/zswap.txt doc to indicate that the "zpool" and
      "compressor" params are now changeable at runtime.

      Signed-off-by: Dan Streetman <ddstreet@xxxxxxxx>
      Cc: Seth Jennings <sjennings@xxxxxxxxxxxxxx>
      Cc: Sergey Senozhatsky <sergey.senozhatsky.work@xxxxxxxxx>
      Cc: Vlastimil Babka <vbabka@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 90b0fc26d5dbe21c7a21668320b276af9b2281d7
  Author: Dan Streetman <ddstreet@xxxxxxxx>
  Date:   Wed Sep 9 15:35:21 2015 -0700

      zswap: change zpool/compressor at runtime

      Update the zpool and compressor parameters to be changeable at runtime.
      When changed, a new pool is created with the requested zpool/compressor,
      and added as the current pool at the front of the pool list.  Previous
      pools remain in the list only to remove existing compressed pages from.
      The old pool(s) are removed once they become empty.

      Signed-off-by: Dan Streetman <ddstreet@xxxxxxxx>
      Acked-by: Seth Jennings <sjennings@xxxxxxxxxxxxxx>
      Cc: Sergey Senozhatsky <sergey.senozhatsky.work@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit f1c54846ee4504d89b59b04d870831db4046b478
  Author: Dan Streetman <ddstreet@xxxxxxxx>
  Date:   Wed Sep 9 15:35:19 2015 -0700

      zswap: dynamic pool creation

      Add dynamic creation of pools.  Move the static crypto compression per-cpu
      transforms into each pool.  Add a pointer to zswap_entry to the pool it's
      in.

      This is required by the following patch which enables changing the zswap
      zpool and compressor params at runtime.

      [akpm@xxxxxxxxxxxxxxxxxxxx: fix merge snafus]
      Signed-off-by: Dan Streetman <ddstreet@xxxxxxxx>
      Acked-by: Seth Jennings <sjennings@xxxxxxxxxxxxxx>
      Cc: Sergey Senozhatsky <sergey.senozhatsky.work@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3f0e131221eb951c45c93d1cce9db73889be2a5e
  Author: Dan Streetman <ddstreet@xxxxxxxx>
  Date:   Wed Sep 9 15:35:16 2015 -0700

      zpool: add zpool_has_pool()

      This series makes creation of the zpool and compressor dynamic, so that
      they can be changed at runtime.  This makes using/configuring zswap
      easier, as before this zswap had to be configured at boot time, using boot
      params.

      This uses a single list to track both the zpool and compressor together,
      although Seth had mentioned an alternative which is to track the zpools
      and compressors using separate lists.  In the most common case, only a
      single zpool and single compressor, using one list is slightly simpler
      than using two lists, and for the uncommon case of multiple zpools and/or
      compressors, using one list is slightly less simple (and uses slightly
      more memory, probably) than using two lists.

      This patch (of 4):

      Add zpool_has_pool() function, indicating if the specified type of zpool
      is available (i.e.  zsmalloc or zbud).  This allows checking if a pool is
      available, without actually trying to allocate it, similar to
      crypto_has_alg().

      This is used by a following patch to zswap that enables the dynamic
      runtime creation of zswap zpools.

      Signed-off-by: Dan Streetman <ddstreet@xxxxxxxx>
      Acked-by: Seth Jennings <sjennings@xxxxxxxxxxxxxx>
      Cc: Sergey Senozhatsky <sergey.senozhatsky.work@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit e11fc21e756e662e465cac3da6547d438d0b1446
  Author: Grazvydas Ignotas <notasas@xxxxxxxxx>
  Date:   Sat Sep 5 02:32:34 2015 +0300

      twl4030_charger: fix another compile error

      When CONFIG_CHARGER_TWL4030=y and CONFIG_TWL4030_MADC=m we get a
      compile error:

      drivers/built-in.o: In function `twl4030_charger_update_current':
      twl4030_charger.c:(.text+0x504681): undefined reference to
      `twl4030_get_madc_conversion'

      Use IS_REACHABLE to fix it.

      Cc: NeilBrown <neil@xxxxxxxxxx>
      Reported-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
      Signed-off-by: Grazvydas Ignotas <notasas@xxxxxxxxx>
      Acked-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Sebastian Reichel <sre@xxxxxxxxxx>

  commit aefc574bbbbe74bb891ba392d98f2d59a417c774
  Author: Sebastian Reichel <sre@xxxxxxxxxx>
  Date:   Thu Sep 10 10:00:55 2015 +0200

      Revert "twl4030_charger: correctly handle -EPROBE_DEFER from 
devm_usb_get_phy_by_node"

      Revert commit 3fc3895e4fe17ee92ae1d1bb9f04da6069e8c370, since
      it introduced a boot failure on some OMAP platforms.

      Reported-by: Kevin Hilman <khilman@xxxxxxxxxx>
      Signed-off-by: Sebastian Reichel <sre@xxxxxxxxxx>

  commit 30059d494a72603d066baf55c748803df968aa08
  Author: Chris Metcalf <cmetcalf@xxxxxxxxxx>
  Date:   Wed Apr 29 13:07:38 2015 -0400

      tile: use global strscpy() rather than private copy

      Now that strscpy() is a standard API, remove the local copy.

      Signed-off-by: Chris Metcalf <cmetcalf@xxxxxxxxxx>

  commit 30035e45753b708e7d47a98398500ca005e02b86
  Author: Chris Metcalf <cmetcalf@xxxxxxxxxx>
  Date:   Wed Apr 29 12:52:04 2015 -0400

      string: provide strscpy()

      The strscpy() API is intended to be used instead of strlcpy(),
      and instead of most uses of strncpy().

      - Unlike strlcpy(), it doesn't read from memory beyond (src + size).

      - Unlike strlcpy() or strncpy(), the API provides an easy way to check
        for destination buffer overflow: an -E2BIG error return value.

      - The provided implementation is robust in the face of the source
        buffer being asynchronously changed during the copy, unlike the
        current implementation of strlcpy().

      - Unlike strncpy(), the destination buffer will be NUL-terminated
        if the string in the source buffer is too long.

      - Also unlike strncpy(), the destination buffer will not be updated
        beyond the NUL termination, avoiding strncpy's behavior of zeroing
        the entire tail end of the destination buffer.  (A memset() after
        the strscpy() can be used if this behavior is desired.)

      - The implementation should be reasonably performant on all
        platforms since it uses the asm/word-at-a-time.h API rather than
        simple byte copy.  Kernel-to-kernel string copy is not considered
        to be performance critical in any case.

      Signed-off-by: Chris Metcalf <cmetcalf@xxxxxxxxxx>

  commit 135919a3a80565070b9645009e65f73e72c661c0
  Author: Len Brown <len.brown@xxxxxxxxx>
  Date:   Wed Sep 9 13:35:05 2015 -0400

      intel_idle: Skylake Client Support - updated

      Addition of PC9 state, and minor tweaks to existing PC6 and PC8 states.

      Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

  commit 30927520dbae297182990bb21d08762bcc35ce1d
  Author: Eric Dumazet <edumazet@xxxxxxxxxx>
  Date:   Wed Sep 9 21:55:07 2015 -0700

      tcp_cubic: better follow cubic curve after idle period

      Jana Iyengar found an interesting issue on CUBIC :

      The epoch is only updated/reset initially and when experiencing losses.
      The delta "t" of now - epoch_start can be arbitrary large after app idle
      as well as the bic_target. Consequentially the slope (inverse of
      ca->cnt) would be really large, and eventually ca->cnt would be
      lower-bounded in the end to 2 to have delayed-ACK slow-start behavior.

      This particularly shows up when slow_start_after_idle is disabled
      as a dangerous cwnd inflation (1.5 x RTT) after few seconds of idle
      time.

      Jana initial fix was to reset epoch_start if app limited,
      but Neal pointed out it would ask the CUBIC algorithm to recalculate the
      curve so that we again start growing steeply upward from where cwnd is
      now (as CUBIC does just after a loss). Ideally we'd want the cwnd growth
      curve to be the same shape, just shifted later in time by the amount of
      the idle period.

      Reported-by: Jana Iyengar <jri@xxxxxxxxxx>
      Signed-off-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Signed-off-by: Yuchung Cheng <ycheng@xxxxxxxxxx>
      Signed-off-by: Neal Cardwell <ncardwell@xxxxxxxxxx>
      Cc: Stephen Hemminger <stephen@xxxxxxxxxxxxxxxxxx>
      Cc: Sangtae Ha <sangtae.ha@xxxxxxxxx>
      Cc: Lawrence Brakmo <lawrence@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 05c5a46d71f621df620fbabbd7758ee1b44575ad
  Author: Neal Cardwell <ncardwell@xxxxxxxxxx>
  Date:   Wed Sep 9 21:54:37 2015 -0700

      tcp: generate CA_EVENT_TX_START on data frames

      Issuing a CC TX_START event on control frames like pure ACK
      is a waste of time, as a CC should not care.

      Following patch needs this change, as we want CUBIC to properly track
      idle time at a low cost, with a single TX_START being generated.

      Yuchung might slightly refine the condition triggering TX_START
      on a followup patch.

      Signed-off-by: Neal Cardwell <ncardwell@xxxxxxxxxx>
      Signed-off-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Signed-off-by: Yuchung Cheng <ycheng@xxxxxxxxxx>
      Cc: Jana Iyengar <jri@xxxxxxxxxx>
      Cc: Stephen Hemminger <stephen@xxxxxxxxxxxxxxxxxx>
      Cc: Sangtae Ha <sangtae.ha@xxxxxxxxx>
      Cc: Lawrence Brakmo <lawrence@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 32a844056fd43dda647e1c3c6b9983bdfa04d17d
  Author: Wei Liu <wei.liu2@xxxxxxxxxx>
  Date:   Thu Sep 10 11:18:58 2015 +0100

      xen-netfront: respect user provided max_queues

      Originally that parameter was always reset to num_online_cpus during
      module initialisation, which renders it useless.

      The fix is to only set max_queues to num_online_cpus when user has not
      provided a value.

      Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx>
      Cc: David Vrabel <david.vrabel@xxxxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Tested-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4c82ac3c37363e8c4ded6a5fe1ec5fa756b34df3
  Author: Wei Liu <wei.liu2@xxxxxxxxxx>
  Date:   Thu Sep 10 11:18:57 2015 +0100

      xen-netback: respect user provided max_queues

      Originally that parameter was always reset to num_online_cpus during
      module initialisation, which renders it useless.

      The fix is to only set max_queues to num_online_cpus when user has not
      provided a value.

      Reported-by: Johnny Strom <johnny.strom@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 420203204eada39cfe0e8eb65e609da7b209cf33
  Author: Corinna Vinschen <vinschen@xxxxxxxxxx>
  Date:   Thu Sep 10 10:47:35 2015 +0200

      r8169: Fix sleeping function called during get_stats64, v2

      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=104031
      Fixes: 6e85d5ad36a26debc23a9a865c029cbe242b2dc8

      Based on the discussion starting at
      http://www.spinics.net/lists/netdev/msg342193.html

      Tested locally on RTL8168evl/8111evl with various concurrent processes
      accessing /proc/net/dev while changing the link state as well as
      removing/reloading the r8169 module.

      Signed-off-by: Corinna Vinschen <vinschen@xxxxxxxxxx>
      Tested-by: poma <pomidorabelisima@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 85b4e4eb2f9ac29ee8ec47f1f055f251cb251a3c
  Author: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 10 00:08:45 2015 +0200

      wmi: Remove private %pUL implementation

      The work performed by wmi_gtoa is equivalent to simply sprintf(out,
      "%pUL", in), so one could replace its body by this. However, most
      users feed the result directly as a %s argument to some other function
      which also understands the %p extensions (they all ultimately use
      vsnprintf), so we can eliminate some stack buffers and quite a bit of
      code by just using %pUL directly.

      In wmi_dev_uevent I'm not sure whether there's room for a
      nul-terminator in env->buf, so I've just replaced wmi_gtoa with the
      equivalent sprintf call.

      Signed-off-by: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Darren Hart <dvhart@xxxxxxxxxxxxxxx>

  commit 824257857fd81f5e749831ff9cd63566b5a86abe
  Author: Gaurav K Singh <gaurav.k.singh@xxxxxxxxx>
  Date:   Mon Aug 3 15:45:32 2015 +0530

      drm/i915: Allow DSI dual link to be configured on any pipe

      Just like single link MIPI panels, similarly for dual link panels, pipe
      to be configured is based on the DVO port from VBT Block 2. In hardware,
      Port A is mapped with Pipe A and Port C is mapped with Pipe B.

      This issue got introduced in -

      commit 7e9804fdcffc650515c60f524b8b2076ee59e710
      Author: Jani Nikula <jani.nikula@xxxxxxxxx>
      Date:   Fri Jan 16 14:27:23 2015 +0200

          drm/i915/dsi: add drm mipi dsi host support

      Cc: stable@xxxxxxxxxxxxxxx # v4.0
      Signed-off-by: Gaurav K Singh <gaurav.k.singh@xxxxxxxxx>
      Reviewed-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 58590c14d80defc94e900308a9d8fa55284de6f2
  Author: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 21:05:12 2015 +0300

      drm/i915: Don't try to use DDR DVFS on CHV when disabled in the BIOS

      If one disables DDR DVFS in the BIOS, Punit will apparently ignores
      all DDR DVFS request. Currently we assume that DDR DVFS is always
      operational, which leads to errors in dmesg when the DDR DVFS requests
      time out.

      Fix the problem by gently prodding Punit during driver load to find out
      whether it will respond to DDR DVFS requests. If the request times out,
      we assume that DDR DVFS has been permanenly disabled in the BIOS and
      no longer perster the Punit about it.

      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91629
      Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Reviewed-by: Clint Taylor <Clinton.A.Taylor@xxxxxxxxx>
      Tested-by: Clint Taylor <Clinton.A.Taylor@xxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 85e0a0f21a14bfd9145422a6a627c3df47101bd8
  Author: Filipe Manana <fdmanana@xxxxxxxx>
  Date:   Thu Sep 10 10:36:06 2015 +0100

      Btrfs: remove unnecessary locking of cleaner_mutex to avoid deadlock

      After commmit e44163e17796 ("btrfs: explictly delete unused block groups
      in close_ctree and ro-remount"), added in the 4.3 merge window, we have
      calls to btrfs_delete_unused_bgs() while holding the cleaner_mutex.
      This can cause a deadlock with a concurrent block group relocation (when
      a filesystem balance or shrink operation is in progress for example)
      because btrfs_delete_unused_bgs() locks delete_unused_bgs_mutex and the
      relocation path locks first delete_unused_bgs_mutex and then it locks
      cleaner_mutex, resulting in a classic ABBA deadlock:

               CPU 0                                        CPU 1

      lock fs_info->cleaner_mutex

                                                 __btrfs_balance() || 
btrfs_shrink_device()
                                                   lock 
fs_info->delete_unused_bgs_mutex
                                                   btrfs_relocate_chunk()
                                                     
btrfs_relocate_block_group()
                                                       lock 
fs_info->cleaner_mutex
      btrfs_delete_unused_bgs()
        lock fs_info->delete_unused_bgs_mutex

      Fix this by not taking the cleaner_mutex before calling
      btrfs_delete_unused_bgs() because it's no longer needed after
      commit 67c5e7d464bc ("Btrfs: fix race between balance and unused block
      group deletion"). The mutex fs_info->delete_unused_bgs_mutex, the
      spinlock fs_info->unused_bgs_lock and a block group's spinlock are
      enough to get correct serialization between tasks running relocation
      and unused block group deletion (as well as between multiple tasks
      concurrently calling btrfs_delete_unused_bgs()).

      This issue was discussed (in the mailing list) during the review of
      the patch titled "btrfs: explictly delete unused block groups in
      close_ctree and ro-remount" and it was agreed that acquiring the
      cleaner mutex had to be dropped after the patch titled
      "Btrfs: fix race between balance and unused block group deletion"
      got merged (both patches were submitted at about the same time, but
      one landed in kernel 4.2 and the other in the 4.3 merge window).

      Signed-off-by: Filipe Manana <fdmanana@xxxxxxxx>

  commit 3a0e27d84bb9abac5e39dc71706768a88c72cb71
  Author: Arnaud Pouliquen <arnaud.pouliquen@xxxxxx>
  Date:   Thu Sep 10 09:45:55 2015 +0200

      ASoC: sti: check return of of_property_read

      Add check on of_property_read to return error when
      DT required property is not defined.

      Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@xxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit d630526d0aa6acc0868dae892b1febda72029a3e
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 10 10:19:52 2015 +0200

      spi: atmel: remove warning when !CONFIG_PM_SLEEP

      When CONFIG_PM is defined but not CONFIG_PM_SLEEP (this happens when
      CONFIG_SUSPEND is not defined), there is the following warning:

      drivers/spi/spi-atmel.c:1723:12: warning: â??atmel_spi_suspendâ?? defined 
but not used [-Wunused-function]
      drivers/spi/spi-atmel.c:1741:12: warning: â??atmel_spi_resumeâ?? defined 
but not used [-Wunused-function]

      Enclose both atmel_spi_suspend and atmel_spi_resume in #ifdef
      CONFIG_PM_SLEEP/#endif to solve that.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 2a3fffd45822070309bcf0b1e1dae624d633824a
  Author: Martin Sperl <kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Sep 10 09:32:14 2015 +0000

      spi: bcm2835: BUG: fix wrong use of PAGE_MASK

      There is a bug in the alignment checking of transfers,
      that results in DMA not being used for un-aligned
      transfers that do not cross page-boundries, which is valid.

      This is due to a missconception of the meaning PAGE_MASK
      when implementing that check originally - (PAGE_SIZE - 1)
      should have been used instead.

      Also fixes a copy/paste error.

      Reported-by: <robert@xxxxxxxxxxx>
      Signed-off-by: Martin Sperl <kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 9da75de030bb6e49475ef37c8495d07e98cfeb33
  Author: LABBE Corentin <clabbe.montjoie@xxxxxxxxx>
  Date:   Wed Sep 9 14:27:07 2015 +0200

      crypto: sunxi-ss - Fix a possible driver hang with ciphers

      The sun4i_ss_opti_poll function cipher data until the output miter have
      a length of 0.
      If the crypto API client, give more SGs than necessary this could result
      in an infinite loop.
      Fix it by checking for remaining bytes, just like sun4i_ss_cipher_poll().

      Signed-off-by: LABBE Corentin <clabbe.montjoie@xxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit f1ab428711358fbb747ba392c3448462494e6c6a
  Author: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
  Date:   Wed Sep 9 18:22:35 2015 +1000

      crypto: vmx - VMX crypto should depend on CONFIG_VSX

      This code uses FP (floating point), Altivec and VSX (Vector-Scalar
      Extension). It can just depend on CONFIG_VSX though, because that
      already depends on FP and Altivec.

      Otherwise we get lots of link errors such as:

        drivers/built-in.o: In function `.p8_aes_setkey':
        aes.c:(.text+0x2d325c): undefined reference to `.enable_kernel_altivec'
        aes.c:(.text+0x2d326c): undefined reference to `.enable_kernel_vsx'

      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 982b0b2dd590c00f089fc6fe915bd0cb302a7f5c
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Wed Sep 9 16:52:09 2015 +0200

      drm/i915: Fix CSR MMIO address check

      Fix a wrong logical AND (&&) used for the range check of CSR MMIO.

      Spotted nicely by gcc -Wlogical-op flag:
        drivers/gpu/drm/i915/intel_csr.c: In function â??finish_csr_loadâ??:
        drivers/gpu/drm/i915/intel_csr.c:353:41: warning: logical â??andâ?? of 
mutually exclusive tests is always false [-Wlogical-op]

      Fixes: eb805623d8b1 ('drm/i915/skl: Add support to load SKL CSR 
firmware.')
      Cc: <stable@xxxxxxxxxxxxxxx> # v4.2
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>
      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Reviewed-by: Animesh Manna <animesh.manna@xxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit e297c939b745e420ef0b9dc989cb87bda617b399
  Author: Paul Mackerras <paulus@xxxxxxxxxx>
  Date:   Thu Sep 10 14:36:21 2015 +1000

      powerpc/MSI: Fix race condition in tearing down MSI interrupts

      This fixes a race which can result in the same virtual IRQ number
      being assigned to two different MSI interrupts.  The most visible
      consequence of that is usually a warning and stack trace from the
      sysfs code about an attempt to create a duplicate entry in sysfs.

      The race happens when one CPU (say CPU 0) is disposing of an MSI
      while another CPU (say CPU 1) is setting up an MSI.  CPU 0 calls
      (for example) pnv_teardown_msi_irqs(), which calls
      msi_bitmap_free_hwirqs() to indicate that the MSI (i.e. its
      hardware IRQ number) is no longer in use.  Then, before CPU 0 gets
      to calling irq_dispose_mapping() to free up the virtal IRQ number,
      CPU 1 comes in and calls msi_bitmap_alloc_hwirqs() to allocate an
      MSI, and gets the same hardware IRQ number that CPU 0 just freed.
      CPU 1 then calls irq_create_mapping() to get a virtual IRQ number,
      which sees that there is currently a mapping for that hardware IRQ
      number and returns the corresponding virtual IRQ number (which is
      the same virtual IRQ number that CPU 0 was using).  CPU 0 then
      calls irq_dispose_mapping() and frees that virtual IRQ number.
      Now, if another CPU comes along and calls irq_create_mapping(), it
      is likely to get the virtual IRQ number that was just freed,
      resulting in the same virtual IRQ number apparently being used for
      two different hardware interrupts.

      To fix this race, we just move the call to msi_bitmap_free_hwirqs()
      to after the call to irq_dispose_mapping().  Since virq_to_hw()
      doesn't work for the virtual IRQ number after irq_dispose_mapping()
      has been called, we need to call it before irq_dispose_mapping() and
      remember the result for the msi_bitmap_free_hwirqs() call.

      The pattern of calling msi_bitmap_free_hwirqs() before
      irq_dispose_mapping() appears in 5 places under arch/powerpc, and
      appears to have originated in commit 05af7bd2d75e ("[POWERPC] MPIC
      U3/U4 MSI backend") from 2007.

      Fixes: 05af7bd2d75e ("[POWERPC] MPIC U3/U4 MSI backend")
      Cc: stable@xxxxxxxxxxxxxxx # v2.6.22+
      Reported-by: Alexey Kardashevskiy <aik@xxxxxxxxx>
      Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 1ab1e895492d8084dfc1c854efacde219e56b8c1
  Author: Henrik Austad <henrik@xxxxxxxxx>
  Date:   Wed Sep 9 12:25:17 2015 +0200

      ether: add IEEE 1722 ethertype - TSN

      IEEE 1722 describes AVB (later renamed to TSN - Time Sensitive
      Networking), a protocol, encapsualtion and synchronization to utilize
      standard networks for audio/video (and later other time-sensitive)
      streams.

      This standard uses ethertype 0x22F0.

      http://standards.ieee.org/develop/regauth/ethertype/eth.txt

      This is a respin of a previous patch ("ether: add AVB frame type
      ETH_P_AVB")

      CC: "David S. Miller" <davem@xxxxxxxxxxxxx>
      CC: netdev@xxxxxxxxxxxxxxx
      CC: linux-api@xxxxxxxxxxxxxxx
      CC: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Henrik Austad <henrik@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b14132797d8041a42e03f4ffa1e722da1425adfb
  Author: Mike Frysinger <vapier@xxxxxxxxxx>
  Date:   Tue Aug 18 03:28:01 2015 -0400

      elf-em.h: move EM_MICROBLAZE to the common header

      The linux/audit.h header uses EM_MICROBLAZE in order to define
      AUDIT_ARCH_MICROBLAZE, but it's only available in the microblaze
      asm headers.  Move it to the common elf-em.h header so that the
      define can be used on non-microblaze systems.  Otherwise we get
      build errors that EM_MICROBLAZE isn't defined when we try to use
      the AUDIT_ARCH_MICROBLAZE symbol.

      Signed-off-by: Mike Frysinger <vapier@xxxxxxxxxx>
      Signed-off-by: Michal Simek <michal.simek@xxxxxxxxxx>

  commit 6bb0fef489f667cf701853054f44579754f00a06
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Thu Sep 10 02:10:57 2015 +0200

      netlink, mmap: fix edge-case leakages in nf queue zero-copy

      When netlink mmap on receive side is the consumer of nf queue data,
      it can happen that in some edge cases, we write skb shared info into
      the user space mmap buffer:

      Assume a possible rx ring frame size of only 4096, and the network skb,
      which is being zero-copied into the netlink skb, contains page frags
      with an overall skb->len larger than the linear part of the netlink
      skb.

      skb_zerocopy(), which is generic and thus not aware of the fact that
      shared info cannot be accessed for such skbs then tries to write and
      fill frags, thus leaking kernel data/pointers and in some corner cases
      possibly writing out of bounds of the mmap area (when filling the
      last slot in the ring buffer this way).

      I.e. the ring buffer slot is then of status NL_MMAP_STATUS_VALID, has
      an advertised length larger than 4096, where the linear part is visible
      at the slot beginning, and the leaked sizeof(struct skb_shared_info)
      has been written to the beginning of the next slot (also corrupting
      the struct nl_mmap_hdr slot header incl. status etc), since skb->end
      points to skb->data + ring->frame_size - NL_MMAP_HDRLEN.

      The fix adds and lets __netlink_alloc_skb() take the actual needed
      linear room for the network skb + meta data into account. It's completely
      irrelevant for non-mmaped netlink sockets, but in case mmap sockets
      are used, it can be decided whether the available skb_tailroom() is
      really large enough for the buffer, or whether it needs to internally
      fallback to a normal alloc_skb().

      >From nf queue side, the information whether the destination port is
      an mmap RX ring is not really available without extra port-to-socket
      lookup, thus it can only be determined in lower layers i.e. when
      __netlink_alloc_skb() is called that checks internally for this. I
      chose to add the extra ldiff parameter as mmap will then still work:
      We have data_len and hlen in nfqnl_build_packet_message(), data_len
      is the full length (capped at queue->copy_range) for skb_zerocopy()
      and hlen some possible part of data_len that needs to be copied; the
      rem_len variable indicates the needed remaining linear mmap space.

      The only other workaround in nf queue internally would be after
      allocation time by f.e. cap'ing the data_len to the skb_tailroom()
      iff we deal with an mmap skb, but that would 1) expose the fact that
      we use a mmap skb to upper layers, and 2) trim the skb where we
      otherwise could just have moved the full skb into the normal receive
      queue.

      After the patch, in my test case the ring slot doesn't fit and therefore
      shows NL_MMAP_STATUS_COPY, where a full skb carries all the data and
      thus needs to be picked up via recv().

      Fixes: 3ab1f683bf8b ("nfnetlink: add support for memory mapped netlink")
      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a66e36568e30ed3714c0e3a12bd3b64696343ff5
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Thu Sep 10 01:20:46 2015 +0200

      netlink, mmap: don't walk rx ring on poll if receive queue non-empty

      In case of netlink mmap, there can be situations where received frames
      have to be placed into the normal receive queue. The ring buffer indicates
      this through NL_MMAP_STATUS_COPY, so the user is asked to pick them up
      via recvmsg(2) syscall, and to put the slot back to NL_MMAP_STATUS_UNUSED.

      Commit 0ef707700f1c ("netlink: rx mmap: fix POLLIN condition") changed
      polling, so that we walk in the worst case the whole ring through the
      new netlink_has_valid_frame(), for example, when the ring would have no
      NL_MMAP_STATUS_VALID, but at least one NL_MMAP_STATUS_COPY frame.

      Since we do a datagram_poll() already earlier to pick up a mask that could
      possibly contain POLLIN | POLLRDNORM already (due to NL_MMAP_STATUS_COPY),
      we can skip checking the rx ring entirely.

      In case the kernel is compiled with !CONFIG_NETLINK_MMAP, then all this is
      irrelevant anyway as netlink_poll() is just defined as datagram_poll().

      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f2be053c83ee93888fc09d90df2bded0deb28947
  Author: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
  Date:   Thu Sep 10 09:55:13 2015 +0530

      cxgb4: changes for new firmware 1.14.4.0

      Incorporate fw_ldst_cmd structure change for new firmware and also
      update version string for the same

      Signed-off-by: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9638d19e481605217f95d9ab3c8896e499b1407d
  Author: Nimrod Andy <B38611@xxxxxxxxxxxxx>
  Date:   Thu Sep 10 09:35:39 2015 +0800

      net: fec: add netif status check before set mac address

      There exist one issue by below case that case system hang:
      ifconfig eth0 down
      ifconfig eth0 hw ether 00:10:19:19:81:19

      After eth0 down, all fec clocks are gated off. In the 
.fec_set_mac_address()
      function, it will set new MAC address to registers, which causes system 
hang.

      So it needs to add netif status check to avoid registers access when 
clocks are
      gated off. Until eth0 up the new MAC address are wrote into related 
registers.

      V2:
      As Lucas Stach's suggestion, add a comment in the code to explain why it 
needed.

      CC: Lucas Stach <l.stach@xxxxxxxxxxxxxx>
      CC: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: Fugang Duan <B38611@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1d68c286384d147838d252e2969f2f787e7fbffb
  Merge: 52fe51f 2dd49e0
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 20:27:54 2015 -0700

      Merge branch 'r8152-autoresume'

      Hayes Wang says:

      ====================
      r8152: fix the autoresume may fail

      Fix the autosuspend issues which occur about linking change.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2dd49e0f16fb0e07c6fcc1322ebba310f5827072
  Author: hayeswang <hayeswang@xxxxxxxxxxx>
  Date:   Mon Sep 7 11:57:44 2015 +0800

      r8152: fix the runtime suspend issues

      Fix the runtime suspend issues result from the linking change.

      Case 1:
      a) link down occurs.
      b) driver disable tx/rx.
      c) autosuspend occurs.
      d) hw linking up.
      e) device suspends without enabling tx/rx.
      f) couldn't wake up when receiving packets.

      Case 2:
      a) Nway results in linking down.
      b) autosuspend occurs.
      c) device suspends.
      d) device may not wake up when linking up.

      Signed-off-by: Hayes Wang <hayeswang@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d0942473e3ca4629a40bbf0c9fd74fc0c7ff2a79
  Author: hayeswang <hayeswang@xxxxxxxxxxx>
  Date:   Mon Sep 7 11:57:43 2015 +0800

      r8152: split DRIVER_VERSION

      Split DRIVER_VERSION into NETNEXT_VERSION and NET_VERSION. Then,
      according to the value of DRIVER_VERSION, we could know which
      patches are used generally without comparing the source code.

      Signed-off-by: Hayes Wang <hayeswang@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 52fe51f8523751da0e79c85350c47eb3bb94da5b
  Author: Wu Fengguang <fengguang.wu@xxxxxxxxx>
  Date:   Thu Sep 10 06:57:12 2015 +0800

      ipv6: fix ifnullfree.cocci warnings

      net/ipv6/route.c:2946:3-8: WARNING: NULL check before freeing functions 
like kfree, debugfs_remove, debugfs_remove_recursive or usb_free_urb is not 
needed. Maybe consider reorganizing relevant code to avoid passing NULL values.

       NULL check before some freeing functions is not needed.

       Based on checkpatch warning
       "kfree(NULL) is safe this check is probably not required"
       and kfreeaddr.cocci by Julia Lawall.

      Generated by: scripts/coccinelle/free/ifnullfree.cocci

      CC: Roopa Prabhu <roopa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 792aec47d59d951865cc617a97b6e6be53d4b977
  Author: Woojung.Huh@xxxxxxxxxxxxx <Woojung.Huh@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 20:49:53 2015 +0000

      add microchip LAN88xx phy driver

      Add Microchip LAN88XX phy driver for phylib.

      Signed-off-by: Woojung Huh <woojung.huh@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit dfc50fcaad574e5c8c85cbc83eca1426b2413fa4
  Author: Alexey Brodkin <Alexey.Brodkin@xxxxxxxxxxxx>
  Date:   Wed Sep 9 18:01:08 2015 +0300

      stmmac: fix check for phydev being open

      Current check of phydev with IS_ERR(phydev) may make not much sense
      because of_phy_connect() returns NULL on failure instead of error value.

      Still for checking result of phy_connect() IS_ERR() makes perfect sense.

      So let's use combined check IS_ERR_OR_NULL() that covers both cases.

      Cc: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
      Cc: Giuseppe Cavallaro <peppe.cavallaro@xxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: stable@xxxxxxxxxxxxxxx
      Cc: David Miller <davem@xxxxxxxxxxxxx>
      Signed-off-by: Alexey Brodkin <abrodkin@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1f0ca208531a152e1da6aa43d095fe0b2039d9ca
  Author: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 10:38:05 2015 +0200

      net: qlcnic: delete redundant memsets

      In all cases, mbx->req.arg and mbx->rsp.arg have just been allocated
      using kcalloc(), so these six memsets are redundant.

      Signed-off-by: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b66a60857ca4fae5900c5d81c2ba04e657509b99
  Author: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 10:38:04 2015 +0200

      net: mv643xx_eth: use kzalloc

      The double memset is a little ugly; using kzalloc avoids it altogether.

      Signed-off-by: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e9b5ac277e8f8dffa28f85a065e2fd890d9e48c7
  Author: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 10:38:03 2015 +0200

      net: jme: use kzalloc() instead of kmalloc+memset

      Using kzalloc saves a tiny bit on .text.

      Signed-off-by: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ce8e5c7035098fa5b8fea910f14be59b8cace81f
  Author: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 10:38:02 2015 +0200

      net: cavium: liquidio: use kzalloc in setup_glist()

      We save a little .text and get rid of the sizeof(...) style
      inconsistency.

      Signed-off-by: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c6e59bdac940e63cfabd40a89d342eb470b009b9
  Merge: 312146b 208487a
  Author: Kevin Hilman <khilman@xxxxxxxxxx>
  Date:   Wed Sep 9 16:15:34 2015 -0700

      Merge tag 'qcom-soc-for-4.3-rc2' of 
git://codeaurora.org/quic/kernel/agross-msm into next/late

      Qualcomm ARM Based SoC Updates for 4.3-rc2

      * Fix errant private access in SMEM
      * Fix use of correct remote processor ID in SMD transactions
      * Correct SMD fBLOCKREADINTR handling

      * tag 'qcom-soc-for-4.3-rc2' of 
git://codeaurora.org/quic/kernel/agross-msm:
        soc: qcom: smd: Correct fBLOCKREADINTR handling
        soc: qcom: smd: Use correct remote processor ID
        soc: qcom: smem: Fix errant private access
        devicetree: soc: Add Qualcomm SMD based RPM DT binding
        soc: qcom: Driver for the Qualcomm RPM over SMD
        soc: qcom: Add Shared Memory Driver
        soc: qcom: Add device tree binding for Shared Memory Device
        drivers: qcom: Select QCOM_SCM unconditionally for QCOM_PM
        soc: qcom: Add Shared Memory Manager driver

  commit 312146b50781a9ed1172402e170983a5e967d55d
  Merge: 7f98121 8f1dc3c
  Author: Kevin Hilman <khilman@xxxxxxxxxx>
  Date:   Wed Sep 9 16:15:19 2015 -0700

      Merge tag 'qcom-dt-for-4.3-rc2' of 
git://codeaurora.org/quic/kernel/agross-msm into next/late

      Qualcomm ARM Based Device Tree Updates for v4.3-rc2

      * Add labels for serial nodes to be used for aliasing and stdout-path
      * Add stdout-path for APQ8064 Compulab QS600
      * Add stdout-path for APQ8064 Inforce 6410
      * Add stdout-path for APQ8074 Dragonboard
      * Add stdout-path for APQ8084 Inforce 6540
      * Add stdout-path for APQ8084 MTP
      * Add stdout-path for IPQ8064 AP148
      * Add stdout-path for MSM8660 Surf
      * Add stdout-path for MSM8960 CDP
      * Add stdout-path for MSM8974 Xperia Honami

      * tag 'qcom-dt-for-4.3-rc2' of 
git://codeaurora.org/quic/kernel/agross-msm: (24 commits)
        ARM: dts: qcom: msm8974-sony-xperia-honami: Use stdout-path
        ARM: dts: qcom: msm8960-cdp: Use stdout-path
        ARM: dts: qcom: msm8660-surf: Use stdout-path
        ARM: dts: qcom: ipq8064-ap148: Use stdout-path
        ARM: dts: qcom: apq8084-mtp: Use stdout-path
        ARM: dts: qcom: apq8084-ifc6540: Use stdout-path
        ARM: dts: qcom: apq8074-dragonboard: Use stdout-path
        ARM: dts: qcom: apq8064-ifc6410: Use stdout-path
        ARM: dts: qcom: apq8064-cm-qs600: Use stdout-path
        ARM: dts: qcom: Label serial nodes for aliasing and stdout-path
        ARM: dts: qs600: Add real regulators to sdcc
        ARM: dts: ifc6410: add real regulators for sdcc nodes.
        ARM: dts: apq8064: remove temporary fixed regulator for mmc
        ARM: dts: apq8064: fix missing gsbi cell-index
        ARM: dts: apq8064: Add DT support for GSBI6 and for UART pin mux
        ARM: dts: apq8064: add pm8921 mpp support
        ARM: dts: apq8064: Add pm8921 mfd and its gpio node
        ARM: dts: msm8974: Add smem reservation and node
        ARM: dts: msm8974: Add tcsr mutex node
        ARM: dts: qcom: Add ks8851 node for wired ethernet
        ...

  commit 7f9812122ffaebd71d4d964f6f5109473a9fc683
  Merge: 71d4404 ae1973a
  Author: Kevin Hilman <khilman@xxxxxxxxxx>
  Date:   Wed Sep 9 16:07:41 2015 -0700

      Merge branch 'next/defconfig' into next/late

      * next/defconfig: (45 commits)
        ARM: multi_v7_defconfig: Enable PBIAS regulator
        ARM: add TC2 PM support to multi_v7_defconfig
        ARM: tegra: Update multi_v7_defconfig
        ARM: tegra: Update default configuration
        ARM: at91/defconfig: at91_dt: remove ARM_AT91_ETHER
        ARM: at91/defconfig: at91_dt: enable DRM hlcdc support
        ARM: at91: at91_dt_defconfig: enable ISI and ov2640 support
        ARM: multi_v7_defconfig: Enable Allwinner P2WI, PWM, DMA_SUN6I, 
cryptodev
        ARM: sunxi_defconfig: Enable DMA_SUN6I, P2WI, PWM, cryptodev, EXTCON, 
FHANDLE
        ARM: shmobile: Enable fixed voltage regulator in shmobile_defconfig
        ARM: multi_v7_defconfig: Select MX6UL and MX7D
        ARM: prima2_defconfig: enable build for hwspinlock
        ARM: prima2_defconfig: enable build for RTC
        ARM: prima2_defconfig: enable build for misc input
        ARM: prima2_defconfig: enable build for SiRFSoC SDHC host
        ARM: prima2_defconfig: fix the outdated defconfig
        ARM: imx_v6_v7_defconfig: Select CONFIG_IKCONFIG_PROC
        ARM: defconfig: orion5x: add DT support
        ARM: qcom_defconfig: Enable options for KS8851 ethernet
        ARM: multi_v7_defconfig: Enable support for PWM Regulators
        ...

  commit ae1973a2df8ea48ab04cd406c569ce0b5721dd99
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Fri Sep 4 17:43:15 2015 +0530

      ARM: multi_v7_defconfig: Enable PBIAS regulator

      PBIAS regulator is required for MMC module in OMAP2, OMAP3, OMAP4,
      OMAP5 and DRA7 SoCs. Enable it here.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Signed-off-by: Kevin Hilman <khilman@xxxxxxxxxx>

  commit 71d440499b8ecbd5289bdf4ef5cce6eb62fffb0d
  Merge: 7c4ecc7 9738031
  Author: Kevin Hilman <khilman@xxxxxxxxxx>
  Date:   Wed Sep 9 15:42:45 2015 -0700

      Merge branch 'drivers/reset' into next/late

      * drivers/reset:
        reset: ath79: Fix missing spin_lock_init
        reset: Add (devm_)reset_control_get stub functions
        reset: reset-zynq: Adding support for Xilinx Zynq reset controller.
        docs: dts: Added documentation for Xilinx Zynq Reset Controller 
bindings.
        MIPS: ath79: Add the reset controller to the AR9132 dtsi
        reset: Add a driver for the reset controller on the AR71XX/AR9XXX
        devicetree: Add bindings for the ATH79 reset controller
        reset: socfpga: Update reset-socfpga to read the altr,modrst-offset 
property
        doc: dt: add documentation for lpc1850-rgu reset driver
        reset: add driver for lpc18xx rgu
        reset: sti: constify of_device_id array
        ARM: STi: DT: Move reset controller constants into common location
        MAINTAINERS: add include/dt-bindings/reset path to reset controller 
entry

  commit 9738031561d246f625325badb03a1f1eca2d1b01
  Merge: 5d44595 f319cb8
  Author: Kevin Hilman <khilman@xxxxxxxxxx>
  Date:   Wed Sep 9 15:41:42 2015 -0700

      Merge tag 'reset-for-4.3-fixes' of git://git.pengutronix.de/git/pza/linux 
into drivers/reset

      Merge "Reset controller fixes for v4.3" from Philipp Zabel:

      Reset controller fixes for v4.3

      - added stubs to avoid build breakage in COMPILE_TEST
        configurations with RESET_CONTROLLER disabled
      - fixed missing spinlock initialization in ath79 driver

      * tag 'reset-for-4.3-fixes' of git://git.pengutronix.de/git/pza/linux:
        reset: ath79: Fix missing spin_lock_init
        reset: Add (devm_)reset_control_get stub functions

  commit af4cb25df93d2e7a97d65db2bfacaa4400988dea
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 21:19:49 2015 +0100

      ARM: uaccess: fix undefined instruction on ARMv7M/noMMU

      The use of get_domain() in copy_thread() results in an oops on
      ARMv7M/noMMU systems.  The thread cpu_domain value is only used when
      CONFIG_CPU_USE_DOMAINS is enabled, so there's no need to save the
      value in copy_thread() except when this is enabled, and this option
      will never be enabled on these platforms.

      Unhandled exception: IPSR = 00000006 LR = fffffff1
      CPU: 0 PID: 0 Comm: swapper Not tainted 
4.2.0-next-20150909-00001-gb8ec5ad #41
      Hardware name: NXP LPC18xx/43xx (Device Tree)
      task: 2823fbe0 ti: 2823c000 task.ti: 2823c000
      PC is at copy_thread+0x18/0x92
      LR is at copy_thread+0x19/0x92
      pc : [<2800a46e>]    lr : [<2800a46f>]    psr: 4100000b
      sp : 2823df00  ip : 00000000  fp : 287c81c0
      r10: 00000000  r9 : 00800300  r8 : 287c8000
      r7 : 287c8000  r6 : 2818908d  r5 : 00000000  r4 : 287ca000
      r3 : 00000000  r2 : 00000000  r1 : fffffff0  r0 : 287ca048
      xPSR: 4100000b

      Reported-by: Ariel D'Alessandro <ariel@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 296254f3223d201f2aa53f5f717eedfdc63f3db8
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Sep 7 00:30:06 2015 +0100

      ARM: uaccess: remove unneeded uaccess_save_and_disable macro

      This macro is never referenced, remove it.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 39dc53deff30d9b239ac36cfeb0ef2022d03a449
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Sep 7 00:29:15 2015 +0100

      ARM: swpan: fix nwfpe for uaccess changes

      NWFPE needs to access userspace to check whether the next instruction
      is another FP instruction.  Allow userspace access for this read.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit f53de1e9a4aaf8cbe08845da6f7ff26a078ac507
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Wed Sep 9 14:20:56 2015 +0200

      net: ipv6: use common fib_default_rule_pref

      This switches IPv6 policy routing to use the shared
      fib_default_rule_pref() function of IPv4 and DECnet. It is also used in
      multicast routing for IPv4 as well as IPv6.

      The motivation for this patch is a complaint about iproute2 behaving
      inconsistent between IPv4 and IPv6 when adding policy rules: Formerly,
      IPv6 rules were assigned a fixed priority of 0x3FFF whereas for IPv4 the
      assigned priority value was decreased with each rule added.

      Since then all users of the default_pref field have been converted to
      assign the generic function fib_default_rule_pref(), fib_nl_newrule()
      may just use it directly instead. Therefore get rid of the function
      pointer altogether and make fib_default_rule_pref() static, as it's not
      used outside fib_rules.c anymore.

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 444c5f92ed152346aef0952316e0ea855129846c
  Author: Tobias Klauser <tklauser@xxxxxxxxxx>
  Date:   Wed Sep 9 11:24:29 2015 +0200

      net: ethoc: Remove unnecessary #ifdef CONFIG_OF

      For !CONFIG_OF of_get_property() is defined to always return NULL. Thus
      there's no need to protect the call to of_get_property() with #ifdef
      CONFIG_OF.

      Signed-off-by: Tobias Klauser <tklauser@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 03679a14739a0d4c14b52ba65a69ff553bfba73b
  Author: Florian Fainelli <f.fainelli@xxxxxxxxx>
  Date:   Tue Sep 8 20:06:41 2015 -0700

      net: dsa: bcm_sf2: Fix 64-bits register writes

      The macro to write 64-bits quantities to the 32-bits register swapped
      the value and offsets arguments, we want to preserve the ordering of the
      arguments with respect to how writel() is implemented for instance:
      value first, offset/base second.

      Fixes: 246d7f773c13 ("net: dsa: add Broadcom SF2 switch driver")
      Signed-off-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Reviewed-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 687f07156b0c99205c21aa4e2986564046d342fe
  Author: Alexei Starovoitov <ast@xxxxxxxxxxxx>
  Date:   Tue Sep 8 13:40:01 2015 -0700

      bpf: fix out of bounds access in verifier log

      when the verifier log is enabled the print_bpf_insn() is doing
      bpf_alu_string[BPF_OP(insn->code) >> 4]
      and
      bpf_jmp_string[BPF_OP(insn->code) >> 4]
      where BPF_OP is a 4-bit instruction opcode.
      Malformed insns can cause out of bounds access.
      Fix it by sizing arrays appropriately.

      The bug was found by clang address sanitizer with libfuzzer.

      Reported-by: Yonghong Song <yhs@xxxxxxxxxxxx>
      Signed-off-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Acked-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6b9ea5a64ed5eeb3f68f2e6fcce0ed1179801d1e
  Author: Roopa Prabhu <roopa@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 10:53:04 2015 -0700

      ipv6: fix multipath route replace error recovery

      Problem:
      The ecmp route replace support for ipv6 in the kernel, deletes the
      existing ecmp route too early, ie when it installs the first nexthop.
      If there is an error in installing the subsequent nexthops, its too late
      to recover the already deleted existing route leaving the fib
      in an inconsistent state.

      This patch reduces the possibility of this by doing the following:
      a) Changes the existing multipath route add code to a two stage process:
        build rt6_infos + insert them
        ip6_route_add rt6_info creation code is moved into
        ip6_route_info_create.
      b) This ensures that most errors are caught during building rt6_infos
        and we fail early
      c) Separates multipath add and del code. Because add needs the special
        two stage mode in a) and delete essentially does not care.
      d) In any event if the code fails during inserting a route again, a
        warning is printed (This should be unlikely)

      Before the patch:
      $ip -6 route show
      3000:1000:1000:1000::2 via fe80::202:ff:fe00:b dev swp49s0 metric 1024
      3000:1000:1000:1000::2 via fe80::202:ff:fe00:d dev swp49s1 metric 1024
      3000:1000:1000:1000::2 via fe80::202:ff:fe00:f dev swp49s2 metric 1024

      /* Try replacing the route with a duplicate nexthop */
      $ip -6 route change 3000:1000:1000:1000::2/128 nexthop via
      fe80::202:ff:fe00:b dev swp49s0 nexthop via fe80::202:ff:fe00:d dev
      swp49s1 nexthop via fe80::202:ff:fe00:d dev swp49s1
      RTNETLINK answers: File exists

      $ip -6 route show
      /* previously added ecmp route 3000:1000:1000:1000::2 dissappears from
       * kernel */

      After the patch:
      $ip -6 route show
      3000:1000:1000:1000::2 via fe80::202:ff:fe00:b dev swp49s0 metric 1024
      3000:1000:1000:1000::2 via fe80::202:ff:fe00:d dev swp49s1 metric 1024
      3000:1000:1000:1000::2 via fe80::202:ff:fe00:f dev swp49s2 metric 1024

      /* Try replacing the route with a duplicate nexthop */
      $ip -6 route change 3000:1000:1000:1000::2/128 nexthop via
      fe80::202:ff:fe00:b dev swp49s0 nexthop via fe80::202:ff:fe00:d dev
      swp49s1 nexthop via fe80::202:ff:fe00:d dev swp49s1
      RTNETLINK answers: File exists

      $ip -6 route show
      3000:1000:1000:1000::2 via fe80::202:ff:fe00:b dev swp49s0 metric 1024
      3000:1000:1000:1000::2 via fe80::202:ff:fe00:d dev swp49s1 metric 1024
      3000:1000:1000:1000::2 via fe80::202:ff:fe00:f dev swp49s2 metric 1024

      Fixes: 27596472473a ("ipv6: fix ECMP route replacement")
      Signed-off-by: Roopa Prabhu <roopa@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Nicolas Dichtel <nicolas.dichtel@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 208487a8f69084992f76ef87ddd3e00e5eaf6587
  Author: Bjorn Andersson <bjorn.andersson@xxxxxxxxxxxxxx>
  Date:   Mon Aug 24 13:38:46 2015 -0700

      soc: qcom: smd: Correct fBLOCKREADINTR handling

      fBLOCKREADINTR is masking the notification from the remote and should
      hence be cleared while we're waiting the tx fifo to drain. Also change
      the reset state to mask the notification, as send is the only use case
      where we're interested in it.

      Signed-off-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxxxxxx>
      Signed-off-by: Andy Gross <agross@xxxxxxxxxxxxxx>

  commit 93dbed9121cc8e0fcc93edd9fca901322bdfbd1a
  Author: Andy Gross <agross@xxxxxxxxxxxxxx>
  Date:   Wed Aug 26 14:42:45 2015 -0500

      soc: qcom: smd: Use correct remote processor ID

      This patch fixes SMEM addressing issues when remote processors need to use
      secure SMEM partitions.

      Signed-off-by: Andy Gross <agross@xxxxxxxxxxxxxx>
      Reviewed-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxxxxxx>

  commit 18912806bbf8bd6e2b5cb12317679790eb0e0ce4
  Author: Andy Gross <agross@xxxxxxxxxxxxxx>
  Date:   Tue Aug 11 23:48:15 2015 -0500

      soc: qcom: smem: Fix errant private access

      This patch corrects private partition item access.  Instead of falling 
back to
      global for instances where we have an actual host and remote partition 
existing,
      return the results of the private lookup.

      Signed-off-by: Andy Gross <agross@xxxxxxxxxxxxxx>

  commit 61e19ba99e2a88392dcaee4b5e7f3e23548b8164
  Merge: bc0195a ba68227
  Author: Andy Gross <agross@xxxxxxxxxxxxxx>
  Date:   Wed Sep 9 15:56:35 2015 -0500

      Merge tag 'qcom-soc-for-4.3' into v4.2-rc2

      Qualcomm ARM Based SoC Updates for 4.3

      * Add SMEM driver
      * Add SMD driver
      * Add RPM over SMD driver
      * Select QCOM_SCM by default

  commit 74da56ce5c6715630aed3ccc0fcb86a9210c1a56
  Author: Kristen Carlson Accardi <kristen@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 11:41:22 2015 -0700

      intel_pstate: fix PCT_TO_HWP macro

      PCT_TO_HWP does not take the actual range of pstates exported
      by HWP_CAPABILITIES in account, and is broken on most platforms.
      Remove the macro and set the min and max pstate for hwp by
      determining the range and adjusting by the min and max percent
      limits values.

      Signed-off-by: Kristen Carlson Accardi <kristen@xxxxxxxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 43717aadd2bc87fb10fbf1cd815c1cbae9bb95b3
  Author: Chen Yu <yu.c.chen@xxxxxxxxx>
  Date:   Wed Sep 9 18:27:31 2015 +0800

      intel_pstate: Fix user input of min/max to legal policy region

      In current code, max_perf_pct might be smaller than min_perf_pct
      by improper user input:

      $ grep . /sys/devices/system/cpu/intel_pstate/m*_perf_pct
      /sys/devices/system/cpu/intel_pstate/max_perf_pct:100
      /sys/devices/system/cpu/intel_pstate/min_perf_pct:100

      $ echo 80 > /sys/devices/system/cpu/intel_pstate/max_perf_pct

      $ grep . /sys/devices/system/cpu/intel_pstate/m*_perf_pct
      /sys/devices/system/cpu/intel_pstate/max_perf_pct:80
      /sys/devices/system/cpu/intel_pstate/min_perf_pct:100

      Fix this problem by 2 steps:
       1. Normalize the user input to [min_policy, max_policy].
       2. Make sure max_perf_pct>=min_perf_pct, suggested by Seiichi Ikarashi.

      Signed-off-by: Chen Yu <yu.c.chen@xxxxxxxxx>
      Acked-by: Kristen Carlson Accardi <kristen@xxxxxxxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 1b2b90cbea00670221f062814dc8bcecb3af7b90
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Wed Sep 9 16:58:22 2015 +0530

      PM / OPP: Return suspend_opp only if it is enabled

      There is no point returning suspend_opp, if it is disabled by the core.
      As we can't use it at all. Fix it.

      Fixes: 4eafbd15b6c8 ("PM / OPP: add dev_pm_opp_get_suspend_opp() helper")
      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 8f1dc3cf8f1e617ec888bcdb69111aae9bf4a9e0
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Tue Jun 16 14:31:53 2015 -0700

      ARM: dts: qcom: msm8974-sony-xperia-honami: Use stdout-path

      Use stdout-path so that we don't have to put the console on the
      kernel command line.

      Cc: Tim Bird <tim.bird@xxxxxxxxxxxxxx>
      Cc: Bjorn Andersson <bjorn.andersson@xxxxxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit c0ed595961c44beea0d0dc3b0e2b1ef354931bdf
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Tue Jun 16 14:31:52 2015 -0700

      ARM: dts: qcom: msm8960-cdp: Use stdout-path

      Use stdout-path so that we don't have to put the console on the
      kernel command line.

      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit a96731089e8e0d550f017359dacaee19463517c7
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Tue Jun 16 14:31:51 2015 -0700

      ARM: dts: qcom: msm8660-surf: Use stdout-path

      Use stdout-path so that we don't have to put the console on the
      kernel command line.

      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 9a61b3a39a88b955d89c5f19e01b0b19185ebce6
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Tue Jun 16 14:31:50 2015 -0700

      ARM: dts: qcom: ipq8064-ap148: Use stdout-path

      Use stdout-path so that we don't have to put the console on the
      kernel command line.

      Cc: Mathieu Olivari <mathieu@xxxxxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit ccfdf7cd7dfaa4140702ff43d760d0eb1578d725
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Tue Jun 16 14:31:49 2015 -0700

      ARM: dts: qcom: apq8084-mtp: Use stdout-path

      Use stdout-path so that we don't have to put the console on the
      kernel command line.

      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit d92c945d854f9d973d3a0836548c93ed249b8f3a
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Tue Jun 16 14:31:48 2015 -0700

      ARM: dts: qcom: apq8084-ifc6540: Use stdout-path

      Use stdout-path so that we don't have to put the console on the
      kernel command line.

      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 5f769789bdec38c1d5b19a8743924daf87f5d023
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Tue Jun 16 14:31:47 2015 -0700

      ARM: dts: qcom: apq8074-dragonboard: Use stdout-path

      Use stdout-path so that we don't have to put the console on the
      kernel command line.

      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 7f9e28b61057da3a4aa56a79436916a821e63a35
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Tue Jun 16 14:31:46 2015 -0700

      ARM: dts: qcom: apq8064-ifc6410: Use stdout-path

      Use stdout-path so that we don't have to put the console on the
      kernel command line.

      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 4e19db11e99b27bdd4817c3d58a7ead7af8d7d7c
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Tue Jun 16 14:31:45 2015 -0700

      ARM: dts: qcom: apq8064-cm-qs600: Use stdout-path

      Use stdout-path so that we don't have to put the console on the
      kernel command line.

      Cc: Mike Rapoport <mike.rapoport@xxxxxxxxx>
      Cc: Igor Grinberg <grinberg@xxxxxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 10bfcfea9bbe91adf79cc4efc9c764edd0cbadda
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Tue Jun 16 14:31:44 2015 -0700

      ARM: dts: qcom: Label serial nodes for aliasing and stdout-path

      Add a label to the serial nodes that are being used for the
      console.

      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 9f384d67f2334b5888ac9e6302f3c35a09b09787
  Merge: bc0195a baff39e
  Author: Andy Gross <agross@xxxxxxxxxxxxxx>
  Date:   Wed Sep 9 14:56:32 2015 -0500

      Merge tag 'qcom-dt-for-4.3' into v4.2-rc2

      Qualcomm ARM Based Device Tree Updates for v4.3

      * Switch to use pinctrl compatible for GPIOs
      * Add RPM regulators for MSM8960
      * Add SPI Ethernet support on MSM8960 CDP
      * Add SMEM support along with dependencies
      * Add PM8921 support for GPIO and MPP
      * Fix GSBI cell index
      * Switch to use real regulators on APQ8064 w/ SDCC

  commit 592867bfabe2fcb449393ba7eb0de4f972a08c63
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Tue Sep 8 18:00:09 2015 +0200

      ebpf: fix fd refcount leaks related to maps in bpf syscall

      We may already have gotten a proper fd struct through fdget(), so
      whenever we return at the end of an map operation, we need to call
      fdput(). However, each map operation from syscall side first probes
      CHECK_ATTR() to verify that unused fields in the bpf_attr union are
      zero.

      In case of malformed input, we return with error, but the lookup to
      the map_fd was already performed at that time, so that we return
      without an corresponding fdput(). Fix it by performing an fdget()
      only right before bpf_map_get(). The fdget() invocation on maps in
      the verifier is not affected.

      Fixes: db20fd2b0108 ("bpf: add lookup/update/delete/iterate methods to 
BPF maps")
      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Acked-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6551881c86c791237a3bebf11eb3bd70b60ea782
  Author: Pratyush Anand <panand@xxxxxxxxxx>
  Date:   Thu Aug 20 14:05:01 2015 +0530

      Watchdog: Fix parent of watchdog_devices

      /sys/class/watchdog/watchdogn/device/modalias can help to identify the
      driver/module for a given watchdog node. However, many wdt devices do not
      set their parent and so, we do not see an entry for device in sysfs for
      such devices.

      This patch fixes parent of watchdog_device so that
      /sys/class/watchdog/watchdogn/device is populated.

      Exceptions: booke, diag288, octeon, softdog and w83627hf -- They do not
      have any parent. Not sure, how we can identify driver for these devices.

      Signed-off-by: Pratyush Anand <panand@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Acked-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Acked-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Lee Jones <lee.jones@xxxxxxxxxx>
      Acked-by: Lubomir Rintel <lkundrak@xxxxx>
      Acked-by: Maxime Coquelin <maxime.coquelin@xxxxxx>
      Acked-by: Thierry Reding <treding@xxxxxxxxxx>
      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Acked-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit bf5125d5e0759a0f513b1bcd33c15edc0cf4c17b
  Author: Bjorn Andersson <bjorn.andersson@xxxxxxxxxxxxxx>
  Date:   Mon Aug 17 09:19:03 2015 -0700

      watchdog: at91rm9200: Correct check for syscon_node_to_regmap() errors

      syscon_node_to_regmap() returns a regmap or an ERR_PTR().

      Signed-off-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxxxxxx>
      Acked-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit a97a09bd119fbdf4ba8c634fed8f4148d1def1e0
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Sun Aug 16 11:23:43 2015 +0200

      watchdog: at91sam9: get and use slow clock

      Commit dca1a4b5ff6e ("clk: at91: keep slow clk enabled to prevent system
      hang") added a workaround for the slow clock as it is not properly handled
      by its users.

      Get and use the slow clock as it is necessary for the at91sam9 watchdog.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit f4fff94e3e3a712ef062c44b64ecf8f552f48ea4
  Author: Wenyou Yang <wenyou.yang@xxxxxxxxx>
  Date:   Thu Aug 6 18:17:05 2015 +0800

      Documentation: dt: binding: atmel-sama5d4-wdt: for SAMA5D4 watchdog driver

      The compatible "atmel,sama5d4-wdt" supports the SAMA5D4 watchdog driver
      and the watchdog's WDT_MR register can be written more than once.

      Signed-off-by: Wenyou Yang <wenyou.yang@xxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit 74e98eb085889b0d2d4908f59f6e00026063014f
  Author: Sasha Levin <sasha.levin@xxxxxxxxxx>
  Date:   Tue Sep 8 10:53:40 2015 -0400

      RDS: verify the underlying transport exists before creating a connection

      There was no verification that an underlying transport exists when 
creating
      a connection, this would cause dereferencing a NULL ptr.

      It might happen on sockets that weren't properly bound before attempting 
to
      send a message, which will cause a NULL ptr deref:

      [135546.047719] kasan: GPF could be caused by NULL-ptr deref or user 
memory accessgeneral protection fault: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC 
KASAN
      [135546.051270] Modules linked in:
      [135546.051781] CPU: 4 PID: 15650 Comm: trinity-c4 Not tainted 
4.2.0-next-20150902-sasha-00041-gbaa1222-dirty #2527
      [135546.053217] task: ffff8800835bc000 ti: ffff8800bc708000 task.ti: 
ffff8800bc708000
      [135546.054291] RIP: __rds_conn_create (net/rds/connection.c:194)
      [135546.055666] RSP: 0018:ffff8800bc70fab0  EFLAGS: 00010202
      [135546.056457] RAX: dffffc0000000000 RBX: 0000000000000f2c RCX: 
ffff8800835bc000
      [135546.057494] RDX: 0000000000000007 RSI: ffff8800835bccd8 RDI: 
0000000000000038
      [135546.058530] RBP: ffff8800bc70fb18 R08: 0000000000000001 R09: 
0000000000000000
      [135546.059556] R10: ffffed014d7a3a23 R11: ffffed014d7a3a21 R12: 
0000000000000000
      [135546.060614] R13: 0000000000000001 R14: ffff8801ec3d0000 R15: 
0000000000000000
      [135546.061668] FS:  00007faad4ffb700(0000) GS:ffff880252000000(0000) 
knlGS:0000000000000000
      [135546.062836] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
      [135546.063682] CR2: 000000000000846a CR3: 000000009d137000 CR4: 
00000000000006a0
      [135546.064723] Stack:
      [135546.065048]  ffffffffafe2055c ffffffffafe23fc1 ffffed00493097bf 
ffff8801ec3d0008
      [135546.066247]  0000000000000000 00000000000000d0 0000000000000000 
ac194a24c0586342
      [135546.067438]  1ffff100178e1f78 ffff880320581b00 ffff8800bc70fdd0 
ffff880320581b00
      [135546.068629] Call Trace:
      [135546.069028] ? __rds_conn_create (include/linux/rcupdate.h:856 
net/rds/connection.c:134)
      [135546.069989] ? rds_message_copy_from_user (net/rds/message.c:298)
      [135546.071021] rds_conn_create_outgoing (net/rds/connection.c:278)
      [135546.071981] rds_sendmsg (net/rds/send.c:1058)
      [135546.072858] ? perf_trace_lock (include/trace/events/lock.h:38)
      [135546.073744] ? lockdep_init (kernel/locking/lockdep.c:3298)
      [135546.074577] ? rds_send_drop_to (net/rds/send.c:976)
      [135546.075508] ? __might_fault (./arch/x86/include/asm/current.h:14 
mm/memory.c:3795)
      [135546.076349] ? __might_fault (mm/memory.c:3795)
      [135546.077179] ? rds_send_drop_to (net/rds/send.c:976)
      [135546.078114] sock_sendmsg (net/socket.c:611 net/socket.c:620)
      [135546.078856] SYSC_sendto (net/socket.c:1657)
      [135546.079596] ? SYSC_connect (net/socket.c:1628)
      [135546.080510] ? trace_dump_stack (kernel/trace/trace.c:1926)
      [135546.081397] ? ring_buffer_unlock_commit 
(kernel/trace/ring_buffer.c:2479 kernel/trace/ring_buffer.c:2558 
kernel/trace/ring_buffer.c:2674)
      [135546.082390] ? trace_buffer_unlock_commit (kernel/trace/trace.c:1749)
      [135546.083410] ? trace_event_raw_event_sys_enter 
(include/trace/events/syscalls.h:16)
      [135546.084481] ? do_audit_syscall_entry 
(include/trace/events/syscalls.h:16)
      [135546.085438] ? trace_buffer_unlock_commit (kernel/trace/trace.c:1749)
      [135546.085515] rds_ib_laddr_check(): addr 36.74.25.172 ret -99 node type 
-1

      Acked-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 76534860f108b812926a4fbfbdadbfa9cdec89d0
  Author: Wenyou Yang <wenyou.yang@xxxxxxxxx>
  Date:   Thu Aug 6 18:16:46 2015 +0800

      watchdog: add a driver to support SAMA5D4 watchdog timer

      From SAMA5D4, the watchdog timer is upgrated with a new feature,
      which is describled as in the datasheet, "WDT_MR can be written
      until a LOCKMR command is issued in WDT_CR".
      That is to say, as long as the bootstrap and u-boot don't issue
      a LOCKMR command, WDT_MR can be written more than once in the driver.

      So the SAMA5D4 watchdog driver's implementation is different from
      the at91sam9260 watchdog driver implemented in file at91sam9_wdt.c.
      The user application open the device file to enable the watchdog timer
      hardware, and close to disable it, and set the watchdog timer timeout
      by seting WDV and WDD fields of WDT_MR register, and ping the watchdog
      by issuing WDRSTT command to WDT_CR register with hard-coded key.

      Signed-off-by: Wenyou Yang <wenyou.yang@xxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit f8c33e9717150f7b8063d6d77a8ea90adad434e9
  Author: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
  Date:   Wed Aug 12 10:15:58 2015 +0200

      watchdog: mpc8xxx: allow to compile for MPC512x

      The MPC5125 processor features a watchdog device that is identical to
      the MPC8610 one. So allow to enable the driver for MPC512x kernel
      configurations.

      Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit 72cd501e6a9b578cf99ae062477d9c7a938a3238
  Author: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
  Date:   Wed Aug 12 10:15:57 2015 +0200

      watchdog: mpc8xxx: use better error code when watchdog cannot be enabled

      checkpatch warns about ENOSYS, telling "ENOSYS means 'invalid syscall
      nr' and nothing else". So use ENODEV instead.

      Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit 7997ebad4d747ff5561cb5ec0c7423e0d4e628d5
  Author: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
  Date:   Wed Aug 12 10:15:56 2015 +0200

      watchdog: mpc8xxx: use dynamic memory for device specific data

      Instead of relying on global static memory dynamically allocate the
      needed data. This has the benefit of some saved bytes if the driver is
      not in use and making it possible to bind more than one device (even
      though this has no known use case).

      Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit de5f71222bd544558d81701454eb457b295de96e
  Author: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
  Date:   Wed Aug 12 10:15:55 2015 +0200

      watchdog: mpc8xxx: use devm_ioremap_resource to map memory

      This simplifies the error paths and device unbinding.

      Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit f0ded83b96d27b27db0015e701cfd916330e3c50
  Author: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
  Date:   Wed Aug 12 10:15:54 2015 +0200

      watchdog: mpc8xxx: make use of of_device_get_match_data

      This function is new in v4.2-rc1 and makes a forward declaration of the
      match table superfluous which can so be removed.

      Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit 50ffb53ef2311e4631086d27783b00db6859c60e
  Author: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
  Date:   Wed Aug 12 10:15:53 2015 +0200

      watchdog: mpc8xxx: simplify registration

      Since commit ef90174f8210 ("watchdog: watchdog_core: Add watchdog
      registration deferral mechanism") there is no need to delay the call to
      watchdog_register_device any more. So simplify the registration code
      accordingly.

      Resetting wd_base to NULL can the also be dropped because nothing
      depends on it being NULL to signal probe failure any more. (The matching
      wd_base = NULL in .remove was missing, too.)

      Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit a57e06f7c6365f7d6e13f35933d3ef329205c1af
  Author: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
  Date:   Wed Aug 12 10:15:52 2015 +0200

      watchdog: mpc8xxx: remove dead code

      Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit 6cd8a1b9f71290d58099101e65e7e2279bcdb212
  Author: Fengguang Wu <fengguang.wu@xxxxxxxxx>
  Date:   Fri Aug 7 10:28:40 2015 -0700

      watchdog: lpc18xx_wdt_get_timeleft() can be static

      Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit cfde37e1ec18dc68a52a1b882390c0f9c52b5f10
  Author: Ariel D'Alessandro <ariel@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Aug 1 15:37:17 2015 -0300

      DT: watchdog: Add NXP LPC18xx Watchdog Timer binding documentation

      Add the devicetree binding document for NXP LPC18xx Watchdog Timer.

      Signed-off-by: Ariel D'Alessandro <ariel@xxxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit 7c25f8c9f67708e6464d2221bc311cbd99e950dc
  Author: Ariel D'Alessandro <ariel@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Aug 1 15:37:16 2015 -0300

      watchdog: NXP LPC18xx Watchdog Timer Driver

      This commit adds support for the watchdog timer found in NXP LPC SoCs
      family, which includes LPC18xx/LPC43xx. Other SoCs in that family may
      share the same watchdog hardware.

      Watchdog driver registers a restart handler that will restart the system
      by performing an incorrect feed after ensuring the watchdog is enabled in
      reset mode.

      As watchdog cannot be disabled in hardware, driver's stop routine will
      regularly send a keepalive ping using a timer.

      Signed-off-by: Ariel D'Alessandro <ariel@xxxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit 4f2d0b2d1b31cbe704c8f94e74e46cb64187ab0c
  Author: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
  Date:   Fri Jul 31 09:21:36 2015 +0200

      watchdog: gpio-wdt: ping already at startup for always running devices

      During probe for an always-running watchdog a timer is setup to
      constantly ping the watchdog while the device is not open. The gpio to
      ping the watchdog is setup to inactive.

      For a watchdog with hw_algo = "toggle" this results in a ping depending
      on the initial state of the gpio, for hw_algo = "level" no ping is
      generated.

      Make sure that the first automatic ping is sent immediately and not only
      when the timer expires the first time. This makes the machine survive in
      case more than half of the watchdog timeout is already elapsed. (Which
      is very probable for the chip I'm faced with that has a timeout of one
      second.)

      Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit 0a0a542f6bbb2ebe956f0117c842302442ef52da
  Author: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 11:32:23 2015 +0200

      watchdog: gpio-wdt: be more strict about hw_algo matching

      strncmp(algo, "toggle", 6) doesn't compare the trailing '\0' byte, so
      using

        hw_algo = "toggleboggle"

      is recognized the same way as

        hw_algo = "toggle"

      . While this doesn't introduce any problems for a device tree that
      sticks to the documented settings it's still ugly.

      Fix this by using strcmp to only match on "toggle" and "level".

      Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit ab54d7f017772e89964d4040937a83cd4468562a
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Jul 31 11:39:39 2015 +0200

      Documentation: watchdog: at91sam9_wdt: add clocks property

      The watchdog has an input clock, the slow clock. It is required as it will
      not function without it.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit 1d5d48523900a4b0f25d6b52f1a93c84bd671186
  Author: David Vrabel <david.vrabel@xxxxxxxxxx>
  Date:   Tue Sep 8 14:25:14 2015 +0100

      xen-netback: require fewer guest Rx slots when not using GSO

      Commit f48da8b14d04ca87ffcffe68829afd45f926ec6a (xen-netback: fix
      unlimited guest Rx internal queue and carrier flapping) introduced a
      regression.

      The PV frontend in IPXE only places 4 requests on the guest Rx ring.
      Since netback required at least (MAX_SKB_FRAGS + 1) slots, IPXE could
      not receive any packets.

      a) If GSO is not enabled on the VIF, fewer guest Rx slots are required
         for the largest possible packet.  Calculate the required slots
         based on the maximum GSO size or the MTU.

         This calculation of the number of required slots relies on
         1650d5455bd2 (xen-netback: always fully coalesce guest Rx packets)
         which present in 4.0-rc1 and later.

      b) Reduce the Rx stall detection to checking for at least one
         available Rx request.  This is fine since we're predominately
         concerned with detecting interfaces which are down and thus have
         zero available Rx requests.

      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Reviewed-by: Wei Liu <wei.liu2@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit fa928ee8d4af1f70eee77a5ac77c084a0715eb9e
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Wed Jul 29 09:45:36 2015 -0700

      watchdog: booke_wdt: Use infrastructure to check timeout limits

      The watchdog infrastructure checks the maximum timeout for us.
      Use it.

      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit 64307b48f79f35d28ed6b44e20b773bc00a0152e
  Author: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 12:03:30 2015 -0400

      watchdog: (nv_tco) add support for MCP79

      Tested on the Nvidia chipset with an SMBus controller PCI ID 0x0AA2
      (as shown in the PCI listing during the boot sequence).

      Signed-off-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit 0919e4445190da18496d31aac08b90828a47d45f
  Author: Francesco Lavra <francescolavra.fl@xxxxxxxxx>
  Date:   Sat Jul 25 08:25:18 2015 +0200

      watchdog: sunxi: fix activation of system reset

      Commit f2147de33470 ("watchdog: sunxi: support parameterized compatible
      strings") introduced a regression in sunxi_wdt_start(), by which
      the system reset function of the watchdog is not enabled upon
      starting the watchdog. As a result, the system is not reset when the
      watchdog expires. Fix it.

      Fixes: f2147de33470 ("watchdog: sunxi: support parameterized compatible 
strings")
      Signed-off-by: Francesco Lavra <francescolavra.fl@xxxxxxxxx>
      Acked-by: Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 5724485b185a4ac4bb96149718ff736c5ef5c169
  Author: Greta Zhang <greta.zhang@xxxxxxxxxxxx>
  Date:   Fri Jul 24 15:28:46 2015 +0800

      watchdog: mtk_wdt: add wdt shutdown callback to disable wdt if enabled

      Without .shutdown(), watchdog might reset the system during power off.
      For example, if watchdog's timeout is set to 30s, then it is reset to
      zero by mtk_wdt_ping(). During power off, no app will ping watchdog,
      but watchdog is still running and may trigger reset.

      Signed-off-by: Greta Zhang <greta.zhang@xxxxxxxxxxxx>
      Signed-off-by: Eddie Huang <eddie.huang@xxxxxxxxxxxx>
      Acked-by: Matthias Brugger <matthias.bgg@xxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit 9fab06920c9207aca8ff4e2416bb10cabc19294a
  Author: Greta Zhang <greta.zhang@xxxxxxxxxxxx>
  Date:   Fri Jul 24 15:28:45 2015 +0800

      watchdog: mtk_wdt: add suspend/resume support

      add mediatek watchdog driver suspend/resume support

      Signed-off-by: Greta Zhang <greta.zhang@xxxxxxxxxxxx>
      Signed-off-by: Roger Lu <roger.lu@xxxxxxxxxxxx>
      Signed-off-by: Eddie Huang <eddie.huang@xxxxxxxxxxxx>
      Acked-by: Matthias Brugger <matthias.bgg@xxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit 8a340dbbc4b10fe07a924e91979bfc93e966dd65
  Author: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 23 17:21:16 2015 -0300

      watchdog: imgpdc: Unregister restart handler on remove

      Commit c631f20068 ("watchdog: imgpdc: Add reboot support") introduced
      a restart handler but forgot to unregister it on driver removal. Fix it.

      Fixes: c631f20068 ("watchdog: imgpdc: Add reboot support")
      Reported-by: Ariel D'Alessandro <ariel@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit f15d7114bbdd594f1d8b644a44f647d2b6e9772e
  Author: Timur Tabi <timur@xxxxxxxxxxxxxx>
  Date:   Mon Jun 29 11:46:17 2015 -0500

      Documentation/watchdog: add timeout and ping rate control to 
watchdog-test.c

      The watchdog test program is much more useful if it can configure the
      timeout value and ping rate.  This will allow you to test actual timeouts.

      Adds the -t parameter to set the timeout value (in seconds), and -p to set
      the ping rate (number of seconds between pings).

      Signed-off-by: Timur Tabi <timur@xxxxxxxxxxxxxx>
      Reviewed-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Wim Van Sebroeck <wim@xxxxxxxxx>

  commit 9b57ab8b58571ee57030210b74e2aabd1a18cff2
  Merge: d43cefc 2a485cf
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Wed Sep 9 12:29:26 2015 -0700

      Merge branch 'cxgb4-fixes'

      Hariprasad Shenai says:

      ====================
      cxgb4: Fix tx flit calculation and wc stat configuration

      This patch series fixes the following:
      Patch 1/2 fixes tx flit calculation, which if wrong can lead to
      stall, hang, data corrpution, write combining failure. Patch 2/2 fixes
      PCI-E write combining stats configuration.

      This patch series has been created against net tree and includes
      patches on cxgb4 driver.

      We have included all the maintainers of respective drivers. Kindly review
      the change and let us know in case of any review comments.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2a485cf7db2815ca0d1510143d9126c4475aab39
  Author: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
  Date:   Tue Sep 8 16:25:40 2015 +0530

      cxgb4: Fix for write-combining stats configuration

      The write-combining configuration register SGE_STAT_CFG_A needs to
      be configured after FW initializes the adapter, else FW will reset
      the configuration

      Signed-off-by: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit fd1754fb8afbd9cf4ea279d533414aa6577b7e60
  Author: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
  Date:   Tue Sep 8 16:25:39 2015 +0530

      cxgb4: Fix tx flit calculation

      In commit 0aac3f56d4a63f04 ("cxgb4: Add comment for calculate tx flits
      and sge length code") introduced a regression where tx flit calculation
      is going wrong, which can lead to data corruption, hang, stall and
      write-combining failure. Fixing it.

      Signed-off-by: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d43cefcd68bbc9a67b2c0efe38eb9cf6b5170fe8
  Author: Atsushi Nemoto <nemoto@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 18:15:41 2015 +0900

      net: eth: altera: Fix the initial device operstate

      Call netif_carrier_off() prior to register_netdev(), otherwise
      userspace can see incorrect link state.

      Signed-off-by: Atsushi Nemoto <nemoto@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ddab2c0eaf57b2de0b2516a477e3ce0f7554509b
  Author: Michael S. Tsirkin <mst@xxxxxxxxxx>
  Date:   Wed Sep 9 22:03:30 2015 +0300

      tools/virtio: fix build after 4.2 changes

      more stubs, mostly

      Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>

  commit b8889c4fc6ba03e289cec6a4d692f6f080a55e53
  Merge: fac33bf 0de6cfb
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 11:27:01 2015 -0700

      Merge tag 'tty-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty

      Pull tty driver reverts from Greg KH:
       "Here are some reverts for some tty patches (specifically the pl011
        driver) that ended up breaking a bunch of machines (i.e. almost all
        of the ones with this chip).

        People are working on a fix for this, but in the meantime, it's best
        to just revert all 5 patches to restore people's serial consoles.

        These reverts have been in linux-next for many days now"

      * tag 'tty-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
        Revert "uart: pl011: Rename regs with enumeration"
        Revert "uart: pl011: Introduce register accessor"
        Revert "uart: pl011: Introduce register look up table"
        Revert "uart: pl011: Improve LCRH register access decision"
        Revert "uart: pl011: Add support to ZTE ZX296702 uart"

  commit fac33bfdb0a54e149f8d1c2f002de5b57770b84c
  Merge: 82278fc 2ff46e6
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 11:17:33 2015 -0700

      Merge tag 'for-linus-20150909' of git://git.infradead.org/linux-mtd

      Pull more MTD updates from Brian Norris:
       "There was one significant bug in my first pull request, fixed here.  I
        also threw in a few trivial ID additions and a small module rename.

        Details:

         - SPI NOR: bug fix for a "end of table" check that resulted in a NULL
           dereference in some cases

         - SPI NOR: a few new IDs / feature flags

         - OMAP2 NAND: rename module so it doesn't conflict with onenand
           omap2.ko"

      * tag 'for-linus-20150909' of git://git.infradead.org/linux-mtd:
        mtd: spi-nor: fix NULL dereference when no match found in spi_nor_ids[]
        mtd: spi-nor: s25sl064p supports both dual and quad I/O
        mtd: spi-nor: allow dual/quad reads on S25FL129P
        mtd: nand: omap2: Rename shippable module to omap2_nand
        mtd: spi-nor: Add support for sst25wf020a
        mtd: spi-nor: Add support for Micron n25q064a serial flash

  commit 82278fc079542a04e076da34546a7d6dc649b0cc
  Merge: bd2843f 7a59382
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 10:55:32 2015 -0700

      Merge tag 'pwm/for-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm

      Pull pwm updates from Thierry Reding:
       "This set of changes introduces the beginnings of a new API that's
        based around the concept of states that can be atomically applied.
        Drivers go to various lengths to implement something similar, which
        indicates that the core should really be providing the necessary
        framework.

        On top of that, there is a bit of cleanup as well as improved
        kerneldoc and integration into the device-drivers DocBook.

        Regarding drivers there is a new one for the NXP LPC18xx family of
        SoCs and a couple of fixes for existing drivers (pca9685, Broadcom
        Kona and Atmel HLCDC)"

      * tag 'pwm/for-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/thierry.reding/linux-pwm:
        ARM: at91: pwm: atmel-hlcdc: Add at91sam9n12 errata
        pwm: Add NXP LPC18xx PWM/SCT DT binding documentation
        pwm: NXP LPC18xx PWM/SCT driver
        pwm-pca9685: Support changing the output frequency
        pwm-pca9685: Fix several driver bugs
        pwm: kona: Modify settings application sequence
        pwm: pca9685: Drop owner assignment
        pwm: Add to device-drivers documentation
        pwm: Clean up kerneldoc
        pwm: Remove useless whitespace
        pwm: sysfs: Remove unnecessary padding
        pwm: sysfs: Properly convert from enum to string
        pwm: Make use of pwm_get_xxx() helpers where appropriate
        pwm: Add pwm_get_polarity() helper function
        pwm: Constify PWM device where possible
        pwm: Add the pwm_is_enabled() helper

  commit bd2843fe1f29f6145c623ae9390f144cefaa611d
  Author: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 10:16:39 2015 +0100

      fix ufs write vs readpage race when writing into a hole

      Followup to the UFS series - with the way we clear the new blocks (via
      buffer cache, possibly on more than a page worth of file) we really
      should not insert a reference to new block into inode block tree until
      after we'd cleared it.

      Signed-off-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit daf0e1ed578f65e8395102549e135887e6661860
  Merge: 065d80b 997e120
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 10:37:41 2015 -0700

      Merge tag 'for_linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost

      Pull virtio updates from Michael Tsirkin:
       "Virtio fixes and features for 4.3:

         - virtio-mmio can now be auto-loaded through acpi.
         - virtio blk supports extended partitions.
         - total memory is better reported when using virtio balloon with
           auto-deflate.
         - cache control is re-enabled when using virtio-blk in modern mode"

      * tag 'for_linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:
        virtio_balloon: do not change memory amount visible via /proc/meminfo
        virtio_ballon: change stub of release_pages_by_pfn
        virtio-blk: Allow extended partitions
        virtio_mmio: add ACPI probing
        virtio-blk: use VIRTIO_BLK_F_WCE and VIRTIO_BLK_F_CONFIG_WCE in virtio1

  commit 065d80b4bf314df143aa9f260a154a24e33b4fbe
  Merge: 949feac e7e98d7
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 10:27:59 2015 -0700

      Merge tag 'metag-for-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag

      Pull metag updates from James Hogan:
       "Metag architecture changes for v4.3.

        Just a couple of changes for v4.3-rc1.  A preparatory IRQ patch to
        prepare for moving irq_data struct members, and a tweak to
        Documentation/features since Meta2 could support THP"

      * tag 'metag-for-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag:
        Documentation/features/vm: Meta2 is capable of THP
        metag/irq: Use access helper irq_data_get_affinity_mask()

  commit 949feacb8af3659037dd34ef177e9bc727627859
  Merge: 384989b 08441d4
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 10:07:32 2015 -0700

      Merge tag 'nios2-v4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/lftan/nios2

      Pull nios2 updates from Ley Foon Tan:

       - add defconfig and device tree for max 10 support
       - migrate to new 'set-state' interface for timer
       - fix unaligned handler
       - MAINTAINERS: update nios2 git repo

      * tag 'nios2-v4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/lftan/nios2:
        nios2: add Max10 defconfig
        nios2: Add Max10 device tree
        MAINTAINERS: update nios2 git repo
        nios2: remove unused statistic counters
        nios2: fixed variable imm16 to s16
        nios2/time: Migrate to new 'set-state' interface

  commit 384989b58d45e5478d555cdb4ac79336a88a45cc
  Merge: d77e92e 5fb4e28
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 09:59:35 2015 -0700

      Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6

      Pull cifs updates from Steve French:
       "Small cifs fix and a patch for improved debugging"

      * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
        cifs: Fix use-after-free on mid_q_entry
        Update cifs version number
        Add way to query server fs info for smb3

  commit d77e92e270edd79a2218ce0ba5b6179ad0c93175
  Author: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 10:29:40 2015 -0600

      dax: update PMD fault handler with PMEM API

      As part of the v4.3 merge window the DAX code was updated by Matthew and
      Kirill to handle PMD pages.  Also as part of the v4.3 merge window we
      updated the DAX code to do proper PMEM flushing (commit 2765cfbb342c:
      "dax: update I/O path to do proper PMEM flushing").

      The additional code added by the DAX PMD patches also needs to be
      updated to properly use the PMEM API.  This ensures that after a PMD
      fault is handled the zeros written to the newly allocated pages are
      durable on the DIMMs.

      linux/dax.h is included to get rid of a bunch of sparse warnings.

      Signed-off-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Cc: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>,
      Cc: Dan Williams <dan.j.williams@xxxxxxxxx>
      Cc: Kirill Shutemov <kirill@xxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 02cc2ccfe771677db3cd40a71837e1467ebc839a
  Author: Mike Frysinger <vapier@xxxxxxxxxx>
  Date:   Wed Apr 22 21:28:04 2015 -0400

      Revert "Hexagon: fix signal.c compile error"

      This reverts commit f3f601c1d2728f02544cfd143eaa82e5398b3e9b.

      UAPI headers cannot use "uapi/" in their paths by design -- when they're
      installed, they do not have the uapi/ prefix.  Otherwise doing so breaks
      userland badly.

      Signed-off-by: Mike Frysinger <vapier@xxxxxxxxxx>
      Signed-off-by: Richard Kuo <rkuo@xxxxxxxxxxxxxx>

  commit 26d2177e977c912863ac04f6c1a967e793ca3a56
  Merge: a794b4f d1178cb
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 08:33:31 2015 -0700

      Merge tag 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma

      Pull inifiniband/rdma updates from Doug Ledford:
       "This is a fairly sizeable set of changes.  I've put them through a
        decent amount of testing prior to sending the pull request due to
        that.

        There are still a few fixups that I know are coming, but I wanted to
        go ahead and get the big, sizable chunk into your hands sooner rather
        than waiting for those last few fixups.

        Of note is the fact that this creates what is intended to be a
        temporary area in the drivers/staging tree specifically for some
        cleanups and additions that are coming for the RDMA stack.  We
        deprecated two drivers (ipath and amso1100) and are waiting to hear
        back if we can deprecate another one (ehca).  We also put Intel's new
        hfi1 driver into this area because it needs to be refactored and a
        transfer library created out of the factored out code, and then it and
        the qib driver and the soft-roce driver should all be modified to use
        that library.

        I expect drivers/staging/rdma to be around for three or four kernel
        releases and then to go away as all of the work is completed and final
        deletions of deprecated drivers are done.

        Summary of changes for 4.3:

         - Create drivers/staging/rdma
         - Move amso1100 driver to staging/rdma and schedule for deletion
         - Move ipath driver to staging/rdma and schedule for deletion
         - Add hfi1 driver to staging/rdma and set TODO for move to regular
           tree
         - Initial support for namespaces to be used on RDMA devices
         - Add RoCE GID table handling to the RDMA core caching code
         - Infrastructure to support handling of devices with differing read
           and write scatter gather capabilities
         - Various iSER updates
         - Kill off unsafe usage of global mr registrations
         - Update SRP driver
         - Misc  mlx4 driver updates
         - Support for the mr_alloc verb
         - Support for a netlink interface between kernel and user space cache
           daemon to speed path record queries and route resolution
         - Ininitial support for safe hot removal of verbs devices"

      * tag 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma: (136 commits)
        IB/ipoib: Suppress warning for send only join failures
        IB/ipoib: Clean up send-only multicast joins
        IB/srp: Fix possible protection fault
        IB/core: Move SM class defines from ib_mad.h to ib_smi.h
        IB/core: Remove unnecessary defines from ib_mad.h
        IB/hfi1: Add PSM2 user space header to header_install
        IB/hfi1: Add CSRs for CONFIG_SDMA_VERBOSITY
        mlx5: Fix incorrect wc pkey_index assignment for GSI messages
        IB/mlx5: avoid destroying a NULL mr in reg_user_mr error flow
        IB/uverbs: reject invalid or unknown opcodes
        IB/cxgb4: Fix if statement in pick_local_ip6adddrs
        IB/sa: Fix rdma netlink message flags
        IB/ucma: HW Device hot-removal support
        IB/mlx4_ib: Disassociate support
        IB/uverbs: Enable device removal when there are active user space 
applications
        IB/uverbs: Explicitly pass ib_dev to uverbs commands
        IB/uverbs: Fix race between ib_uverbs_open and remove_one
        IB/uverbs: Fix reference counting usage of event files
        IB/core: Make ib_dealloc_pd return void
        IB/srp: Create an insecure all physical rkey only if needed
        ...

  commit 7a5938201834a9c25155176d0f5942d48336b244
  Author: Josh Wu <josh.wu@xxxxxxxxx>
  Date:   Fri Jul 31 18:51:20 2015 +0200

      ARM: at91: pwm: atmel-hlcdc: Add at91sam9n12 errata

      The errata for HLCDC PWM of at91sam9n12 are the same as for at91sam9x5.

      Signed-off-by: Josh Wu <josh.wu@xxxxxxxxx>
      Acked-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <thierry.reding@xxxxxxxxx>

  commit b0dabcc6f8b7cb08d5c81ecbc642105d67a4c1d2
  Author: Ariel D'Alessandro <ariel@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 23:31:47 2015 -0300

      pwm: Add NXP LPC18xx PWM/SCT DT binding documentation

      Add the devicetree binding document for NXP LPC18xx PWM/SCT.

      Signed-off-by: Ariel D'Alessandro <ariel@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <thierry.reding@xxxxxxxxx>

  commit 841e6f90bb789a1372087b22c39f3a9ef2e02758
  Author: Ariel D'Alessandro <ariel@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 23:31:46 2015 -0300

      pwm: NXP LPC18xx PWM/SCT driver

      This commit adds support for NXP LPC18xx PWM/SCT.

      NXP LPC SoCs family, which includes LPC18xx/LPC43xx, provides a State
      Configurable Timer (SCT) which can be configured as a Pulse Width
      Modulator. Other SoCs in that family may share the same hardware.

      The PWM supports a total of 16 channels, but only 15 can be simultaneously
      requested. There's only one period, global to all the channels, thus PWM
      driver will refuse setting different values to it, unless there's only one
      channel requested.

      Signed-off-by: Ariel D'Alessandro <ariel@xxxxxxxxxxxxxxxxxxxx>
      [thierry.reding@xxxxxxxxx: remove excessive padding of fields]
      Signed-off-by: Thierry Reding <thierry.reding@xxxxxxxxx>

  commit f1ec5ec7a94ba8138f9cbdc1e9e3b03aee29c4df
  Author: Liam Girdwood <liam.r.girdwood@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 9 12:10:31 2015 +0100

      ASoC: intel: Fix SSP port configuration after RTD3 resume.

      Currently the SSP port settings are being clobbered as part of the DSP
      RTD3 restore logic. make sure we save the correct params and restore them
      at resume. The FW sadly does not save SSP settings as part of the PM
      context.

      Signed-off-by: Liam Girdwood <liam.r.girdwood@xxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 721b51fcf91898299d96f4b72cb9434cda29dce6
  Author: John Lin <john.lin@xxxxxxxxxxx>
  Date:   Wed Sep 9 16:47:48 2015 +0800

      ASoC: rt5645: Add struct dmi_system_id "Google Ultima" for chrome platform

      Signed-off-by: John Lin <john.lin@xxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit acd29f7b22262d9e848393b9b6ae13eb42d22514
  Author: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:17:13 2015 +0100

      drm/i915: Limit the number of loops for reading a split 64bit register

      In I915_READ64_2x32 we attempt to read a 64bit register using 2 32bit
      reads. Due to the nature of the registers we try to read in this manner,
      they may increment between the two instruction (e.g. a timestamp
      counter). To keep the result accurate, we repeat the read if we detect
      an overflow (i.e. the upper value varies). However, some hardware is just
      plain flaky and may endless loop as the the upper 32bits are not stable.
      Just give up after a couple of tries and report whatever we read last.

      v2: Use the most recent values when erring out on an unstable register.

      Reported-by: russianneuromancer@xxxxx
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91906
      Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
      Cc: MichaÅ? Winiarski <michal.winiarski@xxxxxxxxx>
      Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: Jani Nikula <jani.nikula@xxxxxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 438386853d4c0c48fe73bf05a7d61c70ca5a3bfb
  Author: Yan, Zheng <zyan@xxxxxxxxxx>
  Date:   Mon Sep 7 15:46:24 2015 +0800

      ceph: improve readahead for file holes

      When readahead encounters file holes, osd reply returns error -ENOENT,
      finish_read() skips adding pages to the the page cache. So readahead
      does not work for file holes. The fix is adding zero pages to the
      page cache when -ENOENT is returned.

      Signed-off-by: Yan, Zheng <zyan@xxxxxxxxxx>

  commit 55b0b31cbc09f80db384671e22cdc94b2aa26b29
  Author: Yan, Zheng <zyan@xxxxxxxxxx>
  Date:   Mon Sep 7 11:35:01 2015 +0800

      ceph: get inode size for each append write

      Signed-off-by: Yan, Zheng <zyan@xxxxxxxxxx>

  commit d15f9d694b77fe5e4ea12b3031ecaa13b5aa2b10
  Author: Ilya Dryomov <idryomov@xxxxxxxxx>
  Date:   Wed Sep 2 11:37:09 2015 +0300

      libceph: check data_len in ->alloc_msg()

      Only ->alloc_msg() should check data_len of the incoming message
      against the preallocated ceph_msg, doing it in the messenger is not
      right.  The contract is that either ->alloc_msg() returns a ceph_msg
      which will fit all of the portions of the incoming message, or it
      returns NULL and possibly sets skip, signaling whether NULL is due to
      an -ENOMEM.  ->alloc_msg() should be the only place where we make the
      skip/no-skip decision.

      I stumbled upon this while looking at con/osd ref counting.  Right now,
      if we get a non-extent message with a larger data portion than we are
      prepared for, ->alloc_msg() returns a ceph_msg, and then, when we skip
      it in the messenger, we don't put the con/osd ref acquired in
      ceph_con_in_msg_alloc() (which is normally put in process_message()),
      so this also fixes a memory leak.

      An existing BUG_ON in ceph_msg_data_cursor_init() ensures we don't
      corrupt random memory should a buggy ->alloc_msg() return an unfit
      ceph_msg.

      While at it, I changed the "unknown tid" dout() to a pr_warn() to make
      sure all skips are seen and unified format strings.

      Signed-off-by: Ilya Dryomov <idryomov@xxxxxxxxx>
      Reviewed-by: Alex Elder <elder@xxxxxxxxxx>

  commit 7845989cb4b3da1db903918c844fccb9817d34a0
  Author: Kolmakov Dmitriy <kolmakov.dmitriy@xxxxxxxxxx>
  Date:   Mon Sep 7 09:05:48 2015 +0000

      net: tipc: fix stall during bclink wakeup procedure

      If an attempt to wake up users of broadcast link is made when there is
      no enough place in send queue than it may hang up inside the
      tipc_sk_rcv() function since the loop breaks only after the wake up
      queue becomes empty. This can lead to complete CPU stall with the
      following message generated by RCU:

      INFO: rcu_sched self-detected stall on CPU { 0}  (t=2101 jiffies
                                        g=54225 c=54224 q=11465)
      Task dump for CPU 0:
      tpch            R  running task        0 39949  39948 0x0000000a
       ffffffff818536c0 ffff88181fa037a0 ffffffff8106a4be 0000000000000000
       ffffffff818536c0 ffff88181fa037c0 ffffffff8106d8a8 ffff88181fa03800
       0000000000000001 ffff88181fa037f0 ffffffff81094a50 ffff88181fa15680
      Call Trace:
       <IRQ>  [<ffffffff8106a4be>] sched_show_task+0xae/0x120
       [<ffffffff8106d8a8>] dump_cpu_task+0x38/0x40
       [<ffffffff81094a50>] rcu_dump_cpu_stacks+0x90/0xd0
       [<ffffffff81097c3b>] rcu_check_callbacks+0x3eb/0x6e0
       [<ffffffff8106e53f>] ? account_system_time+0x7f/0x170
       [<ffffffff81099e64>] update_process_times+0x34/0x60
       [<ffffffff810a84d1>] tick_sched_handle.isra.18+0x31/0x40
       [<ffffffff810a851c>] tick_sched_timer+0x3c/0x70
       [<ffffffff8109a43d>] __run_hrtimer.isra.34+0x3d/0xc0
       [<ffffffff8109aa95>] hrtimer_interrupt+0xc5/0x1e0
       [<ffffffff81030d52>] ? native_smp_send_reschedule+0x42/0x60
       [<ffffffff81032f04>] local_apic_timer_interrupt+0x34/0x60
       [<ffffffff810335bc>] smp_apic_timer_interrupt+0x3c/0x60
       [<ffffffff8165a3fb>] apic_timer_interrupt+0x6b/0x70
       [<ffffffff81659129>] ? _raw_spin_unlock_irqrestore+0x9/0x10
       [<ffffffff8107eb9f>] __wake_up_sync_key+0x4f/0x60
       [<ffffffffa313ddd1>] tipc_write_space+0x31/0x40 [tipc]
       [<ffffffffa313dadf>] filter_rcv+0x31f/0x520 [tipc]
       [<ffffffffa313d699>] ? tipc_sk_lookup+0xc9/0x110 [tipc]
       [<ffffffff81659259>] ? _raw_spin_lock_bh+0x19/0x30
       [<ffffffffa314122c>] tipc_sk_rcv+0x2dc/0x3e0 [tipc]
       [<ffffffffa312e7ff>] tipc_bclink_wakeup_users+0x2f/0x40 [tipc]
       [<ffffffffa313ce26>] tipc_node_unlock+0x186/0x190 [tipc]
       [<ffffffff81597c1c>] ? kfree_skb+0x2c/0x40
       [<ffffffffa313475c>] tipc_rcv+0x2ac/0x8c0 [tipc]
       [<ffffffffa312ff58>] tipc_l2_rcv_msg+0x38/0x50 [tipc]
       [<ffffffff815a76d3>] __netif_receive_skb_core+0x5a3/0x950
       [<ffffffff815a98d3>] __netif_receive_skb+0x13/0x60
       [<ffffffff815a993e>] netif_receive_skb_internal+0x1e/0x90
       [<ffffffff815aa138>] napi_gro_receive+0x78/0xa0
       [<ffffffffa07f93f4>] tg3_poll_work+0xc54/0xf40 [tg3]
       [<ffffffff81597c8c>] ? consume_skb+0x2c/0x40
       [<ffffffffa07f9721>] tg3_poll_msix+0x41/0x160 [tg3]
       [<ffffffff815ab0f2>] net_rx_action+0xe2/0x290
       [<ffffffff8104b92a>] __do_softirq+0xda/0x1f0
       [<ffffffff8104bc26>] irq_exit+0x76/0xa0
       [<ffffffff81004355>] do_IRQ+0x55/0xf0
       [<ffffffff8165a12b>] common_interrupt+0x6b/0x6b
       <EOI>

      The issue occurs only when tipc_sk_rcv() is used to wake up postponed
      senders:

        tipc_bclink_wakeup_users()
                // wakeupq - is a queue which consists of special
                //               messages with SOCK_WAKEUP type.
                tipc_sk_rcv(wakeupq)
                        ...
                        while (skb_queue_len(inputq)) {
                                filter_rcv(skb)
                                        // Here the type of message is checked
                                        // and if it is SOCK_WAKEUP then
                                        // it tries to wake up a sender.
                                        tipc_write_space(sk)
                                                
wake_up_interruptible_sync_poll()
                        }

      After the sender thread is woke up it can gather control and perform
      an attempt to send a message. But if there is no enough place in send
      queue it will call link_schedule_user() function which puts a message
      of type SOCK_WAKEUP to the wakeup queue and put the sender to sleep.
      Thus the size of the queue actually is not changed and the while()
      loop never exits.

      The approach I proposed is to wake up only senders for which there is
      enough place in send queue so the described issue can't occur.
      Moreover the same approach is already used to wake up senders on
      unicast links.

      I have got into the issue on our product code but to reproduce the
      issue I changed a benchmark test application (from
      tipcutils/demos/benchmark) to perform the following scenario:
        1. Run 64 instances of test application (nodes). It can be done
           on the one physical machine.
        2. Each application connects to all other using TIPC sockets in
           RDM mode.
        3. When setup is done all nodes start simultaneously send
           broadcast messages.
        4. Everything hangs up.

      The issue is reproducible only when a congestion on broadcast link
      occurs. For example, when there are only 8 nodes it works fine since
      congestion doesn't occur. Send queue limit is 40 in my case (I use a
      critical importance level) and when 64 nodes send a message at the
      same moment a congestion occurs every time.

      Signed-off-by: Dmitry S Kolmakov <kolmakov.dmitriy@xxxxxxxxxx>
      Reviewed-by: Jon Maloy <jon.maloy@xxxxxxxxxxxx>
      Acked-by: Ying Xue <ying.xue@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7b9018738e43c7c7693632174c69fde83b8edc07
  Author: Barry Song <Baohua.Song@xxxxxxx>
  Date:   Mon Sep 7 03:15:20 2015 +0000

      dm9000: fix a typo

      Signed-off-by: Barry Song <Baohua.Song@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7a577f013d6745c800a11a2911ddc9a3214e7f09
  Author: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 5 21:49:41 2015 -0400

      net: bridge: remove unnecessary switchdev include

      Remove the unnecessary switchdev.h include from br_netlink.c.

      Signed-off-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
      Acked-by: Jiri Pirko <jiri@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit bf361ad38165939049a2649b1a0078f3268d4bd1
  Author: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 5 21:27:57 2015 -0400

      net: bridge: check __vlan_vid_del for error

      Since __vlan_del can return an error code, change its inner function
      __vlan_vid_del to return an eventual error from switchdev_port_obj_del.

      Signed-off-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
      Acked-by: Jiri Pirko <jiri@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 39797a279d62972cd914ef580fdfacb13e508bf8
  Author: Florian Fainelli <f.fainelli@xxxxxxxxx>
  Date:   Sat Sep 5 13:07:27 2015 -0700

      net: dsa: bcm_sf2: Fix ageing conditions and operation

      The comparison check between cur_hw_state and hw_state is currently
      invalid because cur_hw_state is right shifted by G_MISTP_SHIFT, while
      hw_state is not, so we end-up comparing bits 2:0 with bits 7:5, which is
      going to cause an additional aging to occur. Fix this by not shifting
      cur_hw_state while reading it, but instead, mask the value with the
      appropriately shitfted bitmask.

      The other problem with the fast-ageing process is that we did not set
      the EN_AGE_DYNAMIC bit to request the ageing to occur for dynamically
      learned MAC addresses. Finally, write back 0 to the FAST_AGE_CTRL
      register to avoid leaving spurious bits sets from one operation to the
      other.

      Fixes: 12f460f23423 ("net: dsa: bcm_sf2: add HW bridging support")
      Signed-off-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b855d45dc3175eb3e602b945805c7b6aa8c04559
  Author: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
  Date:   Tue Sep 8 15:16:09 2015 +1000

      powerpc: Wire up sys_userfaultfd()

      The selftest passes on 64-bit LE and BE.

      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit a794b4f3292160bb3fd0f1f90ec8df454e3b17b3
  Merge: f6f7a63 bf2d087
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 18:19:17 2015 -0700

      Merge tag 'for-linus-4.3' of git://git.code.sf.net/p/openipmi/linux-ipmi

      Pull IPMI updates from Corey Minyard:
       "Most of these have been sitting in linux-next for more than a release,
        particularly commit 0fbcf4af7c83 ("ipmi: Convert the IPMI SI ACPI
        handling to a platform device") which is probably the most complex
        patch.

        That is also the one that changes drivers/acpi/acpi_pnp.c.  The change
        in that file is only removing IPMI from a "special platform devices"
        list, since I convert it to the standard PNP interface.  I posted this
        one to the ACPI list twice and got no response, and it seems to work
        well in my testing, so I'm hoping it's good.

        Hidehiro Kawai posted a set of changes that improves the panic time
        handling in the IPMI driver.

        The rest of the changes are minor bug fixes or cleanups and some
        documentation"

      * tag 'for-linus-4.3' of git://git.code.sf.net/p/openipmi/linux-ipmi:
        ipmi:ssif: Add a module parm to specify that SMBus alerts don't work
        ipmi: add of_device_id in MODULE_DEVICE_TABLE
        ipmi: Compensate for BMCs that wont set the irq enable bit
        ipmi: Don't call receive handler in the panic context
        ipmi: Avoid touching possible corrupted lists in the panic context
        ipmi: Don't flush messages in sender() in run-to-completion mode
        ipmi: Factor out message flushing procedure
        ipmi: Remove unneeded set_run_to_completion call
        ipmi: Make some data const that was only read
        ipmi: constify SSIF ACPI device ids
        ipmi: Delete an unnecessary check before the function call 
"cleanup_one_si"
        char:ipmi - Change 1 to true for bool type variables during 
initialization.
        impi:Remove unneeded setting of module owner to THIS_MODULE in the 
platform structure, powernv_ipmi_driver
        ipmi: Add a comment in how messages are delivered from the lower layer
        ipmi/powernv: Fix potential invalid pointer dereference
        ipmi: Convert the IPMI SI ACPI handling to a platform device
        ipmi: Add device tree bindings information

  commit f6f7a6369203fa3e07efb7f35cfd81efe9f25b07
  Merge: 839fe91 df69f52
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 17:52:23 2015 -0700

      Merge branch 'akpm' (patches from Andrew)

      Merge second patch-bomb from Andrew Morton:
       "Almost all of the rest of MM.  There was an unusually large amount of
        MM material this time"

      * emailed patches from Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>: (141 
commits)
        zpool: remove no-op module init/exit
        mm: zbud: constify the zbud_ops
        mm: zpool: constify the zpool_ops
        mm: swap: zswap: maybe_preload & refactoring
        zram: unify error reporting
        zsmalloc: remove null check from destroy_handle_cache()
        zsmalloc: do not take class lock in zs_shrinker_count()
        zsmalloc: use class->pages_per_zspage
        zsmalloc: consider ZS_ALMOST_FULL as migrate source
        zsmalloc: partial page ordering within a fullness_list
        zsmalloc: use shrinker to trigger auto-compaction
        zsmalloc: account the number of compacted pages
        zsmalloc/zram: introduce zs_pool_stats api
        zsmalloc: cosmetic compaction code adjustments
        zsmalloc: introduce zs_can_compact() function
        zsmalloc: always keep per-class stats
        zsmalloc: drop unused variable `nr_to_migrate'
        mm/memblock.c: fix comment in __next_mem_range()
        mm/page_alloc.c: fix type information of memoryless node
        memory-hotplug: fix comments in zone_spanned_pages_in_node() and 
zone_spanned_pages_in_node()
        ...

  commit 839fe9156fbe89c3157aa6146d22090f8cffddd8
  Merge: 54283ae 6dc0dcd
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 17:45:05 2015 -0700

      Merge branch 'parisc-4.3-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux

      Pull parisc updates from Helge Deller:
       "The most important changes in this patchset are:

         - re-enable 64bit PCI bus addresses which were temporarily disabled
           for PA-RISC in kernel 4.2

         - fix the 64bit CAS operation in the LWS path which now enables us to
           enable the 64bit gcc atomic builtins even on 32bit userspace with
           64bit kernel

         - fix a long-standing bug which sometimes crashed kernel at bootup
           while serial interrupt wasn't registered yet"

      * 'parisc-4.3-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: Use platform_device_register_simple("rtc-generic")
        parisc: Drop CONFIG_SMP around update_cr16_clocksource()
        parisc: Use double word condition in 64bit CAS operation
        parisc: Filter out spurious interrupts in PA-RISC irq handler
        parisc: Additionally check for in_atomic() in page fault handler
        PCI,parisc: Enable 64-bit bus addresses on PA-RISC
        parisc: Define ioremap_uc and ioremap_wc

  commit 54283aed90c3cf353e2c01a1d1ca853f5eedf92a
  Merge: 9a9952b 7eba7d9
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 17:39:10 2015 -0700

      Merge tag 'linux-kselftest-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest

      Pull kselftest update from Shuah Khan:
       "This update adds new zram test and fixes to problems found during
        testing this new zram test.  In addition, there are a few bug fixes
        and ksefltest improvement patches from Linaro developers.

        I will send another update later on this week to fix kselftest
        breakage due to commit 2bf9e0ab08c6 ("locking/static_keys: Provide a
        selftest") after the fix soaks in next for a couple of days"

      * tag 'linux-kselftest-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest:
        selftests/zram: Makefile fix
        selftests/zram: must be run as root
        selftests: breakpoints: fix installing error on the architecture except 
x86
        selftests: check before install
        selftests/zram: Adding zram tests

  commit 953ba9ff77f3d08635712eaeffb218d46889b58a
  Author: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
  Date:   Tue Sep 8 18:41:03 2015 +0200

      cpufreq-dt: add suspend frequency support

      Add suspend frequency support and if needed set it to
      the frequency obtained from the suspend opp (can be defined
      using opp-v2 bindings and is optional).

      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 201f3716575781b83259ed026845a213c2355035
  Author: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
  Date:   Tue Sep 8 18:41:02 2015 +0200

      cpufreq: allow cpufreq_generic_suspend() to work without suspend frequency

      Some cpufreq drivers may set suspend frequency only for
      selected setups but still would like to use the generic
      suspend handler.  Thus don't treat !policy->suspend_freq
      condition as an incorrect one.

      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 9a9952bbd76a13fc2c95c28f09ba1801a3664929
  Merge: e81b594 4ad7956
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 17:22:35 2015 -0700

      Merge tag 'iommu-updates-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu

      Pull iommu updates for from Joerg Roedel:
       "This time the IOMMU updates are mostly cleanups or fixes.  No big new
        features or drivers this time.  In particular the changes include:

         - Bigger cleanup of the Domain<->IOMMU data structures and the code
           that manages them in the Intel VT-d driver.  This makes the code
           easier to understand and maintain, and also easier to keep the data
           structures in sync.  It is also a preparation step to make use of
           default domains from the IOMMU core in the Intel VT-d driver.

         - Fixes for a couple of DMA-API misuses in ARM IOMMU drivers, namely
           in the ARM and Tegra SMMU drivers.

         - Fix for a potential buffer overflow in the OMAP iommu driver's
           debug code

         - A couple of smaller fixes and cleanups in various drivers

         - One small new feature: Report domain-id usage in the Intel VT-d
           driver to easier detect bugs where these are leaked"

      * tag 'iommu-updates-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (83 commits)
        iommu/vt-d: Really use upper context table when necessary
        x86/vt-d: Fix documentation of DRHD
        iommu/fsl: Really fix init section(s) content
        iommu/io-pgtable-arm: Unmap and free table when overwriting with block
        iommu/io-pgtable-arm: Move init-fn declarations to io-pgtable.h
        iommu/msm: Use BUG_ON instead of if () BUG()
        iommu/vt-d: Access iomem correctly
        iommu/vt-d: Make two functions static
        iommu/vt-d: Use BUG_ON instead of if () BUG()
        iommu/vt-d: Return false instead of 0 in irq_remapping_cap()
        iommu/amd: Use BUG_ON instead of if () BUG()
        iommu/amd: Make a symbol static
        iommu/amd: Simplify allocation in irq_remapping_alloc()
        iommu/tegra-smmu: Parameterize number of TLB lines
        iommu/tegra-smmu: Factor out tegra_smmu_set_pde()
        iommu/tegra-smmu: Extract tegra_smmu_pte_get_use()
        iommu/tegra-smmu: Use __GFP_ZERO to allocate zeroed pages
        iommu/tegra-smmu: Remove PageReserved manipulation
        iommu/tegra-smmu: Convert to use DMA API
        iommu/tegra-smmu: smmu_flush_ptc() wants device addresses
        ...

  commit d9df93ec8eb751f96c8070f104fa2a588b5ad345
  Merge: 63431f7 4eafbd1
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Wed Sep 9 02:21:06 2015 +0200

      Merge branch 'pm-opp' into pm-cpufreq

  commit 4eafbd15b6c84cd3f6c76022c8a6c27f7cc076e1
  Author: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
  Date:   Tue Sep 8 18:41:01 2015 +0200

      PM / OPP: add dev_pm_opp_get_suspend_opp() helper

      Add dev_pm_opp_get_suspend_opp() helper to obtain suspend opp.

      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit f33b77408a91d4427374010897b90af678dc47be
  Author: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
  Date:   Tue Sep 8 19:06:03 2015 +0200

      staging: board: Migrate away from __pm_genpd_name_add_device()

      The named genpd APIs are deprecated. Hence convert the board staging
      code from using genpd names to DT node paths.

      For now this supports PM domains with "#power-domain-cells = <0>" only.

      Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Reviewed-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
      Acked-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit e81b594cdae73f341ea13bc9fb2b57a5b739c1a3
  Merge: fa81558 072502a
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 16:48:55 2015 -0700

      Merge tag 'regmap-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap

      Pull regmap updates from Mark Brown:
       "This has been a busy release for regmap.

        By far the biggest set of changes here are those from Markus Pargmann
        which implement support for block transfers in smbus devices.  This
        required quite a bit of refactoring but leaves us better able to
        handle odd restrictions that controllers may have and with better
        performance on smbus.

        Other new features include:

         - Fix interactions with lockdep for nested regmaps (eg, when a device
           using regmap is connected to a bus where the bus controller has a
           separate regmap).  Lockdep's default class identification is too
           crude to work without help.

         - Support for must write bitfield operations, useful for operations
           which require writing a bit to trigger them from Kuniori Morimoto.

         - Support for delaying during register patch application from Nariman
           Poushin.

         - Support for overriding cache state via the debugfs implementation
           from Richard Fitzgerald"

      * tag 'regmap-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap: (25 commits)
        regmap: fix a NULL pointer dereference in __regmap_init
        regmap: Support bulk reads for devices without raw formatting
        regmap-i2c: Add smbus i2c block support
        regmap: Add raw_write/read checks for max_raw_write/read sizes
        regmap: regmap max_raw_read/write getter functions
        regmap: Introduce max_raw_read/write for regmap_bulk_read/write
        regmap: Add missing comments about struct regmap_bus
        regmap: No multi_write support if bus->write does not exist
        regmap: Split use_single_rw internally into use_single_read/write
        regmap: Fix regmap_bulk_write for bus writes
        regmap: regmap_raw_read return error on !bus->read
        regulator: core: Print at debug level on debugfs creation failure
        regmap: Fix regmap_can_raw_write check
        regmap: fix typos in regmap.c
        regmap: Fix integertypes for register address and value
        regmap: Move documentation to regmap.h
        regmap: Use different lockdep class for each regmap init call
        thermal: sti: Add parentheses around bridge->ops->regmap_init call
        mfd: vexpress: Add parentheses around bridge->ops->regmap_init call
        regmap: debugfs: Fix misuse of IS_ENABLED
        ...

  commit d70e22d5bcf700a53881acad71a6c669be6eec93
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Thu Jul 16 16:56:19 2015 +0530

      hexagon/time: Migrate to new 'set-state' interface

      Migrate hexagon driver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      We weren't doing anything in the ->set_mode() callback. So, this patch
      doesn't provide any set-state callbacks.

      Cc: linux-hexagon@xxxxxxxxxxxxxxx
      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Richard Kuo <rkuo@xxxxxxxxxxxxxx>

  commit fa815580fb87d1b8c218f9eba8122b2fc3f1a68c
  Merge: 85579ad 57817e6
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 16:42:55 2015 -0700

      Merge tag 'fbdev-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux

      Pull fbdev updates from Tomi Valkeinen:
       "Minor fixes and cleanups"

      * tag 'fbdev-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux:
        video: fbdev: atmel_lcdfb: remove useless include
        video: fbdev: pxa168fb: Use devm_clk_get
        fbdev: ssd1307fb: fix error return code
        fbdev: fix snprintf() limit in show_bl_curve()
        video: fbdev: s3c-fb: Constify platform_device_id
        video: fbdev: atmel: fix warning for const return value
        video: fbdev: Drop owner assignment from platform_driver
        video: fbdev: Drop owner assignment from i2c_driver
        fbdev: remove unnecessary memset in vfb
        framebuffer: disable vgacon on microblaze arch
        fbdev: udlfb: remove unneeded initialization in few places
        fbdev: Allow compile test of GPIO consumers if !GPIOLIB
        fbdev: fix cea_modes array size

  commit 12f0721c5a70408e86257c5c99605cf743cd44c6
  Author: Aristeu Rozanski <aris@xxxxxxxxxx>
  Date:   Fri Jun 12 15:08:17 2015 -0400

      sb_edac: correctly fetch DIMM width on Ivy Bridge and Haswell

      dimm_dev_type has been incorrectly determined in sb_edac. This patch 
fixes it
      for Ivy Bridge and Haswell only since nothing like exists for Sandy 
Bridge.
      We tested this patch in multiple systems matching the results with the
      installed memory modules.

      Acked-by: Tony Luck <tony.luck@xxxxxxxxx>
      Signed-off-by: Aristeu Rozanski <aris@xxxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 85579ad7f1dfc0b72bb243b7227bc4f663035e71
  Merge: 3af6e98 092b6db
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 16:33:16 2015 -0700

      Merge tag 'mmc-v4.3' of git://git.linaro.org/people/ulf.hansson/mmc

      Pull MMC updates from Ulf Hansson:
       "MMC core:
         - Fix a race condition in the request handling
         - Skip trim commands for some buggy kingston eMMCs
         - An optimization and a correction for erase groups
         - Set CMD23 quirk for some Sandisk cards

        MMC host:
         - sdhci: Give GPIO CD higher precedence and don't poll when it's used
         - sdhci: Fix DMA memory leakage
         - sdhci: Some updates for clock management
         - sdhci-of-at91: introduce driver for the Atmel SDMMC
         - sdhci-of-arasan: Add support for sdhci-5.1
         - sdhci-esdhc-imx: Add support for imx7d which also supports HS400
         - sdhci: A collection of fixes and improvements for various sdhci hosts
         - omap_hsmmc: Modernization of the regulator code
         - dw_mmc: A couple of fixes for DMA and PIO mode
         - usdhi6rol0: A few fixes and support probe deferral for regulators
         - pxamci: Convert to use dmaengine
         - sh_mmcif: Fix the suspend process in a short term solution
         - tmio: Adjust timeout for commands
         - sunxi: Fix timeout while gating/ungating clock"

      * tag 'mmc-v4.3' of git://git.linaro.org/people/ulf.hansson/mmc: (67 
commits)
        mmc: android-goldfish: remove incorrect __iomem annotation
        mmc: core: fix race condition in mmc_wait_data_done
        mmc: host: omap_hsmmc: remove CONFIG_REGULATOR check
        mmc: host: omap_hsmmc: use ios->vdd for setting vmmc voltage
        mmc: host: omap_hsmmc: use regulator_is_enabled to find pbias status
        mmc: host: omap_hsmmc: enable/disable vmmc_aux regulator based on 
previous state
        mmc: host: omap_hsmmc: don't use ->set_power to set initial regulator 
state
        mmc: host: omap_hsmmc: avoid pbias regulator enable on power off
        mmc: host: omap_hsmmc: add separate function to set pbias
        mmc: host: omap_hsmmc: add separate functions for enable/disable supply
        mmc: host: omap_hsmmc: return error if any of the regulator APIs fail
        mmc: host: omap_hsmmc: remove unnecessary pbias set_voltage
        mmc: host: omap_hsmmc: use mmc_host's vmmc and vqmmc
        mmc: host: omap_hsmmc: use the ocrmask provided by the vmmc regulator
        mmc: host: omap_hsmmc: cleanup omap_hsmmc_reg_get()
        mmc: host: omap_hsmmc: return on fatal errors from omap_hsmmc_reg_get
        mmc: host: omap_hsmmc: use devm_regulator_get_optional() for vmmc
        mmc: sdhci-of-at91: fix platform_no_drv_owner.cocci warnings
        mmc: sh_mmcif: Fix suspend process
        mmc: usdhi6rol0: fix error return code
        ...

  commit 7179385afef252cd3f52c0a06cc0c405ae6d66bc
  Author: Aristeu Rozanski <aris@xxxxxxxxxx>
  Date:   Fri Jun 12 09:44:52 2015 -0400

      sb_edac: look harder for DDRIO on Haswell systems

      In case the memory banks are populated so the first channel isn't used, 
the
      DDRIO PCI device won't be visible and it won't be possible to determine 
the
      memory type.

      Acked-by: Tony Luck <tony.luck@xxxxxxxxx>
      Signed-off-by: Aristeu Rozanski <aris@xxxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 3af6e98f25d1f68b9c36beee330342944a4e0048
  Merge: acceba5 628b3198
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 16:26:18 2015 -0700

      Merge tag 'platform-drivers-x86-v4.3-1' of 
git://git.infradead.org/users/dvhart/linux-platform-drivers-x86

      Pull x86 platform driver updates from Darren Hart:
       "Significant work on toshiba_acpi, including new hardware support,
        refactoring, and cleanups.  Extend device support for asus, ideapad,
        and acer systems.  New surface pro 3 buttons driver.  Misc minor
        cleanups for thinkpad and hp-wireless.

        acer-wmi:
         - No rfkill on HP Omen 15 wifi

        thinkpad_acpi:
         - Remove side effects from vdbg_printk -> no_printk macro

        surface pro 3:
         - Add support driver for Surface Pro 3 buttons

        hp-wireless:
         - remove unneeded goto/label in hpwl_init

        ideapad-laptop:
         - add alternative representation for Yoga 2 to DMI table
         - Add Lenovo Yoga 3 14 to no_hw_rfkill dmi list

        asus-laptop:
         - Add key found on Asus F3M

        MAINTAINERS:
         - Remove Toshiba Linux mailing list address

        toshiba_acpi:
         - Bump driver version to 0.23
         - Remove unnecessary checks and returns in HCI/SCI functions
         - Refactor *{get, set} functions return value
         - Remove "*not supported" feature prints
         - Change *available functions return type
         - Add set_fan_status function
         - Change some variables to avoid warnings from ninja-check
         - Reorder toshiba_acpi_alt_keymap entries
         - Remove unused wireless defines
         - Transflective backlight updates
         - Avoid registering input device on WMI event laptops
         - Add /dev/toshiba_acpi device
         - Adapt /proc/acpi/toshiba/keys to TOS1900 devices"

      * tag 'platform-drivers-x86-v4.3-1' of 
git://git.infradead.org/users/dvhart/linux-platform-drivers-x86: (21 commits)
        acer-wmi: No rfkill on HP Omen 15 wifi
        thinkpad_acpi: Remove side effects from vdbg_printk -> no_printk macro
        surface pro 3: Add support driver for Surface Pro 3 buttons
        hp-wireless: remove unneeded goto/label in hpwl_init
        ideapad-laptop: add alternative representation for Yoga 2 to DMI table
        asus-laptop: Add key found on Asus F3M
        MAINTAINERS: Remove Toshiba Linux mailing list address
        ideapad-laptop: Add Lenovo Yoga 3 14 to no_hw_rfkill dmi list
        toshiba_acpi: Bump driver version to 0.23
        toshiba_acpi: Remove unnecessary checks and returns in HCI/SCI functions
        toshiba_acpi: Refactor *{get, set} functions return value
        toshiba_acpi: Remove "*not supported" feature prints
        toshiba_acpi: Change *available functions return type
        toshiba_acpi: Add set_fan_status function
        toshiba_acpi: Change some variables to avoid warnings from ninja-check
        toshiba_acpi: Reorder toshiba_acpi_alt_keymap entries
        toshiba_acpi: Remove unused wireless defines
        toshiba_acpi: Transflective backlight updates
        toshiba_acpi: Avoid registering input device on WMI event laptops
        toshiba_acpi: Add /dev/toshiba_acpi device
        ...

  commit acceba598eda9817bc187f3a683a2d2ee7e7fbc7
  Merge: c191761 5a73882
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 16:16:26 2015 -0700

      Merge branch 'i2c/for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux

      Pull i2c updates from Wolfram Sang:
       "Features:

         - new drivers: Renesas EMEV2, register based MUX, NXP LPC2xxx
         - core: scans DT and assigns wakeup interrupts.  no driver changes 
needed.
         - core: some refcouting issues fixed and better API for that
         - core: new helper function for best effort block read emulation
         - slave framework: proper DT bindings and userspace instantiation
         - some bigger work for xiic, pxa, omap drivers

        .. and quite a number of smaller driver fixes, cleanups, improvements"

      * 'i2c/for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (65 commits)
        i2c: mux: reg Change ioread endianness for readback
        i2c: mux: reg: fix compilation warnings
        i2c: mux: reg: simplify register size checking
        i2c: muxes: fix leaked i2c adapter device node references
        i2c: allow specifying separate wakeup interrupt in device tree
        of/irq: export of_get_irq_byname()
        i2c: xgene-slimpro: dma_mapping_error() doesn't return an error code
        i2c: Replace I2C_CROS_EC_TUNNEL dependency
        eeprom: at24: use i2c_smbus_read_i2c_block_data_or_emulated
        i2c: core: Add support for best effort block read emulation
        i2c: lpc2k: add driver
        i2c: mux: Add register-based mux i2c-mux-reg
        i2c: dt: describe generic bindings
        i2c: slave: print warning if slave flag not set
        i2c: support 10 bit and slave addresses in sysfs 'new_device'
        i2c: take address space into account when checking for used addresses
        i2c: apply DT flags when probing
        i2c: make address check indpendent from client struct
        i2c: rename address check functions
        i2c: apply address offset for slaves, too
        ...

  commit c19176154b464c861e49355eff636aa6896735b5
  Merge: 12f03ee 5f1b2f7
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 15:46:31 2015 -0700

      Merge tag 'rtc-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux

      Pull RTC updates from Alexandre Belloni:
       "Core:
         - use is_visible() to control sysfs attributes
         - switch wakealarm attribute to DEVICE_ATTR_RW
         - make rtc_does_wakealarm() return boolean
         - properly manage lifetime of dev and cdev in rtc device
         - remove unnecessary device_get() in rtc_device_unregister
         - fix double free in rtc_register_device() error path

        New drivers:
         - NXP LPC24xx
         - Xilinx Zynq MP
         - Dialog DA9062

        Subsystem wide cleanups:
         - fix drivers that consider 0 as a valid IRQ in client->irq
         - Drop (un)likely before IS_ERR(_OR_NULL)
         - drop the remaining owner assignment for i2c_driver and
           platform_driver
         - module autoload fixes

        Drivers:
         - 88pm80x: add device tree support
         - abx80x: fix RTC write bit
         - ab8500: Add a sentinel to ab85xx_rtc_ids[]
         - armada38x: Align RTC set time procedure with the official errata
         - as3722: correct month value
         - at91sam9: cleanups
         - at91rm9200: get and use slow clock and cleanups
         - bq32k: remove redundant check
         - cmos: century support, proper fix for the spurious wakeup
         - ds1307: cleanups and wakeup irq support
         - ds1374: Remove unused variable
         - ds1685: Use module_platform_driver
         - ds3232: fix WARNING trace in resume function
         - gemini: fix ptr_ret.cocci warnings
         - mt6397: implement suspend/resume
         - omap: support internal and external clock enabling
         - opal: Enable alarms only when opal supports tpo
         - pcf2127: use OFS flag to detect unreliable date and warn the user
         - pl031: fix typo for author email
         - rx8025: huge cleanup and fixes
         - sa1100/pxa: share common code
         - s5m: fix to update ctrl register
         - s3c: fix clocks and wakeup, cleanup
         - sirfsoc: use regmap
         - nvram_read()/nvram_write() functions for cmos, ds1305, ds1307,
           ds1343, ds1511, ds1553, ds1742, m48t59, rp5c01, stk17ta8, tx4939
         - use rtc_valid_tm() error code when reading date/time instead of 0
           for isl12022, pcf2123, pcf2127"

      * tag 'rtc-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (90 commits)
        rtc: abx80x: fix RTC write bit
        rtc: ab8500: Add a sentinel to ab85xx_rtc_ids[]
        rtc: ds1374: Remove unused variable
        rtc: Fix module autoload for OF platform drivers
        rtc: Fix module autoload for rtc-{ab8500,max8997,s5m} drivers
        rtc: omap: Add external clock enabling support
        rtc: omap: Add internal clock enabling support
        ARM: dts: AM437x: Add the internal and external clock nodes for rtc
        rtc: s5m: fix to update ctrl register
        rtc: add xilinx zynqmp rtc driver
        devicetree: bindings: rtc: add bindings for xilinx zynqmp rtc
        rtc: as3722: correct month value
        ARM: config: Switch PXA27x platforms to use PXA RTC driver
        ARM: mmp: remove unused RTC register definitions
        ARM: sa1100: remove unused RTC register definitions
        rtc: sa1100/pxa: convert to run-time register mapping
        ARM: pxa: add memory resource to SA1100 RTC device
        rtc: pxa: convert to use shared sa1100 functions
        rtc: sa1100: prepare to share sa1100_rtc_ops
        rtc: ds3232: fix WARNING trace in resume function
        ...

  commit df69f52d990bd85159727bd26e819d3a6e49c666
  Author: Dan Streetman <ddstreet@xxxxxxxx>
  Date:   Tue Sep 8 15:05:09 2015 -0700

      zpool: remove no-op module init/exit

      Remove zpool_init() and zpool_exit(); they do nothing other than print
      "loaded" and "unloaded".

      Signed-off-by: Dan Streetman <ddstreet@xxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c83db4f419e7105af38cdcca80cc51213214a2c8
  Author: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
  Date:   Tue Sep 8 15:05:06 2015 -0700

      mm: zbud: constify the zbud_ops

      The structure zbud_ops is not modified so make the pointer to it a
      pointer to const.

      Signed-off-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Acked-by: Dan Streetman <ddstreet@xxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 786727799a85aeabc20cab5ecfb72771bcbd6b85
  Author: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
  Date:   Tue Sep 8 15:05:03 2015 -0700

      mm: zpool: constify the zpool_ops

      The structure zpool_ops is not modified so make the pointer to it a
      pointer to const.

      Signed-off-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Acked-by: Dan Streetman <ddstreet@xxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 5b999aadbae65696a148f55250d94b6f3d74071e
  Author: Dmitry Safonov <0x7f454c46@xxxxxxxxx>
  Date:   Tue Sep 8 15:05:00 2015 -0700

      mm: swap: zswap: maybe_preload & refactoring

      zswap_get_swap_cache_page and read_swap_cache_async have pretty much the
      same code with only significant difference in return value and usage of
      swap_readpage.

      I a helper __read_swap_cache_async() with the common code.  Behavior
      change: now zswap_get_swap_cache_page will use radix_tree_maybe_preload
      instead radix_tree_preload.  Looks like, this wasn't changed only by the
      reason of code duplication.

      Signed-off-by: Dmitry Safonov <0x7f454c46@xxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Jens Axboe <axboe@xxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxx>
      Cc: David Herrmann <dh.herrmann@xxxxxxxxx>
      Cc: Seth Jennings <sjennings@xxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 708649694a8699ff91d395c4aef5ecea3ade14bc
  Author: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
  Date:   Tue Sep 8 15:04:58 2015 -0700

      zram: unify error reporting

      Make zram syslog error reporting more consistent. We have random
      error levels in some places. For example, critical errors like
        "Error allocating memory for compressed page"
      and
        "Unable to allocate temp memory"
      are reported as KERN_INFO messages.

      a) Reassign error levels

      Error messages that directly affect zram
      functionality -- pr_err():

       Error allocating zram address table
       Error creating memory pool
       Decompression failed! err=%d, page=%u
       Unable to allocate temp memory
       Compression failed! err=%d
       Error allocating memory for compressed page: %u, size=%zu
       Cannot initialise %s compressing backend
       Error allocating disk queue for device %d
       Error allocating disk structure for device %d
       Error creating sysfs group for device %d
       Unable to register zram-control class
       Unable to get major number

      Messages that do not affect functionality, but user
      must be warned (because sysfs attrs will be removed in
      this particular case) -- pr_warn():

       %d (%s) Attribute %s (and others) will be removed. %s

      Messages that do not affect functionality and mostly are
      informative -- pr_info():

       Cannot change max compression streams
       Can't change algorithm for initialized device
       Cannot change disksize for initialized device
       Added device: %s
       Removed device: %s

      b) Update sysfs_create_group() error message

      First, it lacks a trailing new line; add it.  Second, every error message
      in zram_add() has a "for device %d" part, which makes errors more
      informative.  Add missing part to "Error creating sysfs group" message.

      Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit cd10add00c1b31cd664a31108a9b395025def50a
  Author: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
  Date:   Tue Sep 8 15:04:55 2015 -0700

      zsmalloc: remove null check from destroy_handle_cache()

      We can pass a NULL cache pointer to kmem_cache_destroy(), because it
      NULL-checks its argument now.  Remove redundant test from
      destroy_handle_cache().

      Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Acked-by: Minchan Kim <minchan@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit b3e237f1f5a86030c875e186ff19640f4f4f3c63
  Author: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
  Date:   Tue Sep 8 15:04:52 2015 -0700

      zsmalloc: do not take class lock in zs_shrinker_count()

      We can avoid taking class ->lock around zs_can_compact() in
      zs_shrinker_count(), because the number that we return back is outdated
      in general case, by design.  We have different sources that are able to
      change class's state right after we return from zs_can_compact() --
      ongoing I/O operations, manually triggered compaction, or two of them
      happening simultaneously.

      We re-do this calculations during compaction on a per class basis
      anyway.

      zs_unregister_shrinker() will not return until we have an active
      shrinker, so classes won't unexpectedly disappear while
      zs_shrinker_count() iterates them.

      Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Acked-by: Minchan Kim <minchan@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 6cbf16b3b66a61b9c6df8f2ed4ac346cb427f28a
  Author: Minchan Kim <minchan@xxxxxxxxxx>
  Date:   Tue Sep 8 15:04:49 2015 -0700

      zsmalloc: use class->pages_per_zspage

      There is no need to recalcurate pages_per_zspage in runtime.  Just use
      class->pages_per_zspage to avoid unnecessary runtime overhead.

      Signed-off-by: Minchan Kim <minchan@xxxxxxxxxx>
      Acked-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ad9d5e175a77a253f52a7259a7c918b8351d99f1
  Author: Minchan Kim <minchan.kim@xxxxxxx>
  Date:   Tue Sep 8 15:04:47 2015 -0700

      zsmalloc: consider ZS_ALMOST_FULL as migrate source

      There is no reason to prevent select ZS_ALMOST_FULL as migration source
      if we cannot find source from ZS_ALMOST_EMPTY.

      With this patch, zs_can_compact will return more exact result.

      Signed-off-by: Minchan Kim <minchan.kim@xxxxxxx>
      Acked-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 58f171174625150f3aaad0cddd3e365270b8e1b8
  Author: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
  Date:   Tue Sep 8 15:04:44 2015 -0700

      zsmalloc: partial page ordering within a fullness_list

      We want to see more ZS_FULL pages and less ZS_ALMOST_{FULL, EMPTY}
      pages.  Put a page with higher ->inuse count first within its
      ->fullness_list, which will give us better chances to fill up this page
      with new objects (find_get_zspage() return ->fullness_list head for new
      object allocation), so some zspages will become ZS_ALMOST_FULL/ZS_FULL
      quicker.

      It performs a trivial and cheap ->inuse compare which does not slow down
      zsmalloc and in the worst case keeps the list pages in no particular
      order.

      A more expensive solution could sort fullness_list by ->inuse count.

      [minchan@xxxxxxxxxx: code adjustments]
      Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ab9d306d9c3bf64b1dbad127aa13252cc550f839
  Author: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
  Date:   Tue Sep 8 15:04:41 2015 -0700

      zsmalloc: use shrinker to trigger auto-compaction

      Perform automatic pool compaction by a shrinker when system is getting
      tight on memory.

      User-space has a very little knowledge regarding zsmalloc fragmentation
      and basically has no mechanism to tell whether compaction will result in
      any memory gain.  Another issue is that user space is not always aware
      of the fact that system is getting tight on memory.  Which leads to very
      uncomfortable scenarios when user space may start issuing compaction
      'randomly' or from crontab (for example).  Fragmentation is not always
      necessarily bad, allocated and unused objects, after all, may be filled
      with the data later, w/o the need of allocating a new zspage.  On the
      other hand, we obviously don't want to waste memory when the system
      needs it.

      Compaction now has a relatively quick pool scan so we are able to
      estimate the number of pages that will be freed easily, which makes it
      possible to call this function from a shrinker->count_objects()
      callback.  We also abort compaction as soon as we detect that we can't
      free any pages any more, preventing wasteful objects migrations.

      Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Suggested-by: Minchan Kim <minchan@xxxxxxxxxx>
      Acked-by: Minchan Kim <minchan@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 860c707dca155a56dfa115ddd6c00959296144a6
  Author: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
  Date:   Tue Sep 8 15:04:38 2015 -0700

      zsmalloc: account the number of compacted pages

      Compaction returns back to zram the number of migrated objects, which is
      quite uninformative -- we have objects of different sizes so user space
      cannot obtain any valuable data from that number.  Change compaction to
      operate in terms of pages and return back to compaction issuer the
      number of pages that were freed during compaction.  So from now on we
      will export more meaningful value in zram<id>/mm_stat -- the number of
      freed (compacted) pages.

      This requires:
       (a) a rename of `num_migrated' to 'pages_compacted'
       (b) a internal API change -- return first_page's fullness_group from
           putback_zspage(), so we know when putback_zspage() did
           free_zspage().  It helps us to account compaction stats correctly.

      Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Acked-by: Minchan Kim <minchan@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 7d3f3938236b4bb878214e6791e76fd8409bdeee
  Author: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
  Date:   Tue Sep 8 15:04:35 2015 -0700

      zsmalloc/zram: introduce zs_pool_stats api

      `zs_compact_control' accounts the number of migrated objects but it has
      a limited lifespan -- we lose it as soon as zs_compaction() returns back
      to zram.  It worked fine, because (a) zram had it's own counter of
      migrated objects and (b) only zram could trigger compaction.  However,
      this does not work for automatic pool compaction (not issued by zram).
      To account objects migrated during auto-compaction (issued by the
      shrinker) we need to store this number in zs_pool.

      Define a new `struct zs_pool_stats' structure to keep zs_pool's stats
      there.  It provides only `num_migrated', as of this writing, but it
      surely can be extended.

      A new zsmalloc zs_pool_stats() symbol exports zs_pool's stats back to
      caller.

      Use zs_pool_stats() in zram and remove `num_migrated' from zram_stats.

      Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Suggested-by: Minchan Kim <minchan@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 0dc63d488a2a433a4a85d3908b3f195c4e6450d2
  Author: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
  Date:   Tue Sep 8 15:04:33 2015 -0700

      zsmalloc: cosmetic compaction code adjustments

      Change zs_object_copy() argument order to be (DST, SRC) rather than
      (SRC, DST).  copy/move functions usually have (to, from) arguments
      order.

      Rename alloc_target_page() to isolate_target_page().  This function
      doesn't allocate anything, it isolates target page, pretty much like
      isolate_source_page().

      Tweak __zs_compact() comment.

      Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Acked-by: Minchan Kim <minchan@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 04f05909e0fde36ba481ad4c850b666ebef1ac55
  Author: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
  Date:   Tue Sep 8 15:04:30 2015 -0700

      zsmalloc: introduce zs_can_compact() function

      This function checks if class compaction will free any pages.
      Rephrasing -- do we have enough unused objects to form at least one
      ZS_EMPTY page and free it.  It aborts compaction if class compaction
      will not result in any (further) savings.

      EXAMPLE (this debug output is not part of this patch set):

       - class size
       - number of allocated objects
       - number of used objects
       - max objects per zspage
       - pages per zspage
       - estimated number of pages that will be freed

      [..]
      class-512 objs:544 inuse:540 maxobj-per-zspage:8  pages-per-zspage:1 
zspages-to-free:0
       ... class-512 compaction is useless. break
      class-496 objs:660 inuse:570 maxobj-per-zspage:33 pages-per-zspage:4 
zspages-to-free:2
      class-496 objs:627 inuse:570 maxobj-per-zspage:33 pages-per-zspage:4 
zspages-to-free:1
      class-496 objs:594 inuse:570 maxobj-per-zspage:33 pages-per-zspage:4 
zspages-to-free:0
       ... class-496 compaction is useless. break
      class-448 objs:657 inuse:617 maxobj-per-zspage:9  pages-per-zspage:1 
zspages-to-free:4
      class-448 objs:648 inuse:617 maxobj-per-zspage:9  pages-per-zspage:1 
zspages-to-free:3
      class-448 objs:639 inuse:617 maxobj-per-zspage:9  pages-per-zspage:1 
zspages-to-free:2
      class-448 objs:630 inuse:617 maxobj-per-zspage:9  pages-per-zspage:1 
zspages-to-free:1
      class-448 objs:621 inuse:617 maxobj-per-zspage:9  pages-per-zspage:1 
zspages-to-free:0
       ... class-448 compaction is useless. break
      class-432 objs:728 inuse:685 maxobj-per-zspage:28 pages-per-zspage:3 
zspages-to-free:1
      class-432 objs:700 inuse:685 maxobj-per-zspage:28 pages-per-zspage:3 
zspages-to-free:0
       ... class-432 compaction is useless. break
      class-416 objs:819 inuse:705 maxobj-per-zspage:39 pages-per-zspage:4 
zspages-to-free:2
      class-416 objs:780 inuse:705 maxobj-per-zspage:39 pages-per-zspage:4 
zspages-to-free:1
      class-416 objs:741 inuse:705 maxobj-per-zspage:39 pages-per-zspage:4 
zspages-to-free:0
       ... class-416 compaction is useless. break
      class-400 objs:690 inuse:674 maxobj-per-zspage:10 pages-per-zspage:1 
zspages-to-free:1
      class-400 objs:680 inuse:674 maxobj-per-zspage:10 pages-per-zspage:1 
zspages-to-free:0
       ... class-400 compaction is useless. break
      class-384 objs:736 inuse:709 maxobj-per-zspage:32 pages-per-zspage:3 
zspages-to-free:0
       ... class-384 compaction is useless. break
      [..]

      Every "compaction is useless" indicates that we saved CPU cycles.

      class-512 has
        544     object allocated
        540     objects used
        8       objects per-page

      Even if we have a ALMOST_EMPTY zspage, we still don't have enough room to
      migrate all of its objects and free this zspage; so compaction will not
      make a lot of sense, it's better to just leave it as is.

      Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Acked-by: Minchan Kim <minchan@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 57244594195fe697f9261c7970ca25db35280967
  Author: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
  Date:   Tue Sep 8 15:04:27 2015 -0700

      zsmalloc: always keep per-class stats

      Always account per-class `zs_size_stat' stats.  This data will help us
      make better decisions during compaction.  We are especially interested
      in OBJ_ALLOCATED and OBJ_USED, which can tell us if class compaction
      will result in any memory gain.

      For instance, we know the number of allocated objects in the class, the
      number of objects being used (so we also know how many objects are not
      used) and the number of objects per-page.  So we can ensure if we have
      enough unused objects to form at least one ZS_EMPTY zspage during
      compaction.

      We calculate this value on per-class basis so we can calculate a total
      number of zspages that can be released.  Which is exactly what a
      shrinker wants to know.

      Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Acked-by: Minchan Kim <minchan@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit b430d1fd6c7d22cc07e7c22a2ee1078667605313
  Author: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
  Date:   Tue Sep 8 15:04:24 2015 -0700

      zsmalloc: drop unused variable `nr_to_migrate'

      This patchset tweaks compaction and makes it possible to trigger pool
      compaction automatically when system is getting low on memory.

      zsmalloc in some cases can suffer from a notable fragmentation and
      compaction can release some considerable amount of memory.  The problem
      here is that currently we fully rely on user space to perform compaction
      when needed.  However, performing zsmalloc compaction is not always an
      obvious thing to do.  For example, suppose we have a `idle' fragmented
      (compaction was never performed) zram device and system is getting low
      on memory due to some 3rd party user processes (gcc LTO, or firefox,
      etc.).  It's quite unlikely that user space will issue zpool compaction
      in this case.  Besides, user space cannot tell for sure how badly pool
      is fragmented; however, this info is known to zsmalloc and, hence, to a
      shrinker.

      This patch (of 7):

      __zs_compact() does not use `nr_to_migrate', drop it.

      Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Acked-by: Minchan Kim <minchan@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ad5ea8cd5b934cc082f2cda900b490def149908e
  Author: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
  Date:   Tue Sep 8 15:04:22 2015 -0700

      mm/memblock.c: fix comment in __next_mem_range()

      Signed-off-by: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 4ada0c5a2daf11816180ec30bdbdbed1f6ff3224
  Author: Zhen Lei <thunder.leizhen@xxxxxxxxxx>
  Date:   Tue Sep 8 15:04:19 2015 -0700

      mm/page_alloc.c: fix type information of memoryless node

      For a memoryless node, the output of get_pfn_range_for_nid are all zero.
      It will display mem from 0 to -1.

      Signed-off-by: Zhen Lei <thunder.leizhen@xxxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit b5685e9263a6f3a8da546b8a46382f18a63745c9
  Author: Xishi Qiu <qiuxishi@xxxxxxxxxx>
  Date:   Tue Sep 8 15:04:16 2015 -0700

      memory-hotplug: fix comments in zone_spanned_pages_in_node() and 
zone_spanned_pages_in_node()

      When hot adding a node from add_memory(), we will add memblock first, so
      the node is not empty.  But when called from cpu_up(), the node should
      be empty.

      Signed-off-by: Xishi Qiu <qiuxishi@xxxxxxxxxx>
      Cc: Tang Chen <tangchen@xxxxxxxxxxxxxx>
      Cc: Yasuaki Ishimatsu <isimatu.yasuaki@xxxxxxxxxxxxxx>
      Cc: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>\
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 34b100605cb7e201d5c4e39f54d0e11caa950733
  Author: Yaowei Bai <bywxiaobai@xxxxxxx>
  Date:   Tue Sep 8 15:04:13 2015 -0700

      mm/page_alloc.c: change sysctl_lower_zone_reserve_ratio to 
sysctl_lowmem_reserve_ratio in comments

      We use sysctl_lowmem_reserve_ratio rather than
      sysctl_lower_zone_reserve_ratio to determine how aggressive the kernel
      is in defending lowmem from the possibility of being captured into
      pinned user memory.  To avoid misleading, correct it in some comments.

      Signed-off-by: Yaowei Bai <bywxiaobai@xxxxxxx>
      Acked-by: Michal Hocko <mhocko@xxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 013110a73dcf970cb28c5b0a79f9eee577ea6aa2
  Author: Yaowei Bai <bywxiaobai@xxxxxxx>
  Date:   Tue Sep 8 15:04:10 2015 -0700

      mm/page_alloc.c: fix a misleading comment

      The comment says that the per-cpu batchsize and zone watermarks are
      determined by present_pages which is definitely wrong, they are both
      calculated from managed_pages.  Fix it.

      Signed-off-by: Yaowei Bai <bywxiaobai@xxxxxxx>
      Acked-by: Michal Hocko <mhocko@xxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c9d13f5fc748a02cb5917a798f065681007342b9
  Author: Chen Gang <gang.chen.5i5j@xxxxxxxxx>
  Date:   Tue Sep 8 15:04:08 2015 -0700

      mm/mmap.c:insert_vm_struct(): check for failure before setting values

      There's no point in initializing vma->vm_pgoff if the insertion attempt
      will be failing anyway.  Run the checks before performing the
      initialization.

      Signed-off-by: Chen Gang <gang.chen.5i5j@xxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit bde43c6c9f4f360ae549a0ed9f10a3e62e363aca
  Author: Petr Mladek <pmladek@xxxxxxxx>
  Date:   Tue Sep 8 15:04:05 2015 -0700

      mm/khugepaged: allow interruption of allocation sleep again

      Commit 1dfb059b9438 ("thp: reduce khugepaged freezing latency") fixed
      khugepaged to do not block a system suspend.  But the result is that it
      could not get interrupted before the given timeout because the condition
      for the wait event is "false".

      This patch puts back the original approach but it uses
      freezable_schedule_timeout_interruptible() instead of
      schedule_timeout_interruptible().  It does the right thing.  I am pretty
      sure that the freezable variant was not used in the original fix only
      because it was not available at that time.

      The regression has been there for ages.  It was not critical.  It just
      did the allocation throttling a little bit more aggressively.

      I found this problem when converting the kthread to kthread worker API
      and trying to understand the code.

      This bug is thought to have minimal userspace-visible impact.  Somebody
      could set a high alloc_sleep value by mistake, and then try to fix it
      back, but khugepaged would keep sleeping until the high value expires.

      Signed-off-by: Petr Mladek <pmladek@xxxxxxxx>
      Cc: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: "Aneesh Kumar K.V" <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Ebru Akagunduz <ebru.akagunduz@xxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Jiri Kosina <jkosina@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c11539315129b599aae6d9bc0f941dee5559ec58
  Author: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
  Date:   Tue Sep 8 15:04:02 2015 -0700

      mm/memblock.c: fiy typos in comments

      s/succees/success/

      Signed-off-by: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1a16718cf7f4f48ee2aa2cfd9a961c6b433a7b5b
  Author: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
  Date:   Tue Sep 8 15:03:59 2015 -0700

      mm/compaction: correct to flush migrated pages if pageblock skip happens

      We cache isolate_start_pfn before entering isolate_migratepages().  If
      pageblock is skipped in isolate_migratepages() due to whatever reason,
      cc->migrate_pfn can be far from isolate_start_pfn hence we flush pages
      that were freed.  For example, the following scenario can be possible:

      - assume order-9 compaction, pageblock order is 9
      - start_isolate_pfn is 0x200
      - isolate_migratepages()
        - skip a number of pageblocks
        - start to isolate from pfn 0x600
        - cc->migrate_pfn = 0x620
        - return
      - last_migrated_pfn is set to 0x200
      - check flushing condition
        - current_block_start is set to 0x600
        - last_migrated_pfn < current_block_start then do useless flush

      This wrong flush would not help the performance and success rate so this
      patch tries to fix it.  One simple way to know the exact position where
      we start to isolate migratable pages is that we cache it in
      isolate_migratepages() before entering actual isolation.  This patch
      implements that and fixes the problem.

      Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Acked-by: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 82c1fc714763b823169958a98196d9be56c63b30
  Author: Vlastimil Babka <vbabka@xxxxxxx>
  Date:   Tue Sep 8 15:03:56 2015 -0700

      mm: use numa_mem_id() in alloc_pages_node()

      alloc_pages_node() might fail when called with NUMA_NO_NODE and
      __GFP_THISNODE on a CPU belonging to a memoryless node.  To make the
      local-node fallback more robust and prevent such situations, use
      numa_mem_id(), which was introduced for similar scenarios in the slab
      context.

      Suggested-by: Christoph Lameter <cl@xxxxxxxxx>
      Signed-off-by: Vlastimil Babka <vbabka@xxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Acked-by: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 0bc35a970c01c50e3bcc4b5a612787346024e5db
  Author: Vlastimil Babka <vbabka@xxxxxxx>
  Date:   Tue Sep 8 15:03:53 2015 -0700

      mm: unify checks in alloc_pages_node() and __alloc_pages_node()

      Perform the same debug checks in alloc_pages_node() as are done in
      __alloc_pages_node(), by making the former function a wrapper of the
      latter one.

      In addition to better diagnostics in DEBUG_VM builds for situations
      which have been already fatal (e.g.  out-of-bounds node id), there are
      two visible changes for potential existing buggy callers of
      alloc_pages_node():

      - calling alloc_pages_node() with any negative nid (e.g. due to arithmetic
        overflow) was treated as passing NUMA_NO_NODE and fallback to local 
node was
        applied. This will now be fatal.
      - calling alloc_pages_node() with an offline node will now be checked for
        DEBUG_VM builds. Since it's not fatal if the node has been previously 
online,
        and this patch may expose some existing buggy callers, change the 
VM_BUG_ON
        in __alloc_pages_node() to VM_WARN_ON.

      Signed-off-by: Vlastimil Babka <vbabka@xxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx>
      Acked-by: Christoph Lameter <cl@xxxxxxxxx>
      Acked-by: Michal Hocko <mhocko@xxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 96db800f5d73cd5c49461253d45766e094f0f8c2
  Author: Vlastimil Babka <vbabka@xxxxxxx>
  Date:   Tue Sep 8 15:03:50 2015 -0700

      mm: rename alloc_pages_exact_node() to __alloc_pages_node()

      alloc_pages_exact_node() was introduced in commit 6484eb3e2a81 ("page
      allocator: do not check NUMA node ID when the caller knows the node is
      valid") as an optimized variant of alloc_pages_node(), that doesn't
      fallback to current node for nid == NUMA_NO_NODE.  Unfortunately the
      name of the function can easily suggest that the allocation is
      restricted to the given node and fails otherwise.  In truth, the node is
      only preferred, unless __GFP_THISNODE is passed among the gfp flags.

      The misleading name has lead to mistakes in the past, see for example
      commits 5265047ac301 ("mm, thp: really limit transparent hugepage
      allocation to local node") and b360edb43f8e ("mm, mempolicy:
      migrate_to_node should only migrate to node").

      Another issue with the name is that there's a family of
      alloc_pages_exact*() functions where 'exact' means exact size (instead
      of page order), which leads to more confusion.

      To prevent further mistakes, this patch effectively renames
      alloc_pages_exact_node() to __alloc_pages_node() to better convey that
      it's an optimized variant of alloc_pages_node() not intended for general
      usage.  Both functions get described in comments.

      It has been also considered to really provide a convenience function for
      allocations restricted to a node, but the major opinion seems to be that
      __GFP_THISNODE already provides that functionality and we shouldn't
      duplicate the API needlessly.  The number of users would be small
      anyway.

      Existing callers of alloc_pages_exact_node() are simply converted to
      call __alloc_pages_node(), with the exception of sba_alloc_coherent()
      which open-codes the check for NUMA_NO_NODE, so it is converted to use
      alloc_pages_node() instead.  This means it no longer performs some
      VM_BUG_ON checks, and since the current check for nid in
      alloc_pages_node() uses a 'nid < 0' comparison (which includes
      NUMA_NO_NODE), it may hide wrong values which would be previously
      exposed.

      Both differences will be rectified by the next patch.

      To sum up, this patch makes no functional changes, except temporarily
      hiding potentially buggy callers.  Restricting the checks in
      alloc_pages_node() is left for the next patch which can in turn expose
      more existing buggy callers.

      Signed-off-by: Vlastimil Babka <vbabka@xxxxxxx>
      Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx>
      Acked-by: Robin Holt <robinmholt@xxxxxxxxx>
      Acked-by: Michal Hocko <mhocko@xxxxxxxx>
      Acked-by: Christoph Lameter <cl@xxxxxxxxx>
      Acked-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Greg Thelen <gthelen@xxxxxxxxxx>
      Cc: Aneesh Kumar K.V <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
      Cc: Pekka Enberg <penberg@xxxxxxxxxx>
      Cc: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Cc: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: Tony Luck <tony.luck@xxxxxxxxx>
      Cc: Fenghua Yu <fenghua.yu@xxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Cc: Paul Mackerras <paulus@xxxxxxxxx>
      Cc: Gleb Natapov <gleb@xxxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Cc: Cliff Whickman <cpw@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 7fadc820222497eac234d1d51a66517c00a6ca4c
  Author: Hugh Dickins <hughd@xxxxxxxxxx>
  Date:   Tue Sep 8 15:03:46 2015 -0700

      mm, vmscan: unlock page while waiting on writeback

      This is merely a politeness: I've not found that shrink_page_list()
      leads to deadlock with the page it holds locked across
      wait_on_page_writeback(); but nevertheless, why hold others off by
      keeping the page locked there?

      And while we're at it: remove the mistaken "not " from the commentary on
      this Case 3 (and a distracting blank line from Case 2, if I may).

      Signed-off-by: Hugh Dickins <hughd@xxxxxxxxxx>
      Acked-by: Michal Hocko <mhocko@xxxxxxxx>
      Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 26f5d7609f03ad8d6dc552458e4e371a62416b37
  Author: Jeff Layton <jlayton@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 15:03:44 2015 -0700

      list_lru: don't call list_lru_from_kmem if the list_head is empty

      If the list_head is empty then we'll have called list_lru_from_kmem for
      nothing.  Move that call inside of the list_empty if block.

      Signed-off-by: Jeff Layton <jeff.layton@xxxxxxxxxxxxxxx>
      Reviewed-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 21cd3a604797c2774676926a95a3d17d4cd5cbb3
  Author: Wang Kai <morgan.wang@xxxxxxxxxx>
  Date:   Tue Sep 8 15:03:41 2015 -0700

      kmemleak: record accurate early log buffer count and report when exceeded

      In log_early function, crt_early_log should also count once when
      'crt_early_log >= ARRAY_SIZE(early_log)'.  Otherwise the reported count
      from kmemleak_init is one less than 'actual number'.

      Then, in kmemleak_init, if early_log buffer size equal actual number,
      kmemleak will init sucessful, so change warning condition to
      'crt_early_log > ARRAY_SIZE(early_log)'.

      Signed-off-by: Wang Kai <morgan.wang@xxxxxxxxxx>
      Acked-by: Catalin Marinas <catalin.marinas@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit e3975891254e08d220ddcafca93a0e05d9560bfb
  Author: Chen Gang <gang.chen.5i5j@xxxxxxxxx>
  Date:   Tue Sep 8 15:03:38 2015 -0700

      mm/mmap.c: simplify the failure return working flow

      __split_vma() doesn't need out_err label, neither need initializing err.

      copy_vma() can return NULL directly when kmem_cache_alloc() fails.

      Signed-off-by: Chen Gang <gang.chen.5i5j@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 44a30220bc0a171c010e8df63d144655abdafe61
  Author: Yu Zhao <yuzhao@xxxxxxxxxx>
  Date:   Tue Sep 8 15:03:33 2015 -0700

      shmem: recalculate file inode when fstat

      Shmem uses shmem_recalc_inode to update i_blocks when it allocates page,
      undoes range or swaps.  But mm can drop clean page without notifying
      shmem.  This makes fstat sometimes return out-of-date block size.

      The problem can be partially solved when we add
      inode_operations->getattr which calls shmem_recalc_inode to update
      i_blocks for fstat.

      shmem_recalc_inode also updates counter used by statfs and
      vm_committed_as.  For them the situation is not changed.  They still
      suffer from the discrepancy after dropping clean page and before the
      function is called by aforementioned triggers.

      Signed-off-by: Yu Zhao <yuzhao@xxxxxxxxxx>
      Signed-off-by: Hugh Dickins <hughd@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 567d117b8b2ab1c3437acc4799505a59bfa5722b
  Author: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
  Date:   Tue Sep 8 15:03:33 2015 -0700

      mm/memblock.c: rename local variable of memblock_type to 'type'

      Since commit e3239ff92a17 ("memblock: Rename memblock_region to
      memblock_type and memblock_property to memblock_region"), all local
      variables of the membock_type type were renamed to 'type'.  This commit
      renames all remaining local variables with the memblock_type type to the
      same view.

      Signed-off-by: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 230ac719c500e58e71342be381ad2042a8cffc42
  Author: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
  Date:   Tue Sep 8 15:03:29 2015 -0700

      mm/hwpoison: don't try to unpoison containment-failed pages

      memory_failure() can be called at any page at any time, which means that
      we can't eliminate the possibility of containment failure.  In such case
      the best option is to leak the page intentionally (and never touch it
      later.)

      We have an unpoison function for testing, and it cannot handle such
      containment-failed pages, which results in kernel panic (visible with
      various calltraces.) So this patch suggests that we limit the
      unpoisonable pages to properly contained pages and ignore any other
      ones.

      Testers are recommended to keep in mind that there're un-unpoisonable
      pages when writing test programs.

      Signed-off-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Tested-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit da1b13ccfbebe0b9d69b5d61eff0a675e19e69a5
  Author: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
  Date:   Tue Sep 8 15:03:27 2015 -0700

      mm/hwpoison: fix race between soft_offline_page and unpoison_memory

      Wanpeng Li reported a race between soft_offline_page() and
      unpoison_memory(), which causes the following kernel panic:

         BUG: Bad page state in process bash  pfn:97000
         page:ffffea00025c0000 count:0 mapcount:1 mapping:          (null) 
index:0x7f4fdbe00
         flags: 0x1fffff80080048(uptodate|active|swapbacked)
         page dumped because: PAGE_FLAGS_CHECK_AT_FREE flag(s) set
         bad because of flags:
         flags: 0x40(active)
         Modules linked in: snd_hda_codec_hdmi i915 rpcsec_gss_krb5 nfsv4 
dns_resolver bnep rfcomm nfsd bluetooth auth_rpcgss nfs_acl nfs rfkill lockd 
grace sunrpc i2c_algo_bit drm_kms_helper snd_hda_codec_realtek 
snd_hda_codec_generic drm snd_hda_intel fscache snd_hda_codec 
x86_pkg_temp_thermal coretemp kvm_intel snd_hda_core snd_hwdep kvm snd_pcm 
snd_seq_dummy snd_seq_oss crct10dif_pclmul snd_seq_midi crc32_pclmul 
snd_seq_midi_event ghash_clmulni_intel snd_rawmidi aesni_intel lrw gf128mul 
snd_seq glue_helper ablk_helper snd_seq_device cryptd fuse snd_timer dcdbas 
serio_raw mei_me parport_pc snd mei ppdev i2c_core video lp soundcore parport 
lpc_ich shpchp mfd_core ext4 mbcache jbd2 sd_mod e1000e ahci ptp libahci 
crc32c_intel libata pps_core
         CPU: 3 PID: 2211 Comm: bash Not tainted 4.2.0-rc5-mm1+ #45
         Hardware name: Dell Inc. OptiPlex 7020/0F5C5X, BIOS A03 01/08/2015
         Call Trace:
           dump_stack+0x48/0x5c
           bad_page+0xe6/0x140
           free_pages_prepare+0x2f9/0x320
           ? uncharge_list+0xdd/0x100
           free_hot_cold_page+0x40/0x170
           __put_single_page+0x20/0x30
           put_page+0x25/0x40
           unmap_and_move+0x1a6/0x1f0
           migrate_pages+0x100/0x1d0
           ? kill_procs+0x100/0x100
           ? unlock_page+0x6f/0x90
           __soft_offline_page+0x127/0x2a0
           soft_offline_page+0xa6/0x200

      This race is explained like below:

        CPU0                    CPU1

        soft_offline_page
        __soft_offline_page
        TestSetPageHWPoison
                              unpoison_memory
                              PageHWPoison check (true)
                              TestClearPageHWPoison
                              put_page    -> release refcount held by 
get_hwpoison_page in unpoison_memory
                              put_page    -> release refcount held by 
isolate_lru_page in __soft_offline_page
        migrate_pages

      The second put_page() releases refcount held by isolate_lru_page() which
      will lead to unmap_and_move() releases the last refcount of page and w/
      mapcount still 1 since try_to_unmap() is not called if there is only one
      user map the page.  Anyway, the page refcount and mapcount will still
      mess if the page is mapped by multiple users.

      This race was introduced by commit 4491f71260 ("mm/memory-failure: set
      PageHWPoison before migrate_pages()"), which focuses on preventing the
      reuse of successfully migrated page.  Before this commit we prevent the
      reuse by changing the migratetype to MIGRATE_ISOLATE during soft
      offlining, which has the following problems, so simply reverting the
      commit is not a best option:

        1) it doesn't eliminate the reuse completely, because
           set_migratetype_isolate() can fail to set MIGRATE_ISOLATE to the
           target page if the pageblock of the page contains one or more
           unmovable pages (i.e.  has_unmovable_pages() returns true).

        2) the original code changes migratetype to MIGRATE_ISOLATE
           forcibly, and sets it to MIGRATE_MOVABLE forcibly after soft offline,
           regardless of the original migratetype state, which could impact
           other subsystems like memory hotplug or compaction.

      This patch moves PageSetHWPoison just after put_page() in
      unmap_and_move(), which closes up the reported race window and minimizes
      another race window b/w SetPageHWPoison and reallocation (which causes
      the reuse of soft-offlined page.) The latter race window still exists
      but it's acceptable, because it's rare and effectively the same as
      ordinary "containment failure" case even if it happens, so keep the
      window open is acceptable.

      Fixes: 4491f71260 ("mm/memory-failure: set PageHWPoison before 
migrate_pages()")
      Signed-off-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      Signed-off-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Reported-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      Tested-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 8e30456b6c56029ecbb43b777519175e478adfbf
  Author: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
  Date:   Tue Sep 8 15:03:24 2015 -0700

      mm/hwpoison: introduce num_poisoned_pages wrappers

      num_poisoned_pages counter will be changed outside mm/memory-failure.c
      by a subsequent patch, so this patch prepares wrappers to manipulate it.

      Signed-off-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Tested-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 665d9da7f0a9bd80b64d0024630806e45c7ff7d7
  Author: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
  Date:   Tue Sep 8 15:03:21 2015 -0700

      mm/hwpoison: replace most of put_page in memory error handling by 
put_hwpoison_page

      Replace most instances of put_page() in memory error handling with
      put_hwpoison_page().

      Signed-off-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      Cc: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit be91748fa6ca6909853c3dc630d65e45084962d7
  Author: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
  Date:   Tue Sep 8 15:03:18 2015 -0700

      mm/hwpoison: fix refcount of THP head page in no-injection case

      Hwpoison injection takes a refcount of target page and another refcount
      of head page of THP if the target page is the tail page of a THP.
      However, current code doesn't release the refcount of head page if the
      THP is not supported to be injected wrt hwpoison filter.

      Fix it by reducing the refcount of head page if the target page is the
      tail page of a THP and it is not supported to be injected.

      Signed-off-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      Acked-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 94bf4ec84a84d3ab2513b4e681fd3d083328d76d
  Author: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
  Date:   Tue Sep 8 15:03:15 2015 -0700

      mm/hwpoison: introduce put_hwpoison_page to put refcount for memory error 
handling

      Introduce put_hwpoison_page to put refcount for memory error handling.

      Signed-off-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      Suggested-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Acked-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1e0e635be82132167a134b5a9c884e70e61f8373
  Author: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
  Date:   Tue Sep 8 15:03:13 2015 -0700

      mm/hwpoison: fix PageHWPoison test/set race

      There is a race between madvise_hwpoison path and memory_failure:

       CPU0                                     CPU1

      madvise_hwpoison
      get_user_pages_fast
      PageHWPoison check (false)
                                        memory_failure
                                        TestSetPageHWPoison
      soft_offline_page
      PageHWPoison check (true)
      return -EBUSY (without put_page)

      Signed-off-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      Suggested-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 7d1900c744b2e4687b3e467edf58373c02bcf22d
  Author: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
  Date:   Tue Sep 8 15:03:10 2015 -0700

      mm/hwpoison: fix failure to split thp w/ refcount held

      THP pages will get a refcount in madvise_hwpoison() w/
      MF_COUNT_INCREASED flag, however, the refcount is still held when fail
      to split THP pages.

      Fix it by reducing the refcount of THP pages when fail to split THP.

      Signed-off-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      Cc: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 5dd2c4bded8776ee93c8f38b739fea531095067f
  Author: Mark Salter <msalter@xxxxxxxxxx>
  Date:   Tue Sep 8 15:03:07 2015 -0700

      x86: use generic early mem copy

      The early_ioremap library now has a generic copy_from_early_mem()
      function.  Use the generic copy function for x86 relocate_initrd().

      [akpm@xxxxxxxxxxxxxxxxxxxx: remove MAX_MAP_CHUNK define, per Yinghai Lu]
      Signed-off-by: Mark Salter <msalter@xxxxxxxxxx>
      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Cc: Mark Rutland <mark.rutland@xxxxxxx>
      Cc: Russell King <rmk@xxxxxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Cc: Yinghai Lu <yinghai@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1570f0d7ab425c1e0905715bf9cc98b2a82e723f
  Author: Mark Salter <msalter@xxxxxxxxxx>
  Date:   Tue Sep 8 15:03:04 2015 -0700

      arm64: support initrd outside kernel linear map

      The use of mem= could leave part or all of the initrd outside of the
      kernel linear map.  This will lead to an error when unpacking the initrd
      and a probable failure to boot.  This patch catches that situation and
      relocates the initrd to be fully within the linear map.

      Signed-off-by: Mark Salter <msalter@xxxxxxxxxx>
      Acked-by: Will Deacon <will.deacon@xxxxxxx>
      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Cc: Mark Rutland <mark.rutland@xxxxxxx>
      Cc: Russell King <rmk@xxxxxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Cc: Yinghai Lu <yinghai@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 6b0f68e32ea8749ff7d4a66cd5761e915e48e59d
  Author: Mark Salter <msalter@xxxxxxxxxx>
  Date:   Tue Sep 8 15:03:01 2015 -0700

      mm: add utility for early copy from unmapped ram

      When booting an arm64 kernel w/initrd using UEFI/grub, use of mem= will
      likely cut off part or all of the initrd.  This leaves it outside the
      kernel linear map which leads to failure when unpacking.  The x86 code
      has a similar need to relocate an initrd outside of mapped memory in
      some cases.

      The current x86 code uses early_memremap() to copy the original initrd
      from unmapped to mapped RAM.  This patchset creates a generic
      copy_from_early_mem() utility based on that x86 code and has arm64 and
      x86 share it in their respective initrd relocation code.

      This patch (of 3):

      In some early boot circumstances, it may be necessary to copy from RAM
      outside the kernel linear mapping to mapped RAM.  The need to relocate
      an initrd is one example in the x86 code.  This patch creates a helper
      function based on current x86 code.

      Signed-off-by: Mark Salter <msalter@xxxxxxxxxx>
      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Cc: Mark Rutland <mark.rutland@xxxxxxx>
      Cc: Russell King <rmk@xxxxxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Cc: Yinghai Lu <yinghai@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit e6590740ceb83fd014fae7d571fe5a5d5886b7c8
  Author: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
  Date:   Tue Sep 8 15:02:58 2015 -0700

      Documentation: update libhugetlbfs location and use for testing

      The URL for libhugetlbfs has changed.  Also, put a stronger emphasis on
      using libgugetlbfs for hugetlb regression testing.

      Signed-off-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
      Acked-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: Joern Engel <joern@xxxxxxxxx>
      Cc: Davidlohr Bueso <dave@xxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit fd5a9ecd6880619bea74c6b12ec86819eacfb012
  Author: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
  Date:   Tue Sep 8 15:02:55 2015 -0700

      selftests:vm: point to libhugetlbfs for regression testing

      The hugetlb selftests provide minimal coverage.  Have run script point
      people at libhugetlbfs for better regression testing.

      Signed-off-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
      Acked-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: Joern Engel <joern@xxxxxxxxx>
      Cc: Davidlohr Bueso <dave@xxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 243db5351aae5e6756fb610d41431a30d44b56a6
  Author: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
  Date:   Tue Sep 8 15:02:52 2015 -0700

      Revert "selftests: add hugetlbfstest"

      This manually reverts 7e50533d4b842 ("selftests: add hugetlbfstest").

      The hugetlbfstest test depends on hugetlb pages being counted in a
      task's rss.  This functionality is not in the kernel, so the test will
      always fail.  Remove test to avoid confusion.

      Signed-off-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
      Acked-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: Joern Engel <joern@xxxxxxxxx>
      Cc: Davidlohr Bueso <dave@xxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 9fcd6d2e052eef525e94a9ae58dbe7ed4df4f5a7
  Author: Vlastimil Babka <vbabka@xxxxxxx>
  Date:   Tue Sep 8 15:02:49 2015 -0700

      mm, compaction: skip compound pages by order in free scanner

      The compaction free scanner is looking for PageBuddy() pages and
      skipping all others.  For large compound pages such as THP or hugetlbfs,
      we can save a lot of iterations if we skip them at once using their
      compound_order().  This is generally unsafe and we can read a bogus
      value of order due to a race, but if we are careful, the only danger is
      skipping too much.

      When tested with stress-highalloc from mmtests on 4GB system with 1GB
      hugetlbfs pages, the vmstat compact_free_scanned count decreased by at
      least 15%.

      Signed-off-by: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Acked-by: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Acked-by: Michal Nazarewicz <mina86@xxxxxxxxxx>
      Cc: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 29c0dde830f8c08ceacf2d3edf6dc8ddd9a9c3c4
  Author: Vlastimil Babka <vbabka@xxxxxxx>
  Date:   Tue Sep 8 15:02:46 2015 -0700

      mm, compaction: always skip all compound pages by order in migrate scanner

      The compaction migrate scanner tries to skip THP pages by their order,
      to reduce number of iterations for pages it cannot isolate.  The check
      is only done if PageLRU() is true, which means it applies to THP pages,
      but not e.g.  hugetlbfs pages or any other non-LRU compound pages, which
      we have to iterate by base pages.

      This limitation comes from the assumption that it's only safe to read
      compound_order() when we have the zone's lru_lock and THP cannot be
      split under us.  But the only danger (after filtering out order values
      that are not below MAX_ORDER, to prevent overflows) is that we skip too
      much or too little after reading a bogus compound_order() due to a rare
      race.  This is the same reasoning as patch 99c0fd5e51c4 ("mm,
      compaction: skip buddy pages by their order in the migrate scanner")
      introduced for unsafely reading PageBuddy() order.

      After this patch, all pages are tested for PageCompound() and we skip
      them by compound_order().  The test is done after the test for
      balloon_page_movable() as we don't want to assume if balloon pages (or
      other pages with own isolation and migration implementation if a generic
      API gets implemented) are compound or not.

      When tested with stress-highalloc from mmtests on 4GB system with 1GB
      hugetlbfs pages, the vmstat compact_migrate_scanned count decreased by
      15%.

      [kirill.shutemov@xxxxxxxxxxxxxxx: change PageTransHuge checks to 
PageCompound for different series was squashed here]
      Signed-off-by: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Acked-by: Mel Gorman <mgorman@xxxxxxx>
      Acked-by: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Acked-by: Michal Nazarewicz <mina86@xxxxxxxxxx>
      Cc: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 02333641e2cf4ac9f23eeeb01183ed8318d346ca
  Author: Vlastimil Babka <vbabka@xxxxxxx>
  Date:   Tue Sep 8 15:02:42 2015 -0700

      mm, compaction: encapsulate resetting cached scanner positions

      Reseting the cached compaction scanner positions is now open-coded in
      __reset_isolation_suitable() and compact_finished().  Encapsulate the
      functionality in a new function reset_cached_positions().

      Signed-off-by: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Acked-by: Michal Nazarewicz <mina86@xxxxxxxxxx>
      Cc: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit f5f61a320bf6275f37fcabf6645b4ac8e683c007
  Author: Vlastimil Babka <vbabka@xxxxxxx>
  Date:   Tue Sep 8 15:02:39 2015 -0700

      mm, compaction: simplify handling restart position in free pages scanner

      Handling the position where compaction free scanner should restart
      (stored in cc->free_pfn) got more complex with commit e14c720efdd7 ("mm,
      compaction: remember position within pageblock in free pages scanner").
      Currently the position is updated in each loop iteration of
      isolate_freepages(), although it should be enough to update it only when
      breaking from the loop.  There's also an extra check outside the loop
      updates the position in case we have met the migration scanner.

      This can be simplified if we move the test for having isolated enough
      from the for-loop header next to the test for contention, and
      determining the restart position only in these cases.  We can reuse the
      isolate_start_pfn variable for this instead of setting cc->free_pfn
      directly.  Outside the loop, we can simply set cc->free_pfn to current
      value of isolate_start_pfn without any extra check.

      Also add a VM_BUG_ON to catch possible mistake in the future, in case we
      later add a new condition that terminates isolate_freepages_block()
      prematurely without also considering the condition in
      isolate_freepages().

      Signed-off-by: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Acked-by: Mel Gorman <mgorman@xxxxxxx>
      Acked-by: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Cc: Michal Nazarewicz <mina86@xxxxxxxxxx>
      Cc: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit f2849aa09d4fbc4145ebb5dc96187c9ab967f5cf
  Author: Vlastimil Babka <vbabka@xxxxxxx>
  Date:   Tue Sep 8 15:02:36 2015 -0700

      mm, compaction: more robust check for scanners meeting

      Assorted compaction cleanups and optimizations.  The interesting patches
      are 4 and 5.  In 4, skipping of compound pages in single iteration is
      improved for migration scanner, so it works also for !PageLRU compound
      pages such as hugetlbfs, slab etc.  Patch 5 introduces this kind of
      skipping in the free scanner.  The trick is that we can read
      compound_order() without any protection, if we are careful to filter out
      values larger than MAX_ORDER.  The only danger is that we skip too much.
      The same trick was already used for reading the freepage order in the
      migrate scanner.

      To demonstrate improvements of Patches 4 and 5 I've run stress-highalloc
      from mmtests, set to simulate THP allocations (including __GFP_COMP) on
      a 4GB system where 1GB was occupied by hugetlbfs pages.  I'll include
      just the relevant stats:

                                     Patch 3     Patch 4     Patch 5

      Compaction stalls                 7523        7529        7515
      Compaction success                 323         304         322
      Compaction failures               7200        7224        7192
      Page migrate success            247778      264395      240737
      Page migrate failure             15358       33184       21621
      Compaction pages isolated       906928      980192      909983
      Compaction migrate scanned     2005277     1692805     1498800
      Compaction free scanned       13255284    11539986     9011276
      Compaction cost                    288         305         277

      With 5 iterations per patch, the results are still noisy, but we can see
      that Patch 4 does reduce migrate_scanned by 15% thanks to skipping the
      hugetlbfs pages at once.  Interestingly, free_scanned is also reduced
      and I have no idea why.  Patch 5 further reduces free_scanned as
      expected, by 15%.  Other stats are unaffected modulo noise.

      [1] https://lkml.org/lkml/2015/1/19/158

      This patch (of 5):

      Compaction should finish when the migration and free scanner meet, i.e.
      they reach the same pageblock.  Currently however, the test in
      compact_finished() simply just compares the exact pfns, which may yield
      a false negative when the free scanner position is in the middle of a
      pageblock and the migration scanner reaches the begining of the same
      pageblock.

      This hasn't been a problem until commit e14c720efdd7 ("mm, compaction:
      remember position within pageblock in free pages scanner") allowed the
      free scanner position to be in the middle of a pageblock between
      invocations.  The hot-fix 1d5bfe1ffb5b ("mm, compaction: prevent
      infinite loop in compact_zone") prevented the issue by adding a special
      check in the migration scanner to satisfy the current detection of
      scanners meeting.

      However, the proper fix is to make the detection more robust.  This
      patch introduces the compact_scanners_met() function that returns true
      when the free scanner position is in the same or lower pageblock than
      the migration scanner.  The special case in isolate_migratepages()
      introduced by 1d5bfe1ffb5b is removed.

      Suggested-by: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Signed-off-by: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Acked-by: Mel Gorman <mgorman@xxxxxxx>
      Acked-by: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Acked-by: Michal Nazarewicz <mina86@xxxxxxxxxx>
      Cc: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Acked-by: Rik van Riel <riel@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1fc524d74cf40072a2de3f74a920818398dbff30
  Author: Sean O. Stalley <sean.stalley@xxxxxxxxx>
  Date:   Tue Sep 8 15:02:33 2015 -0700

      coccinelle: mm: scripts/coccinelle/api/alloc/pool_zalloc-simple.cocci

      add [pci|dma]_pool_zalloc coccinelle check.
      replaces instances of [pci|dma]_pool_alloc() followed by memset(0)
      with [pci|dma]_pool_zalloc().

      Signed-off-by: Sean O. Stalley <sean.stalley@xxxxxxxxx>
      Acked-by: Julia Lawall <julia.lawall@xxxxxxx>
      Cc: Vinod Koul <vinod.koul@xxxxxxxxx>
      Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: Gilles Muller <Gilles.Muller@xxxxxxx>
      Cc: Nicolas Palix <nicolas.palix@xxxxxxx>
      Cc: Michal Marek <mmarek@xxxxxxx>
      Cc: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 01a7fd337b2c2af97e9c55bb9406a222a2e209d3
  Author: Sean O. Stalley <sean.stalley@xxxxxxxxx>
  Date:   Tue Sep 8 15:02:30 2015 -0700

      pci: mm: add pci_pool_zalloc() call

      Add a wrapper function for pci_pool_alloc() to get zeroed memory.

      Signed-off-by: Sean O. Stalley <sean.stalley@xxxxxxxxx>
      Cc: Vinod Koul <vinod.koul@xxxxxxxxx>
      Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: Gilles Muller <Gilles.Muller@xxxxxxx>
      Cc: Nicolas Palix <nicolas.palix@xxxxxxx>
      Cc: Michal Marek <mmarek@xxxxxxx>
      Cc: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ad82362b2defd4adad87d8538617b2f51a4bf9c3
  Author: Sean O. Stalley <sean.stalley@xxxxxxxxx>
  Date:   Tue Sep 8 15:02:27 2015 -0700

      mm: add dma_pool_zalloc() call to DMA API

      Add a wrapper function for dma_pool_alloc() to get zeroed memory.

      Signed-off-by: Sean O. Stalley <sean.stalley@xxxxxxxxx>
      Cc: Vinod Koul <vinod.koul@xxxxxxxxx>
      Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: Gilles Muller <Gilles.Muller@xxxxxxx>
      Cc: Nicolas Palix <nicolas.palix@xxxxxxx>
      Cc: Michal Marek <mmarek@xxxxxxx>
      Cc: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit fa23f56d90ed7bd760ae2aea6dfb2f501a099e90
  Author: Sean O. Stalley <sean.stalley@xxxxxxxxx>
  Date:   Tue Sep 8 15:02:24 2015 -0700

      mm: add support for __GFP_ZERO flag to dma_pool_alloc()

      Currently a call to dma_pool_alloc() with a ___GFP_ZERO flag returns a
      non-zeroed memory region.

      This patchset adds support for the __GFP_ZERO flag to dma_pool_alloc(),
      adds 2 wrapper functions for allocing zeroed memory from a pool, and
      provides a coccinelle script for finding & replacing instances of
      dma_pool_alloc() followed by memset(0) with a single dma_pool_zalloc()
      call.

      There was some concern that this always calls memset() to zero, instead
      of passing __GFP_ZERO into the page allocator.
      [https://lkml.org/lkml/2015/7/15/881]

      I ran a test on my system to get an idea of how often dma_pool_alloc()
      calls into pool_alloc_page().

      After Boot:       [   30.119863] alloc_calls:541, page_allocs:7
      After an hour:    [ 3600.951031] alloc_calls:9566, page_allocs:12
      After copying 1GB file onto a USB drive:
                [ 4260.657148] alloc_calls:17225, page_allocs:12

      It doesn't look like dma_pool_alloc() calls down to the page allocator
      very often (at least on my system).

      This patch (of 4):

      Currently the __GFP_ZERO flag is ignored by dma_pool_alloc().
      Make dma_pool_alloc() zero the memory if this flag is set.

      Signed-off-by: Sean O. Stalley <sean.stalley@xxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Vinod Koul <vinod.koul@xxxxxxxxx>
      Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: Gilles Muller <Gilles.Muller@xxxxxxx>
      Cc: Nicolas Palix <nicolas.palix@xxxxxxx>
      Cc: Michal Marek <mmarek@xxxxxxx>
      Cc: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c54839a722a02818677bcabe57e957f0ce4f841d
  Author: Jaewon Kim <jaewon31.kim@xxxxxxxxxxx>
  Date:   Tue Sep 8 15:02:21 2015 -0700

      vmscan: fix increasing nr_isolated incurred by putback unevictable pages

      reclaim_clean_pages_from_list() assumes that shrink_page_list() returns
      number of pages removed from the candidate list.  But shrink_page_list()
      puts back mlocked pages without passing it to caller and without
      counting as nr_reclaimed.  This increases nr_isolated.

      To fix this, this patch changes shrink_page_list() to pass unevictable
      pages back to caller.  Caller will take care those pages.

      Minchan said:

      It fixes two issues.

      1. With unevictable page, cma_alloc will be successful.

      Exactly speaking, cma_alloc of current kernel will fail due to
      unevictable pages.

      2. fix leaking of NR_ISOLATED counter of vmstat

      With it, too_many_isolated works.  Otherwise, it could make hang until
      the process get SIGKILL.

      Signed-off-by: Jaewon Kim <jaewon31.kim@xxxxxxxxxxx>
      Acked-by: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 0b802f101d0c6caeeee89066dc2c8665082a83df
  Author: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
  Date:   Tue Sep 8 15:02:18 2015 -0700

      mm: vmscan: never isolate more pages than necessary

      If transparent huge pages are enabled, we can isolate many more pages
      than we actually need to scan, because we count both single and huge
      pages equally in isolate_lru_pages().

      Since commit 5bc7b8aca942d ("mm: thp: add split tail pages to shrink
      page list in page reclaim"), we scan all the tail pages immediately
      after a huge page split (see shrink_page_list()).  As a result, we can
      reclaim up to SWAP_CLUSTER_MAX * HPAGE_PMD_NR (512 MB) in one run!

      This is easy to catch on memcg reclaim with zswap enabled.  The latter
      makes swapout instant so that if we happen to scan an unreferenced huge
      page we will evict both its head and tail pages immediately, which is
      likely to result in excessive reclaim.

      Signed-off-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Reviewed-by: Michal Hocko <mhocko@xxxxxxx>
      Cc: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 64b990d2957cb535fe1c17b9694d5d4f7de69962
  Author: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 15:02:15 2015 -0700

      mm: drop __nocast from vm_flags_t definition

      __nocast does no good for vm_flags_t. It only produces useless sparse
      warnings.

      Let's drop it.

      Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Oleg Nesterov <oleg@xxxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1b4ace4141db1ddc46f6c9915086dd5e18d7154d
  Author: Chris Metcalf <cmetcalf@xxxxxxxxxx>
  Date:   Tue Sep 8 15:02:12 2015 -0700

      bootmem: avoid freeing to bootmem after bootmem is done

      Bootmem isn't popular any more, but some architectures still use it, and
      freeing to bootmem after calling free_all_bootmem_core() can end up
      scribbling over random memory.  Instead, make sure the kernel generates
      a warning in this case by ensuring the node_bootmem_map field is
      non-NULL when are freeing or marking bootmem.

      An instance of this bug was just fixed in the tile architecture ("tile:
      use free_bootmem_late() for initrd") and catching this case more widely
      seems like a good thing.

      Signed-off-by: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Acked-by: Mel Gorman <mgorman@xxxxxxx>
      Cc: Yasuaki Ishimatsu <isimatu.yasuaki@xxxxxxxxxxxxxx>
      Cc: Pekka Enberg <penberg@xxxxxxxxxx>
      Cc: Paul McQuade <paulmcquad@xxxxxxxxx>
      Cc: Tang Chen <tangchen@xxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c5b4e1b02f2a0c2309ecd58a235a2f5ee4eb0074
  Author: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
  Date:   Tue Sep 8 15:02:09 2015 -0700

      mm, page_isolation: make set/unset_migratetype_isolate() file-local

      Nowaday, set/unset_migratetype_isolate() is defined and used only in
      mm/page_isolation, so let's limit the scope within the file.

      Signed-off-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Acked-by: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit acda0c3340282bc7c36f4e9a5e2ccb7bb7e64676
  Author: Aristeu Rozanski <aris@xxxxxxxxxx>
  Date:   Tue Sep 8 15:02:06 2015 -0700

      mm/mempolicy.c: get rid of duplicated check for vma(VM_PFNMAP) in 
queue_pages_range()

      This check was introduced as part of
         6f4576e3687 ("mempolicy: apply page table walker on 
queue_pages_range()")

      which got duplicated by
         48684a65b4e ("mm: pagewalk: fix misbehavior of walk_page_range for 
vma(VM_PFNMAP)")

      by reintroducing it earlier on queue_page_test_walk()

      Signed-off-by: Aristeu Rozanski <aris@xxxxxxxxxx>
      Acked-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Acked-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Cyrill Gorcunov <gorcunov@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 95cf82ecc1fcb44df1768162343cc8eb88083b86
  Author: Tang Chen <tangchen@xxxxxxxxxxxxxx>
  Date:   Tue Sep 8 15:02:03 2015 -0700

      mem-hotplug: handle node hole when initializing numa_meminfo.

      When parsing SRAT, all memory ranges are added into numa_meminfo.  In
      numa_init(), before entering numa_cleanup_meminfo(), all possible memory
      ranges are in numa_meminfo.  And numa_cleanup_meminfo() removes all
      ranges over max_pfn or empty.

      But, this only works if the nodes are continuous.  Let's have a look at
      the following example:

      We have an SRAT like this:
      SRAT: Node 0 PXM 0 [mem 0x00000000-0x5fffffff]
      SRAT: Node 0 PXM 0 [mem 0x100000000-0x1ffffffffff]
      SRAT: Node 1 PXM 1 [mem 0x20000000000-0x3ffffffffff]
      SRAT: Node 4 PXM 2 [mem 0x40000000000-0x5ffffffffff] hotplug
      SRAT: Node 5 PXM 3 [mem 0x60000000000-0x7ffffffffff] hotplug
      SRAT: Node 2 PXM 4 [mem 0x80000000000-0x9ffffffffff] hotplug
      SRAT: Node 3 PXM 5 [mem 0xa0000000000-0xbffffffffff] hotplug
      SRAT: Node 6 PXM 6 [mem 0xc0000000000-0xdffffffffff] hotplug
      SRAT: Node 7 PXM 7 [mem 0xe0000000000-0xfffffffffff] hotplug

      On boot, only node 0,1,2,3 exist.

      And the numa_meminfo will look like this:
      numa_meminfo.nr_blks = 9
      1. on node 0: [0, 60000000]
      2. on node 0: [100000000, 20000000000]
      3. on node 1: [20000000000, 40000000000]
      4. on node 4: [40000000000, 60000000000]
      5. on node 5: [60000000000, 80000000000]
      6. on node 2: [80000000000, a0000000000]
      7. on node 3: [a0000000000, a0800000000]
      8. on node 6: [c0000000000, a0800000000]
      9. on node 7: [e0000000000, a0800000000]

      And numa_cleanup_meminfo() will merge 1 and 2, and remove 8,9 because the
      end address is over max_pfn, which is a0800000000.  But 4 and 5 are not
      removed because their end addresses are less then max_pfn.  But in fact,
      node 4 and 5 don't exist.

      In a word, numa_cleanup_meminfo() is not able to handle holes between 
nodes.

      Since memory ranges in node 4 and 5 are in numa_meminfo, in
      numa_register_memblks(), node 4 and 5 will be mistakenly set to online.

      If you run lscpu, it will show:
      NUMA node0 CPU(s):     0-14,128-142
      NUMA node1 CPU(s):     15-29,143-157
      NUMA node2 CPU(s):
      NUMA node3 CPU(s):
      NUMA node4 CPU(s):     62-76,190-204
      NUMA node5 CPU(s):     78-92,206-220

      In this patch, we use memblock_overlaps_region() to check if ranges in
      numa_meminfo overlap with ranges in memory_block.  Since memory_block
      contains all available memory at boot time, if they overlap, it means the
      ranges exist.  If not, then remove them from numa_meminfo.

      After this patch, lscpu will show:
      NUMA node0 CPU(s):     0-14,128-142
      NUMA node1 CPU(s):     15-29,143-157
      NUMA node4 CPU(s):     62-76,190-204
      NUMA node5 CPU(s):     78-92,206-220

      Signed-off-by: Tang Chen <tangchen@xxxxxxxxxxxxxx>
      Reviewed-by: Yasuaki Ishimatsu <isimatu.yasuaki@xxxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Luiz Capitulino <lcapitulino@xxxxxxxxxx>
      Cc: Xishi Qiu <qiuxishi@xxxxxxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Cc: Vladimir Murzin <vladimir.murzin@xxxxxxx>
      Cc: Fabian Frederick <fabf@xxxxxxxxx>
      Cc: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
      Cc: Baoquan He <bhe@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c5c5c9d1008fb15945d0173b3ca75931ef53ae1f
  Author: Tang Chen <tangchen@xxxxxxxxxxxxxx>
  Date:   Tue Sep 8 15:02:00 2015 -0700

      mm/memblock.c: make memblock_overlaps_region() return bool.

      memblock_overlaps_region() checks if the given memblock region
      intersects a region in memblock.  If so, it returns the index of the
      intersected region.

      But its only caller is memblock_is_region_reserved(), and it returns 0
      if false, non-zero if true.

      Both of these should return bool.

      Signed-off-by: Tang Chen <tangchen@xxxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Yasuaki Ishimatsu <isimatu.yasuaki@xxxxxxxxxxxxxx>
      Cc: Luiz Capitulino <lcapitulino@xxxxxxxxxx>
      Cc: Xishi Qiu <qiuxishi@xxxxxxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Cc: Vladimir Murzin <vladimir.murzin@xxxxxxx>
      Cc: Fabian Frederick <fabf@xxxxxxxxx>
      Cc: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
      Cc: Baoquan He <bhe@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 72079ba0dfefc1444b4ef98a2fa3d040838a775f
  Author: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
  Date:   Tue Sep 8 15:01:57 2015 -0700

      mm: madvise allow remove operation for hugetlbfs

      Now that we have hole punching support for hugetlbfs, we can also
      support the MADV_REMOVE interface to it.

      Signed-off-by: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Signed-off-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Acked-by: Hillf Danton <hillf.zj@xxxxxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Davidlohr Bueso <dave@xxxxxxxxxxxx>
      Cc: Aneesh Kumar <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 70c3547e36f5c9fbc4caecfeca98f0effa6932c5
  Author: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
  Date:   Tue Sep 8 15:01:54 2015 -0700

      hugetlbfs: add hugetlbfs_fallocate()

      This is based on the shmem version, but it has diverged quite a bit.  We
      have no swap to worry about, nor the new file sealing.  Add
      synchronication via the fault mutex table to coordinate page faults,
      fallocate allocation and fallocate hole punch.

      What this allows us to do is move physical memory in and out of a
      hugetlbfs file without having it mapped.  This also gives us the ability
      to support MADV_REMOVE since it is currently implemented using
      fallocate().  MADV_REMOVE lets madvise() remove pages from the middle of
      a hugetlbfs file, which wasn't possible before.

      hugetlbfs fallocate only operates on whole huge pages.

      Based on code by Dave Hansen.

      Signed-off-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Acked-by: Hillf Danton <hillf.zj@xxxxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Davidlohr Bueso <dave@xxxxxxxxxxxx>
      Cc: Aneesh Kumar <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ab76ad540a50191308e5bb6b5e2d9e26c78616d3
  Author: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
  Date:   Tue Sep 8 15:01:50 2015 -0700

      hugetlbfs: New huge_add_to_page_cache helper routine

      Currently, there is only a single place where hugetlbfs pages are added
      to the page cache.  The new fallocate code be adding a second one, so
      break the functionality out into its own helper.

      Signed-off-by: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Signed-off-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Acked-by: Hillf Danton <hillf.zj@xxxxxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Davidlohr Bueso <dave@xxxxxxxxxxxx>
      Cc: Aneesh Kumar <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d85f69b0b533ec6d7ac8c21db958c44c6d957c90
  Author: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
  Date:   Tue Sep 8 15:01:47 2015 -0700

      mm/hugetlb: alloc_huge_page handle areas hole punched by fallocate

      Areas hole punched by fallocate will not have entries in the
      region/reserve map.  However, shared mappings with min_size subpool
      reservations may still have reserved pages.  alloc_huge_page needs to
      handle this special case and do the proper accounting.

      Signed-off-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Acked-by: Hillf Danton <hillf.zj@xxxxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Davidlohr Bueso <dave@xxxxxxxxxxxx>
      Cc: Aneesh Kumar <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1fb1b0e9ef2d661488f8053986c3b7641cae529d
  Author: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
  Date:   Tue Sep 8 15:01:44 2015 -0700

      mm/hugetlb: vma_has_reserves() needs to handle fallocate hole punch

      In vma_has_reserves(), the current assumption is that reserves are
      always present for shared mappings.  However, this will not be the case
      with fallocate hole punch.  When punching a hole, the present page will
      be deleted as well as the region/reserve map entry (and hence any
      reservation).  vma_has_reserves is passed "chg" which indicates whether
      or not a region/reserve map is present.  Use this to determine if
      reserves are actually present or were removed via hole punch.

      Signed-off-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Acked-by: Hillf Danton <hillf.zj@xxxxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Davidlohr Bueso <dave@xxxxxxxxxxxx>
      Cc: Aneesh Kumar <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit b5cec28d36f5ee6b4e6f68a0a40aa1e4045d6d99
  Author: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
  Date:   Tue Sep 8 15:01:41 2015 -0700

      hugetlbfs: truncate_hugepages() takes a range of pages

      Modify truncate_hugepages() to take a range of pages (start, end)
      instead of simply start.  If an end value of LLONG_MAX is passed, the
      current "truncate" functionality is maintained.  Existing callers are
      modified to pass LLONG_MAX as end of range.  By keying off end ==
      LLONG_MAX, the routine behaves differently for truncate and hole punch.
      Page removal is now synchronized with page allocation via faults by
      using the fault mutex table.  The hole punch case can experience the
      rare region_del error and must handle accordingly.

      Add the routine hugetlb_fix_reserve_counts to fix up reserve counts in
      the case where region_del returns an error.

      Since the routine handles more than just the truncate case, it is
      renamed to remove_inode_hugepages().  To be consistent, the routine
      truncate_huge_page() is renamed remove_huge_page().

      Downstream of remove_inode_hugepages(), the routine
      hugetlb_unreserve_pages() is also modified to take a range of pages.
      hugetlb_unreserve_pages is modified to detect an error from region_del and
      pass it back to the caller.

      Signed-off-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Acked-by: Hillf Danton <hillf.zj@xxxxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Davidlohr Bueso <dave@xxxxxxxxxxxx>
      Cc: Aneesh Kumar <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1bfad99ab42569807d0ca1698449cae5e8c0334a
  Author: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
  Date:   Tue Sep 8 15:01:38 2015 -0700

      hugetlbfs: hugetlb_vmtruncate_list() needs to take a range to delete

      fallocate hole punch will want to unmap a specific range of pages.
      Modify the existing hugetlb_vmtruncate_list() routine to take a
      start/end range.  If end is 0, this indicates all pages after start
      should be unmapped.  This is the same as the existing truncate
      functionality.  Modify existing callers to add 0 as end of range.

      Since the routine will be used in hole punch as well as truncate
      operations, it is more appropriately renamed to hugetlb_vmdelete_list().

      Signed-off-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Acked-by: Hillf Danton <hillf.zj@xxxxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Davidlohr Bueso <dave@xxxxxxxxxxxx>
      Cc: Aneesh Kumar <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c672c7f29f2fdb73e1f72911bf499675c81fcdbb
  Author: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
  Date:   Tue Sep 8 15:01:35 2015 -0700

      mm/hugetlb: expose hugetlb fault mutex for use by fallocate

      hugetlb page faults are currently synchronized by the table of mutexes
      (htlb_fault_mutex_table).  fallocate code will need to synchronize with
      the page fault code when it allocates or deletes pages.  Expose
      interfaces so that fallocate operations can be synchronized with page
      faults.  Minor name changes to be more consistent with other global
      hugetlb symbols.

      Signed-off-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Acked-by: Hillf Danton <hillf.zj@xxxxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Davidlohr Bueso <dave@xxxxxxxxxxxx>
      Cc: Aneesh Kumar <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit feba16e25a578080af5aad5eb9e469b4e6c23eef
  Author: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
  Date:   Tue Sep 8 15:01:31 2015 -0700

      mm/hugetlb: add region_del() to delete a specific range of entries

      fallocate hole punch will want to remove a specific range of pages.  The
      existing region_truncate() routine deletes all region/reserve map
      entries after a specified offset.  region_del() will provide this same
      functionality if the end of region is specified as LONG_MAX.  Hence,
      region_del() can replace region_truncate().

      Unlike region_truncate(), region_del() can return an error in the rare
      case where it can not allocate memory for a region descriptor.  This
      ONLY happens in the case where an existing region must be split.
      Current callers passing LONG_MAX as end of range will never experience
      this error and do not need to deal with error handling.  Future callers
      of region_del() (such as fallocate hole punch) will need to handle this
      error.

      Signed-off-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Acked-by: Hillf Danton <hillf.zj@xxxxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Davidlohr Bueso <dave@xxxxxxxxxxxx>
      Cc: Aneesh Kumar <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 5e9113731a3ce616e8b5aa128ffc1aeaa4942571
  Author: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
  Date:   Tue Sep 8 15:01:28 2015 -0700

      mm/hugetlb: add cache of descriptors to resv_map for region_add

      hugetlbfs is used today by applications that want a high degree of
      control over huge page usage.  Often, large hugetlbfs files are used to
      map a large number huge pages into the application processes.  The
      applications know when page ranges within these large files will no
      longer be used, and ideally would like to release them back to the
      subpool or global pools for other uses.  The fallocate() system call
      provides an interface for preallocation and hole punching within files.
      This patch set adds fallocate functionality to hugetlbfs.

      fallocate hole punch will want to remove a specific range of pages.
      When pages are removed, their associated entries in the region/reserve
      map will also be removed.  This will break an assumption in the
      region_chg/region_add calling sequence.  If a new region descriptor must
      be allocated, it is done as part of the region_chg processing.  In this
      way, region_add can not fail because it does not need to attempt an
      allocation.

      To prepare for fallocate hole punch, create a "cache" of descriptors
      that can be used by region_add if necessary.  region_chg will ensure
      there are sufficient entries in the cache.  It will be necessary to
      track the number of in progress add operations to know a sufficient
      number of descriptors reside in the cache.  A new routine region_abort
      is added to adjust this in progress count when add operations are
      aborted.  vma_abort_reservation is also added for callers creating
      reservations with vma_needs_reservation/vma_commit_reservation.

      [akpm@xxxxxxxxxxxxxxxxxxxx: fix typo in comment, use more cols]
      Signed-off-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Acked-by: Hillf Danton <hillf.zj@xxxxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Davidlohr Bueso <dave@xxxxxxxxxxxx>
      Cc: Aneesh Kumar <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit bb14c2c75db972a1bf65fd63c8d5a0b41a8f263a
  Author: Vlastimil Babka <vbabka@xxxxxxx>
  Date:   Tue Sep 8 15:01:25 2015 -0700

      mm: rename and move get/set_freepage_migratetype

      The pair of get/set_freepage_migratetype() functions are used to cache
      pageblock migratetype for a page put on a pcplist, so that it does not
      have to be retrieved again when the page is put on a free list (e.g.
      when pcplists become full).  Historically it was also assumed that the
      value is accurate for pages on freelists (as the functions' names
      unfortunately suggest), but that cannot be guaranteed without affecting
      various allocator fast paths.  It is in fact not needed and all such
      uses have been removed.

      The last remaining (but pointless) usage related to pages of freelists
      is in move_freepages(), which this patch removes.

      To prevent further confusion, rename the functions to
      get/set_pcppage_migratetype() and expand their description.  Since all
      the users are now in mm/page_alloc.c, move the functions there from the
      shared header.

      Signed-off-by: Vlastimil Babka <vbabka@xxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Acked-by: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Acked-by: Michal Nazarewicz <mina86@xxxxxxxxxx>
      Cc: Laura Abbott <lauraa@xxxxxxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: Seungho Park <seungho1.park@xxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx>
      Acked-by: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit aa016d145d4c3b8a7273429528f19d5b423ddbc7
  Author: Vlastimil Babka <vbabka@xxxxxxx>
  Date:   Tue Sep 8 15:01:22 2015 -0700

      mm, page_isolation: remove bogus tests for isolated pages

      The __test_page_isolated_in_pageblock() is used to verify whether all
      pages in pageblock were either successfully isolated, or are hwpoisoned.
      Two of the possible state of pages, that are tested, are however bogus
      and misleading.

      Both tests rely on get_freepage_migratetype(page), which however has no
      guarantees about pages on freelists.  Specifically, it doesn't guarantee
      that the migratetype returned by the function actually matches the
      migratetype of the freelist that the page is on.  Such guarantee is not
      its purpose and would have negative impact on allocator performance.

      The first test checks whether the freepage_migratetype equals
      MIGRATE_ISOLATE, supposedly to catch races between page isolation and
      allocator activity.  These races should be fixed nowadays with
      51bb1a4093 ("mm/page_alloc: add freepage on isolate pageblock to correct
      buddy list") and related patches.  As explained above, the check
      wouldn't be able to catch them reliably anyway.  For the same reason
      false positives can happen, although they are harmless, as the
      move_freepages() call would just move the page to the same freelist it's
      already on.  So removing the test is not a bug fix, just cleanup.  After
      this patch, we assume that all PageBuddy pages are on the correct
      freelist and that the races were really fixed.  A truly reliable
      verification in the form of e.g.  VM_BUG_ON() would be complicated and
      is arguably not needed.

      The second test (page_count(page) == 0 && get_freepage_migratetype(page)
      == MIGRATE_ISOLATE) is probably supposed (the code comes from a big
      memory isolation patch from 2007) to catch pages on MIGRATE_ISOLATE
      pcplists.  However, pcplists don't contain MIGRATE_ISOLATE freepages
      nowadays, those are freed directly to free lists, so the check is
      obsolete.  Remove it as well.

      Signed-off-by: Vlastimil Babka <vbabka@xxxxxxx>
      Acked-by: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Acked-by: Michal Nazarewicz <mina86@xxxxxxxxxx>
      Cc: Laura Abbott <lauraa@xxxxxxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: Seungho Park <seungho1.park@xxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx>
      Acked-by: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 156408c0edaacbea1137f58b28fd6ec341064310
  Author: Vishnu Pratap Singh <vishnu.ps@xxxxxxxxxxx>
  Date:   Tue Sep 8 15:01:19 2015 -0700

      lib/show_mem.c: correct reserved memory calculation

      CMA reserved memory is not part of total reserved memory.  Currently
      when we print the total reserve memory it considers cma as part of
      reserve memory and do minus of totalcma_pages from reserved, which is
      wrong.  In cases where total reserved is less than cma reserved we will
      get negative values & while printing we print as unsigned and we will
      get a very large value.

      Below is the show mem output on X86 ubuntu based system where CMA
      reserved is 100MB (25600 pages) & total reserved is ~40MB(10316 pages).
      And reserve memory shows a large value because of this bug.

      Before:
      [  127.066430] 898908 pages RAM
      [  127.066432] 671682 pages HighMem/MovableOnly
      [  127.066434] 4294952012 pages reserved
      [  127.066436] 25600 pages cma reserved

      After:
      [   44.663129] 898908 pages RAM
      [   44.663130] 671682 pages HighMem/MovableOnly
      [   44.663130] 10316 pages reserved
      [   44.663131] 25600 pages cma reserved

      Signed-off-by: Vishnu Pratap Singh <vishnu.ps@xxxxxxxxxxx>
      Cc: Michal Nazarewicz <mina86@xxxxxxxxxx>
      Cc: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      Cc: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Cc: Laurent Pinchart <laurent.pinchart+renesas@xxxxxxxxxxxxxxxx>
      Cc: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Cc: Danesh Petigara <dpetigara@xxxxxxxxxxxx>
      Cc: Laura Abbott <lauraa@xxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit e752eb68811aeece2220e183e23369a34122fb5e
  Author: Michal Hocko <mhocko@xxxxxxxx>
  Date:   Tue Sep 8 15:01:16 2015 -0700

      memcg: move memcg_proto_active from sock.h

      The only user is sock_update_memcg which is living in memcontrol.c so it
      doesn't make much sense to pollute sock.h by this inline helper.  Move it
      to memcontrol.c and open code it into its only caller.

      Signed-off-by: Michal Hocko <mhocko@xxxxxxxx>
      Cc: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit a03f1f058969ec350fb7451a6fbca23096ee5727
  Author: Michal Hocko <mhocko@xxxxxxx>
  Date:   Tue Sep 8 15:01:13 2015 -0700

      memcg, tcp_kmem: check for cg_proto in sock_update_memcg

      sk_prot->proto_cgroup is allowed to return NULL but sock_update_memcg
      doesn't check for NULL.  The function relies on the mem_cgroup_is_root
      check because we shouldn't get NULL otherwise because mem_cgroup_from_task
      will always return !NULL.

      All other callers are checking for NULL and we can safely replace
      mem_cgroup_is_root() check by cg_proto != NULL which will be more
      straightforward (proto_cgroup returns NULL for the root memcg already).

      Signed-off-by: Michal Hocko <mhocko@xxxxxxx>
      Reviewed-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 9f2115f93b88e5e8d48b87b153e36a537afb58cb
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Sep 8 15:01:10 2015 -0700

      memcg: restructure mem_cgroup_can_attach()

      Restructure it to lower nesting level and help the planned threadgroup
      leader iteration changes.

      This is pure reorganization.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Michal Hocko <mhocko@xxxxxxx>
      Reviewed-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 64219994898c8689c3d57668996f476f8c2d398c
  Author: Michal Hocko <mhocko@xxxxxxx>
  Date:   Tue Sep 8 15:01:07 2015 -0700

      memcg: get rid of extern for functions in memcontrol.h

      Most of the exported functions in this header are not marked extern so
      change the rest to follow the same style.

      Signed-off-by: Michal Hocko <mhocko@xxxxxxx>
      Reviewed-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit fabc3fdde00b54825ba23230aedbf88a735b4e49
  Author: Michal Hocko <mhocko@xxxxxxx>
  Date:   Tue Sep 8 15:01:04 2015 -0700

      memcg: get rid of mem_cgroup_root_css for !CONFIG_MEMCG

      The only user is cgwb_bdi_init and that one depends on
      CONFIG_CGROUP_WRITEBACK which in turn depends on CONFIG_MEMCG so it
      doesn't make much sense to definte an empty stub for !CONFIG_MEMCG.
      Moreover ERR_PTR(-EINVAL) is ugly and would lead to runtime crashes if
      used in unguarded code paths.  Better fail during compilation.

      Signed-off-by: Michal Hocko <mhocko@xxxxxxx>
      Reviewed-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 33398cf2f360c5ce24c8a22436d52a06ad4e5eb5
  Author: Michal Hocko <mhocko@xxxxxxx>
  Date:   Tue Sep 8 15:01:02 2015 -0700

      memcg: export struct mem_cgroup

      mem_cgroup structure is defined in mm/memcontrol.c currently which means
      that the code outside of this file has to use external API even for
      trivial access stuff.

      This patch exports mm_struct with its dependencies and makes some of the
      exported functions inlines.  This even helps to reduce the code size a bit
      (make defconfig + CONFIG_MEMCG=y)

        text            data    bss     dec              hex    filename
        12355346        1823792 1089536 15268674         e8fb42 vmlinux.before
        12354970        1823792 1089536 15268298         e8f9ca vmlinux.after

      This is not much (370B) but better than nothing.

      We also save a function call in some hot paths like callers of
      mem_cgroup_count_vm_event which is used for accounting.

      The patch doesn't introduce any functional changes.

      [vdavykov@xxxxxxxxxxxxx: inline memcg_kmem_is_active]
      [vdavykov@xxxxxxxxxxxxx: do not expose type outside of CONFIG_MEMCG]
      [akpm@xxxxxxxxxxxxxxxxxxxx: memcontrol.h needs eventfd.h for eventfd_ctx]
      [akpm@xxxxxxxxxxxxxxxxxxxx: export mem_cgroup_from_task() to modules]
      Signed-off-by: Michal Hocko <mhocko@xxxxxxx>
      Reviewed-by: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx>
      Suggested-by: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit b3d9ed3fd872fc074286674ae8595ee880938bbf
  Author: Michal Hocko <mhocko@xxxxxxxx>
  Date:   Tue Sep 8 15:00:59 2015 -0700

      sparc32: do not include swap.h from pgtable_32.h

      "memcg: export struct mem_cgroup" will add includes into
      linux/memcontrol.h which lead to further header dependency issues as
      reported by Guenter Roeck:

        In file included from include/linux/highmem.h:7:0,
                         from include/linux/bio.h:23,
                         from include/linux/writeback.h:192,
                         from include/linux/memcontrol.h:30,
                         from include/linux/swap.h:8,
                         from ./arch/sparc/include/asm/pgtable_32.h:17,
                         from ./arch/sparc/include/asm/pgtable.h:6,
                         from arch/sparc/kernel/traps_32.c:23:
        include/linux/mm.h: In function 'is_vmalloc_addr':
        include/linux/mm.h:371:17: error: 'VMALLOC_START' undeclared (first use 
in this function)
        include/linux/mm.h:371:17: note: each undeclared identifier is reported 
only once for each function it appears in
        include/linux/mm.h:371:41: error: 'VMALLOC_END' undeclared (first use 
in this function)
        include/linux/mm.h: In function 'maybe_mkwrite':
        include/linux/mm.h:556:3: error: implicit declaration of function 
'pte_mkwrite'

      The issue is that pgtable_32.h depends on swap.h to get swap_entry_t but
      that goes all the way down to linux/mm.h which wants to have VMALLOC_*
      which is defined later in pgtable_32.h, though.

      swap_entry_t is defined in include/mm_types.h so it should be sufficient
      to include this header without more dependencies.

      Signed-off-by: Michal Hocko <mhocko@xxxxxxxx>
      Reported-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Tested-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: David Miller <davem@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 44d7175da6ea10e353e69b586bb68bbfef89e403
  Author: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
  Date:   Tue Sep 8 15:00:56 2015 -0700

      mm/dmapool: allow NULL `pool' pointer in dma_pool_destroy()

      dma_pool_destroy() does not tolerate a NULL dma_pool pointer argument and
      performs a NULL-pointer dereference.  This requires additional attention
      and effort from developers/reviewers and forces all dma_pool_destroy()
      callers to do a NULL check

          if (pool)
              dma_pool_destroy(pool);

      Or, otherwise, be invalid dma_pool_destroy() users.

      Tweak dma_pool_destroy() and NULL-check the pointer there.

      Proposed by Andrew Morton.

      Link: https://lkml.org/lkml/2015/6/8/583
      Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Julia Lawall <julia.lawall@xxxxxxx>
      Cc: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 4e3ca3e033d1eea62fa16c3fdbef4f20427bd0de
  Author: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
  Date:   Tue Sep 8 15:00:53 2015 -0700

      mm/mempool: allow NULL `pool' pointer in mempool_destroy()

      mempool_destroy() does not tolerate a NULL mempool_t pointer argument and
      performs a NULL-pointer dereference.  This requires additional attention
      and effort from developers/reviewers and forces all mempool_destroy()
      callers to do a NULL check

          if (pool)
              mempool_destroy(pool);

      Or, otherwise, be invalid mempool_destroy() users.

      Tweak mempool_destroy() and NULL-check the pointer there.

      Proposed by Andrew Morton.

      Link: https://lkml.org/lkml/2015/6/8/583
      Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Julia Lawall <julia.lawall@xxxxxxx>
      Cc: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3942d29918522ba6a393c19388301ec04df429cd
  Author: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
  Date:   Tue Sep 8 15:00:50 2015 -0700

      mm/slab_common: allow NULL cache pointer in kmem_cache_destroy()

      kmem_cache_destroy() does not tolerate a NULL kmem_cache pointer argument
      and performs a NULL-pointer dereference.  This requires additional
      attention and effort from developers/reviewers and forces all
      kmem_cache_destroy() callers (200+ as of 4.1) to do a NULL check

          if (cache)
              kmem_cache_destroy(cache);

      Or, otherwise, be invalid kmem_cache_destroy() users.

      Tweak kmem_cache_destroy() and NULL-check the pointer there.

      Proposed by Andrew Morton.

      Link: https://lkml.org/lkml/2015/6/8/583
      Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Julia Lawall <julia.lawall@xxxxxxx>
      Cc: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 75e8f8b24cb0dc4951267d31f0a49e5ce2f345c4
  Author: David Rientjes <rientjes@xxxxxxxxxx>
  Date:   Tue Sep 8 15:00:47 2015 -0700

      mm, oom: remove unnecessary variable

      The "killed" variable in out_of_memory() can be removed since the call to
      oom_kill_process() where we should block to allow the process time to
      exit is obvious.

      Signed-off-by: David Rientjes <rientjes@xxxxxxxxxx>
      Acked-by: Michal Hocko <mhocko@xxxxxxxx>
      Cc: Sergey Senozhatsky <sergey.senozhatsky.work@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 8989e4c7d4e3c30b55c998a1138cd06c92df7295
  Author: David Rientjes <rientjes@xxxxxxxxxx>
  Date:   Tue Sep 8 15:00:44 2015 -0700

      mm, oom: add description of struct oom_control

      Describe the purpose of struct oom_control and what each member does.

      Also make gfp_mask and order const since they are never manipulated or
      passed to functions that discard the qualifier.

      Signed-off-by: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Sergey Senozhatsky <sergey.senozhatsky.work@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 071a4befebb655d6b31bf5c6bacd5a6df035224d
  Author: David Rientjes <rientjes@xxxxxxxxxx>
  Date:   Tue Sep 8 15:00:42 2015 -0700

      mm, oom: do not panic for oom kills triggered from sysrq

      Sysrq+f is used to kill a process either for debug or when the VM is
      otherwise unresponsive.

      It is not intended to trigger a panic when no process may be killed.

      Avoid panicking the system for sysrq+f when no processes are killed.

      Signed-off-by: David Rientjes <rientjes@xxxxxxxxxx>
      Suggested-by: Michal Hocko <mhocko@xxxxxxx>
      Cc: Sergey Senozhatsky <sergey.senozhatsky.work@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 54e9e29132d7caefcad470281cae06ac34a982c8
  Author: David Rientjes <rientjes@xxxxxxxxxx>
  Date:   Tue Sep 8 15:00:39 2015 -0700

      mm, oom: pass an oom order of -1 when triggered by sysrq

      The force_kill member of struct oom_control isn't needed if an order of -1
      is used instead.  This is the same as order == -1 in struct
      compact_control which requires full memory compaction.

      This patch introduces no functional change.

      Signed-off-by: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Sergey Senozhatsky <sergey.senozhatsky.work@xxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 6e0fc46dc2152d3e2d25a5d5b640ae3586c247c6
  Author: David Rientjes <rientjes@xxxxxxxxxx>
  Date:   Tue Sep 8 15:00:36 2015 -0700

      mm, oom: organize oom context into struct

      There are essential elements to an oom context that are passed around to
      multiple functions.

      Organize these elements into a new struct, struct oom_control, that
      specifies the context for an oom condition.

      This patch introduces no functional change.

      Signed-off-by: David Rientjes <rientjes@xxxxxxxxxx>
      Acked-by: Michal Hocko <mhocko@xxxxxxx>
      Cc: Sergey Senozhatsky <sergey.senozhatsky.work@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 2c0b80d463c6ade539d51ad03bc7c41849fb37e8
  Author: Nicholas Krause <xerofoify@xxxxxxxxx>
  Date:   Tue Sep 8 15:00:33 2015 -0700

      mm: make set_recommended_min_free_kbytes() return void

      This makes set_recommended_min_free_kbytes() have a return type of void as
      it cannot fail.

      Signed-off-by: Nicholas Krause <xerofoify@xxxxxxxxx>
      Acked-by: Michal Hocko <mhocko@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 28c015d07507e164d93b33498b4e482ff81c0e9b
  Author: David Rientjes <rientjes@xxxxxxxxxx>
  Date:   Tue Sep 8 15:00:31 2015 -0700

      mm: improve __GFP_NORETRY comment based on implementation

      Explicitly state that __GFP_NORETRY will attempt direct reclaim and
      memory compaction before returning NULL and that the oom killer is not
      called in the current implementation of the page allocator.

      [akpm@xxxxxxxxxxxxxxxxxxxx: s/has/have/]
      Signed-off-by: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 998ef75ddb5709bbea0bf1506cd2717348a3c647
  Author: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 15:00:28 2015 -0700

      fs: do not prefault sys_write() user buffer pages

      === Short summary ====

      iov_iter_fault_in_readable() works around a really rare case and we can
      avoid the deadlock it addresses in another way: disable page faults and
      work around copy failures by faulting after the copy in a slow path
      instead of before in a hot one.

      I have a little microbenchmark that does repeated, small writes to tmpfs.
      This patch speeds that micro up by 6.2%.

      === Long version ===

      When doing a sys_write() we have a source buffer in userspace and then a
      target file page.

      If both of those are the same physical page, there is a potential deadlock
      that we avoid.  It would happen something like this:

      1. We start the write to the file
      2. Allocate page cache page and set it !Uptodate
      3. Touch the userspace buffer to copy in the user data
      4. Page fault (since source of the write not yet mapped)
      5. Page fault code tries to lock the page and deadlocks

      (more details on this below)

      To avoid this, we prefault the page to guarantee that this fault does not
      occur.  But, this prefault comes at a cost.  It is one of the most
      expensive things that we do in a hot write() path (especially if we
      compare it to the read path).  It is working around a pretty rare case.

      To fix this, it's pretty simple.  We move the "prefault" code to run after
      we attempt the copy.  We explicitly disable page faults _during_ the copy,
      detect the copy failure, then execute the "prefault" ouside of where the
      page lock needs to be held.

      iov_iter_copy_from_user_atomic() actually already has an implicit
      pagefault_disable() inside of it (at least on x86), but we add an explicit
      one.  I don't think we can depend on every kmap_atomic() implementation to
      pagefault_disable() for eternity.

      ===================================================

      The stack trace when this happens looks like this:

        wait_on_page_bit_killable+0xc0/0xd0
        __lock_page_or_retry+0x84/0xa0
        filemap_fault+0x1ed/0x3d0
        __do_fault+0x41/0xc0
        handle_mm_fault+0x9bb/0x1210
        __do_page_fault+0x17f/0x3d0
        do_page_fault+0xc/0x10
        page_fault+0x22/0x30
        generic_perform_write+0xca/0x1a0
        __generic_file_write_iter+0x190/0x1f0
        ext4_file_write_iter+0xe9/0x460
        __vfs_write+0xaa/0xe0
        vfs_write+0xa6/0x1a0
        SyS_write+0x46/0xa0
        entry_SYSCALL_64_fastpath+0x12/0x6a
        0xffffffffffffffff

      (Note, this does *NOT* happen in practice today because
       the kmap_atomic() does a pagefault_disable().  The trace
       above was obtained by taking out the pagefault_disable().)

      You can trigger the deadlock with this little code snippet:

        fd = open("foo", O_RDWR);
        fdmap = mmap(NULL, len, PROT_WRITE|PROT_READ, MAP_SHARED, fd, 0);
        write(fd, &fdmap[0], 1);

      Signed-off-by: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Jens Axboe <axboe@xxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Cc: NeilBrown <neilb@xxxxxxx>
      Cc: Matthew Wilcox <matthew.r.wilcox@xxxxxxxxx>
      Cc: Paul Cassella <cassella@xxxxxxxx>
      Cc: Greg Thelen <gthelen@xxxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 8334b96221ff0dcbde4873d31eb4d84774ed8ed4
  Author: Minchan Kim <minchan@xxxxxxxxxx>
  Date:   Tue Sep 8 15:00:24 2015 -0700

      mm: /proc/pid/smaps:: show proportional swap share of the mapping

      We want to know per-process workingset size for smart memory management
      on userland and we use swap(ex, zram) heavily to maximize memory
      efficiency so workingset includes swap as well as RSS.

      On such system, if there are lots of shared anonymous pages, it's really
      hard to figure out exactly how many each process consumes memory(ie, rss
      + wap) if the system has lots of shared anonymous memory(e.g, android).

      This patch introduces SwapPss field on /proc/<pid>/smaps so we can get
      more exact workingset size per process.

      Bongkyu tested it. Result is below.

      1. 50M used swap
      SwapTotal: 461976 kB
      SwapFree: 411192 kB

      $ adb shell cat /proc/*/smaps | grep "SwapPss:" | awk '{sum += $2} END 
{print sum}';
      48236
      $ adb shell cat /proc/*/smaps | grep "Swap:" | awk '{sum += $2} END 
{print sum}';
      141184

      2. 240M used swap
      SwapTotal: 461976 kB
      SwapFree: 216808 kB

      $ adb shell cat /proc/*/smaps | grep "SwapPss:" | awk '{sum += $2} END 
{print sum}';
      230315
      $ adb shell cat /proc/*/smaps | grep "Swap:" | awk '{sum += $2} END 
{print sum}';
      1387744

      [akpm@xxxxxxxxxxxxxxxxxxxx: simplify kunmap_atomic() call]
      Signed-off-by: Minchan Kim <minchan@xxxxxxxxxx>
      Reported-by: Bongkyu Kim <bongkyu.kim@xxxxxxx>
      Tested-by: Bongkyu Kim <bongkyu.kim@xxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Sergey Senozhatsky <sergey.senozhatsky.work@xxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Cc: Jerome Marchand <jmarchan@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3115aec4513e5bcb399235cac98a5637fe641c13
  Author: Vladimir Murzin <vladimir.murzin@xxxxxxx>
  Date:   Tue Sep 8 15:00:22 2015 -0700

      memtest: remove unused header files

      memtest does not require these headers to be included.

      Signed-off-by: Vladimir Murzin <vladimir.murzin@xxxxxxx>
      Cc: Leon Romanovsky <leon@xxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit f373bafcad68834761b40da9cecda842f43d4797
  Author: Vladimir Murzin <vladimir.murzin@xxxxxxx>
  Date:   Tue Sep 8 15:00:19 2015 -0700

      memtest: cleanup log messages

      - prefer pr_info(...  to printk(KERN_INFO ...
      - use %pa for phys_addr_t
      - use cpu_to_be64 while printing pattern in reserve_bad_mem()

      Signed-off-by: Vladimir Murzin <vladimir.murzin@xxxxxxx>
      Cc: Leon Romanovsky <leon@xxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 06f805965fc205e27681eee99fd2376fafd8da65
  Author: Vladimir Murzin <vladimir.murzin@xxxxxxx>
  Date:   Tue Sep 8 15:00:16 2015 -0700

      memtest: use kstrtouint instead of simple_strtoul

      Since simple_strtoul is obsolete and memtest_pattern is type of int, use
      kstrtouint instead.

      Signed-off-by: Vladimir Murzin <vladimir.murzin@xxxxxxx>
      Cc: Leon Romanovsky <leon@xxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 83b4b0bb635eee2b8e075062e4e008d1bc110ed7
  Author: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
  Date:   Tue Sep 8 15:00:13 2015 -0700

      pagemap: update documentation

      Notes about recent changes.

      [akpm@xxxxxxxxxxxxxxxxxxxx: various tweaks]
      Signed-off-by: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
      Cc: Mark Williamson <mwilliamson@xxxxxxxxxxxxxxxxx>
      Cc: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 77bb499bb60f4b79cca7d139c8041662860fcf87
  Author: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
  Date:   Tue Sep 8 15:00:10 2015 -0700

      pagemap: add mmap-exclusive bit for marking pages mapped only here

      This patch sets bit 56 in pagemap if this page is mapped only once.  It
      allows to detect exclusively used pages without exposing PFN:

      present file exclusive state
      0       0    0         non-present
      1       1    0         file page mapped somewhere else
      1       1    1         file page mapped only here
      1       0    0         anon non-CoWed page (shared with parent/child)
      1       0    1         anon CoWed page (or never forked)

      CoWed pages in (MAP_FILE | MAP_PRIVATE) areas are anon in this context.

      MMap-exclusive bit doesn't reflect potential page-sharing via swapcache:
      page could be mapped once but has several swap-ptes which point to it.
      Application could detect that by swap bit in pagemap entry and touch that
      pte via /proc/pid/mem to get real information.

      See 
http://lkml.kernel.org/r/CAEVpBa+_RyACkhODZrRvQLs80iy0sqpdrd0AaP_-tgnX3Y9yNQ@xxxxxxxxxxxxxx

      Requested by Mark Williamson.

      [akpm@xxxxxxxxxxxxxxxxxxxx: fix spello]
      Signed-off-by: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
      Reviewed-by: Mark Williamson <mwilliamson@xxxxxxxxxxxxxxxxx>
      Tested-by:  Mark Williamson <mwilliamson@xxxxxxxxxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1c90308e7a77af6742a97d1021cca923b23b7f0d
  Author: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
  Date:   Tue Sep 8 15:00:07 2015 -0700

      pagemap: hide physical addresses from non-privileged users

      This patch makes pagemap readable for normal users and hides physical
      addresses from them.  For some use-cases PFN isn't required at all.

      See 
http://lkml.kernel.org/r/1425935472-17949-1-git-send-email-kirill@xxxxxxxxxxxxx

      Fixes: ab676b7d6fbf ("pagemap: do not leak physical addresses to 
non-privileged userspace")
      Signed-off-by: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
      Cc: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Reviewed-by: Mark Williamson <mwilliamson@xxxxxxxxxxxxxxxxx>
      Tested-by:  Mark Williamson <mwilliamson@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 356515e7b64c2629f686109d426baaf868cdf7e8
  Author: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
  Date:   Tue Sep 8 15:00:04 2015 -0700

      pagemap: rework hugetlb and thp report

      This patch moves pmd dissection out of reporting loop: huge pages are
      reported as bunch of normal pages with contiguous PFNs.

      Add missing "FILE" bit in hugetlb vmas.

      Signed-off-by: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Reviewed-by: Mark Williamson <mwilliamson@xxxxxxxxxxxxxxxxx>
      Tested-by:  Mark Williamson <mwilliamson@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit deb945441b9408d6cd15751f5232eeca9f50a5a1
  Author: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
  Date:   Tue Sep 8 15:00:02 2015 -0700

      pagemap: switch to the new format and do some cleanup

      This patch removes page-shift bits (scheduled to remove since 3.11) and
      completes migration to the new bit layout.  Also it cleans messy macro.

      Signed-off-by: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: Mark Williamson <mwilliamson@xxxxxxxxxxxxxxxxx>
      Tested-by:  Mark Williamson <mwilliamson@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit a06db751c321546e5563041956a57613259c6720
  Author: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:59 2015 -0700

      pagemap: check permissions and capabilities at open time

      This patchset makes pagemap useable again in the safe way (after row
      hammer bug it was made CAP_SYS_ADMIN-only).  This patchset restores access
      for non-privileged users but hides PFNs from them.

      Also it adds bit 'map-exclusive' which is set if page is mapped only here:
      it helps in estimation of working set without exposing pfns and allows to
      distinguish CoWed and non-CoWed private anonymous pages.

      Second patch removes page-shift bits and completes migration to the new
      pagemap format: flags soft-dirty and mmap-exclusive are available only in
      the new format.

      This patch (of 5):

      This patch moves permission checks from pagemap_read() into 
pagemap_open().

      Pointer to mm is saved in file->private_data. This reference pins only
      mm_struct itself. /proc/*/mem, maps, smaps already work in the same way.

      See 
http://lkml.kernel.org/r/CA+55aFyKpWrt_Ajzh1rzp_GcwZ4=6Y=kOv8hBz172CFJp6L8Tg@xxxxxxxxxxxxxx

      Signed-off-by: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
      Reviewed-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Reviewed-by: Mark Williamson <mwilliamson@xxxxxxxxxxxxxxxxx>
      Tested-by:  Mark Williamson <mwilliamson@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit b5e3aa0a4d5e35329203fd09acb0dbc7f7fd64de
  Author: Vineet Gupta <Vineet.Gupta1@xxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:56 2015 -0700

      mm: remove put_page_unless_one()

      It has no callers.

      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 4fcab5f437c481e51c270a2d12ef56a3f2367371
  Author: Wei Yang <weiyang@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:53 2015 -0700

      mm/memblock.c: WARN_ON when flags differs from overlap region

      Each memblock_region has flags to indicates the type of this range. For
      the overlap case, memblock_add_range() inserts the lower part and leave 
the
      upper part as indicated in the overlapped region.

      If the flags of the new range differs from the overlapped region, the
      information recorded is not correct.

      This patch adds a WARN_ON when the flags of the new range differs from the
      overlapped region.

      Signed-off-by: Wei Yang <weiyang@xxxxxxxxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 7f3eb55bfad8a6dfd880559210f5b21737d69815
  Author: Wei Yang <weiyang@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:50 2015 -0700

      mm/page_alloc.c: remove unused variable in free_area_init_core()

      Commit febd5949e134 ("mm/memory hotplug: init the zone's size when
      calculating node totalpages") refines the function
      free_area_init_core().

      After doing so, these two parameters are not used anymore.

      This patch removes these two parameters.

      Signed-off-by: Wei Yang <weiyang@xxxxxxxxxxxxxxxxxx>
      Cc: Gu Zheng <guz.fnst@xxxxxxxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 904a9553d4fcdc0c7d5621f6178f0e07598701dc
  Author: Wei Yang <weiyang@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:48 2015 -0700

      mm/page_alloc.c: refine the calculation of highest possible node id

      nr_node_ids records the highest possible node id, which is calculated by
      scanning the bitmap node_states[N_POSSIBLE].  Current implementation
      scan the bitmap from the beginning, which will scan the whole bitmap.

      This patch reverses the order by scanning from the end with
      find_last_bit().

      Signed-off-by: Wei Yang <weiyang@xxxxxxxxxxxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 52a2b53ffde6d6018dfc454fbde34383351fb896
  Author: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:45 2015 -0700

      mm, dax: use i_mmap_unlock_write() in do_cow_fault()

      __dax_fault() takes i_mmap_lock for write. Let's pair it with write
      unlock on do_cow_fault() side.

      Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Acked-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 46c043ede4711e8d598b9d63c5616c1fedb0605e
  Author: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:42 2015 -0700

      mm: take i_mmap_lock in unmap_mapping_range() for DAX

      DAX is not so special: we need i_mmap_lock to protect mapping->i_mmap.

      __dax_pmd_fault() uses unmap_mapping_range() shoot out zero page from
      all mappings.  We need to drop i_mmap_lock there to avoid lock deadlock.

      Re-aquiring the lock should be fine since we check i_size after the
      point.

      Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3fdd1b479dbc03347e98f904f54133a9cef5521f
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:39 2015 -0700

      dax: use linear_page_index()

      I was basically open-coding it (thanks to copying code from do_fault()
      which probably also needs to be fixed).

      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 73a6ec47f68787df1b41869def52915da2f4a6b7
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:37 2015 -0700

      dax: ensure that zero pages are removed from other processes

      If the first access to a huge page was a store, there would be no existing
      zero pmd in this process's page tables.  There could be a zero pmd in
      another process's page tables, if it had done a load.  We can detect this
      case by noticing that the buffer_head returned from the filesystem is New,
      and ensure that other processes mapping this huge page have their page
      tables flushed.

      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Reported-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d295e3415a88ae63a37a22652808b20c7fcb970e
  Author: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:34 2015 -0700

      dax: don't use set_huge_zero_page()

      This is another place where DAX assumed that pgtable_t was a pointer.
      Open code the important parts of set_huge_zero_page() in DAX and make
      set_huge_zero_page() static again.

      Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit da146769004e1dd5ed06853e6d009be8ca675d5f
  Author: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:31 2015 -0700

      thp: fix zap_huge_pmd() for DAX

      The original DAX code assumed that pgtable_t was a pointer, which isn't
      true on all architectures.  Restructure the code to not rely on that
      assumption.

      [willy@xxxxxxxxxxxxxxx: further fixes integrated into this patch]
      Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 5b701b846aad7909d20693bcced2522d0ce8d1bc
  Author: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:28 2015 -0700

      thp: decrement refcount on huge zero page if it is split

      The DAX code neglected to put the refcount on the huge zero page.
      Also we must notify on splits.

      Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 843172978bb92997310d2f7fbc172ece423cfc02
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:25 2015 -0700

      dax: fix race between simultaneous faults

      If two threads write-fault on the same hole at the same time, the winner
      of the race will return to userspace and complete their store, only to
      have the loser overwrite their store with zeroes.  Fix this for now by
      taking the i_mmap_sem for write instead of read, and do so outside the
      call to get_block().  Now the loser of the race will see the block has
      already been zeroed, and will not zero it again.

      This severely limits our scalability.  I have ideas for improving it, but
      those can wait for a later patch.

      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 01a33b4ace68bc35679a347f21d5ed6e222e30dc
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:22 2015 -0700

      ext4: start transaction before calling into DAX

      Jan Kara pointed out that in the case where we are writing to a hole, we
      can end up with a lock inversion between the page lock and the journal
      lock.  We can avoid this by starting the transaction in ext4 before
      calling into DAX.  The journal lock nests inside the superblock
      pagefault lock, so we have to duplicate that code from dax_fault, like
      XFS does.

      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Cc: Theodore Ts'o <tytso@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ed923b5776a2d2e949bd5b20f3956d68f3c826b7
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:20 2015 -0700

      ext4: add ext4_get_block_dax()

      DAX wants different semantics from any currently-existing ext4 get_block
      callback.  Unlike ext4_get_block_write(), it needs to honour the
      'create' flag, and unlike ext4_get_block(), it needs to be able to
      return unwritten extents.  So introduce a new ext4_get_block_dax() which
      has those semantics.

      We could also change ext4_get_block_write() to honour the 'create' flag,
      but that might have consequences on other users that I do not currently
      understand.

      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Cc: Theodore Ts'o <tytso@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 84c4e5e675408b6fb7d74eec7da9a4a5698b50af
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:17 2015 -0700

      dax: improve comment about truncate race

      Jan Kara pointed out I should be more explicit here about the perils of
      racing against truncate.  The comment is mostly the same as for the PTE
      case.

      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ae18d6dcf57b56b984ff27fd55b4e2caf5bfbd44
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:14 2015 -0700

      thp: change insert_pfn's return type to void

      It would make more sense to have all the return values from
      vmf_insert_pfn_pmd() encoded in one place instead of having to follow
      the convention into insert_pfn().  Suggested by Jeff Moyer.

      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Cc: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit e676a4c191653787c3fe851fe3b9f1f33d49dac2
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:11 2015 -0700

      ext4: use ext4_get_block_write() for DAX

      DAX relies on the get_block function either zeroing newly allocated
      blocks before they're findable by subsequent calls to get_block, or
      marking newly allocated blocks as unwritten.  ext4_get_block() cannot
      create unwritten extents, but ext4_get_block_write() can.

      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Reported-by: Andy Rudoff <andy.rudoff@xxxxxxxxx>
      Cc: Theodore Ts'o <tytso@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit dd8a2b6c29a3221c19ab475c8408fc2b914ccfab
  Author: Valentin Rothberg <valentinrothberg@xxxxxxxxx>
  Date:   Tue Sep 8 14:59:09 2015 -0700

      fs/dax.c: fix typo in #endif comment

      Fix typo s/CONFIG_TRANSPARENT_HUGEPAGES/CONFIG_TRANSPARENT_HUGEPAGE/ in
      #endif comment introduced by commit 2b26a9206d6a ("dax: add huge page
      fault support").

      Signed-off-by: Valentin Rothberg <valentinrothberg@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit acd76e74d80f961553861d9cf49a62cbcf496d28
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:06 2015 -0700

      xfs: huge page fault support

      Use DAX to provide support for huge pages.

      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Cc: Hillf Danton <dhillf@xxxxxxxxx>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Theodore Ts'o <tytso@xxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 11bd1a9ecdd687b8a4b9b360b7e4b74a1a5e2bd5
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:03 2015 -0700

      ext4: huge page fault support

      Use DAX to provide support for huge pages.

      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Cc: Hillf Danton <dhillf@xxxxxxxxx>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Theodore Ts'o <tytso@xxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit e7b1ea2ad6581b83f63246db48aa2c2c9bf2ec8d
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:59:00 2015 -0700

      ext2: huge page fault support

      Use DAX to provide support for huge pages.

      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Cc: Hillf Danton <dhillf@xxxxxxxxx>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Theodore Ts'o <tytso@xxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 844f35db1088dd1a9de37b53d4d823626232bd19
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:58:57 2015 -0700

      dax: add huge page fault support

      This is the support code for DAX-enabled filesystems to allow them to
      provide huge pages in response to faults.

      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Cc: Hillf Danton <dhillf@xxxxxxxxx>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Theodore Ts'o <tytso@xxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 5cad465d7fa646bad3d677df276bfc8e2ad709e3
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:58:54 2015 -0700

      mm: add vmf_insert_pfn_pmd()

      Similar to vm_insert_pfn(), but for PMDs rather than PTEs.  The 'vmf_'
      prefix instead of 'vm_' prefix is intended to indicate that it returns a
      VMF_ value rather than an errno (which would only have to be converted
      into a VMF_ value anyway).

      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Cc: Hillf Danton <dhillf@xxxxxxxxx>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Theodore Ts'o <tytso@xxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit fc43704437ebe40f642ac53f7ee73661fe74e6b8
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:58:51 2015 -0700

      mm: export various functions for the benefit of DAX

      To use the huge zero page in DAX, we need these functions exported.

      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Cc: Hillf Danton <dhillf@xxxxxxxxx>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Theodore Ts'o <tytso@xxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit b96375f74a6d4f39fc6cbdc0bce5175115c7f96f
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:58:48 2015 -0700

      mm: add a pmd_fault handler

      Allow non-anonymous VMAs to provide huge pages in response to a page 
fault.

      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Cc: Hillf Danton <dhillf@xxxxxxxxx>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Theodore Ts'o <tytso@xxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 4897c7655d9419ba7e62bac145ec6a1847134d93
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:58:45 2015 -0700

      thp: prepare for DAX huge pages

      Add a vma_is_dax() helper macro to test whether the VMA is DAX, and use it
      in zap_huge_pmd() and __split_huge_page_pmd().

      [akpm@xxxxxxxxxxxxxxxxxxxx: fix build]
      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Cc: Hillf Danton <dhillf@xxxxxxxxx>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Theodore Ts'o <tytso@xxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 7c414164593514f76b422faae0824bdd3754209b
  Author: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:58:43 2015 -0700

      dax: revert userfaultfd change

      Undo the change which "userfaultfd: call handle_userfault() for
      userfaultfd_missing() faults" made to set_huge_zero_page().  DAX will
      need that return value.

      Cc: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c94c2acf84dc16cf4b989bb0bc849785b7ff52f5
  Author: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:58:40 2015 -0700

      dax: move DAX-related functions to a new header

      In order to handle the !CONFIG_TRANSPARENT_HUGEPAGES case, we need to
      return VM_FAULT_FALLBACK from the inlined dax_pmd_fault(), which is
      defined in linux/mm.h.  Given that we don't want to include <linux/mm.h>
      in <linux/fs.h>, the easiest solution is to move the DAX-related
      functions to a new header, <linux/dax.h>.  We could also have moved
      VM_FAULT_* definitions to a new header, or a different header that isn't
      quite such a boil-the-ocean header as <linux/mm.h>, but this felt like
      the best option.

      Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Cc: Hillf Danton <dhillf@xxxxxxxxx>
      Cc: "Kirill A. Shutemov" <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Theodore Ts'o <tytso@xxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit e1b9996b85ba3ff143ded04523cd015762d20f03
  Author: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:58:37 2015 -0700

      thp: vma_adjust_trans_huge(): adjust file-backed VMA too

      This series of patches adds support for using PMD page table entries to
      map DAX files.  We expect NV-DIMMs to start showing up that are many
      gigabytes in size and the memory consumption of 4kB PTEs will be
      astronomical.

      The patch series leverages much of the Transparant Huge Pages
      infrastructure, going so far as to borrow one of Kirill's patches from
      his THP page cache series.

      This patch (of 10):

      Since we're going to have huge pages in page cache, we need to call adjust
      file-backed VMA, which potentially can contain huge pages.

      For now we call it for all VMAs.

      Probably later we will need to introduce a flag to indicate that the VMA
      has huge pages.

      Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Signed-off-by: Matthew Wilcox <matthew.r.wilcox@xxxxxxxxx>
      Acked-by: Hillf Danton <dhillf@xxxxxxxxx>
      Cc: Theodore Ts'o <tytso@xxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ce75799b83aaf3fd592e21531a9532bed157c6b5
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Tue Sep 8 14:58:34 2015 -0700

      mremap: fix the wrong !vma->vm_file check in copy_vma()

      Test-case:

        #define _GNU_SOURCE
        #include <stdio.h>
        #include <unistd.h>
        #include <stdlib.h>
        #include <string.h>
        #include <sys/mman.h>
        #include <assert.h>

        void *find_vdso_vaddr(void)
        {
                FILE *perl;
                char buf[32] = {};

                perl = popen("perl -e 'open STDIN,qq|/proc/@{[getppid]}/maps|;"
                                "/^(.*?)-.*vdso/ && print hex $1 while <>'", 
"r");
                fread(buf, sizeof(buf), 1, perl);
                fclose(perl);

                return (void *)atol(buf);
        }

        #define PAGE_SIZE       4096

        void *get_unmapped_area(void)
        {
                void *p = mmap(0, PAGE_SIZE, PROT_NONE,
                                MAP_PRIVATE|MAP_ANONYMOUS, -1,0);
                assert(p != MAP_FAILED);
                munmap(p, PAGE_SIZE);
                return p;
        }

        char save[2][PAGE_SIZE];

        int main(void)
        {
                void *vdso = find_vdso_vaddr();
                void *page[2];

                assert(vdso);
                memcpy(save, vdso, sizeof (save));
                // force another fault on the next check
                assert(madvise(vdso, 2 * PAGE_SIZE, MADV_DONTNEED) == 0);

                page[0] = mremap(vdso,
                                PAGE_SIZE, PAGE_SIZE, MREMAP_FIXED | 
MREMAP_MAYMOVE,
                                get_unmapped_area());
                page[1] = mremap(vdso + PAGE_SIZE,
                                PAGE_SIZE, PAGE_SIZE, MREMAP_FIXED | 
MREMAP_MAYMOVE,
                                get_unmapped_area());

                assert(page[0] != MAP_FAILED && page[1] != MAP_FAILED);
                printf("match: %d %d\n",
                        !memcmp(save[0], page[0], PAGE_SIZE),
                        !memcmp(save[1], page[1], PAGE_SIZE));

                return 0;
        }

      fails without this patch. Before the previous commit it gets the wrong
      page, now it segfaults (which is imho better).

      This is because copy_vma() wrongly assumes that if vma->vm_file == NULL
      is irrelevant until the first fault which will use do_anonymous_page().
      This is obviously wrong for the special mapping.

      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Acked-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 8a9cc3b55e9d20289cc18a65257e62c2dd4932fb
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Tue Sep 8 14:58:31 2015 -0700

      mmap: fix the usage of ->vm_pgoff in special_mapping paths

      Test-case:

        #include <stdio.h>
        #include <unistd.h>
        #include <stdlib.h>
        #include <string.h>
        #include <sys/mman.h>
        #include <assert.h>

        void *find_vdso_vaddr(void)
        {
                FILE *perl;
                char buf[32] = {};

                perl = popen("perl -e 'open STDIN,qq|/proc/@{[getppid]}/maps|;"
                                "/^(.*?)-.*vdso/ && print hex $1 while <>'", 
"r");
                fread(buf, sizeof(buf), 1, perl);
                fclose(perl);

                return (void *)atol(buf);
        }

        #define PAGE_SIZE       4096

        int main(void)
        {
                void *vdso = find_vdso_vaddr();
                assert(vdso);

                // of course they should differ, and they do so far
                printf("vdso pages differ: %d\n",
                        !!memcmp(vdso, vdso + PAGE_SIZE, PAGE_SIZE));

                // split into 2 vma's
                assert(mprotect(vdso, PAGE_SIZE, PROT_READ) == 0);

                // force another fault on the next check
                assert(madvise(vdso, 2 * PAGE_SIZE, MADV_DONTNEED) == 0);

                // now they no longer differ, the 2nd vm_pgoff is wrong
                printf("vdso pages differ: %d\n",
                        !!memcmp(vdso, vdso + PAGE_SIZE, PAGE_SIZE));

                return 0;
        }

      Output:

        vdso pages differ: 1
        vdso pages differ: 0

      This is because split_vma() correctly updates ->vm_pgoff, but the logic
      in insert_vm_struct() and special_mapping_fault() is absolutely broken,
      so the fault at vdso + PAGE_SIZE return the 1st page. The same happens
      if you simply unmap the 1st page.

      special_mapping_fault() does:

        pgoff = vmf->pgoff - vma->vm_pgoff;

      and this is _only_ correct if vma->vm_start mmaps the first page from
      ->vm_private_data array.

      vdso or any other user of install_special_mapping() is not anonymous,
      it has the "backing storage" even if it is just the array of pages.
      So we actually need to make vm_pgoff work as an offset in this array.

      Note: this also allows to fix another problem: currently gdb can't access
      "[vvar]" memory because in this case special_mapping_fault() doesn't work.
      Now that we can use ->vm_pgoff we can implement ->access() and fix this.

      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Acked-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit b5330628546616af14ff23075fbf8d4ad91f6e25
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Tue Sep 8 14:58:28 2015 -0700

      mm: introduce vma_is_anonymous(vma) helper

      special_mapping_fault() is absolutely broken.  It seems it was always
      wrong, but this didn't matter until vdso/vvar started to use more than
      one page.

      And after this change vma_is_anonymous() becomes really trivial, it
      simply checks vm_ops == NULL.  However, I do think the helper makes
      sense.  There are a lot of ->vm_ops != NULL checks, the helper makes the
      caller's code more understandable (self-documented) and this is more
      grep-friendly.

      This patch (of 3):

      Preparation.  Add the new simple helper, vma_is_anonymous(vma), and change
      handle_pte_fault() to use it.  It will have more users.

      The name is not accurate, say a hpet_mmap()'ed vma is not anonymous.
      Perhaps it should be named vma_has_fault() instead.  But it matches the
      logic in mmap.c/memory.c (see next changes).  "True" just means that a
      page fault will use do_anonymous_page().

      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Acked-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit af8713b701a74c3784ce6683f64f474a94b1b643
  Author: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:58:25 2015 -0700

      selftests/userfaultfd: fix compiler warnings on 32-bit

      On 32-bit:

          userfaultfd.c: In function 'locking_thread':
          userfaultfd.c:152: warning: left shift count >= width of type
          userfaultfd.c: In function 'uffd_poll_thread':
          userfaultfd.c:295: warning: cast to pointer from integer of different 
size
          userfaultfd.c: In function 'uffd_read_thread':
          userfaultfd.c:332: warning: cast to pointer from integer of different 
size

      Fix the shift warning by splitting the shift in two parts, and the
      integer/pointer warnigns by adding intermediate casts to "unsigned long".

      Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Cc: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 61e57c0c3a37539e13af03ce68598034d37c7256
  Author: Kees Cook <keescook@xxxxxxxxxxxx>
  Date:   Tue Sep 8 14:58:22 2015 -0700

      cgroup: fix seq_show_option merge with legacy_name

      When seq_show_option (commit a068acf2ee77: "fs: create and use
      seq_show_option for escaping") was merged, it did not correctly collide
      with cgroup's addition of legacy_name (commit 3e1d2eed39d8: "cgroup:
      introduce cgroup_subsys->legacy_name") changes.

      This fixes the reported name.

      Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Acked-by: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 12f03ee606914317e7e6a0815e53a48205c31dae
  Merge: d9241b2 004f1af
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:35:59 2015 -0700

      Merge tag 'libnvdimm-for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm

      Pull libnvdimm updates from Dan Williams:
       "This update has successfully completed a 0day-kbuild run and has
        appeared in a linux-next release.  The changes outside of the typical
        drivers/nvdimm/ and drivers/acpi/nfit.[ch] paths are related to the
        removal of IORESOURCE_CACHEABLE, the introduction of memremap(), and
        the introduction of ZONE_DEVICE + devm_memremap_pages().

        Summary:

         - Introduce ZONE_DEVICE and devm_memremap_pages() as a generic
           mechanism for adding device-driver-discovered memory regions to the
           kernel's direct map.

           This facility is used by the pmem driver to enable pfn_to_page()
           operations on the page frames returned by DAX ('direct_access' in
           'struct block_device_operations').

           For now, the 'memmap' allocation for these "device" pages comes
           from "System RAM".  Support for allocating the memmap from device
           memory will arrive in a later kernel.

         - Introduce memremap() to replace usages of ioremap_cache() and
           ioremap_wt().  memremap() drops the __iomem annotation for these
           mappings to memory that do not have i/o side effects.  The
           replacement of ioremap_cache() with memremap() is limited to the
           pmem driver to ease merging the api change in v4.3.

           Completion of the conversion is targeted for v4.4.

         - Similar to the usage of memcpy_to_pmem() + wmb_pmem() in the pmem
           driver, update the VFS DAX implementation and PMEM api to provide
           persistence guarantees for kernel operations on a DAX mapping.

         - Convert the ACPI NFIT 'BLK' driver to map the block apertures as
           cacheable to improve performance.

         - Miscellaneous updates and fixes to libnvdimm including support for
           issuing "address range scrub" commands, clarifying the optimal
           'sector size' of pmem devices, a clarification of the usage of the
           ACPI '_STA' (status) property for DIMM devices, and other minor
           fixes"

      * tag 'libnvdimm-for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm: (34 commits)
        libnvdimm, pmem: direct map legacy pmem by default
        libnvdimm, pmem: 'struct page' for pmem
        libnvdimm, pfn: 'struct page' provider infrastructure
        x86, pmem: clarify that ARCH_HAS_PMEM_API implies PMEM mapped WB
        add devm_memremap_pages
        mm: ZONE_DEVICE for "device memory"
        mm: move __phys_to_pfn and __pfn_to_phys to asm/generic/memory_model.h
        dax: drop size parameter to ->direct_access()
        nd_blk: change aperture mapping from WC to WB
        nvdimm: change to use generic kvfree()
        pmem, dax: have direct_access use __pmem annotation
        dax: update I/O path to do proper PMEM flushing
        pmem: add copy_from_iter_pmem() and clear_pmem()
        pmem, x86: clean up conditional pmem includes
        pmem: remove layer when calling arch_has_wmb_pmem()
        pmem, x86: move x86 PMEM API to new pmem.h header
        libnvdimm, e820: make CONFIG_X86_PMEM_LEGACY a tristate option
        pmem: switch to devm_ allocations
        devres: add devm_memremap
        libnvdimm, btt: write and validate parent_uuid
        ...

  commit d9241b22b58e012f26dd2244508d9f4837402af0
  Merge: 605e971 3716001
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:23:13 2015 -0700

      Merge branch 'misc' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild

      Pull misc kbuild updates from Michal Marek:
       - deb-pkg:
           + module signing fix
           + dtb files are added to the package
           + do not require `hostname -f` to work during build
           + make deb-pkg generates a source package, bindeb-pkg has been
             added to only generate the binary package
       - rpm-pkg packages /lib/modules as well
       - new coccinelle patch and updates to existing ones
       - new stackusage & stackdelta script to collect and compare stack usage
         info (using gcc's -fstack-usage)
       - make tags understands trace_*_rcuidle() macros
       - .gitignore updates, misc cleanups

      * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild: 
(27 commits)
        deb-pkg: add source package
        package/Makefile: move source tar creation to a function
        scripts: add stackdelta script
        kbuild: remove *.su files generated by -fstack-usage
        .gitignore: add *.su pattern
        scripts: add stackusage script
        kbuild: avoid listing /lib/modules in kernel spec file
        fallback to hostname in scripts/package/builddeb
        coccinelle: api: extend spatch for dropping unnecessary owner
        deb-pkg: simplify directory creation
        scripts/tags.sh: Include trace_*_rcuidle() in tags
        scripts/package/Makefile: rpmbuild is needed for rpm targets
        Kbuild: Add ID files to .gitignore
        gitignore: Add MIPS vmlinux.32 to the list
        coccinelle: simple_return: Add a blank line
        coccinelle: irqf_oneshot.cocci: Improve the generated commit log
        coccinelle: api: add vma_pages.cocci
        scripts/coccinelle/misc/irqf_oneshot.cocci: Fix grammar
        scripts/coccinelle/misc/semicolon.cocci: Use imperative mood
        coccinelle: simple_open: Use imperative mood
        ...

  commit 605e9710fb5fef0dd2bb49d7b75e46601df62112
  Merge: dab3c3c 78a6854
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:17:38 2015 -0700

      Merge branch 'kconfig' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild

      Pull kconfig updates from Michal Marek:
       - kconfig warns about junk characters in Kconfig files
       - merge_config.sh error handling
       - small cleanup

      * 'kconfig' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
        merge_config.sh: exit on missing input files
        kconfig: Regenerate shipped zconf.{hash,lex}.c files
        kconfig: warn of unhandled characters in Kconfig commands
        kconfig: Delete unnecessary checks before the function call 
"sym_calc_value"

  commit dab3c3cc4f44273ccf2d7ff57c0a4f5bd45c0528
  Merge: 59a47ff 5631d9c
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:12:19 2015 -0700

      Merge branch 'kbuild' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild

      Pull core kbuild updates from Michal Marek:
       - modpost portability fix
       - linker script fix
       - genksyms segfault fix
       - fixdep cleanup
       - fix for clang detection

      * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
        kbuild: Fix clang detection
        kbuild: fixdep: drop meaningless hash table initialization
        kbuild: fixdep: optimize code slightly
        genksyms: Regenerate parser
        genksyms: Duplicate function pointer type definitions segfault
        kbuild: Fix .text.unlikely placement
        Avoid conflict with host definitions when cross-compiling

  commit 59a47fff0217592e248556a7ab436d5c17365962
  Merge: 425afcf b7dc42f
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 14:04:14 2015 -0700

      Merge tag 'trace-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace

      Pull tracing update from Steven Rostedt:
       "Mostly this is just clean ups and micro optimizations.

        The changes with more meat are:

         - Allowing the trace event filters to filter on CPU number and
           process ids

         - Two new markers for trace output latency were added (10 and 100
           msec latencies)

         - Have tracing_thresh filter function profiling time

        I also worked on modifying the ring buffer code for some future work,
        and moved the adding of the timestamp around.  One of my changes
        caused a regression, and since other changes were built on top of it
        and already tested, I had to operate a revert of that change.  Instead
        of rebasing, this change set has the code that caused a regression as
        well as the code to revert that change without touching the other
        changes that were made on top of it"

      * tag 'trace-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        ring-buffer: Revert "ring-buffer: Get timestamp after event is 
allocated"
        tracing: Don't make assumptions about length of string on task rename
        tracing: Allow triggers to filter for CPU ids and process names
        ftrace: Format MCOUNT_ADDR address as type unsigned long
        tracing: Introduce two additional marks for delay
        ftrace: Fix function_graph duration spacing with 7-digits
        ftrace: add tracing_thresh to function profile
        tracing: Clean up stack tracing and fix fentry updates
        ring-buffer: Reorganize function locations
        ring-buffer: Make sure event has enough room for extend and padding
        ring-buffer: Get timestamp after event is allocated
        ring-buffer: Move the adding of the extended timestamp out of line
        ring-buffer: Add event descriptor to simplify passing data
        ftrace: correct the counter increment for trace_buffer data
        tracing: Fix for non-continuous cpu ids
        tracing: Prefer kcalloc over kzalloc with multiply

  commit 5b902d6f97f573fde911338e5d943e6b07fac7f9
  Author: Julien Grall <julien.grall@xxxxxxxxxx>
  Date:   Thu Sep 3 23:59:50 2015 +0100

      device property: Don't overwrite addr when failing in 
device_get_mac_address

      The function device_get_mac_address is trying different property names
      in order to get the mac address. To check the return value, the variable
      addr (which contain the buffer pass by the caller) will be re-used. This
      means that if the previous property is not found, the next property will
      be read using a NULL buffer.

      Therefore it's only possible to retrieve the mac if node contains a
      property "mac-address". Fix it by using a temporary buffer for the
      return value.

      This has been introduced by commit 
4c96b7dc0d393f12c17e0d81db15aa4a820a6ab3
      "Add a matching set of device_ functions for determining mac/phy"

      Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Cc: Jeremy Linton <jeremy.linton@xxxxxxx>
      Cc: David S. Miller <davem@xxxxxxxxxxxxx>
      Reviewed-by: Jeremy Linton <jeremy.linton@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 425afcff13a4bea2a3cf6f395cbc66fc158852be
  Merge: b793c00 15ce414
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 13:34:59 2015 -0700

      Merge branch 'upstream' of git://git.infradead.org/users/pcmoore/audit

      Pull audit update from Paul Moore:
       "This is one of the larger audit patchsets in recent history,
        consisting of eight patches and almost 400 lines of changes.

        The bulk of the patchset is the new "audit by executable"
        functionality which allows admins to set an audit watch based on the
        executable on disk.  Prior to this, admins could only track an
        application by PID, which has some obvious limitations.

        Beyond the new functionality we also have some refcnt fixes and a few
        minor cleanups"

      * 'upstream' of git://git.infradead.org/users/pcmoore/audit:
        fixup: audit: implement audit by executable
        audit: implement audit by executable
        audit: clean simple fsnotify implementation
        audit: use macros for unset inode and device values
        audit: make audit_del_rule() more robust
        audit: fix uninitialized variable in audit_add_rule()
        audit: eliminate unnecessary extra layer of watch parent references
        audit: eliminate unnecessary extra layer of watch references

  commit fcb0bb6aab256288a4e0a8650d26e4096ec30319
  Author: Eugene Shatokhin <eugene.shatokhin@xxxxxxxxxx>
  Date:   Tue Sep 1 17:05:33 2015 +0300

      usbnet: Fix a race between usbnet_stop() and the BH

      The race may happen when a device (e.g. YOTA 4G LTE Modem) is
      unplugged while the system is downloading a large file from the Net.

      Hardware breakpoints and Kprobes with delays were used to confirm that
      the race does actually happen.

      The race is on skb_queue ('next' pointer) between usbnet_stop()
      and rx_complete(), which, in turn, calls usbnet_bh().

      Here is a part of the call stack with the code where the changes to the
      queue happen. The line numbers are for the kernel 4.1.0:

      *0 __skb_unlink (skbuff.h:1517)
          prev->next = next;
      *1 defer_bh (usbnet.c:430)
          spin_lock_irqsave(&list->lock, flags);
          old_state = entry->state;
          entry->state = state;
          __skb_unlink(skb, list);
          spin_unlock(&list->lock);
          spin_lock(&dev->done.lock);
          __skb_queue_tail(&dev->done, skb);
          if (dev->done.qlen == 1)
              tasklet_schedule(&dev->bh);
          spin_unlock_irqrestore(&dev->done.lock, flags);
      *2 rx_complete (usbnet.c:640)
          state = defer_bh(dev, skb, &dev->rxq, state);

      At the same time, the following code repeatedly checks if the queue is
      empty and reads these values concurrently with the above changes:

      *0  usbnet_terminate_urbs (usbnet.c:765)
          /* maybe wait for deletions to finish. */
          while (!skb_queue_empty(&dev->rxq)
              && !skb_queue_empty(&dev->txq)
              && !skb_queue_empty(&dev->done)) {
                  schedule_timeout(msecs_to_jiffies(UNLINK_TIMEOUT_MS));
                  set_current_state(TASK_UNINTERRUPTIBLE);
                  netif_dbg(dev, ifdown, dev->net,
                        "waited for %d urb completions\n", temp);
          }
      *1  usbnet_stop (usbnet.c:806)
          if (!(info->flags & FLAG_AVOID_UNLINK_URBS))
              usbnet_terminate_urbs(dev);

      As a result, it is possible, for example, that the skb is removed from
      dev->rxq by __skb_unlink() before the check
      "!skb_queue_empty(&dev->rxq)" in usbnet_terminate_urbs() is made. It is
      also possible in this case that the skb is added to dev->done queue
      after "!skb_queue_empty(&dev->done)" is checked. So
      usbnet_terminate_urbs() may stop waiting and return while dev->done
      queue still has an item.

      Locking in defer_bh() and usbnet_terminate_urbs() was revisited to avoid
      this race.

      Signed-off-by: Eugene Shatokhin <eugene.shatokhin@xxxxxxxxxx>
      Reviewed-by: Bjørn Mork <bjorn@xxxxxxx>
      Acked-by: Oliver Neukum <oneukum@xxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8b9558aab853e98ba6e3fee0dd8545544966958c
  Author: Yan, Zheng <zyan@xxxxxxxxxx>
  Date:   Tue Sep 1 17:19:38 2015 +0800

      libceph: use keepalive2 to verify the mon session is alive

      Signed-off-by: Yan, Zheng <zyan@xxxxxxxxxx>
      Signed-off-by: Ilya Dryomov <idryomov@xxxxxxxxx>

  commit d194cd1dd1be61249b08e5461ae8a9c05d1072c9
  Author: Ilya Dryomov <idryomov@xxxxxxxxx>
  Date:   Mon Aug 31 18:22:10 2015 +0300

      rbd: plug rbd_dev->header.object_prefix memory leak

      Need to free object_prefix when rbd_dev_v2_snap_context() fails, but
      only if this is the first time we are reading in the header.

      Signed-off-by: Ilya Dryomov <idryomov@xxxxxxxxx>
      Reviewed-by: Alex Elder <elder@xxxxxxxxxx>

  commit 3ebe138ac642a195c7f2efdb918f464734421fd6
  Author: Ilya Dryomov <idryomov@xxxxxxxxx>
  Date:   Mon Aug 31 15:21:39 2015 +0300

      rbd: fix double free on rbd_dev->header_name

      If rbd_dev_image_probe() in rbd_dev_probe_parent() fails, header_name
      is freed twice: once in rbd_dev_probe_parent() and then in its caller
      rbd_dev_image_probe() (rbd_dev_image_probe() is called recursively to
      handle parent images).

      rbd_dev_probe_parent() is responsible for probing the parent, so it
      shouldn't muck with clone's fields.

      Signed-off-by: Ilya Dryomov <idryomov@xxxxxxxxx>
      Reviewed-by: Alex Elder <elder@xxxxxxxxxx>

  commit 6dd74e44dc1df85f125982a8d6591bc4a76c9f5d
  Author: Yan, Zheng <zyan@xxxxxxxxxx>
  Date:   Fri Aug 28 17:59:35 2015 +0800

      libceph: set 'exists' flag for newly up osd

      Signed-off-by: Yan, Zheng <zyan@xxxxxxxxxx>
      Reviewed-by: Sage Weil <sage@xxxxxxxxxx>
      Signed-off-by: Ilya Dryomov <idryomov@xxxxxxxxx>

  commit 5fdb1389e1399d6801a8c5d10952ef4153039fb2
  Author: Jianpeng Ma <jianpeng.ma@xxxxxxxxx>
  Date:   Tue Aug 18 10:30:38 2015 +0800

      ceph: cleanup use of ceph_msg_get

      Signed-off-by: Jianpeng Ma <jianpeng.ma@xxxxxxxxx>
      Signed-off-by: Yan, Zheng <zyan@xxxxxxxxxx>

  commit e36d571d70c7f46b20c28d81025fd5fc044a8e22
  Author: Jianpeng Ma <jianpeng.ma@xxxxxxxxx>
  Date:   Tue Aug 18 10:25:35 2015 +0800

      ceph: no need to get parent inode in ceph_open

      parent inode is needed in creating new inode case.  For ceph_open,
      the target inode already exists.

      Signed-off-by: Jianpeng Ma <jianpeng.ma@xxxxxxxxx>
      Signed-off-by: Yan, Zheng <zyan@xxxxxxxxxx>

  commit a43137f7b0f1467cf3005b6ff6574d978642d247
  Author: Jianpeng Ma <jianpeng.ma@xxxxxxxxx>
  Date:   Tue Aug 18 10:23:50 2015 +0800

      ceph: remove the useless judgement

      err != 0 is already handled. So skip this.

      Signed-off-by: Jianpeng Ma <jianpeng.ma@xxxxxxxxx>
      Signed-off-by: Yan, Zheng <zyan@xxxxxxxxxx>

  commit 1550d34e5626a20a2e12c73bdc1e6e217a0ba897
  Author: Brad Hubbard <bhubbard@xxxxxxxxxx>
  Date:   Tue Aug 18 10:18:53 2015 +0800

      ceph: remove redundant test of head->safe and silence static analysis 
warnings

      Signed-off-by: Brad Hubbard <bhubbard@xxxxxxxxxx>
      Signed-off-by: Yan, Zheng <zyan@xxxxxxxxxx>

  commit 23078637e05460428f803be7d0f46908df8a970a
  Author: Yan, Zheng <zyan@xxxxxxxxxx>
  Date:   Mon Jul 20 10:14:06 2015 +0800

      ceph: fix queuing inode to mdsdir's snaprealm

      During MDS failovers, MClientSnap message may cause kclient to move
      some inodes from root directory's snaprealm to mdsdir's snaprealm
      and queue snapshots for these inodes. For a FS has never created any
      snapshot, both root directory's snaprealm and mdsdir's snaprealm
      share the same snapshot contexts (both are ceph_empty_snapc). This
      confuses ceph_put_wrbuffer_cap_refs(), make it unable to distinguish
      snapshot buffers from head buffers.

      The fix is do not use ceph_empty_snapc as snaprealm's cached context.

      Signed-off-by: Yan, Zheng <zyan@xxxxxxxxxx>

  commit 6893162215d7bf08a4273247ec1fc7dedee5135c
  Author: Ilya Dryomov <idryomov@xxxxxxxxx>
  Date:   Fri Jul 3 15:44:41 2015 +0300

      libceph: rename con_work() to ceph_con_workfn()

      Even though it's static, con_work(), being a work func, shows up in
      various stacktraces a lot.  Prefix it with ceph_.

      Signed-off-by: Ilya Dryomov <idryomov@xxxxxxxxx>

  commit d920ff6fc7c1ec3d7bd80432bff5575c0ebe426c
  Author: Benoît Canet <benoit.canet@xxxxxxxxxxxx>
  Date:   Thu Jun 25 21:02:57 2015 +0200

      libceph: Avoid holding the zero page on ceph_msgr_slab_init errors

      ceph_msgr_slab_init may fail due to a temporary ENOMEM.

      Delay a bit the initialization of zero_page in ceph_msgr_init and
      reorder its cleanup in _ceph_msgr_exit so it's done in reverse
      order of setup.

      BUG_ON() will not suffer to be postponed in case it is triggered.

      Signed-off-by: Benoît Canet <benoit.canet@xxxxxxxxxxxx>
      Reviewed-by: Alex Elder <elder@xxxxxxxxxx>
      Signed-off-by: Ilya Dryomov <idryomov@xxxxxxxxx>

  commit b79b23682a1649f30960fb5bd920ba46c89a1b14
  Author: Nicholas Krause <xerofoify@xxxxxxxxx>
  Date:   Sun Jul 5 06:34:05 2015 +0000

      libceph: remove the unused macro AES_KEY_SIZE

      This removes the no longer used macro AES_KEY_SIZE as no functions use
      this macro anymore and thus this macro can be removed due it no longer
      being required.

      Signed-off-by: Nicholas Krause <xerofoify@xxxxxxxxx>
      Signed-off-by: Ilya Dryomov <idryomov@xxxxxxxxx>

  commit a341d4df87487ae68189e0be869c39a2b0cb9aaa
  Author: Yan, Zheng <zyan@xxxxxxxxxx>
  Date:   Wed Jul 1 17:03:23 2015 +0800

      ceph: invalidate dirty pages after forced umount

      After forced umount, ceph_writepages_start() skips flushing dirty
      pages. To make sure inode's reference count get dropped to zero,
      we need to invalidate dirty pages.

      Signed-off-by: Yan, Zheng <zyan@xxxxxxxxxx>

  commit 48fec5d0a504dfbb302cb1dd24ebb0b82a46cce9
  Author: Yan, Zheng <zyan@xxxxxxxxxx>
  Date:   Wed Jul 1 16:27:46 2015 +0800

      ceph: EIO all operations after forced umount

      This patch makes try_get_cap_refs() and __do_request() check
      if the file system was forced umount, and return -EIO if it was.
      This patch also adds a helper function to drops dirty caps and
      wakes up blocking operation.

      Signed-off-by: Yan, Zheng <zyan@xxxxxxxxxx>

  commit b793c005ceabf6db0b17494b0ec67ade6796bb34
  Merge: 6f0a2fc 07f081f
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 12:41:25 2015 -0700

      Merge branch 'next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security

      Pull security subsystem updates from James Morris:
       "Highlights:

         - PKCS#7 support added to support signed kexec, also utilized for
           module signing.  See comments in 3f1e1bea.

           ** NOTE: this requires linking against the OpenSSL library, which
              must be installed, e.g.  the openssl-devel on Fedora **

         - Smack
            - add IPv6 host labeling; ignore labels on kernel threads
            - support smack labeling mounts which use binary mount data

         - SELinux:
            - add ioctl whitelisting (see
              http://kernsec.org/files/lss2015/vanderstoep.pdf)
            - fix mprotect PROT_EXEC regression caused by mm change

         - Seccomp:
            - add ptrace options for suspend/resume"

      * 'next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security: (57 
commits)
        PKCS#7: Add OIDs for sha224, sha284 and sha512 hash algos and use them
        Documentation/Changes: Now need OpenSSL devel packages for module 
signing
        scripts: add extract-cert and sign-file to .gitignore
        modsign: Handle signing key in source tree
        modsign: Use if_changed rule for extracting cert from module signing key
        Move certificate handling to its own directory
        sign-file: Fix warning about BIO_reset() return value
        PKCS#7: Add MODULE_LICENSE() to test module
        Smack - Fix build error with bringup unconfigured
        sign-file: Document dependency on OpenSSL devel libraries
        PKCS#7: Appropriately restrict authenticated attributes and content type
        KEYS: Add a name for PKEY_ID_PKCS7
        PKCS#7: Improve and export the X.509 ASN.1 time object decoder
        modsign: Use extract-cert to process CONFIG_SYSTEM_TRUSTED_KEYS
        extract-cert: Cope with multiple X.509 certificates in a single file
        sign-file: Generate CMS message as signature instead of PKCS#7
        PKCS#7: Support CMS messages also [RFC5652]
        X.509: Change recorded SKID & AKID to not include Subject or Issuer
        PKCS#7: Check content type and versions
        MAINTAINERS: The keyrings mailing list has moved
        ...

  commit 6f0a2fc1feb19bd142961a39dc118e7e55418b3f
  Merge: 752240e 96f0e00
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 12:28:10 2015 -0700

      Merge branch 'nmi' of git://ftp.arm.linux.org.uk/~rmk/linux-arm

      Pull NMI backtrace update from Russell King:
       "These changes convert the x86 NMI handling to be a library
        implementation which other architectures can make use of.  Thomas
        Gleixner has reviewed and tested these changes, and wishes me to send
        these rather than taking them through the tip tree.

        The final patch in the set adds an initial implementation using this
        infrastructure to ARM, even though it doesn't send the IPI at "NMI"
        level.  Patches are in progress to add the ARM equivalent of NMI, but
        we still need the IRQ-level fallback for systems where the "NMI" isn't
        available due to secure firmware denying access to it"

      * 'nmi' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
        ARM: add basic support for on-demand backtrace of other CPUs
        nmi: x86: convert to generic nmi handler
        nmi: create generic NMI backtrace implementation

  commit 752240e74d650faa24425adc523f1308973ea51c
  Merge: b8cb642 626d750
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 11:46:48 2015 -0700

      Merge tag 'for-linus-4.3-rc0-tag' of 
git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip

      Pull xen updates from David Vrabel:
       "Xen features and fixes for 4.3:

         - Convert xen-blkfront to the multiqueue API
         - [arm] Support binding event channels to different VCPUs.
         - [x86] Support > 512 GiB in a PV guests (off by default as such a
           guest cannot be migrated with the current toolstack).
         - [x86] PMU support for PV dom0 (limited support for using perf with
           Xen and other guests)"

      * tag 'for-linus-4.3-rc0-tag' of 
git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip: (33 commits)
        xen: switch extra memory accounting to use pfns
        xen: limit memory to architectural maximum
        xen: avoid another early crash of memory limited dom0
        xen: avoid early crash of memory limited dom0
        arm/xen: Remove helpers which are PV specific
        xen/x86: Don't try to set PCE bit in CR4
        xen/PMU: PMU emulation code
        xen/PMU: Intercept PMU-related MSR and APIC accesses
        xen/PMU: Describe vendor-specific PMU registers
        xen/PMU: Initialization code for Xen PMU
        xen/PMU: Sysfs interface for setting Xen PMU mode
        xen: xensyms support
        xen: remove no longer needed p2m.h
        xen: allow more than 512 GB of RAM for 64 bit pv-domains
        xen: move p2m list if conflicting with e820 map
        xen: add explicit memblock_reserve() calls for special pages
        mm: provide early_memremap_ro to establish read-only mapping
        xen: check for initrd conflicting with e820 map
        xen: check pre-allocated page tables for conflict with memory map
        xen: check for kernel memory conflicting with memory layout
        ...

  commit b8cb642af98216fe6eeca1525345b8a5c9d7c9a4
  Merge: 1c8cc72 4a6ac30
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 11:36:56 2015 -0700

      Merge branch 'irq-core-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull more irq updates from Thomas Gleixner:
       "The second part of irq related updates:

         - Provide EOImode for GIC[V3] irq chips, which is a prerequisite for
           direct interrupt handling in [KVM] guests"

      * 'irq-core-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        irqchip/GIC: Fix EOImode setting for non-DT/ACPI systems
        irqchip/GIC: Don't deactivate interrupts forwarded to a guest
        irqchip/GIC: Convert to EOImode == 1
        irqchip/GICv3: Don't deactivate interrupts forwarded to a guest
        irqchip/GICv3: Convert to EOImode == 1

  commit 1c8cc72d57f321bfccadf4f7b38b94ba287928bc
  Merge: b9ffce9 50e48bd
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 11:31:33 2015 -0700

      Merge branch 'for-next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu

      Pull m68k/colfire fixes from Greg Ungerer:
       "Only a couple of patches this time.  One migrating the clock driver
        code to the new set-state interface.  The other cleaning up to use the
        PFN_DOWN macro"

      * 'for-next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
        m68k/coldfire: use PFN_DOWN macro
        m68k/coldfire/pit: Migrate to new 'set-state' interface

  commit b9ffce9ae14fa6068a7c8c3ce2350ee3a8c1787b
  Merge: 0c8e2f2 0dad87f
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 11:26:17 2015 -0700

      Merge tag 'ecryptfs-4.3-rc1-stale-dcache' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tyhicks/ecryptfs

      Pull ecryptfs fixes from Tyler Hicks:
       "Invalidate stale eCryptfs dcache entries caused by unlinked lower
        inodes"

      * tag 'ecryptfs-4.3-rc1-stale-dcache' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tyhicks/ecryptfs:
        eCryptfs: Delete a check before the function call "key_put"
        eCryptfs: Invalidate dcache entries when lower i_nlink is zero

  commit 0c8e2f2c7b86c29775379f716f7db07516fcbcbf
  Merge: 49df2e3 71c6da8
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 8 11:20:39 2015 -0700

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6

      Pull crypto fix from Herbert Xu:
       "This fixes a memory corruption bug in ghash-clmulni-intel due to
        insufficient memory allocation"

      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
        crypto: ghash-clmulni: specify context size for ghash async algorithm

  commit 49df2e3e902e1c3caf998f97a92512424936199d
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Wed Jul 29 18:53:17 2015 +0200

      userfaultfd: selftest: update userfaultfd x86 32bit syscall number

      It changed as result of other syscalls, and while the system call list
      itself was correctly updated, the selftest program was not.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 5f51042f876b88a3b81a135cc4ca0adb3d246112
  Author: Julien Grall <julien.grall@xxxxxxxxxx>
  Date:   Fri Aug 7 17:34:42 2015 +0100

      xen/xenbus: Rename the variable xen_store_mfn to xen_store_gfn

      The variable xen_store_mfn is effectively storing a GFN and not an MFN.

      Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit a13d7201d7deedcbb6ac6efa94a1a7d34d3d79ec
  Author: Julien Grall <julien.grall@xxxxxxxxxx>
  Date:   Fri Aug 7 17:34:41 2015 +0100

      xen/privcmd: Further s/MFN/GFN/ clean-up

      The privcmd code is mixing the usage of GFN and MFN within the same
      functions which make the code difficult to understand when you only work
      with auto-translated guests.

      The privcmd driver is only dealing with GFN so replace all the mention
      of MFN into GFN.

      The ioctl structure used to map foreign change has been left unchanged
      given that the userspace is using it. Nonetheless, add a comment to
      explain the expected value within the "mfn" field.

      Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 859e3267c515d0cc7cc11528e80a2b7f3edc3bd9
  Author: Julien Grall <julien.grall@xxxxxxxxxx>
  Date:   Fri Aug 7 17:34:40 2015 +0100

      hvc/xen: Further s/MFN/GFN clean-up

      HVM_PARAM_CONSOLE_PFN is used to retrieved the console PFN for HVM
      guest. It returns a PFN (aka GFN) and not a MFN.

      Furthermore, use directly virt_to_gfn for both PV and HVM domain rather
      than doing a special case for each of the them.

      Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 0467533a7a5da08a881a31120d95cd159e54640b
  Author: Julien Grall <julien.grall@xxxxxxxxxx>
  Date:   Fri Aug 7 17:34:39 2015 +0100

      video/xen-fbfront: Further s/MFN/GFN clean-up

      The PV driver xen-fbfront is only dealing with GFN and not MFN. Rename
      all the occurence of MFN to GFN.

      Also take the opportunity to replace to usage of pfn_to_gfn by
      xen_page_to_gfn.

      Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit a76e3cc32d872acd5104278d21d2084da07c16a8
  Author: Julien Grall <julien.grall@xxxxxxxxxx>
  Date:   Fri Aug 7 17:34:38 2015 +0100

      xen/tmem: Use xen_page_to_gfn rather than pfn_to_gfn

      All the caller of xen_tmem_{get,put}_page have a struct page * in hand
      and call pfn_to_gfn for the only benefits of these 2 functions.

      Rather than passing the pfn in parameter, pass directly the page and use
      directly xen_page_to_gfn.

      Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Reviewed-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 0df4f266b3af90442bbeb5e685a84a80745beba0
  Author: Julien Grall <julien.grall@xxxxxxxxxx>
  Date:   Fri Aug 7 17:34:37 2015 +0100

      xen: Use correctly the Xen memory terminologies

      Based on include/xen/mm.h [1], Linux is mistakenly using MFN when GFN
      is meant, I suspect this is because the first support for Xen was for
      PV. This resulted in some misimplementation of helpers on ARM and
      confused developers about the expected behavior.

      For instance, with pfn_to_mfn, we expect to get an MFN based on the name.
      Although, if we look at the implementation on x86, it's returning a GFN.

      For clarity and avoid new confusion, replace any reference to mfn with
      gfn in any helpers used by PV drivers. The x86 code will still keep some
      reference of pfn_to_mfn which may be used by all kind of guests
      No changes as been made in the hypercall field, even
      though they may be invalid, in order to keep the same as the defintion
      in xen repo.

      Note that page_to_mfn has been renamed to xen_page_to_gfn to avoid a
      name to close to the KVM function gfn_to_page.

      Take also the opportunity to simplify simple construction such
      as pfn_to_mfn(page_to_pfn(page)) into xen_page_to_gfn. More complex clean 
up
      will come in follow-up patches.

      [1] 
http://xenbits.xen.org/gitweb/?p=xen.git;a=commitdiff;h=e758ed14f390342513405dd766e874934573e6cb

      Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Reviewed-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
      Acked-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
      Acked-by: Wei Liu <wei.liu2@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 5192b35de47e47a0f736fe30da199f32030680e7
  Author: Julien Grall <julien.grall@xxxxxxxxxx>
  Date:   Fri Aug 7 17:34:36 2015 +0100

      arm/xen: implement correctly pfn_to_mfn

      After the commit introducing convertion between DMA and guest addresses,
      all the callers of pfn_to_mfn are expecting to get a GFN (Guest Frame
      Number). On ARM, all the guests are auto-translated so the GFN is equal
      to the Linux PFN (Pseudo-physical Frame Number).

      The current implementation may return an MFN if the caller is passing a
      PFN associated to a mapped foreign grant. In pratice, I haven't seen
      the problem on running guest but we should fix it for the sake of
      correctness.

      Correct the implementation by always returning the pfn passed in 
parameter.

      A follow-up patch will take care to rename pfn_to_mfn to a suitable
      name.

      Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Reviewed-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 32e09870eedfb501a6cb5729d8c23f44f8a7cbdd
  Author: Julien Grall <julien.grall@xxxxxxxxxx>
  Date:   Fri Aug 7 17:34:35 2015 +0100

      xen: Make clear that swiotlb and biomerge are dealing with DMA address

      The swiotlb is required when programming a DMA address on ARM when a
      device is not protected by an IOMMU.

      In this case, the DMA address should always be equal to the machine 
address.
      For DOM0 memory, Xen ensure it by have an identity mapping between the
      guest address and host address. However, when mapping a foreign grant
      reference, the 1:1 model doesn't work.

      For ARM guest, most of the callers of pfn_to_mfn expects to get a GFN
      (Guest Frame Number), i.e a PFN (Page Frame Number) from the Linux point
      of view given that all ARM guest are auto-translated.

      Even though the name pfn_to_mfn is misleading, we need to ensure that
      those caller get a GFN and not by mistake a MFN. In pratical, I haven't
      seen error related to this but we should fix it for the sake of
      correctness.

      In order to fix the implementation of pfn_to_mfn on ARM in a follow-up
      patch, we have to introduce new helpers to return the DMA from a PFN and
      the invert.

      On x86, the new helpers will be an alias of pfn_to_mfn and mfn_to_pfn.

      The helpers will be used in swiotlb and xen_biovec_phys_mergeable.

      This is necessary in the latter because we have to ensure that the
      biovec code will not try to merge a biovec using foreign page and
      another using Linux memory.

      Lastly, the helper mfn_to_local_pfn has been renamed to bfn_to_local_pfn
      given that the only usage was in swiotlb.

      Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Reviewed-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 6dc0dcde406bb0e40ad6a6f45f44534d3a094205
  Author: Helge Deller <deller@xxxxxx>
  Date:   Tue Sep 8 17:50:03 2015 +0200

      parisc: Use platform_device_register_simple("rtc-generic")

      Signed-off-by: Helge Deller <deller@xxxxxx>

  commit 72581cecee411be2b2c00226c98e0c20aab337a2
  Author: Helge Deller <deller@xxxxxx>
  Date:   Tue Sep 8 17:49:31 2015 +0200

      parisc: Drop CONFIG_SMP around update_cr16_clocksource()

      No need to use CONFIG_SMP around update_cr16_clocksource(). It checks for
      num_online_cpus() beeing greater than 1, which is always 1 in UP builds.

      Signed-off-by: Helge Deller <deller@xxxxxx>

  commit 626d7508664c4bc8e67f496da4387ecd0c410b8c
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Sep 4 14:05:51 2015 +0200

      xen: switch extra memory accounting to use pfns

      Instead of using physical addresses for accounting of extra memory
      areas available for ballooning switch to pfns as this is much less
      error prone regarding partial pages.

      Reported-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
      Tested-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit cb9e444b5aaa900bb4310da411315b6947c53e37
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Sep 4 14:18:08 2015 +0200

      xen: limit memory to architectural maximum

      When a pv-domain (including dom0) is started it tries to size it's
      p2m list according to the maximum possible memory amount it ever can
      achieve. Limit the initial maximum memory size to the architectural
      limit of the hardware in order to avoid overflows during remapping
      of memory.

      This problem will occur when dom0 is started with an initial memory
      size being a multiple of 1GB, but without specifying it's maximum
      memory size. The kernel must be configured without
      CONFIG_XEN_BALLOON_MEMORY_HOTPLUG for the problem to happen.

      Reported-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
      Tested-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit ab24507cfae8d916814bb6c16f66e453184a29a5
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Wed Aug 19 18:53:11 2015 +0200

      xen: avoid another early crash of memory limited dom0

      Commit b1c9f169047b ("xen: split counting of extra memory pages...")
      introduced an error when dom0 was started with limited memory occurring
      only on some hardware.

      The problem arises in case dom0 is started with initial memory and
      maximum memory being the same. The kernel must be configured without
      CONFIG_XEN_BALLOON_MEMORY_HOTPLUG for the problem to happen. If all
      of this is true and the E820 map of the machine is sparse (some areas
      are not covered) then the machine might crash early in the boot
      process.

      An example E820 map triggering the problem looks like this:

      [    0.000000] e820: BIOS-provided physical RAM map:
      [    0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009d7ff] 
usable
      [    0.000000] BIOS-e820: [mem 0x000000000009d800-0x000000000009ffff] 
reserved
      [    0.000000] BIOS-e820: [mem 0x00000000000e0000-0x00000000000fffff] 
reserved
      [    0.000000] BIOS-e820: [mem 0x0000000000100000-0x00000000cf7fafff] 
usable
      [    0.000000] BIOS-e820: [mem 0x00000000cf7fb000-0x00000000cf95ffff] 
reserved
      [    0.000000] BIOS-e820: [mem 0x00000000cf960000-0x00000000cfb62fff] 
ACPI NVS
      [    0.000000] BIOS-e820: [mem 0x00000000cfb63000-0x00000000cfd14fff] 
usable
      [    0.000000] BIOS-e820: [mem 0x00000000cfd15000-0x00000000cfd61fff] 
ACPI NVS
      [    0.000000] BIOS-e820: [mem 0x00000000cfd62000-0x00000000cfd6cfff] 
ACPI data
      [    0.000000] BIOS-e820: [mem 0x00000000cfd6d000-0x00000000cfd6ffff] 
ACPI NVS
      [    0.000000] BIOS-e820: [mem 0x00000000cfd70000-0x00000000cfd70fff] 
usable
      [    0.000000] BIOS-e820: [mem 0x00000000cfd71000-0x00000000cfea8fff] 
reserved
      [    0.000000] BIOS-e820: [mem 0x00000000cfea9000-0x00000000cfeb9fff] 
ACPI NVS
      [    0.000000] BIOS-e820: [mem 0x00000000cfeba000-0x00000000cfecafff] 
reserved
      [    0.000000] BIOS-e820: [mem 0x00000000cfecb000-0x00000000cfecbfff] 
ACPI NVS
      [    0.000000] BIOS-e820: [mem 0x00000000cfecc000-0x00000000cfedbfff] 
reserved
      [    0.000000] BIOS-e820: [mem 0x00000000cfedc000-0x00000000cfedcfff] 
ACPI NVS
      [    0.000000] BIOS-e820: [mem 0x00000000cfedd000-0x00000000cfeddfff] 
reserved
      [    0.000000] BIOS-e820: [mem 0x00000000cfede000-0x00000000cfee3fff] 
ACPI NVS
      [    0.000000] BIOS-e820: [mem 0x00000000cfee4000-0x00000000cfef6fff] 
reserved
      [    0.000000] BIOS-e820: [mem 0x00000000cfef7000-0x00000000cfefffff] 
usable
      [    0.000000] BIOS-e820: [mem 0x00000000e0000000-0x00000000efffffff] 
reserved
      [    0.000000] BIOS-e820: [mem 0x00000000fec00000-0x00000000fec00fff] 
reserved
      [    0.000000] BIOS-e820: [mem 0x00000000fec10000-0x00000000fec10fff] 
reserved
      [    0.000000] BIOS-e820: [mem 0x00000000fed00000-0x00000000fed00fff] 
reserved
      [    0.000000] BIOS-e820: [mem 0x00000000fed40000-0x00000000fed44fff] 
reserved
      [    0.000000] BIOS-e820: [mem 0x00000000fed61000-0x00000000fed70fff] 
reserved
      [    0.000000] BIOS-e820: [mem 0x00000000fed80000-0x00000000fed8ffff] 
reserved
      [    0.000000] BIOS-e820: [mem 0x00000000ff000000-0x00000000ffffffff] 
reserved
      [    0.000000] BIOS-e820: [mem 0x0000000100001000-0x000000020effffff] 
usable

      In this case the area a0000-dffff isn't present in the map. This will
      confuse the memory setup of the domain when remapping the memory from
      such holes to populated areas.

      To avoid the problem the accounting of to be remapped memory has to
      count such holes in the E820 map as well.

      Reported-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit eafd72e016c69df511b14a98b61e439c58ad9c51
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Wed Aug 19 18:52:34 2015 +0200

      xen: avoid early crash of memory limited dom0

      Commit b1c9f169047b ("xen: split counting of extra memory pages...")
      introduced an error when dom0 was started with limited memory.

      The problem arises in case dom0 is started with initial memory and
      maximum memory being the same and exactly a multiple of 1 GB. The
      kernel must be configured without CONFIG_XEN_BALLOON_MEMORY_HOTPLUG
      for the problem to happen. In this case it will crash very early
      during boot due to the virtual mapped p2m list not being large
      enough to be able to remap any memory:

      (XEN) Freed 304kB init memory.
      mapping kernel into physical memory
      about to get started...
      (XEN) traps.c:459:d0v0 Unhandled invalid opcode fault/trap [#6] on VCPU 0 
[ec=0000]
      (XEN) domain_crash_sync called from entry.S: fault at ffff82d080229a93 
create_bounce_frame+0x12b/0x13a
      (XEN) Domain 0 (vcpu#0) crashed on cpu#0:
      (XEN) ----[ Xen-4.5.2-pre  x86_64  debug=n Not tainted ]----
      (XEN) CPU:    0
      (XEN) RIP:    e033:[<ffffffff81d120cb>]
      (XEN) RFLAGS: 0000000000000206   EM: 1 CONTEXT: pv guest (d0v0)
      (XEN) rax: ffffffff81db2000   rbx: 000000004d000000   rcx: 
0000000000000000
      (XEN) rdx: 000000004d000000   rsi: 0000000000063000   rdi: 
000000004d063000
      (XEN) rbp: ffffffff81c03d78   rsp: ffffffff81c03d28   r8:  
0000000000023000
      (XEN) r9:  00000001040ff000   r10: 0000000000007ff0   r11: 
0000000000000000
      (XEN) r12: 0000000000063000   r13: 000000000004d000   r14: 
0000000000000063
      (XEN) r15: 0000000000000063   cr0: 0000000080050033   cr4: 
00000000000006f0
      (XEN) cr3: 0000000105c0f000   cr2: ffffc90000268000
      (XEN) ds: 0000   es: 0000   fs: 0000   gs: 0000   ss: e02b   cs: e033
      (XEN) Guest stack trace from rsp=ffffffff81c03d28:
      (XEN)   0000000000000000 0000000000000000 ffffffff81d120cb 
000000010000e030
      (XEN)   0000000000010006 ffffffff81c03d68 000000000000e02b 
ffffffffffffffff
      (XEN)   0000000000000063 000000000004d063 ffffffff81c03de8 
ffffffff81d130a7
      (XEN)   ffffffff81c03de8 000000000004d000 00000001040ff000 
0000000000105db1
      (XEN)   00000001040ff001 000000000004d062 ffff8800092d6ff8 
0000000002027000
      (XEN)   ffff8800094d8340 ffff8800092d6ff8 00003ffffffff000 
ffff8800092d7ff8
      (XEN)   ffffffff81c03e48 ffffffff81d13c43 ffff8800094d8000 
ffff8800094d9000
      (XEN)   0000000000000000 ffff8800092d6000 00000000092d6000 
000000004cfbf000
      (XEN)   00000000092d6000 00000000052d5442 0000000000000000 
0000000000000000
      (XEN)   ffffffff81c03ed8 ffffffff81d185c1 0000000000000000 
0000000000000000
      (XEN)   ffffffff81c03e78 ffffffff810f8ca4 ffffffff81c03ed8 
ffffffff8171a15d
      (XEN)   0000000000000010 ffffffff81c03ee8 0000000000000000 
0000000000000000
      (XEN)   ffffffff81f0e402 ffffffffffffffff ffffffff81dae900 
0000000000000000
      (XEN)   0000000000000000 0000000000000000 ffffffff81c03f28 
ffffffff81d0cf0f
      (XEN)   0000000000000000 0000000000000000 0000000000000000 
ffffffff81db82e0
      (XEN)   0000000000000000 0000000000000000 0000000000000000 
0000000000000000
      (XEN)   ffffffff81c03f38 ffffffff81d0c603 ffffffff81c03ff8 
ffffffff81d11c86
      (XEN)   0300000100000032 0000000000000005 0000000000000020 
0000000000000000
      (XEN)   0000000000000000 0000000000000000 0000000000000000 
0000000000000000
      (XEN)   0000000000000000 0000000000000000 0000000000000000 
0000000000000000
      (XEN) Domain 0 crashed: rebooting machine in 5 seconds.

      This can be avoided by allocating aneough space for the p2m to cover
      the maximum memory of dom0 plus the identity mapped holes required
      for PCI space, BIOS etc.

      Reported-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 1b59ddfcf1678de38a1f8ca9fb8ea5eebeff1843
  Author: John David Anglin <dave.anglin@xxxxxxxx>
  Date:   Mon Sep 7 20:13:28 2015 -0400

      parisc: Use double word condition in 64bit CAS operation

      The attached change fixes the condition used in the "sub" instruction.
      A double word comparison is needed.  This fixes the 64-bit LWS CAS
      operation on 64-bit kernels.

      I can now enable 64-bit atomic support in GCC.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: John David Anglin <dave.anglin>
      Signed-off-by: Helge Deller <deller@xxxxxx>

  commit b1b4e435e4ef7de77f07bf2a42c8380b960c2d44
  Author: Helge Deller <deller@xxxxxx>
  Date:   Thu Sep 3 22:45:21 2015 +0200

      parisc: Filter out spurious interrupts in PA-RISC irq handler

      When detecting a serial port on newer PA-RISC machines (with iosapic) we 
have a
      long way to go to find the right IRQ line, registering it, then 
registering the
      serial port and the irq handler for the serial port. During this phase 
spurious
      interrupts for the serial port may happen which then crashes the kernel 
because
      the action handler might not have been set up yet.

      So, basically it's a race condition between the serial port hardware and 
the
      CPU which sets up the necessary fields in the irq sructs. The main reason 
for
      this race is, that we unmask the serial port irqs too early without 
having set
      up everything properly before (which isn't easily possible because we 
need the
      IRQ number to register the serial ports).

      This patch is a work-around for this problem. It adds checks to the CPU 
irq
      handler to verify if the IRQ action field has been initialized already. 
If not,
      we just skip this interrupt (which isn't critical for a serial port at 
bootup).
      The real fix would probably involve rewriting all PA-RISC specific IRQ 
code
      (for CPU, IOSAPIC, GSC and EISA) to use IRQ domains with proper parenting 
of
      the irq chips and proper irq enabling along this line.

      This bug has been in the PA-RISC port since the beginning, but the crashes
      happened very rarely with currently used hardware.  But on the latest 
machine
      which I bought (a C8000 workstation), which uses the fastest CPUs (4 x 
PA8900,
      1GHz) and which has the largest possible L1 cache size (64MB each), the 
kernel
      crashed at every boot because of this race. So, without this patch the 
machine
      would currently be unuseable.

      For the record, here is the flow logic:
      1. serial_init_chip() in 8250_gsc.c calls iosapic_serial_irq().
      2. iosapic_serial_irq() calls txn_alloc_irq() to find the irq.
      3. iosapic_serial_irq() calls cpu_claim_irq() to register the CPU irq
      4. cpu_claim_irq() unmasks the CPU irq (which it shouldn't!)
      5. serial_init_chip() then registers the 8250 port.
      Problems:
      - In step 4 the CPU irq shouldn't have been registered yet, but after 
step 5
      - If serial irq happens between 4 and 5 have finished, the kernel will 
crash

      Signed-off-by: Helge Deller <deller@xxxxxx>

  commit 699817c3df46eb209044d8c9eb20c6ff6c67c81d
  Author: Helge Deller <deller@xxxxxx>
  Date:   Wed Sep 2 18:18:48 2015 +0200

      parisc: Additionally check for in_atomic() in page fault handler

      Craig Estey noticed that we didn't checked for in_atomic() in our page 
fault
      handler like other architectures. This commit adds this check by using
      faulthandler_disabled() which includes a check for pagefault_disabled() 
and
      in_atomic().

      Reported-by: Craig Estey <cae370@xxxxxxxxx>
      Signed-off-by: Helge Deller <deller@xxxxxx>

  commit e02a653e15d8d32e9e768fd99a3271aafe5c5d77
  Author: Helge Deller <deller@xxxxxx>
  Date:   Wed Sep 2 18:17:29 2015 +0200

      PCI,parisc: Enable 64-bit bus addresses on PA-RISC

      Commit 3a9ad0b ("PCI: Add pci_bus_addr_t") unconditionally introduced 
usage of
      64-bit PCI bus addresses on all 64-bit platforms which broke PA-RISC.

      It turned out that due to enabling the 64-bit addresses, the PCI logic 
decided
      to use the GMMIO instead of the LMMIO region. This commit simply disables
      registering the GMMIO and thus we fall back to use the LMMIO region as 
before.

      Reverts commit 45ea2a5fed6dacb9bb0558d8b21eacc1c45d5bb4
      ("PCI: Don't use 64-bit bus addresses on PA-RISC")

      To: linux-parisc@xxxxxxxxxxxxxxx
      Cc: linux-pci@xxxxxxxxxxxxxxx
      Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: Meelis Roos <mroos@xxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx  # v3.19+
      Signed-off-by: Helge Deller <deller@xxxxxx>

  commit 38d9029a652cb2925a97a8484f6e8f2c85fd55bb
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Fri Jul 31 19:34:46 2015 -0700

      parisc: Define ioremap_uc and ioremap_wc

      Commit 3cc2dac5be3f ("drivers/video/fbdev/atyfb: Replace MTRR UC hole
      with strong UC") introduces calls to ioremap_wc and ioremap_uc. This
      causes build failures with parisc:allmodconfig. Map the missing
      functions to ioremap_nocache.

      Fixes: 3cc2dac5be3f ("drivers/video/fbdev/atyfb:
        Replace MTRR UC hole with strong UC")
      Cc: Luis R. Rodriguez <mcgrof@xxxxxxxx>
      Cc: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Helge Deller <deller@xxxxxx>

  commit e85376cbd23299e4d40bace0cb5ab867b270fdbd
  Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 13:13:31 2015 +0200

      drm/i915: Fix broken mst get_hw_state.

      connector->encoder is initialized as NULL. Fix this by setting it in
      during pre enable. MST connectors are not read out during initial hw
      readout, and have no fixed encoder mappings. So it's harmless to
      return false when the connector has never been assigned to an encoder.

      Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
      Reviewed-by: Ander Conselvan de Oliveira <conselvan2@xxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 997e120843e82609c8d99a9d5714e6cf91e14cbe
  Author: Denis V. Lunev <den@xxxxxxxxxx>
  Date:   Thu Aug 20 00:49:49 2015 +0300

      virtio_balloon: do not change memory amount visible via /proc/meminfo

      Balloon device is frequently used as a mean of cooperative memory control
      in between guest and host to manage memory overcommitment. This is the
      typical case for any hosting workload when KVM guest is provided for
      end-user.

      Though there is a problem in this setup. The end-user and hosting provider
      have signed SLA agreement in which some amount of memory is guaranted for
      the guest. The good thing is that this memory will be given to the guest
      when the guest will really need it (f.e. with OOM in guest and with
      VIRTIO_BALLOON_F_DEFLATE_ON_OOM configuration flag set). The bad thing
      is that end-user does not know this.

      Balloon by default reduce the amount of memory exposed to the end-user
      each time when the page is stolen from guest or returned back by using
      adjust_managed_page_count and thus /proc/meminfo shows reduced amount
      of memory.

      Fortunately the solution is simple, we should just avoid to call
      adjust_managed_page_count with VIRTIO_BALLOON_F_DEFLATE_ON_OOM set.

      Signed-off-by: Denis V. Lunev <den@xxxxxxxxxx>
      CC: Michael S. Tsirkin <mst@xxxxxxxxxx>
      Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>

  commit b4d34037329f46ed818d3b0a6e1e23b9c8721f79
  Author: Denis V. Lunev <den@xxxxxxxxxx>
  Date:   Thu Aug 20 00:49:48 2015 +0300

      virtio_ballon: change stub of release_pages_by_pfn

      and rename it to release_pages_balloon. The function originally takes
      arrays of pfns and now it takes pointer to struct virtio_ballon.
      This change is necessary to conditionally call adjust_managed_page_count
      in the next patch.

      Signed-off-by: Denis V. Lunev <den@xxxxxxxxxx>
      CC: Michael S. Tsirkin <mst@xxxxxxxxxx>
      Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>

  commit 5fa3142da14b162f30e4781ff17e1926c47f28fb
  Author: Fam Zheng <famz@xxxxxxxxxx>
  Date:   Sun Sep 6 17:05:42 2015 +0800

      virtio-blk: Allow extended partitions

      This will allow up to DISK_MAX_PARTS (256) partitions, with for example
      GPT in the guest. Otherwise, the partition scan code will only discover
      the first 15 partitions.

      Signed-off-by: Fam Zheng <famz@xxxxxxxxxx>
      Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>

  commit 38c4ab8e48ab153dee461e10e81256720b70a0b3
  Author: Graeme Gregory <graeme.gregory@xxxxxxxxxx>
  Date:   Tue Jul 28 10:44:02 2015 +0100

      virtio_mmio: add ACPI probing

      Added the match table and pointers for ACPI probing to the driver.

      This uses the same identifier for virt devices as being used for qemu
      ARM64 ACPI support.

      
http://git.linaro.org/people/shannon.zhao/qemu.git/commit/d0bf1955a3ecbab4b51d46f8c5dda02b7e14a17e

      Signed-off-by: Graeme Gregory <graeme.gregory@xxxxxxxxxx>
      Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>

  commit 53eab6fd2777dc7cb338519827e23f8bf892903e
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Fri Aug 21 15:53:55 2015 -0700

      virtio-blk: use VIRTIO_BLK_F_WCE and VIRTIO_BLK_F_CONFIG_WCE in virtio1

      VIRTIO_BLK_F_CONFIG_WCE is important in order to achieve good performance
      (up to 2x, though more realistically +30-40%) in latency-bound workloads.
      However, it was removed by mistake together with VIRTIO_BLK_F_FLUSH.

      It will be restored in the next revision of the virtio 1.0 standard, so
      do the same in Linux.

      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>

  commit 08441d462ebdc64df79b392f877e26522616bad5
  Author: Chee Nouk Phoon <cnphoon@xxxxxxxxxx>
  Date:   Tue Sep 8 18:08:56 2015 +0800

      nios2: add Max10 defconfig

      Max10 is a FPGA device. This patch adds defconfig based on Max10 hardware
      reference design. Design is intended to run on Max10 development kit.

      Signed-off-by: Chee Nouk Phoon <cnphoon@xxxxxxxxxx>
      Signed-off-by: Ley Foon Tan <lftan@xxxxxxxxxx>

  commit 61c610ec61bb334ba97cddaf352c95b9371d2a23
  Author: Chee Nouk Phoon <cnphoon@xxxxxxxxxx>
  Date:   Tue Sep 8 18:07:44 2015 +0800

      nios2: Add Max10 device tree

      Max10 is a FPGA device. This patch adds Nios2 support for Max10.
      This device tree is based on Max10 hardware reference design.

      Signed-off-by: Chee Nouk Phoon <cnphoon@xxxxxxxxxx>
      Signed-off-by: Ley Foon Tan <lftan@xxxxxxxxxx>

  commit ba60c41ae392b473a1897faa0b8739fcb8759d69
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Wed Sep 2 12:33:53 2015 +0530

      kvm: irqchip: fix memory leak

      We were taking the exit path after checking ue->flags and return value
      of setup_routing_entry(), but 'e' was not freed incase of a failure.

      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 3dfe6a507353f3253c8136734d94bfdb459fa04d
  Author: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
  Date:   Tue Sep 8 11:14:13 2015 +0200

      kvm: move new trace event outside #ifdef CONFIG_KVM_ASYNC_PF

      Fixes compilation with ppc64_defconfig.

      Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      Signed-off-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit edcd591c77a48da753456f92daf8bb50fe9bac93
  Author: Jonathan Corbet <corbet@xxxxxxx>
  Date:   Mon Sep 7 13:18:03 2015 -0600

      locking/static_keys: Fix a silly typo

      Commit:

        412758cb2670 ("jump label, locking/static_keys: Update docs")

      introduced a typo that might as well get fixed.

      Signed-off-by: Jonathan Corbet <corbet@xxxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Jason Baron <jbaron@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: http://lkml.kernel.org/r/20150907131803.54c027e1@xxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit daebaabb5cfbe4a6f09ca0e0f8b7673efc704960
  Author: Bharata B Rao <bharata@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Sep 7 15:52:40 2015 +0530

      powerpc/pseries: Release DRC when configure_connector fails

      Commit f32393c943e2 ("powerpc/pseries: Correct cpu affinity for
      dlpar added cpus") moved dlpar_acquire_drc() call to before
      dlpar_configure_connector() call in dlpar_cpu_probe(), but missed
      to release the DRC if dlpar_configure_connector() failed.
      During CPU hotplug, if configure-connector fails for any reason,
      then this will result in subsequent CPU hotplug attempts to fail.

      Release the acquired DRC if dlpar_configure_connector() call fails
      so that the DRC is left in right isolation and allocation state
      for the subsequent hotplug operation to succeed.

      Fixes: f32393c943e2 ("powerpc/pseries: Correct cpu affinity for dlpar 
added cpus")
      Cc: stable@xxxxxxxxxxxxxxx # 4.1+
      Signed-off-by: Bharata B Rao <bharata@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Nathan Fontenot <nfont@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 6af3e3adcac595a683bb55299a907d7d1ad61ab3
  Author: Filipe Manana <fdmanana@xxxxxxxx>
  Date:   Mon Sep 7 10:41:12 2015 +0100

      Btrfs: don't initialize a space info as full to prevent ENOSPC

      Commit 2e6e518335f8 ("Btrfs: fix block group ->space_info null pointer
      dereference") accidently marked a space info as full when initializing
      it with a value of 0 total bytes. This introduces an ENOSPC problem when
      writing file data if we mount a filesystem that has no data block groups
      allocated, because the data space info is initialized with 0 total bytes,
      marked as full, and it never gets its total bytes incremented by a
      (positive) value to unmark it as full (because there are no data block
      groups loaded when the fs is mounted).
      For metadata and system spaces this issue can never happen since we always
      have at least one metadata block group and one system block group (even
      for an empty filesystem).

      So fix this by just not initializing a space info as full, reverting the
      offending part of the commit mentioned above.

      The following test case for fstests reproduces the issue:

        seq=`basename $0`
        seqres=$RESULT_DIR/$seq
        echo "QA output created by $seq"
        tmp=/tmp/$$
        status=1        # failure is the default!
        trap "_cleanup; exit \$status" 0 1 2 3 15

        _cleanup()
        {
            rm -f $tmp.*
        }

        # get standard environment, filters and checks
        . ./common/rc
        . ./common/filter

        # real QA test starts here
        _need_to_be_root
        _supported_fs btrfs
        _supported_os Linux
        _require_scratch

        rm -f $seqres.full

        _scratch_mkfs >>$seqres.full 2>&1

        # Mount our filesystem without space caches enabled so that we do not
        # get any space used from the initial data block group that mkfs creates
        # (space caches used space from data block groups).
        _scratch_mount "-o nospace_cache"

        # Need an fs with at least 2Gb to make sure mkfs.btrfs does not create
        # an fs using mixed block groups (used both for data and metadata). We
        # really need to have dedicated block groups for data to reproduce the
        # issue and mkfs.btrfs defaults to mixed block groups only for small
        # filesystems (up to 1Gb).
        _require_fs_space $SCRATCH_MNT $((2 * 1024 * 1024))

        # Run balance with the purpose of deleting the unused data block group
        # that mkfs created. We could also wait for the background kthread to
        # automatically delete the unused block group, but we do not have a way
        # to make it run and wait for it to complete, so just do a balance
        # instead of some unreliable sleep
        _run_btrfs_util_prog balance start -dusage=0 $SCRATCH_MNT

        # Now unmount the filesystem, mount it again (either with or with space
        # caches enabled, it does not matter to trigger the problem) and attempt
        # to create a file with some data - this used to fail with ENOSPC
        # because there were no data block groups when the filesystem was
        # mounted and the data space info object was marked as full when
        # initialized (because it had 0 total bytes), which prevented the file
        # write path from attempting to allocate a data block group and fail
        # immediately with ENOSPC.
        _scratch_remount
        echo "hello world" > $SCRATCH_MNT/foobar

        echo "Silence is golden"
        status=0
        exit

      Signed-off-by: Filipe Manana <fdmanana@xxxxxxxx>

  commit 63431f789c957cebcffeb51953dfaeb7f1ddd827
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Jul 27 17:58:06 2015 +0530

      cpufreq: Use __func__ to print function's name

      Its better to use __func__ to print functions name instead of writing
      the name in the print statement. This also has the advantage that a
      change in function's name doesn't force us to change the print message
      as well.

      Reviewed-by: Preeti U Murthy <preeti@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 4e4adb2f462889b9eac736dd06d60658beb091b6
  Merge: 77a7880 5445b1f
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Sep 7 14:02:24 2015 -0700

      Merge tag 'nfs-for-4.3-1' of 
git://git.linux-nfs.org/projects/trondmy/linux-nfs

      Pull NFS client updates from Trond Myklebust:
       "Highlights include:

        Stable patches:
         - Fix atomicity of pNFS commit list updates
         - Fix NFSv4 handling of open(O_CREAT|O_EXCL|O_RDONLY)
         - nfs_set_pgio_error sometimes misses errors
         - Fix a thinko in xs_connect()
         - Fix borkage in _same_data_server_addrs_locked()
         - Fix a NULL pointer dereference of migration recovery ops for v4.2
           client
         - Don't let the ctime override attribute barriers.
         - Revert "NFSv4: Remove incorrect check in can_open_delegated()"
         - Ensure flexfiles pNFS driver updates the inode after write finishes
         - flexfiles must not pollute the attribute cache with attrbutes from
           the DS
         - Fix a protocol error in layoutreturn
         - Fix a protocol issue with NFSv4.1 CLOSE stateids

        Bugfixes + cleanups
         - pNFS blocks bugfixes from Christoph
         - Various cleanups from Anna
         - More fixes for delegation corner cases
         - Don't fsync twice for O_SYNC/IS_SYNC files
         - Fix pNFS and flexfiles layoutstats bugs
         - pnfs/flexfiles: avoid duplicate tracking of mirror data
         - pnfs: Fix layoutget/layoutreturn/return-on-close serialisation
           issues
         - pnfs/flexfiles: error handling retries a layoutget before fallback
           to MDS

        Features:
         - Full support for the OPEN NFS4_CREATE_EXCLUSIVE4_1 mode from
           Kinglong
         - More RDMA client transport improvements from Chuck
         - Removal of the deprecated ib_reg_phys_mr() and ib_rereg_phys_mr()
           verbs from the SUNRPC, Lustre and core infiniband tree.
         - Optimise away the close-to-open getattr if there is no cached data"

      * tag 'nfs-for-4.3-1' of 
git://git.linux-nfs.org/projects/trondmy/linux-nfs: (108 commits)
        NFSv4: Respect the server imposed limit on how many changes we may cache
        NFSv4: Express delegation limit in units of pages
        Revert "NFS: Make close(2) asynchronous when closing NFS O_DIRECT files"
        NFS: Optimise away the close-to-open getattr if there is no cached data
        NFSv4.1/flexfiles: Clean up 
ff_layout_write_done_cb/ff_layout_commit_done_cb
        NFSv4.1/flexfiles: Mark the layout for return in 
ff_layout_io_track_ds_error()
        nfs: Remove unneeded checking of the return value from scnprintf
        nfs: Fix truncated client owner id without proto type
        NFSv4.1/flexfiles: Mark layout for return if the mirrors are invalid
        NFSv4.1/flexfiles: RW layouts are valid only if all mirrors are valid
        NFSv4.1/flexfiles: Fix incorrect usage of 
pnfs_generic_mark_devid_invalid()
        NFSv4.1/flexfiles: Fix freeing of mirrors
        NFSv4.1/pNFS: Don't request a minimal read layout beyond the end of file
        NFSv4.1/pnfs: Handle LAYOUTGET return values correctly
        NFSv4.1/pnfs: Don't ask for a read layout for an empty file.
        NFSv4.1: Fix a protocol issue with CLOSE stateids
        NFSv4.1/flexfiles: Don't mark the entire deviceid as bad for file errors
        SUNRPC: Prevent SYN+SYNACK+RST storms
        SUNRPC: xs_reset_transport must mark the connection as disconnected
        NFSv4.1/pnfs: Ensure layoutreturn reserves space for the opaque payload
        ...

  commit 77a78806c7df8d414c33031a1ca5121876910c4f
  Merge: 7d9071a 5d54b8c
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Sep 7 13:28:32 2015 -0700

      Merge tag 'xfs-for-linus-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs

      Pull xfs updates from Dave Chinner:
       "There isn't a whole lot to this update - it's mostly bug fixes and
        they are spread pretty much all over XFS.  There are some corruption
        fixes, some fixes for log recovery, some fixes that prevent unount
        from hanging, a lockdep annotation rework for inode locking to prevent
        false positives and the usual random bunch of cleanups and minor
        improvements.

        Deatils:

         - large rework of EFI/EFD lifecycle handling to fix log recovery
           corruption issues, crashes and unmount hangs

         - separate metadata UUID on disk to enable changing boot label UUID
           for v5 filesystems

         - fixes for gcc miscompilation on certain platforms and optimisation
           levels

         - remote attribute allocation and recovery corruption fixes

         - inode lockdep annotation rework to fix bugs with too many
           subclasses

         - directory inode locking changes to prevent lockdep false positives

         - a handful of minor corruption fixes

         - various other small cleanups and bug fixes"

      * tag 'xfs-for-linus-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs: (42 commits)
        xfs: fix error gotos in xfs_setattr_nonsize
        xfs: add mssing inode cache attempts counter increment
        xfs: return errors from partial I/O failures to files
        libxfs: bad magic number should set da block buffer error
        xfs: fix non-debug build warnings
        xfs: collapse allocsize and biosize mount option handling
        xfs: Fix file type directory corruption for btree directories
        xfs: lockdep annotations throw warnings on non-debug builds
        xfs: Fix uninitialized return value in xfs_alloc_fix_freelist()
        xfs: inode lockdep annotations broke non-lockdep build
        xfs: flush entire file on dio read/write to cached file
        xfs: Fix xfs_attr_leafblock definition
        libxfs: readahead of dir3 data blocks should use the read verifier
        xfs: stop holding ILOCK over filldir callbacks
        xfs: clean up inode lockdep annotations
        xfs: swap leaf buffer into path struct atomically during path shift
        xfs: relocate sparse inode mount warning
        xfs: dquots should be stamped with sb_meta_uuid
        xfs: log recovery needs to validate against sb_meta_uuid
        xfs: growfs not aware of sb_meta_uuid
        ...

  commit d075a88e515278b3e2d5ec39e80e6fd3c6e48841
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Thu Sep 3 12:15:21 2015 +0530

      cpufreq: staticize cpufreq_cpu_get_raw()

      cpufreq_cpu_get_raw() isn't used by any external users, staticize it.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 9a07826f99034202dad589285a47132685d9538b
  Author: Allen Hubbe <Allen.Hubbe@xxxxxxx>
  Date:   Mon Aug 31 09:31:00 2015 -0400

      NTB: Fix range check on memory window index

      The range check must exclude the upper bound.

      Signed-off-by: Allen Hubbe <Allen.Hubbe@xxxxxxx>
      Signed-off-by: Jon Mason <jdmason@xxxxxxxx>

  commit 2aa2a77a489deda473c99a4c15074d092718912c
  Author: Allen Hubbe <Allen.Hubbe@xxxxxxx>
  Date:   Mon Aug 31 09:30:59 2015 -0400

      NTB: Improve index handling in B2B MW workaround

      Check that b2b_mw_idx is in range of the number of memory windows when
      initializing the device.  The workaround is considered to be in effect
      only if the device b2b_idx is exactly UINT_MAX, instead of any index
      past the last memory window.

      Only print B2B MW workaround information in debugfs if the workaround is
      in effect.

      Signed-off-by: Allen Hubbe <Allen.Hubbe@xxxxxxx>
      Signed-off-by: Jon Mason <jdmason@xxxxxxxx>

  commit 86663c91866ae85c219f1a80ef2c9460b7ca5cd8
  Author: Allen Hubbe <Allen.Hubbe@xxxxxxx>
  Date:   Wed Jul 15 12:43:21 2015 -0400

      NTB: Fix documentation for ntb_peer_db_clear.

      The documentation should say "peer" not "local" when referring to the
      peer doorbell register.

      Reported-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Signed-off-by: Allen Hubbe <Allen.Hubbe@xxxxxxx>
      Signed-off-by: Jon Mason <jdmason@xxxxxxxx>

  commit a7c23237481782fbea3c2230e362b72863e144b0
  Author: Allen Hubbe <Allen.Hubbe@xxxxxxx>
  Date:   Wed Jul 15 04:15:28 2015 -0400

      NTB: Fix documentation for ntb_link_is_up

      There was a copy and paste error in the documentation for
      ntb_link_is_up.  The long description was mistakenly copied from
      ntb_link_set_trans.

      This adds the appropriate long description for ntb_link_is_up.

      Reported-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Signed-off-by: Allen Hubbe <Allen.Hubbe@xxxxxxx>
      Signed-off-by: Jon Mason <jdmason@xxxxxxxx>

  commit 569410ca756cd3ebb15609cb6828a8393fb6384d
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Mon Jul 13 08:07:22 2015 -0400

      NTB: Use unique DMA channels for TX and RX

      Allocate two DMA channels, one for TX operation and one for RX
      operation, instead of having one DMA channel for everything. This
      provides slightly better performance, and also will make error handling
      cleaner later on.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Signed-off-by: Jon Mason <jdmason@xxxxxxxx>

  commit 905921e74864e80228e7f8cfe75315cd0a8cada8
  Author: Allen Hubbe <Allen.Hubbe@xxxxxxx>
  Date:   Mon Jul 13 08:07:21 2015 -0400

      NTB: Remove dma_sync_wait from ntb_async_rx

      The dma_sync_wait can hurt the performance of workloads mixed with both
      large and small frames.  Large frames will be copied using the dma
      engine.  Small frames will be copied by the cpu.  The dma_sync_wait
      prevents the cpu and dma engine copying in parallel.

      In the period where the cpu is copying, the dma engine is stopped.  The
      dma engine is not doing any useful work to copy large frames during that
      time, and the additional time to restart the dma engine for the next
      large frame.  This will decrease the throughput for the portion of a
      workload with large frames.

      In the period where the dma engine is copying, the cpu is held up
      waiting for dma to complete.  The small frames processing will be
      delayed until the dma is complete.  The RX frames are completed
      in-order, and the processing of small frames takes very little time, so
      dma_sync_wait may have an insignificant impact on the respose time of
      frames.  The more significant impact is to the system, because the delay
      in dma_sync_wait is implemented as busy non-blocking wait.  This can
      prevent the delayed core from doing any useful work, even if it could be
      processing work for other drivers, unrelated to transport RX processing.

      After applying the earlier patch to fix out-of-order RX acknoledgement,
      the dma_sync_wait is no longer necessary.  Remove it, so that cpu memcpy
      will proceed immediately for small frames, in parallel with ongoing dma
      for large frames.  Do not hold up the cpu from doing work while dma is
      in progress.  The prior fix will continue to ensure in-order completion
      of the RX frames to the upper layer, and in-order delivery of the RX
      acknoledgement.

      Signed-off-by: Allen Hubbe <Allen.Hubbe@xxxxxxx>
      Signed-off-by: Jon Mason <jdmason@xxxxxxxx>

  commit d98ef99e378b0d5c42be928d6f2abe08a5f9ce53
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Mon Jul 13 08:07:20 2015 -0400

      NTB: Clean up QP stats info

      Make QP stats info more readable for debugging purposes.  Also add an
      entry to indicate whether DMA is being used.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Signed-off-by: Jon Mason <jdmason@xxxxxxxx>

  commit 315100004fd6d9189b033f3bf9c5eba9eb906705
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Mon Jul 13 08:07:19 2015 -0400

      NTB: Make the transport list in order of discovery

      The list should be added from the bottom and not the top in order to
      ensure the transport is provided in the same order to clients as ntb
      devices are discovered.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Signed-off-by: Jon Mason <jdmason@xxxxxxxx>

  commit 0a5d19d9f046d770776508fdde959d2a42bce9f7
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Mon Jul 13 08:07:18 2015 -0400

      NTB: Add PCI Device IDs for Broadwell Xeon

      Adding PCI Device IDs for B2B (back to back), RP (root port, primary),
      and TB (transparent bridge, secondary) devices.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Signed-off-by: Jon Mason <jdmason@xxxxxxxx>

  commit e74bfeedad08180b968d8613dcde141ffb0720c3
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Mon Jul 13 08:07:17 2015 -0400

      NTB: Add flow control to the ntb_netdev

      Right now if we push the NTB really hard, we start dropping packets due
      to not able to process the packets fast enough. We need to st:qop the
      upper layer from flooding us when that happens.

      A timer is necessary in order to restart the queue once the resource has
      been processed on the receive side. Due to the way NTB is setup, the
      resources on the tx side are tied to the processing of the rx side and
      there's no async way to know when the rx side has released those
      resources.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Signed-off-by: Jon Mason <jdmason@xxxxxxxx>

  commit 5e9fd733fa34b491e7ac41c91aa42ba0a9d8ea10
  Author: Jon Mason <jdmason@xxxxxxxx>
  Date:   Sat Jul 4 14:48:33 2015 -0400

      NTB: Add list to MAINTAINERS

      Add the new NTB mailing list to MAINTAINERS

      Signed-off-by: Jon Mason <jdmason@xxxxxxxx>

  commit 0094dc40a97260b64313b169989952d3aa2013f6
  Author: Ley Foon Tan <lftan@xxxxxxxxxx>
  Date:   Tue Sep 8 01:50:05 2015 +0800

      MAINTAINERS: update nios2 git repo

      Signed-off-by: Ley Foon Tan <lftan@xxxxxxxxxx>

  commit 3fb39c482c39760ab3b5e59f30868c988c25578d
  Author: Bernd Weiberg <bernd.weiberg@xxxxxxxxxxx>
  Date:   Fri Sep 4 16:59:45 2015 +0800

      nios2: remove unused statistic counters

      Removed some statistic counters to improve the performance of the handler.

      Signed-off-by: Bernd Weiberg <bernd.weiberg@xxxxxxxxxxx>
      Signed-off-by: Ley Foon Tan <lftan@xxxxxxxxxx>

  commit db5a7e55468147f28d1a408880564b61c542e4f8
  Author: Bernd Weiberg <bernd.weiberg@xxxxxxxxxxx>
  Date:   Fri Sep 4 17:03:03 2015 +0800

      nios2: fixed variable imm16 to s16

      Fxid variable imm16 to s16 instead of u16, offset might be negative.

      Signed-off-by: Bernd Weiberg <bernd.weiberg@xxxxxxxxxxx>
      Signed-off-by: Ley Foon Tan <lftan@xxxxxxxxxx>

  commit 549a14c14b2f1868b81e5417a33b6d79e6da1d00
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Tue Aug 18 13:59:28 2015 +0800

      nios2/time: Migrate to new 'set-state' interface

      Migrate nios2 driver to the new 'set-state' interface provided by 
clockevents core, the earlier 'set-mode' interface is marked obsolete now.

      This also enables us to implement callbacks for new states of clockevent 
devices, for example: ONESHOT_STOPPED.

      Cc: Ley Foon Tan <lftan@xxxxxxxxxx>
      Cc: Tobias Klauser <tklauser@xxxxxxxxxx>
      Cc: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
      Cc: Dmitry Torokhov <dtor@xxxxxxxxxxxx>
      Cc: nios2-dev@xxxxxxxxxxxxxxxxxxxxxx
      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Acked-by: Ley Foon Tan <lftan@xxxxxxxxxx>

  commit 5445b1fbd123420bffed5e629a420aa2a16bf849
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Sat Sep 5 19:06:58 2015 -0400

      NFSv4: Respect the server imposed limit on how many changes we may cache

      The NFSv4 delegation spec allows the server to tell a client to limit how
      much data it cache after the file is closed. In return, the server
      guarantees enough free space to avoid ENOSPC situations, etc.
      Prior to this patch, we assumed we could always cache aggressively after
      close. Unfortunately, this causes problems with servers that set the
      limit to 0 and therefore do not offer any ENOSPC guarantees.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 7d160a6c462c2c690e074c173b43aad7204049ad
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Sat Sep 5 19:06:57 2015 -0400

      NFSv4: Express delegation limit in units of pages

      Since we're tracking modifications to the page cache on a per-page
      basis, it makes sense to express the limit to how much we may cache
      in units of pages.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 6583d2032d57df9f1c00c753ca58e1a822901bf0
  Author: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
  Date:   Mon Sep 7 19:37:57 2015 +0800

      spi: mediatek: fix spi cs polarity error

      Mediatek spi HW can't set cs inactive(keep cs high) directly.
      Instead, it supplies pause mode to do it indirectly. If driver
      unsets SPI_CMD_PAUSE_MODE in CMD_REG, it also needs to reset
      internal state machine to let cs inactive at once.

      Signed-off-by: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit a077224fd35b2f7fbc93f14cf67074fc792fbac2
  Author: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
  Date:   Thu Sep 3 13:24:40 2015 +0100

      ARM: 8429/1: disable GCC SRA optimization

      While working on the 32-bit ARM port of UEFI, I noticed a strange
      corruption in the kernel log. The following snprintf() statement
      (in drivers/firmware/efi/efi.c:efi_md_typeattr_format())

        snprintf(pos, size, "|%3s|%2s|%2s|%2s|%3s|%2s|%2s|%2s|%2s]",

      was producing the following output in the log:

        |    |   |   |   |    |WB|WT|WC|UC]
        |    |   |   |   |    |WB|WT|WC|UC]
        |    |   |   |   |    |WB|WT|WC|UC]
        |RUN|   |   |   |    |WB|WT|WC|UC]*
        |RUN|   |   |   |    |WB|WT|WC|UC]*
        |    |   |   |   |    |WB|WT|WC|UC]
        |RUN|   |   |   |    |WB|WT|WC|UC]*
        |    |   |   |   |    |WB|WT|WC|UC]
        |RUN|   |   |   |    |   |   |   |UC]
        |RUN|   |   |   |    |   |   |   |UC]

      As it turns out, this is caused by incorrect code being emitted for
      the string() function in lib/vsprintf.c. The following code

        if (!(spec.flags & LEFT)) {
                while (len < spec.field_width--) {
                        if (buf < end)
                                *buf = ' ';
                        ++buf;
                }
        }
        for (i = 0; i < len; ++i) {
                if (buf < end)
                        *buf = *s;
                ++buf; ++s;
        }
        while (len < spec.field_width--) {
                if (buf < end)
                        *buf = ' ';
                ++buf;
        }

      when called with len == 0, triggers an issue in the GCC SRA optimization
      pass (Scalar Replacement of Aggregates), which handles promotion of signed
      struct members incorrectly. This is a known but as yet unresolved issue.
      (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65932). In this particular
      case, it is causing the second while loop to be executed erroneously a
      single time, causing the additional space characters to be printed.

      So disable the optimization by passing -fno-ipa-sra.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Acked-by: Nicolas Pitre <nico@xxxxxxxxxx>
      Signed-off-by: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 7d1647dc4ba0a61fec5381c1abb59dc886b6ef3c
  Author: Andrew Donnellan <andrew.donnellan@xxxxxxxxxxx>
  Date:   Mon Sep 7 10:52:58 2015 +1000

      cxl: abort cxl_pci_enable_device_hook() if PCI channel is offline

      cxl_pci_enable_device_hook() is called when attempting to enable an AFU
      sitting on a vPHB. At present, the state of the underlying CXL card's PCI
      channel is only checked when it calls cxl_afu_check_and_enable() at the
      very end, after it has already set DMA options and initialised a default
      context.

      Check the CXL card's link status before setting DMA options or 
initialising
      a default context. If the link is down, print a warning and return
      immediately.

      Signed-off-by: Andrew Donnellan <andrew.donnellan@xxxxxxxxxxx>
      Acked-by: Ian Munsie <imunsie@xxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit fa14486979b3a47307bcdb10f8b5baa875a5cf68
  Author: Nishanth Aravamudan <nacc@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 11:22:52 2015 -0700

      powerpc/powernv/pci-ioda: fix kdump with non-power-of-2 crashkernel=

      The 32-bit TCE table initialization relies on the DMA window having a
      size equal to a power of 2 (and checks for it explicitly). But
      crashkernel= has no constraint that requires a power-of-2 be specified.
      This causes the kdump kernel to fail to boot as none of the PCI devices
      (including the disk controller) are successfully initialized.

      After this change, the PCI devices successfully set up the 32-bit TCE
      table and kdump succeeds.

      Fixes: aca6913f5551 ("powerpc/powernv/ioda2: Introduce helpers to 
allocate TCE pages")
      Signed-off-by: Nishanth Aravamudan <nacc@xxxxxxxxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # 4.2
      Tested-by: Jan Stancek <jstancek@xxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit bb0054552d080dd929907c5925d4bedc8bf6def7
  Author: Nishanth Aravamudan <nacc@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 08:39:28 2015 -0700

      powerpc/powernv/pci-ioda: fix 32-bit TCE table init in kdump kernel

      When attempting to kdump with the 4.2 kernel, we see for each PCI
      device:

       pci 0003:01     : [PE# 000] Assign DMA32 space
       pci 0003:01     : [PE# 000] Setting up 32-bit TCE table at 0..80000000
       pci 0003:01     : [PE# 000] Failed to create 32-bit TCE table, err -22
       PCI: Domain 0004 has 8 available 32-bit DMA segments
       PCI: 4 PE# for a total weight of 70
       pci 0004:01     : [PE# 002] Assign DMA32 space
       pci 0004:01     : [PE# 002] Setting up 32-bit TCE table at 0..80000000
       pci 0004:01     : [PE# 002] Failed to create 32-bit TCE table, err -22
       pci 0004:0d     : [PE# 005] Assign DMA32 space
       pci 0004:0d     : [PE# 005] Setting up 32-bit TCE table at 0..80000000
       pci 0004:0d     : [PE# 005] Failed to create 32-bit TCE table, err -22
       pci 0004:0e     : [PE# 006] Assign DMA32 space
       pci 0004:0e     : [PE# 006] Setting up 32-bit TCE table at 0..80000000
       pci 0004:0e     : [PE# 006] Failed to create 32-bit TCE table, err -22
       pci 0004:10     : [PE# 008] Assign DMA32 space
       pci 0004:10     : [PE# 008] Setting up 32-bit TCE table at 0..80000000
       pci 0004:10     : [PE# 008] Failed to create 32-bit TCE table, err -22

      and eventually the kdump kernel fails to boot as none of the PCI devices
      (including the disk controller) are successfully initialized.

      The EINVAL response is because the DMA window (the 2GB base window) is
      larger than the kdump kernel's reserved memory (crashkernel=, in this
      case specified to be 1024M). The check in question,

       if ((window_size > memory_hotplug_max()) || !is_power_of_2(window_size))

      is a valid sanity check for pnv_pci_ioda2_table_alloc_pages(), so adjust
      the caller to pass in a smaller window size if our maximum memory value
      is smaller than the DMA window.

      After this change, the PCI devices successfully set up the 32-bit TCE
      table and kdump succeeds.

      The problem was seen on a Firestone machine originally.

      Fixes: aca6913f5551 ("powerpc/powernv/ioda2: Introduce helpers to 
allocate TCE pages")
      Cc: stable@xxxxxxxxxxxxxxx # 4.2
      Signed-off-by: Nishanth Aravamudan <nacc@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Alexey Kardashevskiy <aik@xxxxxxxxx>
      [mpe: Coding style pedantry, use u64, change the indentation]
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 5ee20bc792467d7d612157e0a9962765aa943b08
  Author: Johan Rastén <johan@xxxxxxxx>
  Date:   Sun Sep 6 18:16:13 2015 +0200

      ALSA: usb-audio: Change internal PCM order

      New PCMs will now be added to the end of the chip's PCM list instead of 
to the
      front. This changes the way streams are combined so that the first capture
      stream will now be merged with the first playback stream instead of the 
last.

      This fixes a problem with ASUS U7. Cards with one playback stream and 
cards
      without capture streams should be unaffected by this change.

      Exception added for M-Audio Audiophile USB (tm) since it seems to have a 
fix to
      swap capture stream numbering in alsa-lib conf/cards/USB-audio.conf

      Signed-off-by: Johan Rastén <johan@xxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit e7e98d76777ffba334bbf7a61939c5de48acc5a0
  Author: James Hogan <james.hogan@xxxxxxxxxx>
  Date:   Thu Jul 30 13:31:42 2015 +0100

      Documentation/features/vm: Meta2 is capable of THP

      Change metag Transparent Huge Pages (THP) support from .. to TODO. Meta2
      has variable sized pages, between 4KB and 4MB, specified at the 1st
      level page table level, and already supports hugetlbfs, so supporting
      THP is theoretically possible too.

      Signed-off-by: James Hogan <james.hogan@xxxxxxxxxx>
      Acked-by: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Cc: linux-metag@xxxxxxxxxxxxxxx
      Cc: linux-doc@xxxxxxxxxxxxxxx

  commit 46cdc9be0841b30ba612aec1878cb746faf280a4
  Author: françois romieu <romieu@xxxxxxxxxxxxx>
  Date:   Fri Sep 4 23:05:42 2015 +0200

      cxgb4: fix usage of uninitialized variable

      drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c: In function 
â??init_oneâ??:
      drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c:4579:8: warning: 
â??chipâ?? may be used uninitialized in this function [-Wmaybe-uninitialized]
         chip |= CHELSIO_CHIP_CODE(CHELSIO_T4, pl_rev);
              ^
      drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c:4571:11: note: â??chipâ?? 
was declared here
        int ver, chip;
                 ^

      Fixes: d86bd29e0b31 ("cxgb4/cxgb4vf: read the correct bits of PL Who Am I 
register")
      Signed-off-by: Francois Romieu <romieu@xxxxxxxxxxxxx>
      Cc: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit bd1a05ee98b06c9a20138c45f96ccfddf3163f93
  Author: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 23:22:16 2015 +0300

      fixed_phy: pass 'irq' to fixed_phy_add()

      I've noticed  that fixed_phy_register() ignores its 'irq' parameter 
instead of
      passing it to fixed_phy_add(). Luckily, fixed_phy_register()  seems to  
always
      be  called with PHY_POLL  for 'irq'... :-)

      Fixes: a75951217472 ("net: phy: extend fixed driver with 
fixed_phy_register()")
      Signed-off-by: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
      Acked-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f88f69dd17f150e2abcc7e2d95f895f2546fa381
  Author: Joe Stringer <joestringer@xxxxxxxxxx>
  Date:   Fri Sep 4 13:07:40 2015 -0700

      openvswitch: Remove conntrack Kconfig option.

      There's no particular desire to have conntrack action support in Open
      vSwitch as an independently configurable bit, rather just to ensure
      there is not a hard dependency. This exposed option doesn't accurately
      reflect the conntrack dependency when enabled, so simplify this by
      removing the option. Compile the support if NF_CONNTRACK is enabled.

      Fixes: 7f8a436eaa2c ("openvswitch: Add conntrack action")
      Signed-off-by: Joe Stringer <joestringer@xxxxxxxxxx>
      Acked-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 585e7e1a544c5b13b2a0014c23f3cb6622e8c995
  Author: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 11:22:24 2015 -0400

      net: dsa: mv88e6171: add hardware 802.1Q support

      The Marvell 88E6171 switch is in the 88E6351 family, which supports
      802.1Q, thus add support from the generic mv88e6xxx functions.

      Signed-off-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Andrew Lunn <andrew@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 080fff50a3bd669dbc16261602055a157fe89583
  Merge: e5a5837 ef9be10
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Sun Sep 6 19:49:55 2015 -0700

      Merge tag 'mac80211-for-davem-2015-09-04' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211

      Johannes Berg says:

      ====================
      For the first round of fixes, we have this:
       * fix for the sizeof() pointer type issue
       * a fix for regulatory getting into a restore loop
       * a fix for rfkill global 'all' state, it needs to be stored
         everywhere to apply correctly to new rfkill instances
       * properly refuse CQM RSSI when it cannot actually be used
       * protect HT TDLS traffic properly in non-HT networks
       * don't incorrectly advertise 80 MHz support when not allowed
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e5a5837da756b4826d40636239718eb8f76775fd
  Author: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
  Date:   Fri Sep 4 14:44:12 2015 +0200

      ethernet: synopsys: SYNOPSYS_DWC_ETH_QOS should depend on HAS_DMA

      If NO_DMA=y:

          ERROR: "dma_alloc_coherent" 
[drivers/net/ethernet/synopsys/dwc_eth_qos.ko] undefined!
          ERROR: "dma_free_coherent" 
[drivers/net/ethernet/synopsys/dwc_eth_qos.ko] undefined!
          ERROR: "dma_unmap_single" 
[drivers/net/ethernet/synopsys/dwc_eth_qos.ko] undefined!
          ERROR: "dma_map_page" [drivers/net/ethernet/synopsys/dwc_eth_qos.ko] 
undefined!
          ERROR: "dma_mapping_error" 
[drivers/net/ethernet/synopsys/dwc_eth_qos.ko] undefined!
          ERROR: "dma_map_single" 
[drivers/net/ethernet/synopsys/dwc_eth_qos.ko] undefined!

      Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Acked-by: Lars Persson <larper@xxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0f1b7354e0d65ad528b820a8a46c15d70954f699
  Author: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
  Date:   Fri Sep 4 12:49:32 2015 +0200

      vxlan: Refactor vxlan_udp_encap_recv() to kill compiler warning

      drivers/net/vxlan.c: In function â??vxlan_udp_encap_recvâ??:
      drivers/net/vxlan.c:1226: warning: â??infoâ?? may be used uninitialized 
in this function

      While this warning is a false positive, it can be killed easily by
      getting rid of the pointer intermediary and referring directly to the
      ip_tunnel_info structure.

      Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Reviewed-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 99c79eceb152e2ac7f8a81ff55d4a810f730ec7b
  Author: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
  Date:   Fri Sep 4 12:47:28 2015 +0200

      lan78xx: Fix ladv/radv error handling in lan78xx_link_reset()

      net/usb/lan78xx.c: In function â??lan78xx_link_resetâ??:
      net/usb/lan78xx.c:1107: warning: comparison is always false due to 
limited range of data type
      net/usb/lan78xx.c:1111: warning: comparison is always false due to 
limited range of data type

      Assigning return values that can be negative error codes to "u16"
      variables makes them positive, ignoring the errors.  Hence use "int"
      instead.

      Drop the "unlikely"s (unlikely considered harmful) and propagate the
      actual error values instead of overriding them to -EIO while we're at
      it.

      Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 537b604c8b3aa8b96fe35f87dd085816552e294c
  Author: Michal Hocko <mhocko@xxxxxxxx>
  Date:   Thu Aug 27 20:16:37 2015 +0200

      scsi: fix scsi_error_handler vs. scsi_host_dev_release race

      b9d5c6b7ef57 ("[SCSI] cleanup setting task state in
      scsi_error_handler()") has introduced a race between scsi_error_handler
      and scsi_host_dev_release resulting in the hang when the device goes
      away because scsi_error_handler might miss a wake up:

      CPU0                                      CPU1
      scsi_error_handler                        scsi_host_dev_release
                                                  kthread_stop()
        kthread_should_stop()
          test_bit(KTHREAD_SHOULD_STOP)
                                            set_bit(KTHREAD_SHOULD_STOP)
                                            wake_up_process()
                                            wait_for_completion()

        set_current_state(TASK_INTERRUPTIBLE)
        schedule()

      The most straightforward solution seems to be to invert the ordering of
      the set_current_state and kthread_should_stop.

      The issue has been noticed during reboot test on a 3.0 based kernel but
      the current code seems to be affected in the same way.

      [jejb: additional comment added]
      Cc: <stable@xxxxxxxxxxxxxxx> # 3.6+
      Reported-and-debugged-by: Mike Mayer <Mike.Meyer@xxxxxxxxxxxx>
      Signed-off-by: Michal Hocko <mhocko@xxxxxxxx>
      Reviewed-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 420fa2118c020a005e9f0311c1e0b27414306618
  Author: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
  Date:   Wed Aug 19 11:18:44 2015 +0530

      fcoe: Convert use of __constant_htons to htons

      In little endian cases, the macro htons unfolds to __swab16 which
      provides special case for constants. In big endian cases,
      __constant_htons and htons expand directly to the same expression.
      So, replace __constant_htons with htons with the goal of getting
      rid of the definition of __constant_htons completely.

      The semantic patch that performs this transformation is as follows:

      @@expression x;@@

      - __constant_htons(x)
      + htons(x)

      Signed-off-by: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
      Acked-by: Vasu Dev <vasu.dev@xxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 6229b414b3adb3aac0b54e67d72d6462fc230c0d
  Author: Nagarajkumar Narayanan <nagarajkumar.narayanan@xxxxxxxxxxx>
  Date:   Tue Aug 18 13:27:10 2015 +0530

      mpt2sas: setpci reset kernel oops fix

      mpt2sas: setpci reset on nytro warpdrive card along with sysfs access and
      cli ioctl access resulted in kernel oops

      1. pci_access_mutex lock added to provide synchronization between IOCTL,
         sysfs, PCI resource handling path

      2. gioc_lock spinlock to protect list operations over multiple
      controllers

      >From c53a1cff4c07528b8b9ec7f6716e94950283e8f9 Mon Sep 17 00:00:00 2001
      From: Nagarajkumar Narayanan <nagarajkumar.narayanan@xxxxxxxxxxx>
      Date: Tue, 18 Aug 2015 11:58:13 +0530
      Subject: [PATCH] mpt2sas setpci reset oops fix

      In mpt2sas driver due to lack of synchronization between ioctl,
      BRM status access through sysfs, pci resource removal kernel oops
      happen as ioctl path and BRM status sysfs access path still tries
      to access the removed resources

      Two locks added to provide syncrhonization

      1. pci_access_mutex: Mutex to synchronize ioctl,sysfs show path and
      pci resource handling. PCI resource freeing will lead to free
      vital hardware/memory resource, which might be in use by cli/sysfs
      path functions resulting in Null pointer reference followed by kernel
      crash. To avoid the above race condition we use mutex syncrhonization
      which ensures the syncrhonization between cli/sysfs_show path

      Note: pci_access_mutex is used only if nytro warpdrive cards
      (ioc->is_warpdrive based on device id) are used
      as we could not test this case with other SAS2 HBA cards
      We can remove this check if this behaviour confirmed from other
      cards.

      2. spinlock on list operations over IOCs

      Case: when multiple warpdrive cards(IOCs) are in use
      Each IOC will added to the ioc list stucture on initialization.
      Watchdog threads run at regular intervals to check IOC for any
      fault conditions which will trigger the dead_ioc thread to
      deallocate pci resource, resulting deleting the IOC netry from list,
      this deletion need to protected by spinlock to enusre that
      ioc removal is syncrhonized, if not synchronized it might lead to
      list_del corruption as the ioc list is traversed in cli path

      Signed-off-by: Nagarajkumar Narayanan <nagarajkumar.narayanan@xxxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Acked-by: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 50acde8ed35620fdfad88f4e20a39a1eb0d8d4c9
  Author: Johannes Thumshirn <jthumshirn@xxxxxxx>
  Date:   Mon Aug 17 15:52:32 2015 +0200

      pm80xx: Don't override ts->stat on IO_OPEN_CNX_ERROR_HW_RESOURCE_BUSY

      In case psataPayload->status has a status of 
IO_OPEN_CNX_ERROR_HW_RESOURCE_BUSY
      ts->stat gets set to SAS_OPEN_REJECT but a missing 'break' statement 
causes a
      fallthrough to the default handler of the switch statement overriding 
ts->stat
      to SAS_DEV_NO_RESPONSE.

      Signed-off-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Acked-by: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 612872cabf5be6f95d43d9a88eef38201ae8005d
  Author: Johannes Thumshirn <jthumshirn@xxxxxxx>
  Date:   Mon Aug 17 13:03:02 2015 +0200

      lpfc: Fix possible use-after-free and double free in 
lpfc_mbx_cmpl_rdp_page_a2()

      If the bf_get() call in lpfc_mbx_cmpl_rdp_page_a2() does succeeds, 
execution
      continues normally and mp gets kfree()d.

      If the subsequent call to lpfc_sli_issue_mbox() fails execution jumps to 
the
      error label where lpfc_mbuf_free() is called with mp->virt and mp->phys as
      function arguments. This is the use after free. Following the use after 
free mp
      gets kfree()d again which is a double free.

      Signed-off-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Acked-by: James Smart <james.smart@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 6f3d828f5bd72174c24789aba5d4ed036b60f44b
  Author: Anil Gurumurthy <anil.gurumurthy@xxxxxxxxxx>
  Date:   Thu Aug 13 06:41:52 2015 -0400

      bfa: Fix incorrect de-reference of pointer

      Signed-off-by: Anil Gurumurthy <anil.gurumurthy@xxxxxxxxxx>
      Tested-by: Sudarsana Kalluru <sudarsana.kalluru@xxxxxxxxxx>
      Reviewed-by: Ewan D. Milne <emilne@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit b7f4d6343820af5c2dc3979e91d85e71e638cd3d
  Author: Anil Gurumurthy <anil.gurumurthy@xxxxxxxxxx>
  Date:   Thu Aug 13 06:41:51 2015 -0400

      bfa: Fix indentation

      Signed-off-by: Anil Gurumurthy <anil.gurumurthy@xxxxxxxxxx>
      Tested-by : Sudarasana Kalluru <sudarsana.kalluru@xxxxxxxxxx>
      Reviewed-by: Ewan D. Milne <emilne@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 0c416b54f29151a31999868d59c64ace11589d1b
  Author: Jordan Hargrave <jharg93@xxxxxxxxx>
  Date:   Mon Jul 13 09:27:33 2015 -0500

      scsi_transport_sas: Remove check for SAS expander when querying 
bay/enclosure IDs.

      Dell Server backplanes can report bay/enclosure IDs without an
      expander present.  This patch allows the bay/enclosure IDs to be
      propagaged to sysfs.we

      Signed-off-by: Jordan Hargrave <jordan_hargrave@xxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 2492fc09f0b90cd69cd9788d12c5c79d673adef3
  Author: Tomas Winkler <tomas.winkler@xxxxxxxxx>
  Date:   Tue Jul 28 16:54:26 2015 +0300

      scsi_debug: resp_request: remove unused variable

      Fixes the following warning

      In function â??resp_requestsâ??:
      drivers/scsi//scsi_debug.c:1432:15: warning: variable â??want_dsenseâ?? 
set
      but not used [-Wunused-but-set-variable]
        bool dsense, want_dsense;

      Signed-off-by: Tomas Winkler <tomas.winkler@xxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit f2d3fd29ba6226218533ad3fbba2312ae122663f
  Author: Tomas Winkler <tomas.winkler@xxxxxxxxx>
  Date:   Tue Jul 28 16:54:25 2015 +0300

      scsi_debug: fix REPORT LUNS Well Known LU

      The use case to report 'REPORT LUNS WLUN' described
      in scsi_debug documentation didn't work because:
      scsi_scan_host_selected() checks for:
         lun < shost->max_lun

      To fix this we set:
        max_lun = SCSI_W_LUN_REPORT_LUNS + 1;

      Signed-off-by: Tomas Winkler <tomas.winkler@xxxxxxxxx>
      Acked-by: Douglas Gilbert <dgilbert@xxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 299b6c07ea134d4f9d7cb743194bf9c1941585b2
  Author: Tomas Winkler <tomas.winkler@xxxxxxxxx>
  Date:   Tue Jul 28 16:54:24 2015 +0300

      scsi_debug: schedule_resp fix input variable check

      The function should never be called with cmnd NULL so
      put a fat WARN there.
      Fix also smatch wraning:
      schedule_resp() warn: variable dereferenced before check 'cmnd'

      Signed-off-by: Tomas Winkler <tomas.winkler@xxxxxxxxx>
      Acked-by: Douglas Gilbert <dgilbert@xxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 58a8635d5a1b49c4b87fb48969319e1ce77d3f03
  Author: Tomas Winkler <tomas.winkler@xxxxxxxxx>
  Date:   Tue Jul 28 16:54:23 2015 +0300

      scsi_debug: make dump_sector static

      fixes warning:
      warning: no previous prototype for â??dump_sectorâ??

      Signed-off-by: Tomas Winkler <tomas.winkler@xxxxxxxxx>
      Acked-by: Douglas Gilbert <dgilbert@xxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit de232af6703ff8e283559016c14a3273ea932878
  Author: Tomas Winkler <tomas.winkler@xxxxxxxxx>
  Date:   Tue Jul 28 16:54:22 2015 +0300

      scsi_debug: vfree is null safe so drop the check

      Signed-off-by: Tomas Winkler <tomas.winkler@xxxxxxxxx>
      Acked-by: Douglas Gilbert <dgilbert@xxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 34d55434ba1f39093ea30cb770d70508fdb1edaa
  Author: Tomas Winkler <tomas.winkler@xxxxxxxxx>
  Date:   Tue Jul 28 16:54:21 2015 +0300

      scsi_debug: use SCSI_W_LUN_REPORT_LUNS instead of SAM2_WLUN_REPORT_LUNS;

      use SCSI_W_LUN_REPORT_LUNS from scsi.h instead of localy defined
      SAM2_WLUN_REPORT_LUNS

      Signed-off-by: Tomas Winkler <tomas.winkler@xxxxxxxxx>
      Acked-by: Douglas Gilbert <dgilbert@xxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit c1287970f4847a973830daf4076bc25929f3b2d9
  Author: Tomas Winkler <tomas.winkler@xxxxxxxxx>
  Date:   Tue Jul 28 16:54:20 2015 +0300

      scsi_debug: define pr_fmt() for consistent logging

      Use pr_fmt with both module name and __func__
      Also drop few bare printk leftovers

      The log format should stay pretty much intact

      Signed-off-by: Tomas Winkler <tomas.winkler@xxxxxxxxx>
      Acked-by: Douglas Gilbert <dgilbert@xxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 008549f6e8a1dc4aeea4a8d64184909786b27713
  Author: Calvin Owens <calvinowens@xxxxxx>
  Date:   Thu Aug 13 18:48:10 2015 -0700

      mpt2sas: Refcount fw_events and fix unsafe list usage

      The fw_event_work struct is concurrently referenced at shutdown, so
      add a refcount to protect it, and refactor the code to use it.

      Additionally, refactor _scsih_fw_event_cleanup_queue() such that it
      no longer iterates over the list without holding the lock, since
      _firmware_event_work() concurrently deletes items from the list.

      Signed-off-by: Calvin Owens <calvinowens@xxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Reviewed-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>
      Tested-by: Chaitra Basappa <chaitra.basappa@xxxxxxxxxxxxx>
      Acked-by: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit d224fe0d609734888af63656ddaf3a8352f0a7b5
  Author: Calvin Owens <calvinowens@xxxxxx>
  Date:   Thu Aug 13 18:48:09 2015 -0700

      mpt2sas: Refcount sas_device objects and fix unsafe list usage

      These objects can be referenced concurrently throughout the driver, we
      need a way to make sure threads can't delete them out from under each
      other. This patch adds the refcount, and refactors the code to use it.

      Additionally, we cannot iterate over the sas_device_list without
      holding the lock, or we risk corrupting random memory if items are
      added or deleted as we iterate. This patch refactors _scsih_probe_sas()
      to use the sas_device_list in a safe way.

      Signed-off-by: Calvin Owens <calvinowens@xxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Reviewed-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>
      Tested-by: Chaitra Basappa <chaitra.basappa@xxxxxxxxxxxxx>
      Acked-by: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 8901c18b6cafa51f7985f1031968bbfe9dc47735
  Author: Daniel Drake <drake@xxxxxxxxxxxx>
  Date:   Wed Sep 2 16:10:34 2015 -0600

      asus-nb-wmi: Add wapf=4 quirk for X456UA/X456UF

      These laptops boot with wifi as hard-blocked, with no obvious way to
      enable it. Using a quirk to set wapf=4 solves the problem.

      Signed-off-by: Daniel Drake <drake@xxxxxxxxxxxx>
      Acked-by: Corentin Chary <corentin.chary@xxxxxxxxx>
      Signed-off-by: Darren Hart <dvhart@xxxxxxxxxxxxxxx>

  commit 2cbd78244fb26a06f2b8fb006b32f133451df413
  Author: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
  Date:   Thu Sep 3 22:07:39 2015 +0800

      KVM: trace kvm_halt_poll_ns grow/shrink

      Tracepoint for dynamic halt_pool_ns, fired on every potential change.

      Signed-off-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit aca6ff29c4063a8d467cdee241e6b3bf7dc4a171
  Author: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
  Date:   Thu Sep 3 22:07:38 2015 +0800

      KVM: dynamic halt-polling

      There is a downside of always-poll since poll is still happened for idle
      vCPUs which can waste cpu usage. This patchset add the ability to adjust
      halt_poll_ns dynamically, to grow halt_poll_ns when shot halt is detected,
      and to shrink halt_poll_ns when long halt is detected.

      There are two new kernel parameters for changing the halt_poll_ns:
      halt_poll_ns_grow and halt_poll_ns_shrink.

                              no-poll      always-poll    dynamic-poll
      -----------------------------------------------------------------------
      Idle (nohz) vCPU %c0     0.15%        0.3%            0.2%
      Idle (250HZ) vCPU %c0    1.1%         4.6%~14%        1.2%
      TCP_RR latency           34us         27us            26.7us

      "Idle (X) vCPU %c0" is the percent of time the physical cpu spent in
      c0 over 60 seconds (each vCPU is pinned to a pCPU). (nohz) means the
      guest was tickless. (250HZ) means the guest was ticking at 250HZ.

      The big win is with ticking operating systems. Running the linux guest
      with nohz=off (and HZ=250), we save 3.4%~12.8% CPUs/second and get close
      to no-polling overhead levels by using the dynamic-poll. The savings
      should be even higher for higher frequency ticks.

      Suggested-by: David Matlack <dmatlack@xxxxxxxxxx>
      Signed-off-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      [Simplify the patch. - Paolo]
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 19020f8ab83de9dc5a9c8af1f321a526f38bbc40
  Author: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
  Date:   Thu Sep 3 22:07:37 2015 +0800

      KVM: make halt_poll_ns per-vCPU

      Change halt_poll_ns into per-VCPU variable, seeded from module parameter,
      to allow greater flexibility.

      Signed-off-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit e8dd2d2d641cb2724ee10e76c0ad02e04289c017
  Author: Valdis Kletnieks <Valdis.Kletnieks@xxxxxx>
  Date:   Sat Aug 29 17:49:16 2015 -0400

      Silence compiler warning in arch/x86/kvm/emulate.c

      Compiler warning:

       CC [M]  arch/x86/kvm/emulate.o
      arch/x86/kvm/emulate.c: In function "__do_insn_fetch_bytes":
      arch/x86/kvm/emulate.c:814:9: warning: "linear" may be used uninitialized 
in this function [-Wmaybe-uninitialized]

      GCC is smart enough to realize that the inlined __linearize may return 
before
      setting the value of linear, but not smart enough to realize the same
      X86EMU_CONTINUE blocks actual use of the value.  However, the value of
      'linear' can only be set to one value, so hoisting the one line of code
      upwards makes GCC happy with the code.

      Reported-by: Aruna Hewapathirane <aruna.hewapathirane@xxxxxxxxx>
      Tested-by: Aruna Hewapathirane <aruna.hewapathirane@xxxxxxxxx>
      Signed-off-by: Valdis Kletnieks <valdis.kletnieks@xxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit efbb288afc2f3079fa5e9308f4d9d06a390babdc
  Author: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
  Date:   Sun Sep 6 19:35:41 2015 +0600

      kvm: compile process_smi_save_seg_64() only for x86_64

      The process_smi_save_seg_64() function called only in the
      process_smi_save_state_64() if the CONFIG_X86_64 is set. This
      patch adds #ifdef CONFIG_X86_64 around process_smi_save_seg_64()
      to prevent following warning message:

      arch/x86/kvm/x86.c:5946:13: warning: 
ââ?¬Ë?process_smi_save_seg_64ââ?¬â?¢ defined but not used [-Wunused-function]
       static void process_smi_save_seg_64(struct kvm_vcpu *vcpu, char *buf, 
int n)
                   ^

      Signed-off-by: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 29ecd66019047768080e8eeab4cd6582b28383a2
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Sun Sep 6 16:24:50 2015 +0200

      KVM: x86: avoid uninitialized variable warning

      This does not show up on all compiler versions, so it sneaked into the
      first 4.3 pull request.  The fix is to mimic the logic of the "print
      sptes" loop in the "fill array" loop.  Then leaf and root can be
      both initialized unconditionally.

      Note that "leaf" now points to the first unused element of the array,
      not the last filled element.

      Reported-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 8f384c0177a03640312b9cb3638c998b32243b63
  Author: Sowmini Varadhan <sowmini.varadhan@xxxxxxxxxx>
  Date:   Thu Sep 3 16:24:52 2015 -0400

      RDS: rds_conn_lookup() should factor in the struct net for a match

      Only return a conn if the rds_conn_net(conn) matches the struct
      net passed to rds_conn_lookup().

      Fixes: 467fa15356ac ("RDS-TCP: Support multiple RDS-TCP listen endpoints,
             one per netns.")

      Signed-off-by: Sowmini Varadhan <sowmini.varadhan@xxxxxxxxxx>
      Acked-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 42ea4457aea7aaeddf0c0b06724f297608f5e9d2
  Author: Maciej S. Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 21:38:30 2015 +0200

      net: fec: normalize return value of pm_runtime_get_sync() in MDIO write

      If fec MDIO write method succeeds its return value comes from
      call to pm_runtime_get_sync().
      But pm_runtime_get_sync() can also return 1.

      In case of Micrel KSZ9031 PHY this value will then
      be returned along the call chain of phy_write() ->
      ksz9031_extended_write() -> ksz9031_center_flp_timing() ->
      ksz9031_config_init() -> phy_init_hw() -> phy_attach_direct() ->
      phy_connect_direct().

      Then phy_connect() will cast it into a pointer using ERR_PTR(),
      which then fec_enet_mii_probe() will try to dereference
      resulting in an oops.

      Fix it by normalizing return value of pm_runtime_get_sync()
      to be zero if positive in MDIO write method.

      Fixes: 8fff755e9f8d ("net: fec: Ensure clocks are enabled while using 
mdio bus")
      Signed-off-by: Maciej Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
      Acked-by: Andrew Lunn <andrew@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0890cf6cb6ab1af650025670b1a839671a9a3fcb
  Author: Jiri Pirko <jiri@xxxxxxxxxxxx>
  Date:   Thu Sep 3 14:04:17 2015 +0200

      switchdev: fix return value of switchdev_port_fdb_dump in case of error

      switchdev_port_fdb_dump is used as .ndo_fdb_dump. Its return value is
      idx, so we cannot return errval.

      Fixes: 45d4122ca7cd ("switchdev: add support for fdb add/del/dump via 
switchdev_port_obj ops.")
      Signed-off-by: Jiri Pirko <jiri@xxxxxxxxxxxx>
      Acked-by: Sridhar Samudrala <sridhar.samudrala@xxxxxxxxx>
      Acked-by: Scott Feldman<sfeldma@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b65888796b72b677928527b17eeb8e935b767146
  Author: Sathya Perla <sathya.perla@xxxxxxxxxxxxx>
  Date:   Thu Sep 3 07:41:53 2015 -0400

      be2net: Revert "make the RX_FILTER command asynchronous" commit

      The be_cmd_rx_filter() routine sends a non-embedded cmd to the FW and used
      a pre-allocated dma memory to hold the cmd payload. This worked fine when
      this cmd was synchronous. This cmd was changed to asynchronous mode by the
      commit 8af65c2f4("make the RX_FILTER command asynchronous"). So now when
      there are two quick invocations of this cmd, the 2nd request may end up
      overwriting the first request, causing FW cmd corruption.

      This patch reverts the offending commit and hence fixes the regression.

      Fixes: 8af65c2f4("be2net: make the RX_FILTER command asynchronous")
      Signed-off-by: Sathya Perla <sathya.perla@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 53cfd053e4d82b46dddc5d3522700263016e3156
  Merge: bd516bd 9cf94ea
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Sat Sep 5 17:36:30 2015 -0700

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf

      Conflicts:
        include/net/netfilter/nf_conntrack.h

      The conflict was an overlap between changing the type of the zone
      argument to nf_ct_tmpl_alloc() whilst exporting nf_ct_tmpl_free.

      Pablo Neira Ayuso says:

      ====================
      Netfilter fixes for net

      The following patchset contains Netfilter fixes for net, they are:

      1) Oneliner to restore maps in nf_tables since we support addressing 
registers
         at 32 bits level.

      2) Restore previous default behaviour in bridge netfilter when 
CONFIG_IPV6=n,
         oneliner from Bernhard Thaler.

      3) Out of bound access in ipset hash:net* set types, reported by Dave 
Jones'
         KASan utility, patch from Jozsef Kadlecsik.

      4) Fix ipset compilation with gcc 4.4.7 related to C99 initialization of
         unnamed unions, patch from Elad Raz.

      5) Add a workaround to address inconsistent endianess in the res_id field 
of
         nfnetlink batch messages, reported by Florian Westphal.

      6) Fix error paths of CT/synproxy since the conntrack template was moved 
to use
         kmalloc, patch from Daniel Borkmann.

      All of them look good to me to reach 4.2, I can route this to -stable 
myself
      too, just let me know what you prefer.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7d9071a095023cd1db8fa18fa0d648dc1a5210e0
  Merge: bd77966 397d425
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 5 20:34:28 2015 -0700

      Merge branch 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs

      Pull vfs updates from Al Viro:
       "In this one:

         - d_move fixes (Eric Biederman)

         - UFS fixes (me; locking is mostly sane now, a bunch of bugs in error
           handling ought to be fixed)

         - switch of sb_writers to percpu rwsem (Oleg Nesterov)

         - superblock scalability (Josef Bacik and Dave Chinner)

         - swapon(2) race fix (Hugh Dickins)"

      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: 
(65 commits)
        vfs: Test for and handle paths that are unreachable from their mnt_root
        dcache: Reduce the scope of i_lock in d_splice_alias
        dcache: Handle escaped paths in prepend_path
        mm: fix potential data race in SyS_swapon
        inode: don't softlockup when evicting inodes
        inode: rename i_wb_list to i_io_list
        sync: serialise per-superblock sync operations
        inode: convert inode_sb_list_lock to per-sb
        inode: add hlist_fake to avoid the inode hash lock in evict
        writeback: plug writeback at a high level
        change sb_writers to use percpu_rw_semaphore
        shift percpu_counter_destroy() into destroy_super_work()
        percpu-rwsem: kill CONFIG_PERCPU_RWSEM
        percpu-rwsem: introduce percpu_rwsem_release() and 
percpu_rwsem_acquire()
        percpu-rwsem: introduce percpu_down_read_trylock()
        document rwsem_release() in sb_wait_write()
        fix the broken lockdep logic in __sb_start_write()
        introduce __sb_writers_{acquired,release}() helpers
        ufs_inode_get{frag,block}(): get rid of 'phys' argument
        ufs_getfrag_block(): tidy up a bit
        ...

  commit bd779669945ed9982890da789ad32e3bd0d41f14
  Merge: 9cfcc65 b5ac1fb2
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 5 20:33:10 2015 -0700

      Merge tag 'for-linus-4.3-merge-window-part-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs

      Pull 9p updates from Eric Van Hensbergen:
       "Just a few cleanups for 4.3 merge window for the 9p file system.  I've
        gotten several more over the past week, but this group has been in
        for-next for at least a couple of weeks so I figured I'd push them
        first while I test the rest.

        Most of the ones not in this set are bug-fixes anyways so I could hold
        them for rc1"

      * tag 'for-linus-4.3-merge-window-part-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:
        9p: fix return code of read() when count is 0
        9p: remove unused option Opt_trans

  commit 9cfcc658da9693f65e7224e8329e40ada2f3c699
  Merge: e3a98ac 50ef28a
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 5 18:21:14 2015 -0700

      Merge tag 'media/v4.3-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media

      Pull media updates from Mauro Carvalho Chehab:
       - new DVB frontend drivers: ascot2e, cxd2841er, horus3a, lnbh25
       - new HDMI capture driver: tc358743
       - new driver for NetUP DVB new boards (netup_unidvb)
       - IR support for DVBSky cards (smipcie-ir)
       - Coda driver has gain macroblock tiling support
       - Renesas R-Car gains JPEG codec driver
       - new DVB platform driver for STi boards: c8sectpfe
       - added documentation for the media core kABI to device-drivers DocBook
       - lots of driver fixups, cleanups and improvements

      * tag 'media/v4.3-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (297 commits)
        [media] c8sectpfe: Remove select on undefined LIBELF_32
        [media] i2c: fix platform_no_drv_owner.cocci warnings
        [media] cx231xx: Use wake_up_interruptible() instead of 
wake_up_interruptible_nr()
        [media] tc358743: only queue subdev notifications if devnode is set
        [media] tc358743: add missing Kconfig dependency/select
        [media] c8sectpfe: Use %pad to print 'dma_addr_t'
        [media] DocBook media: Fix typo "the the" in xml files
        [media] tc358743: make reset gpio optional
        [media] tc358743: set direction of reset gpio using devm_gpiod_get
        [media] dvbdev: document most of the functions/data structs
        [media] dvb_frontend.h: document the struct dvb_frontend
        [media] dvb-frontend.h: document struct dtv_frontend_properties
        [media] dvb-frontend.h: document struct dvb_frontend_ops
        [media] dvb: Use DVBFE_ALGO_HW where applicable
        [media] dvb_frontend.h: document struct analog_demod_ops
        [media] dvb_frontend.h: Document struct dvb_tuner_ops
        [media] Docbook: Document struct analog_parameters
        [media] dvb_frontend.h: get rid of dvbfe_modcod
        [media] add documentation for struct dvb_tuner_info
        [media] dvb_frontend: document dvb_frontend_tune_settings
        ...

  commit e3a98ac47698bf1c1e4e6fae72afc9866953fce5
  Merge: 2a013e3 86e488a
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 5 18:11:04 2015 -0700

      Merge branch 'mailbox-for-next' of 
git://git.linaro.org/landing-teams/working/fujitsu/integration

      Pull mailbox updates from Jassi Brar:
       "Mainly we move from jiffy based timer to HRTIMER for finer control
        over polling.  Then a controller reduces its polling period from 10 to
        1ms"

      * 'mailbox-for-next' of 
git://git.linaro.org/landing-teams/working/fujitsu/integration:
        mailbox: arm_mhu: reduce txpoll_period from 10ms to 1 ms
        mailbox: switch to hrtimer for tx_complete polling
        mailbox: Drop owner assignment from platform_driver

  commit 2a013e37ce691a7c072df27b35e9790fc8f5a82f
  Merge: 1744771 e89c6fd
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 5 17:52:22 2015 -0700

      Merge tag 'md/4.3' of git://neil.brown.name/md

      Pull md updates from Neil Brown:

       - an assortment of little fixes, several for minor races only likely to
         be hit during testing

       - further cluster-md-raid1 development, not ready for real use yet.

       - new RAID6 syndrome code for ARM NEON

       - fix a race where a write can return before failure of one device is
         properly recorded in metadata, so an immediate crash might result in
         that write being lost.

      * tag 'md/4.3' of git://neil.brown.name/md: (33 commits)
        md/raid5: ensure device failure recorded before write request returns.
        md/raid5: use bio_list for the list of bios to return.
        md/raid10: ensure device failure recorded before write request returns.
        md/raid1: ensure device failure recorded before write request returns.
        md-cluster: remove inappropriate try_module_get from join()
        md: extend spinlock protection in register_md_cluster_operations
        md-cluster: Read the disk bitmap sb and check if it needs recovery
        md-cluster: only call complete(&cinfo->completion) when node join 
cluster
        md-cluster: add missed lockres_free
        md-cluster: remove the unused sb_lock
        md-cluster: init suspend_list and suspend_lock early in join
        md-cluster: add the error check if failed to get dlm lock
        md-cluster: init completion within lockres_init
        md-cluster: fix deadlock issue on message lock
        md-cluster: transfer the resync ownership to another node
        md-cluster: split recover_slot for future code reuse
        md-cluster: use %pU to print UUIDs
        md: setup safemode_timer before it's being used
        md/raid5: handle possible race as reshape completes.
        md: sync sync_completed has correct value as recovery finishes.
        ...

  commit bd516bd1feeb3890502178a74228ec05271f2b6d
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Thu Sep 3 11:30:30 2015 +0530

      net: wan: sbni: fix device usage count

      dev_get_by_name() will increment the usage count if the matching device
      is found. But we were not decrementing the count if we have got the
      device and the device is non-active.

      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 25b4a44c19c83d98e8c0807a7ede07c1f28eab8b
  Author: Richard Laing <richard.laing@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 13:52:31 2015 +1200

      net/ipv6: Correct PIM6 mrt_lock handling

      In the IPv6 multicast routing code the mrt_lock was not being released
      correctly in the MFC iterator, as a result adding or deleting a MIF would
      cause a hang because the mrt_lock could not be acquired.

      This fix is a copy of the code for the IPv4 case and ensures that the lock
      is released correctly.

      Signed-off-by: Richard Laing <richard.laing@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Cong Wang <cwang@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 17447717a3266965e257d3eae79d89539ce3ec0a
  Merge: 2236597 a457974
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 5 17:26:24 2015 -0700

      Merge tag 'nfsd-4.3' of git://linux-nfs.org/~bfields/linux

      Pull nfsd updates from Bruce Fields:
       "Nothing major, but:

         - Add Jeff Layton as an nfsd co-maintainer: no change to existing
           practice, just an acknowledgement of the status quo.

         - Two patches ("nfsd: ensure that...") for a race overlooked by the
           state locking rewrite, causing a crash noticed by multiple users.

         - Lots of smaller bugfixes all over from Kinglong Mee.

         - From Jeff, some cleanup of server rpc code in preparation for
           possible shift of nfsd threads to workqueues"

      * tag 'nfsd-4.3' of git://linux-nfs.org/~bfields/linux: (52 commits)
        nfsd: deal with DELEGRETURN racing with CB_RECALL
        nfsd: return CLID_INUSE for unexpected SETCLIENTID_CONFIRM case
        nfsd: ensure that delegation stateid hash references are only put once
        nfsd: ensure that the ol stateid hash reference is only put once
        net: sunrpc: fix tracepoint Warning: unknown op '->'
        nfsd: allow more than one laundry job to run at a time
        nfsd: don't WARN/backtrace for invalid container deployment.
        fs: fix fs/locks.c kernel-doc warning
        nfsd: Add Jeff Layton as co-maintainer
        NFSD: Return word2 bitmask if setting security label in OPEN/CREATE
        NFSD: Set the attributes used to store the verifier for EXCLUSIVE4_1
        nfsd: SUPPATTR_EXCLCREAT must be encoded before SECURITY_LABEL.
        nfsd: Fix an FS_LAYOUT_TYPES/LAYOUT_TYPES encode bug
        NFSD: Store parent's stat in a separate value
        nfsd: Fix two typos in comments
        lockd: NLM grace period shouldn't block NFSv4 opens
        nfsd: include linux/nfs4.h in export.h
        sunrpc: Switch to using hash list instead single list
        sunrpc/nfsd: Remove redundant code by exports seq_operations functions
        sunrpc: Store cache_detail in seq_file's private directly
        ...

  commit a394d635193b641f2c86ead5ada5b115d57c51f8
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Sun Sep 6 01:46:54 2015 +0300

      spi: Fix documentation of spi_alloc_master()

      Actually, spi_master_put() after spi_alloc_master() must _not_ be followed
      by kfree(). The memory is already freed with the call to spi_master_put()
      through spi_master_class, which registers a release function. Calling both
      spi_master_put() and kfree() results in often nasty (and delayed) crashes
      elsewhere in the kernel, often in the networking stack.

      This reverts commit eb4af0f5349235df2e4a5057a72fc8962d00308a.

      Link to patch and concerns: https://lkml.org/lkml/2012/9/3/269
      or
      http://lkml.iu.edu/hypermail/linux/kernel/1209.0/00790.html

      Alexey Klimov: This revert becomes valid after
      94c69f765f1b4a658d96905ec59928e3e3e07e6a when spi-imx.c
      has been fixed and there is no need to call kfree() so comment
      for spi_alloc_master() should be fixed.

      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Alexey Klimov <alexey.klimov@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 22365979ab15f8500254cb90037b0b4c17554739
  Merge: 6c0f568 3a9508b
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 5 15:14:43 2015 -0700

      Merge branch 'for-linus-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs

      Pull btrfs updates from Chris Mason:
       "This has Jeff Mahoney's long standing trim patch that fixes corners
        where trims were missing.  Omar has some raid5/6 fixes, especially for
        using scrub and device replace when devices are missing.

        Zhao Lie continues cleaning and fixing things, this series fixes some
        really hard to hit corners in xfstests.  I had to pull it last merge
        window due to some deadlocks, but those are now resolved.

        I added support for Tejun's new blkio controllers.  It seems to work
        well for single devices, we'll expand to multi-device as well"

      * 'for-linus-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (47 commits)
        btrfs: fix compile when block cgroups are not enabled
        Btrfs: fix file read corruption after extent cloning and fsync
        Btrfs: check if previous transaction aborted to avoid fs corruption
        btrfs: use __GFP_NOFAIL in alloc_btrfs_bio
        btrfs: Prevent from early transaction abort
        btrfs: Remove unused arguments in tree-log.c
        btrfs: Remove useless condition in start_log_trans()
        Btrfs: add support for blkio controllers
        Btrfs: remove unused mutex from struct 'btrfs_fs_info'
        Btrfs: fix parity scrub of RAID 5/6 with missing device
        Btrfs: fix device replace of a missing RAID 5/6 device
        Btrfs: add RAID 5/6 BTRFS_RBIO_REBUILD_MISSING operation
        Btrfs: count devices correctly in readahead during RAID 5/6 replace
        Btrfs: remove misleading handling of missing device scrub
        btrfs: fix clone / extent-same deadlocks
        Btrfs: fix defrag to merge tail file extent
        Btrfs: fix warning in backref walking
        btrfs: Add WARN_ON() for double lock in btrfs_tree_lock()
        btrfs: Remove root argument in extent_data_ref_count()
        btrfs: Fix wrong comment of btrfs_alloc_tree_block()
        ...

  commit 6c0f568e84a3cfc775682311d65205462c3f3bc1
  Merge: c821990 559ec2f
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Sep 5 14:27:38 2015 -0700

      Merge branch 'akpm' (patches from Andrew)

      Merge patch-bomb from Andrew Morton:

       - a few misc things

       - Andy's "ambient capabilities"

       - fs/nofity updates

       - the ocfs2 queue

       - kernel/watchdog.c updates and feature work.

       - some of MM.  Includes Andrea's userfaultfd feature.

      [ Hadn't noticed that userfaultfd was 'default y' when applying the
        patches, so that got fixed in this merge instead.  We do _not_ mark
        new features that nobody uses yet 'default y'   - Linus ]

      * emailed patches from Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>: (118 
commits)
        mm/hugetlb.c: make vma_has_reserves() return bool
        mm/madvise.c: make madvise_behaviour_valid() return bool
        mm/memory.c: make tlb_next_batch() return bool
        mm/dmapool.c: change is_page_busy() return from int to bool
        mm: remove struct node_active_region
        mremap: simplify the "overlap" check in mremap_to()
        mremap: don't do uneccesary checks if new_len == old_len
        mremap: don't do mm_populate(new_addr) on failure
        mm: move ->mremap() from file_operations to vm_operations_struct
        mremap: don't leak new_vma if f_op->mremap() fails
        mm/hugetlb.c: make vma_shareable() return bool
        mm: make GUP handle pfn mapping unless FOLL_GET is requested
        mm: fix status code which move_pages() returns for zero page
        mm: memcontrol: bring back the VM_BUG_ON() in mem_cgroup_swapout()
        genalloc: add support of multiple gen_pools per device
        genalloc: add name arg to gen_pool_get() and devm_gen_pool_create()
        mm/memblock: WARN_ON when nid differs from overlap region
        Documentation/features/vm: add feature description and arch support 
status for batched TLB flush after unmap
        mm: defer flush of writable TLB entries
        mm: send one IPI per CPU to TLB flush all entries after unmapping pages
        ...

  commit c82199061009d1561e31e17fca5e47a87cb7ff4c
  Author: Eric Dumazet <edumazet@xxxxxxxxxx>
  Date:   Fri Aug 28 19:42:30 2015 -0700

      task_work: remove fifo ordering guarantee

      In commit f341861fb0b ("task_work: add a scheduling point in
      task_work_run()") I fixed a latency problem adding a cond_resched()
      call.

      Later, commit ac3d0da8f329 added yet another loop to reverse a list,
      bringing back the latency spike :

      I've seen in some cases this loop taking 275 ms, if for example a
      process with 2,000,000 files is killed.

      We could add yet another cond_resched() in the reverse loop, or we
      can simply remove the reversal, as I do not think anything
      would depend on order of task_work_add() submitted works.

      Fixes: ac3d0da8f329 ("task_work: Make task_work_add() lockless")
      Signed-off-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Reported-by: Maciej Żenczykowski <maze@xxxxxxxxxx>
      Acked-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ade9c1a47c811a7ae1c874882ad9178af1ed1098
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Wed Feb 19 13:38:13 2014 -0800

      Input: imx_keypad - remove obsolete comment

      Since commit 81e8f2bc (Input: imx_keypad - add pm suspend and resume
      support) the imx_keypad driver supports power management, so let's remove
      the obsolete comment.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 9a436d524d3533cd15ed5a189d2237ff1e4e5343
  Author: Haibo Chen <haibo.chen@xxxxxxxxxxxxx>
  Date:   Sat Sep 5 11:31:21 2015 -0700

      Input: touchscreen - add imx6ul_tsc driver support

      Freescale i.MX6UL contains a internal touchscreen controller,
      this patch add a driver to support this controller.

      Signed-off-by: Haibo Chen <haibo.chen@xxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 48ead50c1dd8e5cdb7ead067558a834c1e895e6e
  Author: Sanchayan Maity <maitysanchayan@xxxxxxxxx>
  Date:   Sat Sep 5 10:32:09 2015 -0700

      Input: Add touchscreen support for Colibri VF50

      The Colibri Vybrid VF50 module supports 4-wire touchscreens using
      FETs and ADC inputs. This driver uses the IIO consumer interface
      and relies on the vf610_adc driver based on the IIO framework.

      Signed-off-by: Sanchayan Maity <maitysanchayan@xxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit f5d75341fac6033f6afac900da110cc78e06d40d
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Sat Sep 5 10:29:09 2015 -0700

      Input: i8042 - lower log level for "no controller" message

      Nowadays the machines without i8042 controller is popular, and no need
      to print "No controller found" message in the error log level, which
      annoys at booting in quiet mode.  Let's lower it info level.

      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 5f1b2f77646fc0ef2f36fc554f5722a1381d0892
  Author: Mitja Spes <mitja@xxxxxxxxx>
  Date:   Wed Sep 2 10:02:29 2015 +0200

      rtc: abx80x: fix RTC write bit

      Fix RTC write bit as per application manual

      Cc: stable@xxxxxxxxxxxxxxx # 4.1+
      Signed-off-by: Mitja Spes <mitja@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 8a67e93153f03a8d205727c0aeacb5524a414f77
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Fri Sep 4 08:58:05 2015 -0300

      rtc: ab8500: Add a sentinel to ab85xx_rtc_ids[]

      Add a sentinel to ab85xx_rtc_ids[] in order to fix the following error:

      drivers/rtc/rtc-ab8500: struct platform_device_id is 24 bytes.  The last 
of 2 is:
      0x61 0x62 0x38 0x35 0x34 0x30 0x2d 0x72 0x74 0x63 0x00 0x00 0x00 0x00 
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x8c
      FATAL: drivers/rtc/rtc-ab8500: struct platform_device_id is not 
terminated with a NULL entry!

      Reported-by: Andrey Ryabinin <ryabinin.a.a@xxxxxxxxx>
      Reported-by: Olof's autobuilder <build@xxxxxxxxx>
      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit d78908d9717b627a261b1bfe6feb67181e12752e
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Mon Aug 10 09:47:45 2015 -0300

      rtc: ds1374: Remove unused variable

      Remove unused variable 'res' and fix the following build warning:

      drivers/rtc/rtc-ds1374.c:667:6: warning: unused variable 'res' 
[-Wunused-variable]

      Reported-by: Olof's autobuilder <build@xxxxxxxxx>
      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 73798d5c41fdb434ccbeeec76afc8106869a98c3
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 13:52:02 2015 +0200

      rtc: Fix module autoload for OF platform drivers

      These platform drivers have a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Acked-by: Andrew Lunn <andrew@xxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 63074cc3d4b8367aa6d9dc5520b88ca6557d32fa
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 12:34:32 2015 +0200

      rtc: Fix module autoload for rtc-{ab8500,max8997,s5m} drivers

      These platform drivers have a platform device ID table but the module
      alias information is not created so module autoloading will not work.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 399cf0f63f6f24d7a837fbfbc801010cb6e77579
  Author: Keerthy <j-keerthy@xxxxxx>
  Date:   Tue Aug 18 15:11:16 2015 +0530

      rtc: omap: Add external clock enabling support

      Configure the clock source to external clock if available.
      External clock is preferred as it can be ticking during suspend.

      Signed-off-by: Keerthy <j-keerthy@xxxxxx>
      Acked-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 532409aa1ba8b69d5a3dea159d4b1bd9adbd7a46
  Author: Keerthy <j-keerthy@xxxxxx>
  Date:   Tue Aug 18 15:11:15 2015 +0530

      rtc: omap: Add internal clock enabling support

      The rtc can be clocked by an internal 32K clock. Adding the support
      to enable the same.

      Signed-off-by: Keerthy <j-keerthy@xxxxxx>
      Acked-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit fff51e771eafc3b4fa6daf1372fd4a4023bb402b
  Author: Keerthy <j-keerthy@xxxxxx>
  Date:   Tue Aug 18 15:11:14 2015 +0530

      ARM: dts: AM437x: Add the internal and external clock nodes for rtc

      rtc can either be supplied from internal 32k clock or external crystal
      generated 32k clock. Internal clock is SOC specific and the external
      clock is board dependent. Adding the corresponding nodes.

      Signed-off-by: Keerthy <j-keerthy@xxxxxx>
      Acked-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit ff02c0444b83201ff76cc49deccac8cf2bffc7bc
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Fri Aug 21 18:43:41 2015 +0900

      rtc: s5m: fix to update ctrl register

      According to datasheet, the S2MPS13X and S2MPS14X should update write
      buffer via setting WUDR bit to high after ctrl register is written.

      If not, ALARM interrupt of rtc-s5m doesn't happen first time when i use
      tools/testing/selftests/timers/rtctest.c test program and hour format is
      used to 12 hour mode in Odroid-XU3 board.

      One more issue is the RTC doesn't keep time on Odroid-XU3 board when i
      turn on board after power off even if RTC battery is connected. It can
      be solved as setting WUDR & RUDR bits to high at the same time after
      RTC_CTRL register is written. It's same with condition of only writing
      ALARM registers, so this is for only S2MPS14 and we should set WUDR &
      A_UDR bits to high on S2MPS13.

      I can't find any reasonable description about this like fix from
      datasheet, but can find similar codes from rtc driver source of
      hardkernel kernel and vendor kernel.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # v3.16
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Tested-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 11143c19eb57a8aee4335e57b21f2897b9fff294
  Author: Suneel Garapati <suneel.garapati@xxxxxxxxxx>
  Date:   Wed Aug 19 15:23:22 2015 +0530

      rtc: add xilinx zynqmp rtc driver

      Add support for RTC controller found on Xilinx Zynq Ultrascale+ MPSoC
      platform.

      Signed-off-by: Suneel Garapati <suneel.garapati@xxxxxxxxxx>
      Acked-by: Moritz Fischer <moritz.fischer@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 12ece40d9196e01961192fc25cfdaf22392520de
  Author: Suneel Garapati <suneel.garapati@xxxxxxxxxx>
  Date:   Wed Aug 19 15:23:21 2015 +0530

      devicetree: bindings: rtc: add bindings for xilinx zynqmp rtc

      adds file for description on device node bindings for RTC
      found on Xilinx Zynq Ultrascale+ MPSoC.

      Signed-off-by: Suneel Garapati <suneel.garapati@xxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit a038c3aa9f3afe9ab97a75827789859fb4af5767
  Author: Bibek Basu <bbasu@xxxxxxxxxx>
  Date:   Fri Aug 14 20:44:02 2015 +0200

      rtc: as3722: correct month value

      The RTC month value is 1-indexed, but the kernel assumes it is 0-indexed.
      This may result in the RTC not rolling over correctly.

      Signed-off-by: Bibek Basu <bbasu@xxxxxxxxxx>
      Signed-off-by: Felix Janda <felix.janda@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit e66ce07a9692f492580820640b446971dff97a74
  Author: Rob Herring <robh@xxxxxxxxxx>
  Date:   Mon Jun 1 07:53:01 2015 -0500

      ARM: config: Switch PXA27x platforms to use PXA RTC driver

      With the SA1100 and PXA RTC drivers be mutually exclusive and no
      longer sharing hardware, PXA27x/PXA3xx platforms must use the PXA RTC
      driver as the SA1100 platform device is no longer registered.

      This change should be almost transparent to userspace. Former users of
      pxa-rtc should be aware that 2 RTCs will be available on their kernels,
      rtc0 being sa1100-rtc and rtc1 being pxa-rtc. Any userspace relying on
      the fact that rtc0 was pxa-rtc should be fixed.

      As a consequence:
       - the first reboot after the switch will have the wrong time,
       - on dual boot platform where the other OS programs some logic into the
         sa1100 rtc IP, a lack of fix in userspace, ie. a kernel changing
         sa1100-rtc thinking it is pxa-rtc could have dire consequence, such
         as wiping the other OS data partition.

      (Thanks to Robert Jarmik for help on the above commit text.)

      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
      Acked-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Cc: Daniel Mack <daniel@xxxxxxxxxx>
      Cc: Haojian Zhuang <haojian.zhuang@xxxxxxxxx>
      Cc: Sergey Lapin <slapin@xxxxxxxxxxx>
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: Mike Rapoport <mike@xxxxxxxxxxxxxx>
      Cc: Philipp Zabel <philipp.zabel@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 7b758ef4440cd581e8207d762af635c644c85f81
  Author: Rob Herring <robh@xxxxxxxxxx>
  Date:   Tue Feb 3 14:54:01 2015 -0600

      ARM: mmp: remove unused RTC register definitions

      Now that register definitions have been moved to the driver, regs-rtc.h is
      no longer used and can be removed.

      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
      Cc: Eric Miao <eric.y.miao@xxxxxxxxx>
      Cc: Haojian Zhuang <haojian.zhuang@xxxxxxxxx>
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit d6679c48c13ce896a428d392ffe8a62ad6a75b77
  Author: Rob Herring <robh@xxxxxxxxxx>
  Date:   Tue Feb 3 14:46:29 2015 -0600

      ARM: sa1100: remove unused RTC register definitions

      Now that register definitions have been moved to the driver, we can remove
      them from machine specific code.

      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 90d0ae8e9583355725583e9d1ff0ebdc97936f39
  Author: Rob Herring <robh@xxxxxxxxxx>
  Date:   Tue Feb 3 14:44:51 2015 -0600

      rtc: sa1100/pxa: convert to run-time register mapping

      SA1100 and PXA differ only in register offsets which are currently
      hardcoded in a machine specific header. Some arm64 platforms (PXA1928)
      have this RTC block as well (and not the PXA270 variant).

      Convert the driver to use ioremap and set the register offsets 
dynamically.
      Since we are touching all the register accesses, convert them all to
      readl_relaxed/writel_relaxed.

      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
      Acked-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Cc: Alessandro Zummo <a.zummo@xxxxxxxxxxxx>
      Cc: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Cc: rtc-linux@xxxxxxxxxxxxxxxx
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 2c4fabec8790384b91473aa3d0d28d4407168ef9
  Author: Rob Herring <robh@xxxxxxxxxx>
  Date:   Mon Feb 2 17:50:32 2015 -0600

      ARM: pxa: add memory resource to SA1100 RTC device

      The drivers for the SA1100 and PXA RTCs are now mutually exclusive, so
      add the memory resource for the sa1100-rtc device. Since the memory
      resource is already present in the pxa_rtc_resources, that makes
      sa1100_rtc_resources and pxa_rtc_resources equivalent, so use
      pxa_rtc_resources for both devices and remove the duplicate
      sa1100_rtc_resources.

      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
      Cc: Daniel Mack <daniel@xxxxxxxxxx>
      Cc: Haojian Zhuang <haojian.zhuang@xxxxxxxxx>
      Acked-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 3cdf4ad9633e3ca616617e76b46915c02cba426b
  Author: Rob Herring <robh@xxxxxxxxxx>
  Date:   Wed May 13 09:20:04 2015 -0500

      rtc: pxa: convert to use shared sa1100 functions

      Currently, the rtc-sa1100 and rtc-pxa drivers co-exist as rtc-pxa has a
      superset of functionality. Having 2 drivers sharing the same memory
      resource is not allowed by the driver model if resources are properly
      declared. This problem was avoided by not adding memory resources to the
      SA1100 RTC driver, but that prevents clean-up of the SA1100 driver.

      This commit converts the PXA RTC to use the exported SA1100 RTC
      functions. Now the sa1100-rtc and pxa-rtc devices are mutually
      exclusive, so we must remove the sa1100-rtc from pxa27x and pxa3xx.

      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
      Cc: Daniel Mack <daniel@xxxxxxxxxx>
      Cc: Haojian Zhuang <haojian.zhuang@xxxxxxxxx>
      Cc: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: Alessandro Zummo <a.zummo@xxxxxxxxxxxx>
      Cc: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: rtc-linux@xxxxxxxxxxxxxxxx
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 8c0961ba7c9356186a0606a391f08e2ecb491a57
  Author: Rob Herring <robh@xxxxxxxxxx>
  Date:   Tue May 12 16:23:23 2015 -0500

      rtc: sa1100: prepare to share sa1100_rtc_ops

      Factor out the RTC initialization from the platform device specific
      parts in order to share the RTC device ops with other drivers.
      Specifically, it will be shared with rtc-pxa driver.

      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
      Cc: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: Alessandro Zummo <a.zummo@xxxxxxxxxxxx>
      Cc: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Cc: rtc-linux@xxxxxxxxxxxxxxxx
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit dc2280ebf45bfa4fbc4b1588a6642aa33454a9b8
  Author: Wang Dongsheng <dongsheng.wang@xxxxxxxxxxxxx>
  Date:   Wed Aug 12 17:14:13 2015 +0800

      rtc: ds3232: fix WARNING trace in resume function

      If ds3232 work on some platform that is not implementing
      irq_set_wake, ds3232 will get a WARNING trace in resume.
      So fix ds3232->suspended state to false when irq_set_irq_wake
      return error.

      WARNING: CPU: 0 PID: 729 at kernel/irq/manage.c:604 
irq_set_irq_wake+0x4b/0x8c()
      Unbalanced IRQ 201 wake disable
      Modules linked in:
      CPU: 0 PID: 729 Comm: sh Not tainted 3.12.19-rt30+ #25
      [<800107d9>] (unwind_backtrace+0x1/0x88) from [<8000e4ef>] 
(show_stack+0xb/0xc)
      [<8000e4ef>] (show_stack+0xb/0xc) from [<802b5fa9>] (dump_stack+0x4d/0x60)
      [<802b5fa9>] (dump_stack+0x4d/0x60) from [<800186dd>] 
(warn_slowpath_common+0x45/0x64)
      [<800186dd>] (warn_slowpath_common+0x45/0x64) from [<80018717>] 
(warn_slowpath_fmt+0x1b/0x24)
      [<80018717>] (warn_slowpath_fmt+0x1b/0x24) from [<8003a8d3>] 
(irq_set_irq_wake+0x4b/0x8c)
      [<8003a8d3>] (irq_set_irq_wake+0x4b/0x8c) from [<80204fcb>] 
(ds3232_resume+0x2d/0x36)
      [<80204fcb>] (ds3232_resume+0x2d/0x36) from [<801954c7>] 
(dpm_run_callback.isra.13+0xb/0x28)
      [<801954c7>] (dpm_run_callback.isra.13+0xb/0x28) from [<80195b1b>] 
(device_resume+0x7b/0xa2)
      [<80195b1b>] (device_resume+0x7b/0xa2) from [<80195f0f>] 
(dpm_resume+0xbb/0x19c)
      [<80195f0f>] (dpm_resume+0xbb/0x19c) from [<801960d9>] 
(dpm_resume_end+0x9/0x12)
      [<801960d9>] (dpm_resume_end+0x9/0x12) from [<80037e1d>] 
(suspend_devices_and_enter+0x17d/0x1d0)
      [<80037e1d>] (suspend_devices_and_enter+0x17d/0x1d0) from [<80037ee1>] 
(pm_suspend+0x71/0x128)
      [<80037ee1>] (pm_suspend+0x71/0x128) from [<80037449>] 
(state_store+0x6d/0x80)
      [<80037449>] (state_store+0x6d/0x80) from [<800af4d5>] 
(sysfs_write_file+0x9f/0xde)
      [<800af4d5>] (sysfs_write_file+0x9f/0xde) from [<8007a437>] 
(vfs_write+0x7b/0x104)
      [<8007a437>] (vfs_write+0x7b/0x104) from [<8007a7f7>] 
(SyS_write+0x27/0x48)
      [<8007a7f7>] (SyS_write+0x27/0x48) from [<8000c121>] 
(ret_fast_syscall+0x1/0x44)

      Signed-off-by: Wang Dongsheng <dongsheng.wang@xxxxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 467e1436ba85f78b8c4610c4549eb255a8211c42
  Author: Niranjan Sivakumar <ns253@xxxxxxxxxxx>
  Date:   Sat Sep 5 18:20:35 2015 +0200

      ALSA: hda - Fix white noise on Dell M3800

      The M3800 is very minor workstation variant of the XPS 15 which has
      already been patched for this issue.  I figured it's probably more
      important for this version of the laptop to be patched than the
      regular XPS as Dell sells is pre-configured with Ubuntu to be used as
      a Linux workstation.  I have tested the patch on my the hardware on
      Linux 4.2.0.

      Signed-off-by: Niranjan Sivakumar <ns253@xxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # v4.1+
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit a161574e200ae63a5042120e0d8c36830e81bde3
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Thu Aug 13 18:05:06 2015 +0200

      ALSA: hda - Use ALC880_FIXUP_FUJITSU for FSC Amilo M1437

      It turned out that the machine has a bass speaker, so take a correct
      fixup entry.

      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=102501
      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit bb148bdeb0ab16fc0ae8009799471e4d7180073b
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Thu Aug 13 18:02:39 2015 +0200

      ALSA: hda - Enable headphone jack detect on old Fujitsu laptops

      According to the bug report, FSC Amilo laptops with ALC880 can detect
      the headphone jack but currently the driver disables it.  It's partly
      intentionally, as non-working jack detect was reported in the past.
      Let's enable now.

      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=102501
      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 27b15e31dbc5f4d7fc93e6acaa898cbfd1cf74ea
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Aug 11 20:28:20 2015 +0900

      rtc: s3c: remove unnecessary NULL assignment

      It's unnecessary the code that assigns info->rtc_clk to NULL in
      s3c_rtc_remove.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 7f23a93661eb5caa373f75a145cec14331a8caaa
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Aug 11 20:28:19 2015 +0900

      rtc: s3c: add missing clk control

      It's missed to call clk_unprepare() about info->rtc_src_clk in
      s3c_rtc_remove and to call clk_disable_unprepare about info->rtc_clk in
      error routine of s3c_rtc_probe.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 1fb1c35f56bb6ab4a65920c648154b0f78f634a5
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Wed Aug 12 19:21:46 2015 +0900

      rtc: s3c: fix disabled clocks for alarm

      The clock enable/disable codes for alarm have been removed from
      commit 24e1455493da ("drivers/rtc/rtc-s3c.c: delete duplicate clock
      control") and the clocks are disabled even if alarm is set, so alarm
      interrupt can't happen.

      The s3c_rtc_setaie function can be called several times with 'enabled'
      argument having same value, so it needs to check whether clocks are
      enabled or not.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # v4.1
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 80e274e96e5bc4ddf9ee4b31ab6f4a2a9fa08040
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 16:33:40 2015 +0200

      rtc: at91sam9: remove useless include

      Definitions from linux/platform_data/atmel.h are not used, remove the
      include.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 1955f213a68323f7348fc06461017c7675efe6c1
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 16:33:39 2015 +0200

      rtc: at91sam9: include linux/of.h

      This driver is using device tree but is not including of.h

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 0c6e718389305cbc4cd9b8e3fd4b4173bd1127e6
  Author: Nadav Haklai <nadavh@xxxxxxxxxxx>
  Date:   Thu Aug 6 17:18:48 2015 +0200

      rtc: armada38x: Align RTC set time procedure with the official errata

      According to the Armada38x functional errata FE-3124064, writing to
      the RTC TIME register may fail. As a workaround, after writing to RTC
      TIME register, issue a dummy write of 0x0 twice to the RTC Status
      register.  This is the updated implementation of the Errata that
      eliminates the need of the long 100ms delay during the RTC set time
      procedure.

      [gregory.clement@xxxxxxxxxxxxxxxxxx]: removed the mutex and use the
      spinlock again

      Signed-off-by: Nadav Haklai <nadavh@xxxxxxxxxxx>
      Reviewed-by: Neta Zur Hershkovits <neta@xxxxxxxxxxx>
      Signed-off-by: Gregory CLEMENT <gregory.clement@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit efbbb4fd6b6fe0d3d2cfb3c5bbcdf00f1995cb60
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 11:33:59 2015 +0200

      rtc: rx8025: check time validity when necessary

      Check time validity when reading time as this is when we need to know.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 5c66e1e0b79bd63dcdfbc03b80823522643a1f14
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 11:24:33 2015 +0200

      rtc: rx8025: fix RX8025_BIT_CTRL2_CTFG initialization

      RX8025_BIT_CTRL2_CTFG was set to 0 only when it was already 0.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 4b33d36b670e7166e8a082e050bfb241ba65271f
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 10:56:50 2015 +0200

      rtc: rx8025: remove useless initialization

      irq_freq is already initialized to 1 in rtc_device_register()

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 8c4a4467cda299491eff64640c891a0b2926cb76
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 10:48:20 2015 +0200

      rtc: rx8025: reset validity when setting time

      Wait for the user to set the time to reset the validity bits. Until then,
      the time may be invalid.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit a27c7bf657cb4ab893328359b66a584251be6cac
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 10:46:22 2015 +0200

      rtc: rx8025: fix rx8025_init_client()

      rx8025_init_client is modifying ctrl[0] and writing it to RX8025_REG_CTRL2
      but ctrl[0] is actually RX8025_REG_CTRL1.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 8a06513df55ef10baf80f55d13786eb29efa4fa6
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 00:45:37 2015 +0200

      rtc: rx8025: continue without alarm when irq request fails

      Instead of bailing out, disable alarms and continue when
      devm_request_threaded_irq() fails. This allows to still provide some
      functionality.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit fd9061fb497926c0e62bf1c7ff727801499fd2ea
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 00:40:25 2015 +0200

      rtc: rx8025: cleanup accessors

      Remove useless error messages, at that point, the user already knows
      something went wrong but will not be able to do anything about it anyway.
      It is also highly unlikely that some registers are readable/writable
      but not some other ones.

      Also, transform rx8025_read_reg to be more resemblant to
      i2c_smbus_read_byte_data()

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 6f0a8cfebb898b88fb0d934d7a44a6d4c98d5285
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Sun Jul 26 10:13:31 2015 +0200

      rtc: rx8025: don't reset the time

      Stop setting the time to epoch when it is invalid. The proper way to 
handle
      that is to return an error when it is invalid instead of returning an
      incorrect value.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 2e10e74df72ff0f8ea65eb1ee6e39ed8278a91bf
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Sat Jul 25 15:54:59 2015 +0200

      rtc: rx8025: fix transfer mode

      The datasheet specifies that transfer mode must be 0 for write and either
      0x4 (simplified read) or 0 (standard read). 0x8 is not specified, use
      standard mode.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 32672c55951b2633bb93ec6f12734cf17e9d3a14
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Sat Jul 25 12:07:37 2015 +0200

      rtc: rx8025: only handle dates between 2000 and 2099

      The hardware is only capable of handling dates between 2000 and 2099,
      enforce that.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 2ddd18693cb93126077bd072884dffca423c1e27
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Sat Jul 25 11:50:22 2015 +0200

      rtc: rx8025: use BIT()

      Use BIT() instead of hand coding.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit dbcce7cf1eb95c704faa3fff1acc974010c8e5a4
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Jul 24 16:12:10 2015 +0200

      rtc: rx8025: remove useless probe error message

      It is useless to print a message when probe fails as the user is already
      aware that it failed.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit f0b63a1d5a4a4d9d60fe728ede0fa78ec5aab8be
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Jul 24 16:07:30 2015 +0200

      rtc: rx8025: switch to managed irq allocation

      Use devm_request_threaded_irq() so it is not necessary to call free_irq()
      explicitly.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit b6a57c955c362cb9d6ace991cdd77376849abb44
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Jul 24 15:59:43 2015 +0200

      rtc: rx8025: Convert to threaded IRQ

      The driver currently emulates the concept of threaded IRQ using a
      workqueue, switch to threaded IRQ instead.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 15d3bdc23eb54c50b2a5f143325fe83c3ab0dd27
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Jul 24 15:50:23 2015 +0200

      rtc: rx8025: remove useless headers and reorder them

      Remove the useless includes and order the remaining ones alphabetically.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 824625d3926f0caf4753426d2b24a8fc08a406c8
  Author: Vladimir Zapolskiy <vz@xxxxxxxxx>
  Date:   Mon Jul 27 00:48:36 2015 +0300

      rtc: tx4939: clean up tx4939_rtc_nvram_read()/tx4939_rtc_nvram_write()

      The change removes redundant sysfs binary file boundary checks, since
      this task is already done on caller side in fs/sysfs/file.c

      Signed-off-by: Vladimir Zapolskiy <vz@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit ecc663c3d0dc181fd15e4d60753024d180fd7e8f
  Author: Vladimir Zapolskiy <vz@xxxxxxxxx>
  Date:   Mon Jul 27 00:48:35 2015 +0300

      rtc: stk17ta8: clean up stk17ta8_nvram_read()/stk17ta8_nvram_write()

      The change removes redundant sysfs binary file boundary checks, since
      this task is already done on caller side in fs/sysfs/file.c

      Signed-off-by: Vladimir Zapolskiy <vz@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit d1cf4bdee8e574c0d2b7ce9fa8d9cd89c0ac761a
  Author: Vladimir Zapolskiy <vz@xxxxxxxxx>
  Date:   Mon Jul 27 00:48:34 2015 +0300

      rtc: rp5c01: clean up rp5c01_nvram_read()/rp5c01_nvram_write()

      The change removes redundant sysfs binary file boundary checks, since
      this task is already done on caller side in fs/sysfs/file.c

      Signed-off-by: Vladimir Zapolskiy <vz@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 99be3e371b2ac03b936044139be10cf0c7b9cc58
  Author: Vladimir Zapolskiy <vz@xxxxxxxxx>
  Date:   Wed Aug 5 21:13:02 2015 +0300

      rtc: m48t59: clean up m48t59_nvram_read()/m48t59_nvram_write()

      The change removes redundant sysfs binary file boundary checks, since
      this task is already done on caller side in fs/sysfs/file.c

      Spinlock acquisition/release is moved out of the loop body to get
      atomic states of NVRAM reading and writing operations.

      Signed-off-by: Vladimir Zapolskiy <vz@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit c472d7ded2dfbe7da29531a9c9e6b951e5658605
  Author: Vladimir Zapolskiy <vz@xxxxxxxxx>
  Date:   Mon Jul 27 00:48:32 2015 +0300

      rtc: ds1742: clean up ds1742_nvram_read()/ds1742_nvram_write()

      The change removes redundant sysfs binary file boundary checks, since
      this task is already done on caller side in fs/sysfs/file.c

      Signed-off-by: Vladimir Zapolskiy <vz@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit a9118d77b3be366c4843446d671a52ccfddcc15c
  Author: Vladimir Zapolskiy <vz@xxxxxxxxx>
  Date:   Mon Jul 27 00:48:31 2015 +0300

      rtc: ds1553: clean up ds1553_nvram_read()/ds1553_nvram_write()

      The change removes redundant sysfs binary file boundary checks, since
      this task is already done on caller side in fs/sysfs/file.c

      Signed-off-by: Vladimir Zapolskiy <vz@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 8ccba14233000f48639aad4cab55ed7b61260db5
  Author: Vladimir Zapolskiy <vz@xxxxxxxxx>
  Date:   Wed Aug 5 21:12:58 2015 +0300

      rtc: ds1511: clean up ds1511_nvram_read()/ds1511_nvram_write()

      The change removes redundant sysfs binary file boundary checks, since
      this task is already done on caller side in fs/sysfs/file.c

      The change enables burst mode of access to SRAM for any read()/write()
      operations, it is worth to mention that this may influence on
      userspace, for instance prior to the change

        read(fd, buf, 1);
        read(fd, buf + 1, 1);

      and

        read(fd, buf, 2);

      sequences of syscalls over DS1511's sysfs "nvram" fd led to different
      DS1511 state changes and/or buf content, if some userspace applications
      are written specifically for DS1511 and exploit this strange
      "feature", they may be impacted.

      Also the change corrects NVRAM size accessible to userspace from 255
      bytes to 256 bytes.

      Signed-off-by: Vladimir Zapolskiy <vz@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit f4843b19d2c7b5effd25e2a65b487d02bf55e96f
  Author: Vladimir Zapolskiy <vz@xxxxxxxxx>
  Date:   Mon Jul 27 00:48:29 2015 +0300

      rtc: ds1343: clean up ds1343_nvram_read()/ds1343_nvram_write()

      The change removes redundant sysfs binary file boundary checks, since
      this task is already done on caller side in fs/sysfs/file.c

      Signed-off-by: Vladimir Zapolskiy <vz@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit ca7c14d3a1ab1932732c506e32ab5b189b9c0a16
  Author: Vladimir Zapolskiy <vz@xxxxxxxxx>
  Date:   Mon Jul 27 00:48:28 2015 +0300

      rtc: ds1307: clean up ds1307_nvram_read()/ds1307_nvram_write()

      The change removes redundant sysfs binary file boundary checks, since
      this task is already done on caller side in fs/sysfs/file.c

      Signed-off-by: Vladimir Zapolskiy <vz@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 273e03041e6d48024a57682cbf7b61510f74ec64
  Author: Vladimir Zapolskiy <vz@xxxxxxxxx>
  Date:   Mon Jul 27 00:48:27 2015 +0300

      rtc: ds1305: clean up ds1305_nvram_read()/ds1305_nvram_write()

      The change removes redundant sysfs binary file boundary checks, since
      this task is already done on caller size in fs/sysfs/file.c

      Signed-off-by: Vladimir Zapolskiy <vz@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit a3781639e148497d7381d8786aaefe9f8b7e3028
  Author: Vladimir Zapolskiy <vz@xxxxxxxxx>
  Date:   Mon Jul 27 00:48:26 2015 +0300

      rtc: cmos: clean up cmos_nvram_read()/cmos_nvram_write()

      The change removes redundant sysfs binary file boundary checks, since
      this task is already done on caller side in fs/sysfs/file.c

      Signed-off-by: Vladimir Zapolskiy <vz@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 3c217e51d8a272b9301058fe845d6c69cc0651cb
  Author: Sylvain Chouleur <sylvain.chouleur@xxxxxxxxx>
  Date:   Mon Jun 8 11:45:19 2015 +0200

      rtc: cmos: century support

      If century field is supported by the RTC CMOS device, then we should use
      it and then do not consider years greater that 169 as an error.

      For information, the year field of the rtc_time structure contains the
      value to add to 1970 to obtain the current year.

      This was a hack to be able to support years for 1970 to 2069.
      This patch remains compatible with this implementation.

      Signed-off-by: Sylvain Chouleur <sylvain.chouleur@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 11f67a8bbf65872c3e9edc70242420a8c314a860
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Jul 31 11:39:51 2015 +0200

      rtc: at91rm9200: get and use slow clock

      Commit dca1a4b5ff6e ("clk: at91: keep slow clk enabled to prevent system
      hang") added a workaround for the slow clock as it is not properly handled
      by its users.

      Get and use the slow clock as it is necessary for the at91rm9200 rtc.

      Acked-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 202cc98acf96de1c3897194e1ed5ae1c80c8b0f3
  Author: kbuild test robot <fengguang.wu@xxxxxxxxx>
  Date:   Fri Jul 31 15:01:04 2015 +0530

      rtc: gemini: fix ptr_ret.cocci warnings

      drivers/rtc/rtc-gemini.c:151:1-3: WARNING: PTR_ERR_OR_ZERO can be used

       Use PTR_ERR_OR_ZERO rather than if(IS_ERR(...)) + PTR_ERR

      Generated by: scripts/coccinelle/api/ptr_ret.cocci

      Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit e7cba884af366f49ab7b7f5157e690357addebba
  Author: viresh kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Fri Jul 31 16:23:43 2015 +0530

      rtc: Drop (un)likely before IS_ERR(_OR_NULL)

      IS_ERR(_OR_NULL) already contain an 'unlikely' compiler flag and there
      is no need to do that again from its callers. Drop it.

      gemini driver was using likely() for a failure case while the rtc driver
      is getting registered. That looks wrong and it should really be
      unlikely. But because we are killing all the unlikely() flags, lets kill
      that too.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Acked-by: Hans Ulli Kroll <ulli.kroll@xxxxxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 74000eb14a173f427240b90363580c686a675ddf
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Jul 29 02:01:33 2015 +0200

      rtc: at91rm9200: sort headers alphabetically

      Sort included headers alphabetically.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Acked-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
      Acked-by: Nicolas Ferre <nicolas.ferre@xxxxxxxxx>

  commit 8918bd8a5f6c37963ba04ae79ad6488108894ab9
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Jul 28 21:51:10 2015 +0200

      rtc: at91sam9: get sclk rate after enabling it

      See help for clk_get_rate(): "obtain the current clock rate (in Hz) for a
      clock source. This is only valid once the clock source has been enabled."

      It currently returns the correct value but that may not stay that way.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Acked-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
      Acked-by: Nicolas Ferre <nicolas.ferre@xxxxxxxxx>

  commit 6932ff5395e3a2541fba696b38dc71393cf7ce57
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Jul 28 21:49:24 2015 +0200

      rtc: at91sam9: sort headers alphabetically

      Sort included headers alphabetically.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Acked-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
      Acked-by: Nicolas Ferre <nicolas.ferre@xxxxxxxxx>

  commit 73ab31ce1bbc64c590b2a2d58364942adfa11a3f
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Jul 28 21:47:57 2015 +0200

      rtc: at91sam9: remove useless check

      rtc->sclk necessarily points to a valid clocks at this point. Else the
      probe would have aborted.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Acked-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
      Acked-by: Nicolas Ferre <nicolas.ferre@xxxxxxxxx>

  commit ffe60fcfda98a3e4f51bc1e02ff5412a7e1c9c79
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Jul 28 21:46:15 2015 +0200

      rtc: at91sam9: properly handle error case

      In case of a probe error, it is possible to abort after issuing
      clk_prepare_enable(). Ensure the clock is disabled and unprepared in that
      case.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Acked-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
      Acked-by: Nicolas Ferre <nicolas.ferre@xxxxxxxxx>

  commit 27675ef03c0535158b77af76591920fe041ebf14
  Author: Leo Yan <leo.yan@xxxxxxxxxx>
  Date:   Wed Jul 29 14:13:40 2015 +0800

      rtc: pl031: fix typo for author email

      The email address missed character ">", so add it.

      Signed-off-by: Leo Yan <leo.yan@xxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 1c4fc2955ad37afb0d75ed5a67bad94c1529b0cf
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 18:18:46 2015 +0200

      rtc: Export OF module alias information in missing drivers

      The I2C core always reports the MODALIAS uevent as "i2c:<client name"
      regardless if the driver was matched using the I2C id_table or the
      of_match_table. So technically there's no need for a driver to export
      the OF table since currently it's not used.

      In fact, the I2C device ID table is mandatory for I2C drivers since
      a i2c_device_id is passed to the driver's probe function even if the
      I2C core used the OF table to match the driver.

      And since the I2C core uses different tables, OF-only drivers needs to
      have duplicated data that has to be kept in sync and also the dev node
      compatible manufacturer prefix is stripped when reporting the MODALIAS.

      To avoid the above, the I2C core behavior may be changed in the future
      to not require an I2C device table for OF-only drivers and report the
      OF module alias. So, it's better to also export the OF table to prevent
      breaking module autoloading if that happens.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 8109d44f7604cd5ab833ea09da98703f6eb16460
  Author: Adrian Huang <adrianhuang0701@xxxxxxxxx>
  Date:   Mon Jul 6 12:19:13 2015 +0800

      rtc: cmos: Revert "rtc-cmos: Add an alarm disable quirk"

      Commit d5a1c7e3fc38 ("rtc-cmos: Add an alarm disable quirk") that
      added a special quirk is not needed because [PATCH 1/2] of this
      patchset makes the kernel more robust:
      rtc-cmos: Cancel alarm timer if alarm time is equal to now+1 seconds

      Signed-off-by: Adrian Huang <ahuang12@xxxxxxxxxx>
      Tested-by: Egbert Eich <eich@xxxxxxx>
      Tested-by: Diego Ercolani <diego.ercolani@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 88b8d33b1c6aadba553c998db91c4b36be0fac52
  Author: Adrian Huang <adrianhuang0701@xxxxxxxxx>
  Date:   Mon Jul 6 12:19:12 2015 +0800

      rtc: cmos: Cancel alarm timer if alarm time is equal to now+1 seconds

      Steps to reproduce the problem:
        1) Enable RTC wake-up option in BIOS Setup
        2) Issue one of these commands in the OS: "poweroff"
           or "shutdown -h now"
        3) System will shut down and then reboot automatically

      Root-cause of the issue:
        1) During the shutdown process, the hwclock utility is used
           to save the system clock to hardware clock (RTC).
        2) The hwclock utility invokes ioctl() with RTC_UIE_ON. The
           kernel configures the RTC alarm for the periodic interrupt
           (every 1 second).
        3) The hwclock uitlity closes the /dev/rtc0 device, and the
           kernel disables the RTC alarm irq (AIE bit of Register B)
           via ioctl() with RTC_UIE_OFF. But, the configured alarm
           time is the current_time + 1.
        4) After the next 1 second is elapsed, the AF (alarm
           interrupt flag) of Register C is set.
        5) The S5 handler in BIOS is invoked to configure alarm
           registers (enable AIE bit and configure alarm date/time).
           But, BIOS does not clear the previous interrupt status
           during alarm configuration. Therefore, "AF=AIE=1" causes
           the rtc device to trigger an interrupt.
        6) So, the machine reboots automatically right after shutdown.

      This patch cancels the alarm timer if the following condictions are
      met (suggested by Alexandre):
        1) The configured alarm time is equal to current_time + 1
           seconds.
        2) The AIE timer is not in use.

      The member 'alarm_expires' is introduced in struct cmos_rtc because
      of the following reasons:
        1) The configured alarm time can be retrieved from
           cmos_read_alarm(), but we need to take the 'wrapped
           timestamp' and 'time rollover' into consideration. The
           function __rtc_read_alarm() eliminates the concerns. To
           avoid the duplicated code in the lower level RTC driver,
           invoking __rtc_read_alarm from the lower level RTC driver
           is not encouraged. Moreover, the compilation error 'the
           undefined __rtc_read_alarm" is observed if the lower level
           RTC driver is compiled as a kernel module.
        2) The uie_rtctimer.node.expires and aie_timer.node.expires can
           be retrieved for the configured alarm time. But, the problem
           is that either of them might configure the CMOS alarm time.
           We cannot make sure UIE timer or AIE tiemr configured the
           CMOS alarm time before. (uie_rtctimer or aie_timer is enabled
           and then is disabled).
        3) The patch introduces the member 'alarm_expires' to keep the
           newly configured alarm time, so the above-mentioned concerns
           can be eliminated.

      The issue goes away after 20-time shutdown tests.

      Signed-off-by: Adrian Huang <ahuang12@xxxxxxxxxx>
      Tested-by: Egbert Eich <eich@xxxxxxx>
      Tested-by: Diego Ercolani <diego.ercolani@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 80ca3277bc7f398e3315af996443464dac5d4b88
  Author: S Twiss <stwiss.opensource@xxxxxxxxxxx>
  Date:   Tue Jul 21 11:29:07 2015 +0100

      rtc: da9063: Add DA9062 RTC capability to DA9063 RTC driver

      Add DA9062 RTC support into the existing DA9063 RTC driver component by
      using generic access tables for common register and bit mask definitions.

      The following change will add generic register and bit mask support to the
      DA9063 RTC. The changes are slightly complicated by requiring support for
      three register sets: DA9063-AD, DA9063-BB and DA9062-AA.

      The following alterations have been made to the DA9063 RTC:

      - Addition of a da9063_compatible_rtc_regmap structure to hold all generic
        registers and bitmasks for this type of RTC component.
      - A re-write of struct da9063 to use pointers for regmap and compatible
        registers/masks definitions
      - Addition of a of_device_id table for DA9063 and DA9062 defaults
      - Refactoring functions to use struct da9063_compatible_rtc accesses to
        generic registers/masks instead of using defines from registers.h
      - Re-work of da9063_rtc_probe() to use of_match_node() and 
dev_get_regmap()
        to provide initialisation of generic registers and masks and access to
        regmap

      Signed-off-by: Steve Twiss <stwiss.opensource@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit d7f9777de884daf5721211bddfd21e7c8c156b17
  Author: Henry Chen <henryc.chen@xxxxxxxxxxxx>
  Date:   Thu Jul 30 22:53:14 2015 +0800

      rtc: mt6397: implement suspend/resume function in rtc-mt6397 driver

      Implement the suspend/resume function in order to control rtc's irq_wake 
flag and handle as wakeup source.

      Signed-off-by: Henry Chen <henryc.chen@xxxxxxxxxxxx>
      Acked-by: Eddie Huang <eddie.huang@xxxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 3ee2c40b7ac2bf121aaa1176d8ac25b6a26e3a94
  Author: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
  Date:   Thu Jul 23 16:01:08 2015 -0700

      rtc: switch to using is_visible() to control sysfs attributes

      Instead of creating wakealarm attribute manually, after the device has 
been
      registered, let's rely on facilities provided by the attribute groups to
      control which attributes are visible and which are not. This allows to
      create all needed attributes at once, at the same time that we register 
RTC
      class device.

      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit a17ccd1c6a327e5b468358e8352a6af004261473
  Author: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
  Date:   Thu Jul 23 16:01:07 2015 -0700

      rtc: switch wakealarm attribute to DEVICE_ATTR_RW

      Instead of using older style DEVICE_ATTR for wakealarm attribute let's
      switch to using DEVICE_ATTR_RW that ensures consistent across the kernel
      permissions on the attribute.

      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit df100c017ea9f1a6a517c3fba84f8507973c004e
  Author: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
  Date:   Thu Jul 23 16:01:06 2015 -0700

      rtc: make rtc_does_wakealarm() return boolean

      Users of rtc_does_wakealarm() return value treat it as boolean so let's
      change the signature accordingly.

      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit f2284f9c900a47961883b88064933a89b5dd5f46
  Author: Henri Roosen <henriroosen@xxxxxxxxx>
  Date:   Fri Jul 24 10:16:06 2015 +0200

      rtc: rx8025: remove obsolete local_irq_disable() and local_irq_enable() 
for rtc_update_irq()

      Since commit e6229bec25be ("rtc: make rtc_update_irq callable with irqs
      enabled") rtc_update_irq() is callable with irqs enabled.

      Signed-off-by: Henri Roosen <henriroosen@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 0d9030a2c3214cf8f9bfff84204e0f5ba5e790d7
  Author: Octavian Purdila <octavian.purdila@xxxxxxxxx>
  Date:   Fri Jun 5 16:59:43 2015 +0300

      rtc: fix drivers that consider 0 as a valid IRQ in client->irq

      Since dab472eb931b ("i2c / ACPI: Use 0 to indicate that device does not
      have interrupt assigned"), 0 is not a valid i2c client irq anymore, so
      change all driver's checks accordingly.

      The same issue occurs when the device is instantiated via device tree
      with no IRQ, or from the i2c sysfs interface, even before the patch
      above.

      Signed-off-by: Octavian Purdila <octavian.purdila@xxxxxxxxx>
      Reviewed-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 1e4cd62558c293bc51cc179d676b708683a29c12
  Author: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
  Date:   Mon Jul 20 16:02:51 2015 -0700

      rtc: dev: properly manage lifetime of dev and cdev in rtc device

      struct rtc embeds both struct dev and struct cdev.  Unfortunately 
character
      device structure may outlive the parent rtc structure unless we set it up
      as parent of character device so that it will stay pinned until character
      device is freed.

      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit c3b399a4b6703a04ef6eb3efe35ff12163e409e0
  Author: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
  Date:   Mon Jul 20 16:02:50 2015 -0700

      rtc: class: remove unnecessary device_get() in rtc_device_unregister

      Technically the address of rtc->dev can never be NULL, so get_device()
      can never fail. Also caller of rtc_device_unregister() supposed to be
      the owner of the device and thus have a valid reference. Therefore
      call to get_device() is not needed here.

      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 6706664d92ea841913d5fcfd06c290fbe6d33bd2
  Author: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
  Date:   Mon Jul 20 16:02:49 2015 -0700

      rtc: class: fix double free in rtc_register_device() error path

      Commit 59cca865f21e ("drivers/rtc/class.c: fix device_register() error
      handling") correctly noted that naked kfree() should not be used after
      failed device_register() call, however, while it added the needed
      put_device() it forgot to remove the original kfree() causing double-free.

      Cc: Vasiliy Kulikov <segooon@xxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit dfe6c04aa289de06df95d888719af63d1d4c982d
  Author: Guo Zeng <guo.zeng@xxxxxxx>
  Date:   Tue Jul 14 01:31:38 2015 +0000

      rtc: sirfsoc: move to regmap APIs from platform-specific APIs

      The current codes use CSR platform specific API exported by machine
      codes to read/write RTC registers. they are:
      sirfsoc_rtc_iobrg_readl()
      sirfsoc_rtc_iobrg_writel()

      commit b1999477ed91 ("ARM: prima2: move to use REGMAP APIs for rtciobrg")
      moves to regmap support, now we can move to use regmap APIs in RTC
      driver.

      Signed-off-by: Guo Zeng <guo.zeng@xxxxxxx>
      Signed-off-by: Barry Song <Baohua.Song@xxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit f4a2eecb3ff9f51b179b213e7cc3766f920f2dc5
  Author: Vaibhav Jain <vaibhav@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Jul 14 13:28:28 2015 +0530

      rtc: opal: Enable alarms only when opal supports tpo

      rtc-opal driver provides support for rtc alarms via
      timed-power-on(tpo). However some Power platforms like BML use a fake
      rtc clock and don't support tpo. Such platforms are indicated by the
      missing 'has-tpo' property in the device tree.

      Current implementation however enables callback for
      rtc_class_ops.read/set alarm irrespective of the tpo support from the
      platform. This results in a failed opal call when kernel tries to read
      an existing alarms via opal_get_tpo_time during rtc device registration.

      This patch fixes this issue by setting opal_rtc_ops.read/set_alarm
      callback pointers only when tpo is supported.

      Acked-by: Michael Neuling <mikey@xxxxxxxxxxx>
      Acked-by: Neelesh Gupta <neelegup@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Vaibhav Jain <vaibhav@xxxxxxxxxxxxxxxxxx>
      Acked-by: Stewart Smith <stewart@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit c28b42e3aee03fe869a3f73039cf92686ccbc8fb
  Author: Joachim Eastwood <manabian@xxxxxxxxx>
  Date:   Sat Jul 11 19:28:49 2015 +0200

      rtc: add rtc-lpc24xx driver

      Add driver for the RTC found on NXP LPC178x/18xx/408x/43xx devices.
      The RTC provides calendar and clock functionality together with
      alarm interrupt support.

      Signed-off-by: Joachim Eastwood <manabian@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit dcb9372b34c9de90672e4cf811d7c3a8519320aa
  Author: Joachim Eastwood <manabian@xxxxxxxxx>
  Date:   Sat Jul 11 19:28:50 2015 +0200

      doc: dt: add documentation for nxp,lpc1788-rtc

      Document NXP LPC178x/18xx/408x/43xx bindings

      Signed-off-by: Joachim Eastwood <manabian@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 045c6fdd37a01d950c0f5ca64733b53b184fe91b
  Author: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
  Date:   Fri Jul 10 15:39:51 2015 +0900

      rtc: Drop owner assignment from platform_driver

      platform_driver does not need to set an owner because
      platform_driver_register() will set it.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit b28845433eb9c205c381ed69b09167d6ae5aac1c
  Author: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
  Date:   Fri Jul 10 15:39:50 2015 +0900

      rtc: Drop owner assignment from i2c_driver

      i2c_driver does not need to set an owner because i2c_register_driver()
      will set it.

      Signed-off-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 653ebd75e9e469e99a40ab14128d915386dc78c6
  Author: Andrea Scian <andrea.scian@xxxxxxx>
  Date:   Tue Jun 16 11:39:47 2015 +0200

      rtc: pcf2127: use OFS flag to detect unreliable date and warn the user

      The PCF2127 datasheet states that it's wrong to say that the date in
      unreliable if BLF (battery low flag) is set but instead, OSF (seconds
      register) should be used to check if oscillator, for any reason, stopped.
      Battery may be low (usually below 2V5 threshold) but the date may be 
anyway
      correct (typically date is unreliable when input voltage is below 1V2).

      Signed-off-by: Andrea Scian <andrea.scian@xxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 821f51c4da869706356ddecfeeac286bf4df9b98
  Author: Andrea Scian <andrea.scian@xxxxxxx>
  Date:   Tue Jun 16 11:35:19 2015 +0200

      rtc: use rtc_valid_tm() error code when reading date/time

      There's a wrong comment in some RTC drivers that say it's better to ignore
      rtc_valid_tm() when reading RTC timestamp. However this is wrong and is
      better to return to the userspace the error if timestamp is not valid.

      Signed-off-by: Andrea Scian <andrea.scian@xxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 4ab82103131777b9aabb6ba31aead6e5b0293b32
  Author: Vaibhav Hiremath <vaibhav.hiremath@xxxxxxxxxx>
  Date:   Thu Jul 9 12:25:51 2015 +0530

      rtc: 88pm80x: add device tree support

      Along with DT support, this patch also cleans up the unnecessary
      code around 'rtc_wakeup' initialization.

      Signed-off-by: Chao Xie <chao.xie@xxxxxxxxxxx>
      Signed-off-by: Vaibhav Hiremath <vaibhav.hiremath@xxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 617f6f7ef5bfe8c0ac580243c3da9a836c6e39bf
  Author: Maninder Singh <maninder1.s@xxxxxxxxxxx>
  Date:   Wed Jul 8 12:26:47 2015 +0530

      rtc: bq32k: remove redundant check

      removing below static analysis error:
      (error) Possible null pointer dereference: client

      if (!i2c_check_functionality(client->adapter, I2C_FUNC_I2C))
                                                        ^^^^^^^
      Error comes because client is dereferenced before NULL check.
      So probably NULL this check is not required.

      Signed-off-by: Maninder Singh <maninder1.s@xxxxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 508db592e2f54d731bf2f5eabd9642a1a566f276
  Author: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
  Date:   Tue Jul 7 11:16:14 2015 +0530

      rtc: ds1685: Use module_platform_driver

      Use module_platform_driver for drivers whose init and exit functions
      only register and unregister, respectively.

      A simplified version of the Coccinelle semantic patch that performs
      this transformation is as follows:

      @a@
      identifier f, x;
      @@
      -static f(...) { return platform_driver_register(&x); }

      @b depends on a@
      identifier e, a.x;
      @@
      -static e(...) { platform_driver_unregister(&x); }

      @c depends on a && b@
      identifier a.f;
      declarer name module_init;
      @@
      -module_init(f);

      @d depends on a && b && c@
      identifier b.e, a.x;
      declarer name module_exit;
      declarer name module_platform_driver;
      @@
      -module_exit(e);
      +module_platform_driver(x);

      Signed-off-by: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 7abea617a4bae178da0f42983998c779ec2f732d
  Author: Nishanth Menon <nm@xxxxxx>
  Date:   Wed Jun 24 11:26:54 2015 -0500

      rtc: ds1307: Support optional wakeup interrupt source

      With the recent pinctrl-single changes, SoCs such as Texas
      Instrument's OMAP processors can treat wake-up events from deeper idle
      states as interrupts.

      Let's add support for the optional second interrupt for wake-up using
      the generic wakeirq support added in commit 4990d4fe327b ("PM /
      Wakeirq: Add automated device wake IRQ handling")

      Finally, to pass the wake-up interrupt in the dts file,
      interrupts-extended property needs to be passed.

      This is similar in approach to commit 2a0b965cfb6e ("serial: omap: Add
      support for optional wake-up") + ee83bd3b6483 ("serial: omap: Switch
      wake-up interrupt to generic wakeirq")

      Signed-off-by: Nishanth Menon <nm@xxxxxx>
      Reviewed-by: Grygorii Strashko <grygorii.strashko@xxxxxx>
      Acked-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Acked-by: Felipe Balbi <balbi@xxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit eac7237fd8432e232af3c407e667dbdc17ebf1d8
  Author: Nishanth Menon <nm@xxxxxx>
  Date:   Tue Jun 23 11:15:12 2015 -0500

      rtc: ds1307: Sort the headers

      It is always a good practice to keep the #includes sorted

      Signed-off-by: Nishanth Menon <nm@xxxxxx>
      Acked-by: Felipe Balbi <balbi@xxxxxx>
      Reviewed-by: Grygorii Strashko <grygorii.strashko@xxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit c5983191362af5ef7a627d8811a45f0fd01a3582
  Author: Nishanth Menon <nm@xxxxxx>
  Date:   Tue Jun 23 11:15:11 2015 -0500

      rtc: ds1307: Switch to managed irq allocation

      Since we are not doing anything fancy in remove function that requires
      us to sequence IRQ free operation, we might as well switch over to devm_
      equivalent of managed IRQ allocation and remove the explicit free_irq
      since it'd be done automatically at remove.

      Signed-off-by: Nishanth Menon <nm@xxxxxx>
      Acked-by: Felipe Balbi <balbi@xxxxxx>
      Reviewed-by: Grygorii Strashko <grygorii.strashko@xxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit 2fb07a10e0aa699ddb12aba1459208579bdc9802
  Author: Felipe Balbi <balbi@xxxxxx>
  Date:   Tue Jun 23 11:15:10 2015 -0500

      rtc: ds1307: Convert to threaded IRQ

      The driver currently emulates the concept of threaded IRQ using a
      workqueue, which it really does not need to. Instead, switch over to
      threaded_irq handlers which is meant precisely for the same purpose.

      Signed-off-by: Felipe Balbi <balbi@xxxxxx>
      Signed-off-by: Nishanth Menon <nm@xxxxxx>
      Reviewed-by: Grygorii Strashko <grygorii.strashko@xxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>

  commit e89c6fdf9e0eb1b5a03574d4ca73e83eae8deb91
  Merge: c3cce6c 1081230
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Sat Sep 5 11:07:04 2015 +0200

      Merge linux-block/for-4.3/core into md/for-linux

      There were a few conflicts that are fairly easy to resolve.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 76fc5e7b2355af167dea1a32e93c57fc37900a5b
  Author: Andy Lutomirski <luto@xxxxxxxxxx>
  Date:   Fri Sep 4 17:00:43 2015 -0700

      x86/vm86: Block non-root vm86(old) if mmap_min_addr != 0

      vm86 exposes an interesting attack surface against the entry
      code. Since vm86 is mostly useless anyway if mmap_min_addr != 0,
      just turn it off in that case.

      There are some reports that vbetool can work despite setting
      mmap_min_addr to zero.  This shouldn't break that use case,
      as CAP_SYS_RAWIO already overrides mmap_min_addr.

      Suggested-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: Arjan van de Ven <arjan@xxxxxxxxxxxxxxx>
      Cc: Austin S Hemmelgarn <ahferroin7@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Brian Gerst <brgerst@xxxxxxxxx>
      Cc: Josh Boyer <jwboyer@xxxxxxxxxxxxxxxxx>
      Cc: Kees Cook <keescook@xxxxxxxxxxxx>
      Cc: Matthew Garrett <mjg59@xxxxxxxxxxxxx>
      Cc: Oleg Nesterov <oleg@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Stas Sergeev <stsp@xxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 95cd2ea7d54b41b0b2828587f108fe270d59eede
  Merge: 66c117d e713c80
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Sat Sep 5 09:00:30 2015 +0200

      Merge branch 'linus' into x86/urgent, to be able to merge a dependent fix

      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 30e7a65b3fdb53cc49f85c965095e40aceea3961
  Author: Jon Hunter <jonathanh@xxxxxxxxxx>
  Date:   Thu Sep 3 09:10:37 2015 +0100

      PM / Domains: Ensure subdomain is not in use before removing

      The function pm_genpd_remove_subdomain() removes a subdomain from a
      generic PM domain, however, it does not check if the subdomain has any
      slave domains or device attached before doing so. Therefore, add a test
      to verify that the subdomain does not have any slave domains associated
      or any device attached before removing.

      Signed-off-by: Jon Hunter <jonathanh@xxxxxxxxxx>
      Acked-by: Kevin Hilman <khilman@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 5269e7067cd66f4797760f160be21ff50f2d1582
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Thu Sep 3 08:20:58 2015 -0700

      cpufreq: Add ARM_MT8173_CPUFREQ dependency on THERMAL

      If ARM_MT8173_CPUFREQ is configured, and THERMAL is configured as module,
      the following build error is seen for arm:allmodconfig and
      arm64:allmodconfig.

      drivers/built-in.o: In function `mtk_cpufreq_ready':
      :(.text+0x32a20c): undefined reference to `of_cpufreq_cooling_register'
      drivers/built-in.o: In function `mtk_cpufreq_exit':
      :(.text+0x32a420): undefined reference to `cpufreq_cooling_unregister'

      The fix is similar to CPUFREQ_DT, but more restrictive since
      ARM_MT8173_CPUFREQ can not be built as module.

      Fixes: 1453863fb02a ("cpufreq: mediatek: Add MT8173 cpufreq driver")
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 559ec2f8fd50981821621f52db5e1a8ffcf8d792
  Author: Nicholas Krause <xerofoify@xxxxxxxxx>
  Date:   Fri Sep 4 15:48:27 2015 -0700

      mm/hugetlb.c: make vma_has_reserves() return bool

      This makes vma_has_reserves() return bool due to this particular function
      only returning either one or zero as its return value.

      Signed-off-by: Nicholas Krause <xerofoify@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1ecef9ed0f63bfff58895a4f3aec751e907c7f3d
  Author: Nicholas Krause <xerofoify@xxxxxxxxx>
  Date:   Fri Sep 4 15:48:24 2015 -0700

      mm/madvise.c: make madvise_behaviour_valid() return bool

      This makes the madvise_bahaviour_valid() function return bool due to
      this particular function always returning the value of either one or
      zero as its return value.

      Signed-off-by: Nicholas Krause <xerofoify@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ca1d6c7d9d461effa2c4e8b9b227a14e9fdcf1cc
  Author: Nicholas Krause <xerofoify@xxxxxxxxx>
  Date:   Fri Sep 4 15:48:22 2015 -0700

      mm/memory.c: make tlb_next_batch() return bool

      This makes the tlb_next_batch() bool due to this particular function only
      ever returning either one or zero as its return value.

      Signed-off-by: Nicholas Krause <xerofoify@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d9e7e37b4d83371d08650612e0bb0b80a1240289
  Author: Nicholas Krause <xerofoify@xxxxxxxxx>
  Date:   Fri Sep 4 15:48:19 2015 -0700

      mm/dmapool.c: change is_page_busy() return from int to bool

      This makes the function is_page_busy() return bool rather then an int now
      due to this particular function's single return statement only ever
      evaulating to either one or zero.

      Signed-off-by: Nicholas Krause <xerofoify@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 4e6dab4233f667c0ae465e5cb46603b49b4f6d74
  Author: minkyung88.kim <minkyung88.kim@xxxxxxx>
  Date:   Fri Sep 4 15:48:16 2015 -0700

      mm: remove struct node_active_region

      struct node_active_region is not used anymore.  Remove it.

      Signed-off-by: minkyung88.kim <minkyung88.kim@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 9943242ca468149c4ce30d4633524c0866d4a87b
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Fri Sep 4 15:48:13 2015 -0700

      mremap: simplify the "overlap" check in mremap_to()

      Minor, but this check is overcomplicated.  Two half-intervals do NOT
      overlap if END1 <= START2 || END2 <= START1, mremap_to() just needs to
      negate this check.

      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Benjamin LaHaise <bcrl@xxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Cc: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Laurent Dufour <ldufour@xxxxxxxxxxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1d3916869798755968b3cd764ab21f2bb86ffff7
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Fri Sep 4 15:48:10 2015 -0700

      mremap: don't do uneccesary checks if new_len == old_len

      The "new_len > old_len" branch in vma_to_resize() looks very confusing.
      It only covers the VM_DONTEXPAND/pgoff checks but everything below is
      equally unneeded if new_len == old_len.

      Change this code to return if "new_len == old_len", new_len < old_len is
      not possible, otherwise the code below is wrong anyway.

      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Benjamin LaHaise <bcrl@xxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Cc: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Laurent Dufour <ldufour@xxxxxxxxxxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d456fb9e5254df433d4806769d7ff75d80d66aa4
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Fri Sep 4 15:48:07 2015 -0700

      mremap: don't do mm_populate(new_addr) on failure

      move_vma() sets *locked even if move_page_tables() or ->mremap() fails,
      change sys_mremap() to check "ret & ~PAGE_MASK".

      I think we should simply remove the VM_LOCKED code in move_vma(), that is
      why this patch doesn't change move_vma().  But this needs more cleanups.

      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Benjamin LaHaise <bcrl@xxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Cc: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Laurent Dufour <ldufour@xxxxxxxxxxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 5477e70a6420a6b7ca96c8e21413ee1c96a84260
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Fri Sep 4 15:48:04 2015 -0700

      mm: move ->mremap() from file_operations to vm_operations_struct

      vma->vm_ops->mremap() looks more natural and clean in move_vma(), and this
      way ->mremap() can have more users.  Say, vdso.

      While at it, s/aio_ring_remap/aio_ring_mremap/.

      Note: this is the minimal change before ->mremap() finds another user in
      file_operations; this method should have more arguments, and it can be
      used to kill arch_remap().

      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Acked-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Benjamin LaHaise <bcrl@xxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Cc: Laurent Dufour <ldufour@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit df1eab303c836c98a79de427aa1c7d6812acaaa9
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Fri Sep 4 15:48:01 2015 -0700

      mremap: don't leak new_vma if f_op->mremap() fails

      move_vma() can't just return if f_op->mremap() fails, we should unmap the
      new vma like we do if move_page_tables() fails.  To avoid the code
      duplication this patch moves the "move entries back" under the new "if
      (err)" branch.

      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Benjamin LaHaise <bcrl@xxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Cc: Kirill Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Laurent Dufour <ldufour@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 31aafb45f4e1c34e4aba37c150ae4e74880b46ed
  Author: Nicholas Krause <xerofoify@xxxxxxxxx>
  Date:   Fri Sep 4 15:47:58 2015 -0700

      mm/hugetlb.c: make vma_shareable() return bool

      This makes vma_shareable() return bool now due to this particular function
      only ever returning either one or zero as its return value.

      Signed-off-by: Nicholas Krause <xerofoify@xxxxxxxxx>
      Acked-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
      Acked-by: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1027e4436b6a5c413c95d95e50d0f26348a602ac
  Author: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:47:55 2015 -0700

      mm: make GUP handle pfn mapping unless FOLL_GET is requested

      With DAX, pfn mapping becoming more common.  The patch adjusts GUP code to
      cover pfn mapping for cases when we don't need struct page to proceed.

      To make it possible, let's change follow_page() code to return -EEXIST
      error code if proper page table entry exists, but no corresponding struct
      page.  __get_user_page() would ignore the error code and move to the next
      page frame.

      The immediate effect of the change is working MAP_POPULATE and mlock() on
      DAX mappings.

      [akpm@xxxxxxxxxxxxxxxxxxxx: fix arm64 build]
      Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Reviewed-by: Toshi Kani <toshi.kani@xxxxxx>
      Acked-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d899844e9c98c9c74b4d9926fd3bd66a225f6978
  Author: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:47:53 2015 -0700

      mm: fix status code which move_pages() returns for zero page

      The manpage for move_pages(2) specifies that status code for zero page is
      supposed to be -EFAULT.  Currently kernel return -ENOENT in this case.

      follow_page() can do it for us, if we would ask for FOLL_DUMP.  The use of
      FOLL_DUMP also means that the upper layer page tables pages are no longer
      allocated.

      Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
      Reviewed-by: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ce9ce6659a5775047ad529ed77ab119da5fb8b0c
  Author: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:47:50 2015 -0700

      mm: memcontrol: bring back the VM_BUG_ON() in mem_cgroup_swapout()

      Clark stumbled over a VM_BUG_ON() in -RT which was then was removed by
      Johannes in commit f371763a79d ("mm: memcontrol: fix false-positive
      VM_BUG_ON() on -rt").  The comment before that patch was a tiny bit better
      than it is now.  While the patch claimed to fix a false-postive on -RT
      this was not the case.  None of the -RT folks ACKed it and it was not a
      false positive report.  That was a *real* problem.

      This patch updates the comment that is improper because it refers to
      "disabled preemption" as a consequence of that lock being taken.  A
      spin_lock() disables preemption, true, but in this case the code relies on
      the fact that the lock _also_ disables interrupts once it is acquired.
      And this is the important detail (which was checked the VM_BUG_ON()) which
      needs to be pointed out.  This is the hint one needs while looking at the
      code.  It was explained by Johannes on the list that the per-CPU variables
      are protected by local_irq_save().  The BUG_ON() was helpful.  This code
      has been workarounded in -RT in the meantime.  I wouldn't mind running
      into more of those if the code in question uses *special* kind of locking
      since now there is no verification (in terms of lockdep or BUG_ON()) and
      therefore I bring the VM_BUG_ON() check back in.

      The two functions after the comment could also have a "local_irq_save()"
      dance around them in order to serialize access to the per-CPU variables.
      This has been avoided because the interrupts should be off.

      Signed-off-by: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
      Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Cc: Clark Williams <williams@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c98c36355dd6d5c4433c8d17e8eb839ca9b97606
  Author: Vladimir Zapolskiy <vladimir_zapolskiy@xxxxxxxxxx>
  Date:   Fri Sep 4 15:47:47 2015 -0700

      genalloc: add support of multiple gen_pools per device

      This change fills devm_gen_pool_create()/gen_pool_get() "name" argument
      stub with contents and extends of_gen_pool_get() functionality on this
      basis.

      If there is no associated platform device with a device node passed to
      of_gen_pool_get(), the function attempts to get a label property or device
      node name (= repeats MTD OF partition standard) and seeks for a named
      gen_pool registered by device of the parent device node.

      The main idea of the change is to allow registration of independent
      gen_pools under the same umbrella device, say "partitions" on "storage
      device", the original functionality of one "partition" per "storage
      device" is untouched.

      [akpm@xxxxxxxxxxxxxxxxxxxx: fix constness in devres_find()]
      [dan.carpenter@xxxxxxxxxx: freeing const data pointers]
      Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@xxxxxxxxxx>
      Cc: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: Nicolas Ferre <nicolas.ferre@xxxxxxxxx>
      Cc: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Cc: Jean-Christophe Plagniol-Villard <plagnioj@xxxxxxxxxxxx>
      Cc: Shawn Guo <shawnguo@xxxxxxxxxx>
      Cc: Sascha Hauer <kernel@xxxxxxxxxxxxxx>
      Cc: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 73858173593c31cb94bce63fe1c24eb803bb04e6
  Author: Vladimir Zapolskiy <vladimir_zapolskiy@xxxxxxxxxx>
  Date:   Fri Sep 4 15:47:43 2015 -0700

      genalloc: add name arg to gen_pool_get() and devm_gen_pool_create()

      This change modifies gen_pool_get() and devm_gen_pool_create() client
      interfaces adding one more argument "name" of a gen_pool object.

      Due to implementation gen_pool_get() is capable to retrieve only one
      gen_pool associated with a device even if multiple gen_pools are created,
      fortunately right at the moment it is sufficient for the clients, hence
      provide NULL as a valid argument on both producer devm_gen_pool_create()
      and consumer gen_pool_get() sides.

      Because only one created gen_pool per device is addressable, explicitly
      add a restriction to devm_gen_pool_create() to create only one gen_pool
      per device, this implies two possible error codes returned by the
      function, account it on client side (only misc/sram).  This completes
      client side changes related to genalloc updates.

      [akpm@xxxxxxxxxxxxxxxxxxxx: gen_pool_get() cleanup]
      Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@xxxxxxxxxx>
      Cc: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: Russell King <linux@xxxxxxxxxxxxxxxx>
      Cc: Nicolas Ferre <nicolas.ferre@xxxxxxxxx>
      Cc: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Cc: Jean-Christophe Plagniol-Villard <plagnioj@xxxxxxxxxxxx>
      Cc: Shawn Guo <shawnguo@xxxxxxxxxx>
      Cc: Sascha Hauer <kernel@xxxxxxxxxxxxxx>
      Cc: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c0a294988322a804901fe24222027fe8a34defcb
  Author: Wei Yang <weiyang@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:47:38 2015 -0700

      mm/memblock: WARN_ON when nid differs from overlap region

      Each memblock_region has nid to indicates the Node ID of this range.  For
      the overlap case, memblock_add_range() inserts the lower part and leave
      the upper part as indicated in the overlapped region.

      If the nid of the new range differs from the overlapped region, the
      information recorded is not correct.

      This patch adds a WARN_ON when the nid of the new range differs from the
      overlapped region.

      Signed-off-by: Wei Yang <weiyang@xxxxxxxxxxxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c7e1e3ccfbd153c890240a391f258efaedfa94d0
  Author: Mel Gorman <mgorman@xxxxxxx>
  Date:   Fri Sep 4 15:47:38 2015 -0700

      Documentation/features/vm: add feature description and arch support 
status for batched TLB flush after unmap

      Signed-off-by: Mel Gorman <mgorman@xxxxxxx>
      Acked-by: Ingo Molnar <mingo@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d950c9477d51f0cefc2ed3cf76e695d46af0d9c1
  Author: Mel Gorman <mgorman@xxxxxxx>
  Date:   Fri Sep 4 15:47:35 2015 -0700

      mm: defer flush of writable TLB entries

      If a PTE is unmapped and it's dirty then it was writable recently.  Due to
      deferred TLB flushing, it's best to assume a writable TLB cache entry
      exists.  With that assumption, the TLB must be flushed before any IO can
      start or the page is freed to avoid lost writes or data corruption.  This
      patch defers flushing of potentially writable TLBs as long as possible.

      Signed-off-by: Mel Gorman <mgorman@xxxxxxx>
      Reviewed-by: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Acked-by: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 72b252aed506b8f1a03f7abd29caef4cdf6a043b
  Author: Mel Gorman <mgorman@xxxxxxx>
  Date:   Fri Sep 4 15:47:32 2015 -0700

      mm: send one IPI per CPU to TLB flush all entries after unmapping pages

      An IPI is sent to flush remote TLBs when a page is unmapped that was
      potentially accesssed by other CPUs.  There are many circumstances where
      this happens but the obvious one is kswapd reclaiming pages belonging to a
      running process as kswapd and the task are likely running on separate
      CPUs.

      On small machines, this is not a significant problem but as machine gets
      larger with more cores and more memory, the cost of these IPIs can be
      high.  This patch uses a simple structure that tracks CPUs that
      potentially have TLB entries for pages being unmapped.  When the unmapping
      is complete, the full TLB is flushed on the assumption that a refill cost
      is lower than flushing individual entries.

      Architectures wishing to do this must give the following guarantee.

              If a clean page is unmapped and not immediately flushed, the
              architecture must guarantee that a write to that linear address
              from a CPU with a cached TLB entry will trap a page fault.

      This is essentially what the kernel already depends on but the window is
      much larger with this patch applied and is worth highlighting.  The
      architecture should consider whether the cost of the full TLB flush is
      higher than sending an IPI to flush each individual entry.  An additional
      architecture helper called flush_tlb_local is required.  It's a trivial
      wrapper with some accounting in the x86 case.

      The impact of this patch depends on the workload as measuring any benefit
      requires both mapped pages co-located on the LRU and memory pressure.  The
      case with the biggest impact is multiple processes reading mapped pages
      taken from the vm-scalability test suite.  The test case uses NR_CPU
      readers of mapped files that consume 10*RAM.

      Linear mapped reader on a 4-node machine with 64G RAM and 48 CPUs

                                                 4.2.0-rc1          4.2.0-rc1
                                                   vanilla       flushfull-v7
      Ops lru-file-mmap-read-elapsed      159.62 (  0.00%)   120.68 ( 24.40%)
      Ops lru-file-mmap-read-time_range    30.59 (  0.00%)     2.80 ( 90.85%)
      Ops lru-file-mmap-read-time_stddv     6.70 (  0.00%)     0.64 ( 90.38%)

                 4.2.0-rc1    4.2.0-rc1
                   vanilla flushfull-v7
      User          581.00       611.43
      System       5804.93      4111.76
      Elapsed       161.03       122.12

      This is showing that the readers completed 24.40% faster with 29% less
      system CPU time.  From vmstats, it is known that the vanilla kernel was
      interrupted roughly 900K times per second during the steady phase of the
      test and the patched kernel was interrupts 180K times per second.

      The impact is lower on a single socket machine.

                                                 4.2.0-rc1          4.2.0-rc1
                                                   vanilla       flushfull-v7
      Ops lru-file-mmap-read-elapsed       25.33 (  0.00%)    20.38 ( 19.54%)
      Ops lru-file-mmap-read-time_range     0.91 (  0.00%)     1.44 (-58.24%)
      Ops lru-file-mmap-read-time_stddv     0.28 (  0.00%)     0.47 (-65.34%)

                 4.2.0-rc1    4.2.0-rc1
                   vanilla flushfull-v7
      User           58.09        57.64
      System        111.82        76.56
      Elapsed        27.29        22.55

      It's still a noticeable improvement with vmstat showing interrupts went
      from roughly 500K per second to 45K per second.

      The patch will have no impact on workloads with no memory pressure or have
      relatively few mapped pages.  It will have an unpredictable impact on the
      workload running on the CPU being flushed as it'll depend on how many TLB
      entries need to be refilled and how long that takes.  Worst case, the TLB
      will be completely cleared of active entries when the target PFNs were not
      resident at all.

      [sasha.levin@xxxxxxxxxx: trace tlb flush after disabling preemption in 
try_to_unmap_flush]
      Signed-off-by: Mel Gorman <mgorman@xxxxxxx>
      Reviewed-by: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Acked-by: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 5b74283ab251b9db55cbbe31d19ca72482103290
  Author: Mel Gorman <mgorman@xxxxxxx>
  Date:   Fri Sep 4 15:47:29 2015 -0700

      x86, mm: trace when an IPI is about to be sent

      When unmapping pages it is necessary to flush the TLB.  If that page was
      accessed by another CPU then an IPI is used to flush the remote CPU.  That
      is a lot of IPIs if kswapd is scanning and unmapping >100K pages per
      second.

      There already is a window between when a page is unmapped and when it is
      TLB flushed.  This series increases the window so multiple pages can be
      flushed using a single IPI.  This should be safe or the kernel is hosed
      already.

      Patch 1 simply made the rest of the series easier to write as ftrace
              could identify all the senders of TLB flush IPIS.

      Patch 2 tracks what CPUs potentially map a PFN and then sends an IPI
              to flush the entire TLB.

      Patch 3 tracks when there potentially are writable TLB entries that
              need to be batched differently

      Patch 4 increases SWAP_CLUSTER_MAX to further batch flushes

      The performance impact is documented in the changelogs but in the 
optimistic
      case on a 4-socket machine the full series reduces interrupts from 900K
      interrupts/second to 60K interrupts/second.

      This patch (of 4):

      It is easy to trace when an IPI is received to flush a TLB but harder to
      detect what event sent it.  This patch makes it easy to identify the
      source of IPIs being transmitted for TLB flushes on x86.

      Signed-off-by: Mel Gorman <mgorman@xxxxxxx>
      Reviewed-by: Rik van Riel <riel@xxxxxxxxxx>
      Reviewed-by: Dave Hansen <dave.hansen@xxxxxxxxx>
      Acked-by: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c47174fc362a089b1125174258e53ef4a69ce6b8
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:47:23 2015 -0700

      userfaultfd: selftest

      This test allocates two virtual areas and bounces the physical memory
      across the two virtual areas using only userfaultfd.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Shuah Khan <shuah.kh@xxxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 2c5b7e1be74ff0175dedbbd325abe9f0dbbb09ae
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:47:23 2015 -0700

      userfaultfd: avoid missing wakeups during refile in userfaultfd_read

      During the refile in userfaultfd_read both waitqueues could look empty to
      the lockless wake_userfault().  Use a seqcount to prevent this false
      negative that could leave an userfault blocked.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 230c92a8797e0e717c6732de0fffdd5726c0f48f
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:47:20 2015 -0700

      userfaultfd: propagate the full address in THP faults

      The THP faults were not propagating the original fault address.  The
      latest version of the API with uffd.arg.pagefault.address is supposed to
      propagate the full address through THP faults.

      This was not a kernel crashing bug and it wouldn't risk to corrupt user
      memory, but it would cause a SIGBUS failure because the wrong page was
      being copied.

      For various reasons this wasn't easily reproducible in the qemu workload,
      but the strestest exposed the problem immediately.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit dfa37dc3fc1f6f81a6900d0e561c02362f4817f6
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:47:18 2015 -0700

      userfaultfd: allow signals to interrupt a userfault

      This is only simple to achieve if the userfault is going to return to
      userland (not to the kernel) because we can avoid returning VM_FAULT_RETRY
      despite we temporarily released the mmap_sem.  The fault would just be
      retried by userland then.  This is safe at least on x86 and powerpc (the
      two archs with the syscall implemented so far).

      Hint to verify for which archs this is safe: after handle_mm_fault
      returns, no access to data structures protected by the mmap_sem must be
      done by the fault code in arch/*/mm/fault.c until up_read(&mm->mmap_sem)
      is called.

      This has two main benefits: signals can run with lower latency in
      production (signals aren't blocked by userfaults and userfaults are
      immediately repeated after signal processing) and gdb can then trivially
      debug the threads blocked in this kind of userfaults coming directly from
      userland.

      On a side note: while gdb has a need to get signal processed, coredumps
      always worked perfectly with userfaults, no matter if the userfault is
      triggered by GUP a kernel copy_user or directly from userland.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit e6485a47b758cae04a496764a1095961ee3249e4
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:47:15 2015 -0700

      userfaultfd: require UFFDIO_API before other ioctls

      UFFDIO_API was already forced before read/poll could work.  This makes the
      code more strict to force it also for all other ioctls.

      All users would already have been required to call UFFDIO_API before
      invoking other ioctls but this makes it more explicit.

      This will ensure we can change all ioctls (all but UFFDIO_API/struct
      uffdio_api) with a bump of uffdio_api.api.

      There's no actual plan or need to change the API or the ioctl, the current
      API already should cover fine even the non cooperative usage, but this is
      just for the longer term future just in case.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ad465cae96b456b48d26c96f27a0577ba443472a
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:47:11 2015 -0700

      userfaultfd: UFFDIO_COPY and UFFDIO_ZEROPAGE

      These two ioctl allows to either atomically copy or to map zeropages
      into the virtual address space. This is used by the thread that opened
      the userfaultfd to resolve the userfaults.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit b6ebaedb4cb1a18220ae626c3a9e184ee39dd248
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:47:08 2015 -0700

      userfaultfd: avoid mmap_sem read recursion in mcopy_atomic

      If the rwsem starves writers it wasn't strictly a bug but lockdep
      doesn't like it and this avoids depending on lowlevel implementation
      details of the lock.

      [akpm@xxxxxxxxxxxxxxxxxxxx: delete weird BUILD_BUG_ON()]
      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c1a4de99fada21e2e9251e52cbb51eff5aadc757
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:47:04 2015 -0700

      userfaultfd: mcopy_atomic|mfill_zeropage: UFFDIO_COPY|UFFDIO_ZEROPAGE 
preparation

      This implements mcopy_atomic and mfill_zeropage that are the lowlevel
      VM methods that are invoked respectively by the UFFDIO_COPY and
      UFFDIO_ZEROPAGE userfaultfd commands.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1f1c6f075904c241f9e44eb37efa8777141fc938
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:47:01 2015 -0700

      userfaultfd: UFFDIO_COPY|UFFDIO_ZEROPAGE uAPI

      This implements the uABI of UFFDIO_COPY and UFFDIO_ZEROPAGE.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1380fca084743fef8d17e59b273473393944ce58
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:58 2015 -0700

      userfaultfd: activate syscall

      This activates the userfaultfd syscall.

      [sfr@xxxxxxxxxxxxxxxx: activate syscall fix]
      [akpm@xxxxxxxxxxxxxxxxxxxx: don't enable userfaultfd on powerpc]
      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit a14c151e567cb2c3e62611da808a8bdab86fdee5
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:54 2015 -0700

      userfaultfd: buildsystem activation

      This allows to select the userfaultfd during configuration to build it.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 8d2afd96c20316d112e04d935d9e09150e988397
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:51 2015 -0700

      userfaultfd: solve the race between UFFDIO_COPY|ZEROPAGE and read

      Solve in-kernel the race between UFFDIO_COPY|ZEROPAGE and
      userfaultfd_read if they are run on different threads simultaneously.

      Until now qemu solved the race in userland: the race was explicitly
      and intentionally left for userland to solve. However we can also
      solve it in kernel.

      Requiring all users to solve this race if they use two threads (one
      for the background transfer and one for the userfault reads) isn't
      very attractive from an API prospective, furthermore this allows to
      remove a whole bunch of mutex and bitmap code from qemu, making it
      faster. The cost of __get_user_pages_fast should be insignificant
      considering it scales perfectly and the pagetables are already hot in
      the CPU cache, compared to the overhead in userland to maintain those
      structures.

      Applying this patch is backwards compatible with respect to the
      userfaultfd userland API, however reverting this change wouldn't be
      backwards compatible anymore.

      Without this patch qemu in the background transfer thread, has to read
      the old state, and do UFFDIO_WAKE if old_state is missing but it
      become REQUESTED by the time it tries to set it to RECEIVED (signaling
      the other side received an userfault).

          vcpu                background_thr userfault_thr
          -----               -----          -----
          vcpu0 handle_mm_fault()

                              postcopy_place_page
                              read old_state -> MISSING
                              UFFDIO_COPY 0x7fb76a139000 (no wakeup, still 
pending)

          vcpu0 fault at 0x7fb76a139000 enters handle_userfault
          poll() is kicked

                                              poll() -> POLLIN
                                              read() -> 0x7fb76a139000
                                              
postcopy_pmi_change_state(MISSING, REQUESTED) -> REQUESTED

                              tmp_state = postcopy_pmi_change_state(old_state, 
RECEIVED) -> REQUESTED
                              /* check that no userfault raced with UFFDIO_COPY 
*/
                              if (old_state == MISSING && tmp_state == 
REQUESTED)
                                      UFFDIO_WAKE from background thread

      And a second case where a UFFDIO_WAKE would be needed is in the userfault 
thread:

          vcpu                background_thr userfault_thr
          -----               -----          -----
          vcpu0 handle_mm_fault()

                              postcopy_place_page
                              read old_state -> MISSING
                              UFFDIO_COPY 0x7fb76a139000 (no wakeup, still 
pending)
                              tmp_state = postcopy_pmi_change_state(old_state, 
RECEIVED) -> RECEIVED

          vcpu0 fault at 0x7fb76a139000 enters handle_userfault
          poll() is kicked

                                              poll() -> POLLIN
                                              read() -> 0x7fb76a139000

                                              if 
(postcopy_pmi_change_state(MISSING, REQUESTED) == RECEIVED)
                                                      UFFDIO_WAKE from 
userfault thread

      This patch removes the need of both UFFDIO_WAKE and of the associated
      per-page tristate as well.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3004ec9cabf49f43fae2b2bd1855a4720f1def7a
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:48 2015 -0700

      userfaultfd: allocate the userfaultfd_ctx cacheline aligned

      Use proper slab to guarantee alignment.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 15b726ef048b31a24b3fefb6863083a25fe34800
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:44 2015 -0700

      userfaultfd: optimize read() and poll() to be O(1)

      This makes read O(1) and poll that was already O(1) becomes lockless.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ba85c702e4b247393ffe9e3fbc13d8aee7b02059
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:41 2015 -0700

      userfaultfd: wake pending userfaults

      This is an optimization but it's a userland visible one and it affects
      the API.

      The downside of this optimization is that if you call poll() and you
      get POLLIN, read(ufd) may still return -EAGAIN. The blocked userfault
      may be waken by a different thread, before read(ufd) comes
      around. This in short means that poll() isn't really usable if the
      userfaultfd is opened in blocking mode.

      userfaults won't wait in "pending" state to be read anymore and any
      UFFDIO_WAKE or similar operations that has the objective of waking
      userfaults after their resolution, will wake all blocked userfaults
      for the resolved range, including those that haven't been read() by
      userland yet.

      The behavior of poll() becomes not standard, but this obviates the
      need of "spurious" UFFDIO_WAKE and it lets the userland threads to
      restart immediately without requiring an UFFDIO_WAKE. This is even
      more significant in case of repeated faults on the same address from
      multiple threads.

      This optimization is justified by the measurement that the number of
      spurious UFFDIO_WAKE accounts for 5% and 10% of the total
      userfaults for heavy workloads, so it's worth optimizing those away.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit a9b85f9415fd9e529d03299e5335433f614ec1fb
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:37 2015 -0700

      userfaultfd: change the read API to return a uffd_msg

      I had requests to return the full address (not the page aligned one) to
      userland.

      It's not entirely clear how the page offset could be relevant because
      userfaults aren't like SIGBUS that can sigjump to a different place and it
      actually skip resolving the fault depending on a page offset.  There's
      currently no real way to skip the fault especially because after a
      UFFDIO_COPY|ZEROPAGE, the fault is optimized to be retried within the
      kernel without having to return to userland first (not even self modifying
      code replacing the .text that touched the faulting address would prevent
      the fault to be repeated).  Userland cannot skip repeating the fault even
      more so if the fault was triggered by a KVM secondary page fault or any
      get_user_pages or any copy-user inside some syscall which will return to
      kernel code.  The second time FAULT_FLAG_RETRY_NOWAIT won't be set leading
      to a SIGBUS being raised because the userfault can't wait if it cannot
      release the mmap_map first (and FAULT_FLAG_RETRY_NOWAIT is required for
      that).

      Still returning userland a proper structure during the read() on the uffd,
      can allow to use the current UFFD_API for the future non-cooperative
      extensions too and it looks cleaner as well.  Once we get additional
      fields there's no point to return the fault address page aligned anymore
      to reuse the bits below PAGE_SHIFT.

      The only downside is that the read() syscall will read 32bytes instead of
      8bytes but that's not going to be measurable overhead.

      The total number of new events that can be extended or of new future bits
      for already shipped events, is limited to 64 by the features field of the
      uffdio_api structure.  If more will be needed a bump of UFFD_API will be
      required.

      [akpm@xxxxxxxxxxxxxxxxxxxx: use __packed]
      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3f602d2724b1f7d2d27ddcd7963a040a5890fd16
  Author: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:46:34 2015 -0700

      userfaultfd: Rename uffd_api.bits into .features

      This is (seems to be) the minimal thing that is required to unblock
      standard uffd usage from the non-cooperative one.  Now more bits can be
      added to the features field indicating e.g.  UFFD_FEATURE_FORK and others
      needed for the latter use-case.

      Signed-off-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 86039bd3b4e6a1129318cbfed4e0a6e001656635
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:31 2015 -0700

      userfaultfd: add new syscall to provide memory externalization

      Once an userfaultfd has been created and certain region of the process
      virtual address space have been registered into it, the thread responsible
      for doing the memory externalization can manage the page faults in
      userland by talking to the kernel using the userfaultfd protocol.

      poll() can be used to know when there are new pending userfaults to be
      read (POLLIN).

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Cc: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c1294d05de5df1ab8c93aa13c531782ede907e14
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:27 2015 -0700

      userfaultfd: prevent khugepaged to merge if userfaultfd is armed

      If userfaultfd is armed on a certain vma we can't "fill" the holes with
      zeroes or we'll break the userland on demand paging.  The holes if the
      userfault is armed, are really missing information (not zeroes) that the
      userland has to load from network or elsewhere.

      The same issue happens for wrprotected ptes that we can't just convert
      into a single writable pmd_trans_huge.

      We could however in theory still merge across zeropages if only
      VM_UFFD_MISSING is set (so if VM_UFFD_WP is not set)...  that could be
      slightly improved but it'd be much more complex code for a tiny corner
      case.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 19a809afe2fe089317226bbe5c5a1ce7f53dcdca
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:24 2015 -0700

      userfaultfd: teach vma_merge to merge across vma->vm_userfaultfd_ctx

      vma->vm_userfaultfd_ctx is yet another vma parameter that vma_merge
      must be aware about so that we can merge vmas back like they were
      originally before arming the userfaultfd on some memory range.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 6b251fc96cf2cdf1ce4b5db055547e2a5679bc77
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:20 2015 -0700

      userfaultfd: call handle_userfault() for userfaultfd_missing() faults

      This is where the page faults must be modified to call
      handle_userfault() if userfaultfd_missing() is true (so if the
      vma->vm_flags had VM_UFFD_MISSING set).

      handle_userfault() then takes care of blocking the page fault and
      delivering it to userland.

      The fault flags must also be passed as parameter so the "read|write"
      kind of fault can be passed to userland.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 16ba6f811dfe44bc14f7946a4b257b85476fc16e
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:17 2015 -0700

      userfaultfd: add VM_UFFD_MISSING and VM_UFFD_WP

      These two flags gets set in vma->vm_flags to tell the VM common code
      if the userfaultfd is armed and in which mode (only tracking missing
      faults, only tracking wrprotect faults or both). If neither flags is
      set it means the userfaultfd is not armed on the vma.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 745f234be12b6191b15eae8dd415cc81a9137f47
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:14 2015 -0700

      userfaultfd: add vm_userfaultfd_ctx to the vm_area_struct

      This adds the vm_userfaultfd_ctx to the vm_area_struct.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 932b18e0aec65acb089f4bd8761ee85e70f8eb6a
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:10 2015 -0700

      userfaultfd: linux/userfaultfd_k.h

      Kernel header defining the methods needed by the VM common code to
      interact with the userfaultfd.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1038628d80e96e3a086189172d9be8eb85ecfabf
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:04 2015 -0700

      userfaultfd: uAPI

      Defines the uAPI of the userfaultfd, notably the ioctl numbers and 
protocol.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 51360155eccb907ff8635bd10fc7de876408c2e0
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:04 2015 -0700

      userfaultfd: waitqueue: add nr wake parameter to __wake_up_locked_key

      userfaultfd needs to wake all waitqueues (pass 0 as nr parameter), instead
      of the current hardcoded 1 (that would wake just the first waitqueue in
      the head list).

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 25edd8bffd0f7563f0c04c1d219eb89061ce9886
  Author: Andrea Arcangeli <aarcange@xxxxxxxxxx>
  Date:   Fri Sep 4 15:46:00 2015 -0700

      userfaultfd: linux/Documentation/vm/userfaultfd.txt

      This is the latest userfaultfd patchset.  The postcopy live migration
      feature on the qemu side is mostly ready to be merged and it entirely
      depends on the userfaultfd syscall to be merged as well.  So it'd be great
      if this patchset could be reviewed for merging in -mm.

      Userfaults allow to implement on demand paging from userland and more
      generally they allow userland to more efficiently take control of the
      behavior of page faults than what was available before (PROT_NONE +
      SIGSEGV trap).

      The use cases are:

      1) KVM postcopy live migration (one form of cloud memory
         externalization).

         KVM postcopy live migration is the primary driver of this work:

          
http://blog.zhaw.ch/icclab/setting-up-post-copy-live-migration-in-openstack/
          http://lists.gnu.org/archive/html/qemu-devel/2015-02/msg04873.html

      2) postcopy live migration of binaries inside linux containers:

          http://thread.gmane.org/gmane.linux.kernel.mm/132662

      3) KVM postcopy live snapshotting (allowing to limit/throttle the
         memory usage, unlike fork would, plus the avoidance of fork
         overhead in the first place).

         While the wrprotect tracking is not implemented yet, the syscall API is
         already contemplating the wrprotect fault tracking and it's generic 
enough
         to allow its later implementation in a backwards compatible fashion.

      4) KVM userfaults on shared memory. The UFFDIO_COPY lowlevel method
         should be extended to work also on tmpfs and then the
         uffdio_register.ioctls will notify userland that UFFDIO_COPY is
         available even when the registered virtual memory range is tmpfs
         backed.

      5) alternate mechanism to notify web browsers or apps on embedded
         devices that volatile pages have been reclaimed. This basically
         avoids the need to run a syscall before the app can access with the
         CPU the virtual regions marked volatile. This depends on point 4)
         to be fulfilled first, as volatile pages happily apply to tmpfs.

      Even though there wasn't a real use case requesting it yet, it also
      allows to implement distributed shared memory in a way that readonly
      shared mappings can exist simultaneously in different hosts and they
      can be become exclusive at the first wrprotect fault.

      This patch (of 22):

      Add documentation.

      Signed-off-by: Andrea Arcangeli <aarcange@xxxxxxxxxx>
      Acked-by: Pavel Emelyanov <xemul@xxxxxxxxxxxxx>
      Cc: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Cc: zhang.zhanghailiang@xxxxxxxxxx
      Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx>
      Cc: Andres Lagar-Cavilla <andreslc@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Hugh Dickins <hughd@xxxxxxxxxx>
      Cc: Peter Feiner <pfeiner@xxxxxxxxxx>
      Cc: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: "Huangpeng (Peter)" <peter.huangpeng@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 2d16e0fd3265b42648d267b7adb837db9798edaf
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:45:57 2015 -0700

      mm/slab.h: fix argument order in cache_from_obj's error message

      While debugging a networking issue, I hit a condition that triggered an
      object to be freed into the wrong kmem cache, and thus triggered the
      warning in cache_from_obj().

      The arguments in the error message are in wrong order: the location
      of the object's kmem cache is in cachep, not s.

      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Pekka Enberg <penberg@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 45eb00cd3a034b8448f52fd9074e9b2b11d857c1
  Author: Joonsoo Kim <js1304@xxxxxxxxx>
  Date:   Fri Sep 4 15:45:54 2015 -0700

      mm/slub: don't wait for high-order page allocation

      Description is almost copied from commit fb05e7a89f50 ("net: don't wait
      for order-3 page allocation").

      I saw excessive direct memory reclaim/compaction triggered by slub.  This
      causes performance issues and add latency.  Slub uses high-order
      allocation to reduce internal fragmentation and management overhead.  But,
      direct memory reclaim/compaction has high overhead and the benefit of
      high-order allocation can't compensate the overhead of both work.

      This patch makes auxiliary high-order allocation atomic.  If there is no
      memory pressure and memory isn't fragmented, the alloction will still
      success, so we don't sacrifice high-order allocation's benefit here.  If
      the atomic allocation fails, direct memory reclaim/compaction will not be
      triggered, allocation fallback to low-order immediately, hence the direct
      memory reclaim/compaction overhead is avoided.  In the allocation failure
      case, kswapd is waken up and trying to make high-order freepages, so
      allocation could success next time.

      Following is the test to measure effect of this patch.

      System: QEMU, CPU 8, 512 MB
      Mem: 25% memory is allocated at random position to make fragmentation.
       Memory-hogger occupies 150 MB memory.
      Workload: hackbench -g 20 -l 1000

      Average result by 10 runs (Base va Patched)

      elapsed_time(s): 4.3468 vs 2.9838
      compact_stall: 461.7 vs 73.6
      pgmigrate_success: 28315.9 vs 7256.1

      Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Pekka Enberg <penberg@xxxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Shaohua Li <shli@xxxxxx>
      Cc: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Eric Dumazet <edumazet@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 80da026a8e5da83b6ab029807844587960490e2b
  Author: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:45:51 2015 -0700

      mm/slub: fix slab double-free in case of duplicate sysfs filename

      sysfs_slab_add() shouldn't call kobject_put at error path: this puts last
      reference of kmem-cache kobject and frees it.  Kmem cache will be freed
      second time at error path in kmem_cache_create().

      For example this happens when slub debug was enabled in runtime and
      somebody creates new kmem cache:

      # echo 1 | tee /sys/kernel/slab/*/sanity_checks
      # modprobe configfs

      "configfs_dir_cache" cannot be merged because existing slab have debug and
      cannot create new slab because unique name ":t-0000096" already taken.

      Signed-off-by: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
      Acked-by: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Pekka Enberg <penberg@xxxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 588f8ba913d35a667407afa29444bf2f94e03d19
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:45:48 2015 -0700

      mm/slub: move slab initialization into irq enabled region

      Initializing a new slab can introduce rather large latencies because most
      of the initialization runs always with interrupts disabled.

      There is no point in doing so.  The newly allocated slab is not visible
      yet, so there is no reason to protect it against concurrent alloc/free.

      Move the expensive parts of the initialization into allocate_slab(), so
      for all allocations with GFP_WAIT set, interrupts are enabled.

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Acked-by: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Pekka Enberg <penberg@xxxxxxxxxx>
      Acked-by: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Cc: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
      Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3eed034d045ce93a40e232a6bd5f86127342053a
  Author: Jesper Dangaard Brouer <brouer@xxxxxxxxxx>
  Date:   Fri Sep 4 15:45:45 2015 -0700

      slub: add support for kmem_cache_debug in bulk calls

      Per request of Joonsoo Kim adding kmem debug support.

      I've tested that when debugging is disabled, then there is almost no
      performance impact as this code basically gets removed by the compiler.

      Need some guidance in enabling and testing this.

      bulk- PREVIOUS                  - THIS-PATCH
        1 -  43 cycles(tsc) 10.811 ns -  44 cycles(tsc) 11.236 ns  improved  
-2.3%
        2 -  27 cycles(tsc)  6.867 ns -  28 cycles(tsc)  7.019 ns  improved  
-3.7%
        3 -  21 cycles(tsc)  5.496 ns -  22 cycles(tsc)  5.526 ns  improved  
-4.8%
        4 -  24 cycles(tsc)  6.038 ns -  19 cycles(tsc)  4.786 ns  improved  
20.8%
        8 -  17 cycles(tsc)  4.280 ns -  18 cycles(tsc)  4.572 ns  improved  
-5.9%
       16 -  17 cycles(tsc)  4.483 ns -  18 cycles(tsc)  4.658 ns  improved  
-5.9%
       30 -  18 cycles(tsc)  4.531 ns -  18 cycles(tsc)  4.568 ns  improved   
0.0%
       32 -  58 cycles(tsc) 14.586 ns -  65 cycles(tsc) 16.454 ns  improved 
-12.1%
       34 -  53 cycles(tsc) 13.391 ns -  63 cycles(tsc) 15.932 ns  improved 
-18.9%
       48 -  65 cycles(tsc) 16.268 ns -  50 cycles(tsc) 12.506 ns  improved  
23.1%
       64 -  53 cycles(tsc) 13.440 ns -  63 cycles(tsc) 15.929 ns  improved 
-18.9%
      128 -  79 cycles(tsc) 19.899 ns -  86 cycles(tsc) 21.583 ns  improved  
-8.9%
      158 -  90 cycles(tsc) 22.732 ns -  90 cycles(tsc) 22.552 ns  improved   
0.0%
      250 -  95 cycles(tsc) 23.916 ns -  98 cycles(tsc) 24.589 ns  improved  
-3.2%

      Signed-off-by: Jesper Dangaard Brouer <brouer@xxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Pekka Enberg <penberg@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit fbd02630c6e3c60feecc4688f5f98b015d264516
  Author: Jesper Dangaard Brouer <brouer@xxxxxxxxxx>
  Date:   Fri Sep 4 15:45:43 2015 -0700

      slub: initial bulk free implementation

      This implements SLUB specific kmem_cache_free_bulk().  SLUB allocator now
      both have bulk alloc and free implemented.

      Choose to reenable local IRQs while calling slowpath __slab_free().  In
      worst case, where all objects hit slowpath call, the performance should
      still be faster than fallback function __kmem_cache_free_bulk(), because
      local_irq_{disable+enable} is very fast (7-cycles), while the fallback
      invokes this_cpu_cmpxchg() which is slightly slower (9-cycles).
      Nitpicking, this should be faster for N>=4, due to the entry cost of
      local_irq_{disable+enable}.

      Do notice that the save+restore variant is very expensive, this is key to
      why this optimization works.

      CPU: i7-4790K CPU @ 4.00GHz
       * local_irq_{disable,enable}:  7 cycles(tsc) - 1.821 ns
       * local_irq_{save,restore}  : 37 cycles(tsc) - 9.443 ns

      Measurements on CPU CPU i7-4790K @ 4.00GHz
      Baseline normal fastpath (alloc+free cost): 43 cycles(tsc) 10.834 ns

      Bulk- fallback                   - this-patch
        1 -  58 cycles(tsc) 14.542 ns  -  43 cycles(tsc) 10.811 ns  improved 
25.9%
        2 -  50 cycles(tsc) 12.659 ns  -  27 cycles(tsc)  6.867 ns  improved 
46.0%
        3 -  48 cycles(tsc) 12.168 ns  -  21 cycles(tsc)  5.496 ns  improved 
56.2%
        4 -  47 cycles(tsc) 11.987 ns  -  24 cycles(tsc)  6.038 ns  improved 
48.9%
        8 -  46 cycles(tsc) 11.518 ns  -  17 cycles(tsc)  4.280 ns  improved 
63.0%
       16 -  45 cycles(tsc) 11.366 ns  -  17 cycles(tsc)  4.483 ns  improved 
62.2%
       30 -  45 cycles(tsc) 11.433 ns  -  18 cycles(tsc)  4.531 ns  improved 
60.0%
       32 -  75 cycles(tsc) 18.983 ns  -  58 cycles(tsc) 14.586 ns  improved 
22.7%
       34 -  71 cycles(tsc) 17.940 ns  -  53 cycles(tsc) 13.391 ns  improved 
25.4%
       48 -  80 cycles(tsc) 20.077 ns  -  65 cycles(tsc) 16.268 ns  improved 
18.8%
       64 -  71 cycles(tsc) 17.799 ns  -  53 cycles(tsc) 13.440 ns  improved 
25.4%
      128 -  91 cycles(tsc) 22.980 ns  -  79 cycles(tsc) 19.899 ns  improved 
13.2%
      158 - 100 cycles(tsc) 25.241 ns  -  90 cycles(tsc) 22.732 ns  improved 
10.0%
      250 - 102 cycles(tsc) 25.583 ns  -  95 cycles(tsc) 23.916 ns  improved  
6.9%

      Signed-off-by: Jesper Dangaard Brouer <brouer@xxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Pekka Enberg <penberg@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ebe909e0fdb34b980c5cf636c495e4f0bb0dfda8
  Author: Jesper Dangaard Brouer <brouer@xxxxxxxxxx>
  Date:   Fri Sep 4 15:45:40 2015 -0700

      slub: improve bulk alloc strategy

      Call slowpath __slab_alloc() from within the bulk loop, as the side-effect
      of this call likely repopulates c->freelist.

      Choose to reenable local IRQs while calling slowpath.

      Saving some optimizations for later.  E.g.  it is possible to extract
      parts of __slab_alloc() and avoid the unnecessary and expensive (37
      cycles) local_irq_{save,restore}.  For now, be happy calling
      __slab_alloc() this lower icache impact of this func and I don't have to
      worry about correctness.

      Measurements on CPU CPU i7-4790K @ 4.00GHz
      Baseline normal fastpath (alloc+free cost): 42 cycles(tsc) 10.601 ns

      Bulk- fallback                   - this-patch
        1 -  58 cycles(tsc) 14.516 ns  -  49 cycles(tsc) 12.459 ns  improved 
15.5%
        2 -  51 cycles(tsc) 12.930 ns  -  38 cycles(tsc)  9.605 ns  improved 
25.5%
        3 -  49 cycles(tsc) 12.274 ns  -  34 cycles(tsc)  8.525 ns  improved 
30.6%
        4 -  48 cycles(tsc) 12.058 ns  -  32 cycles(tsc)  8.036 ns  improved 
33.3%
        8 -  46 cycles(tsc) 11.609 ns  -  31 cycles(tsc)  7.756 ns  improved 
32.6%
       16 -  45 cycles(tsc) 11.451 ns  -  32 cycles(tsc)  8.148 ns  improved 
28.9%
       30 -  79 cycles(tsc) 19.865 ns  -  68 cycles(tsc) 17.164 ns  improved 
13.9%
       32 -  76 cycles(tsc) 19.212 ns  -  66 cycles(tsc) 16.584 ns  improved 
13.2%
       34 -  74 cycles(tsc) 18.600 ns  -  63 cycles(tsc) 15.954 ns  improved 
14.9%
       48 -  88 cycles(tsc) 22.092 ns  -  77 cycles(tsc) 19.373 ns  improved 
12.5%
       64 -  80 cycles(tsc) 20.043 ns  -  68 cycles(tsc) 17.188 ns  improved 
15.0%
      128 -  99 cycles(tsc) 24.818 ns  -  89 cycles(tsc) 22.404 ns  improved 
10.1%
      158 -  99 cycles(tsc) 24.977 ns  -  92 cycles(tsc) 23.089 ns  improved  
7.1%
      250 - 106 cycles(tsc) 26.552 ns  -  99 cycles(tsc) 24.785 ns  improved  
6.6%

      Signed-off-by: Jesper Dangaard Brouer <brouer@xxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Pekka Enberg <penberg@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 994eb764ec5ad57c9b7c5e72b892205039a84b69
  Author: Jesper Dangaard Brouer <brouer@xxxxxxxxxx>
  Date:   Fri Sep 4 15:45:37 2015 -0700

      slub bulk alloc: extract objects from the per cpu slab

      First piece: acceleration of retrieval of per cpu objects

      If we are allocating lots of objects then it is advantageous to disable
      interrupts and avoid the this_cpu_cmpxchg() operation to get these objects
      faster.

      Note that we cannot do the fast operation if debugging is enabled, because
      we would have to add extra code to do all the debugging checks.  And it
      would not be fast anyway.

      Note also that the requirement of having interrupts disabled avoids having
      to do processor flag operations.

      Allocate as many objects as possible in the fast way and then fall back to
      the generic implementation for the rest of the objects.

      Measurements on CPU CPU i7-4790K @ 4.00GHz
      Baseline normal fastpath (alloc+free cost): 42 cycles(tsc) 10.554 ns

      Bulk- fallback                   - this-patch
        1 -  57 cycles(tsc) 14.432 ns  -  48 cycles(tsc) 12.155 ns  improved 
15.8%
        2 -  50 cycles(tsc) 12.746 ns  -  37 cycles(tsc)  9.390 ns  improved 
26.0%
        3 -  48 cycles(tsc) 12.180 ns  -  33 cycles(tsc)  8.417 ns  improved 
31.2%
        4 -  48 cycles(tsc) 12.015 ns  -  32 cycles(tsc)  8.045 ns  improved 
33.3%
        8 -  46 cycles(tsc) 11.526 ns  -  30 cycles(tsc)  7.699 ns  improved 
34.8%
       16 -  45 cycles(tsc) 11.418 ns  -  32 cycles(tsc)  8.205 ns  improved 
28.9%
       30 -  80 cycles(tsc) 20.246 ns  -  73 cycles(tsc) 18.328 ns  improved  
8.8%
       32 -  79 cycles(tsc) 19.946 ns  -  72 cycles(tsc) 18.208 ns  improved  
8.9%
       34 -  78 cycles(tsc) 19.659 ns  -  71 cycles(tsc) 17.987 ns  improved  
9.0%
       48 -  86 cycles(tsc) 21.516 ns  -  82 cycles(tsc) 20.566 ns  improved  
4.7%
       64 -  93 cycles(tsc) 23.423 ns  -  89 cycles(tsc) 22.480 ns  improved  
4.3%
      128 - 100 cycles(tsc) 25.170 ns  -  99 cycles(tsc) 24.871 ns  improved  
1.0%
      158 - 102 cycles(tsc) 25.549 ns  - 101 cycles(tsc) 25.375 ns  improved  
1.0%
      250 - 101 cycles(tsc) 25.344 ns  - 100 cycles(tsc) 25.182 ns  improved  
1.0%

      Signed-off-by: Christoph Lameter <cl@xxxxxxxxx>
      Signed-off-by: Jesper Dangaard Brouer <brouer@xxxxxxxxxx>
      Cc: Pekka Enberg <penberg@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 484748f0b65a1950b2b93f444a2287e8dd2cedd6
  Author: Christoph Lameter <cl@xxxxxxxxx>
  Date:   Fri Sep 4 15:45:34 2015 -0700

      slab: infrastructure for bulk object allocation and freeing

      Add the basic infrastructure for alloc/free operations on pointer arrays.
      It includes a generic function in the common slab code that is used in
      this infrastructure patch to create the unoptimized functionality for slab
      bulk operations.

      Allocators can then provide optimized allocation functions for situations
      in which large numbers of objects are needed.  These optimization may
      avoid taking locks repeatedly and bypass metadata creation if all objects
      in slab pages can be used to provide the objects required.

      Allocators can extend the skeletons provided and add their own code to the
      bulk alloc and free functions.  They can keep the generic allocation and
      freeing and just fall back to those if optimizations would not work (like
      for example when debugging is on).

      Signed-off-by: Christoph Lameter <cl@xxxxxxxxx>
      Signed-off-by: Jesper Dangaard Brouer <brouer@xxxxxxxxxx>
      Cc: Pekka Enberg <penberg@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 2ae44005b678431a5c7a55dafcd09421ba3fadf0
  Author: Jesper Dangaard Brouer <brouer@xxxxxxxxxx>
  Date:   Fri Sep 4 15:45:31 2015 -0700

      slub: fix spelling succedd to succeed

      With this patchset the SLUB allocator now has both bulk alloc and free
      implemented.

      This patchset mostly optimizes the "fastpath" where objects are available
      on the per CPU fastpath page.  This mostly amortize the less-heavy
      none-locked cmpxchg_double used on fastpath.

      The "fallback" bulking (e.g __kmem_cache_free_bulk) provides a good basis
      for comparison.  Measurements[1] of the fallback functions
      __kmem_cache_{free,alloc}_bulk have been copied from slab_common.c and
      forced "noinline" to force a function call like slab_common.c.

      Measurements on CPU CPU i7-4790K @ 4.00GHz
      Baseline normal fastpath (alloc+free cost): 42 cycles(tsc) 10.601 ns

      Measurements last-patch with disabled debugging:

      Bulk- fallback                   - this-patch
        1 -  57 cycles(tsc) 14.448 ns  -  44 cycles(tsc) 11.236 ns  improved 
22.8%
        2 -  51 cycles(tsc) 12.768 ns  -  28 cycles(tsc)  7.019 ns  improved 
45.1%
        3 -  48 cycles(tsc) 12.232 ns  -  22 cycles(tsc)  5.526 ns  improved 
54.2%
        4 -  48 cycles(tsc) 12.025 ns  -  19 cycles(tsc)  4.786 ns  improved 
60.4%
        8 -  46 cycles(tsc) 11.558 ns  -  18 cycles(tsc)  4.572 ns  improved 
60.9%
       16 -  45 cycles(tsc) 11.458 ns  -  18 cycles(tsc)  4.658 ns  improved 
60.0%
       30 -  45 cycles(tsc) 11.499 ns  -  18 cycles(tsc)  4.568 ns  improved 
60.0%
       32 -  79 cycles(tsc) 19.917 ns  -  65 cycles(tsc) 16.454 ns  improved 
17.7%
       34 -  78 cycles(tsc) 19.655 ns  -  63 cycles(tsc) 15.932 ns  improved 
19.2%
       48 -  68 cycles(tsc) 17.049 ns  -  50 cycles(tsc) 12.506 ns  improved 
26.5%
       64 -  80 cycles(tsc) 20.009 ns  -  63 cycles(tsc) 15.929 ns  improved 
21.3%
      128 -  94 cycles(tsc) 23.749 ns  -  86 cycles(tsc) 21.583 ns  improved  
8.5%
      158 -  97 cycles(tsc) 24.299 ns  -  90 cycles(tsc) 22.552 ns  improved  
7.2%
      250 - 102 cycles(tsc) 25.681 ns  -  98 cycles(tsc) 24.589 ns  improved  
3.9%

      Benchmarking shows impressive improvements in the "fastpath" with a small
      number of objects in the working set.  Once the working set increases,
      resulting in activating the "slowpath" (that contains the heavier locked
      cmpxchg_double) the improvement decreases.

      I'm currently working on also optimizing the "slowpath" (as network stack
      use-case hits this), but this patchset should provide a good foundation
      for further improvements.  Rest of my patch queue in this area needs some
      more work, but preliminary results are good.  I'm attending Netfilter
      Workshop[2] next week, and I'll hopefully return working on further
      improvements in this area.

      This patch (of 6):

      s/succedd/succeed/

      Signed-off-by: Jesper Dangaard Brouer <brouer@xxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Pekka Enberg <penberg@xxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ec6a90661a0d6ce1461d05c7a58a0a151154e14a
  Author: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
  Date:   Fri Sep 4 15:45:28 2015 -0700

      watchdog: rename watchdog_suspend() and watchdog_resume()

      Rename watchdog_suspend() to lockup_detector_suspend() and
      watchdog_resume() to lockup_detector_resume() to avoid confusion with the
      watchdog subsystem and to be consistent with the existing name
      lockup_detector_init().

      Also provide comment blocks to explain the watchdog_running and
      watchdog_suspended variables and their relationship.

      Signed-off-by: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
      Reviewed-by: Aaron Tomlin <atomlin@xxxxxxxxxx>
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Don Zickus <dzickus@xxxxxxxxxx>
      Cc: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 999bbe49ea0118b70ddf3f5d679f51dc7a97ae55
  Author: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
  Date:   Fri Sep 4 15:45:25 2015 -0700

      watchdog: use suspend/resume interface in fixup_ht_bug()

      Remove watchdog_nmi_disable_all() and watchdog_nmi_enable_all() since
      these functions are no longer needed.  If a subsystem has a need to
      deactivate the watchdog temporarily, it should utilize the
      watchdog_suspend() and watchdog_resume() functions.

      [akpm@xxxxxxxxxxxxxxxxxxxx: fix build with CONFIG_LOCKUP_DETECTOR=m]
      Signed-off-by: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
      Reviewed-by: Aaron Tomlin <atomlin@xxxxxxxxxx>
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Don Zickus <dzickus@xxxxxxxxxx>
      Cc: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d4bdd0b21c7652a8271f873cc755486b255c1bbd
  Author: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
  Date:   Fri Sep 4 15:45:21 2015 -0700

      watchdog: use park/unpark functions in update_watchdog_all_cpus()

      Remove update_watchdog() and restart_watchdog_hrtimer() since these
      functions are no longer needed.  Changes of parameters such as the sample
      period are honored at the time when the watchdog threads are being
      unparked.

      Signed-off-by: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
      Reviewed-by: Aaron Tomlin <atomlin@xxxxxxxxxx>
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Don Zickus <dzickus@xxxxxxxxxx>
      Cc: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 8c073d27d7ad293bf734cc8475689413afadab81
  Author: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
  Date:   Fri Sep 4 15:45:18 2015 -0700

      watchdog: introduce watchdog_suspend() and watchdog_resume()

      This interface can be utilized to deactivate the hard and soft lockup
      detector temporarily.  Callers are expected to minimize the duration of
      deactivation.  Multiple deactivations are allowed to occur in parallel but
      should be rare in practice.

      [akpm@xxxxxxxxxxxxxxxxxxxx: remove unneeded static initialization]
      Signed-off-by: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
      Reviewed-by: Aaron Tomlin <atomlin@xxxxxxxxxx>
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Don Zickus <dzickus@xxxxxxxxxx>
      Cc: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 81a4beef91ba4a9e8ad6054ca9933dff7e25ff28
  Author: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
  Date:   Fri Sep 4 15:45:15 2015 -0700

      watchdog: introduce watchdog_park_threads() and watchdog_unpark_threads()

      Originally watchdog_nmi_enable(cpu) and watchdog_nmi_disable(cpu) were
      only called in watchdog thread context.  However, the following commits
      utilize these functions outside of watchdog thread context too.

        commit 9809b18fcf6b8d8ec4d3643677345907e6b50eca
        Author: Michal Hocko <mhocko@xxxxxxx>
        Date:   Tue Sep 24 15:27:30 2013 -0700

            watchdog: update watchdog_thresh properly

        commit b3738d29323344da3017a91010530cf3a58590fc
        Author: Stephane Eranian <eranian@xxxxxxxxxx>
        Date:   Mon Nov 17 20:07:03 2014 +0100

            watchdog: Add watchdog enable/disable all functions

      Hence, it is now possible that these functions execute concurrently with
      the same 'cpu' argument.  This concurrency is problematic because per-cpu
      'watchdog_ev' can be accessed/modified without adequate synchronization.

      The patch series aims to address the above problem.  However, instead of
      introducing locks to protect per-cpu 'watchdog_ev' a different approach is
      taken: Invoke these functions by parking and unparking the watchdog
      threads (to ensure they are always called in watchdog thread context).

        static struct smp_hotplug_thread watchdog_threads = {
                 ...
                .park   = watchdog_disable, // calls watchdog_nmi_disable()
                .unpark = watchdog_enable,  // calls watchdog_nmi_enable()
        };

      Both previously mentioned commits call these functions in a similar way
      and thus in principle contain some duplicate code.  The patch series also
      avoids this duplication by providing a commonly usable mechanism.

      - Patch 1/4 introduces the watchdog_{park|unpark}_threads functions that
        park/unpark all watchdog threads specified in 'watchdog_cpumask'. They
        are intended to be called inside of kernel/watchdog.c only.

      - Patch 2/4 introduces the watchdog_{suspend|resume} functions which can
        be utilized by external callers to deactivate the hard and soft lockup
        detector temporarily.

      - Patch 3/4 utilizes watchdog_{park|unpark}_threads to replace some code
        that was introduced by commit 9809b18fcf6b8d8ec4d3643677345907e6b50eca.

      - Patch 4/4 utilizes watchdog_{suspend|resume} to replace some code that
        was introduced by commit b3738d29323344da3017a91010530cf3a58590fc.

      A few corner cases should be mentioned here for completeness.

      - kthread_park() of watchdog/N could hang if cpu N is already locked up.
        However, if watchdog is enabled the lockup will be detected anyway.

      - kthread_unpark() of watchdog/N could hang if cpu N got locked up after
        kthread_park(). The occurrence of this scenario should be _very_ rare
        in practice, in particular because it is not expected that temporary
        deactivation will happen frequently, and if it happens at all it is
        expected that the duration of deactivation will be short.

      This patch (of 4): introduce watchdog_park_threads() and 
watchdog_unpark_threads()

      These functions are intended to be used only from inside kernel/watchdog.c
      to park/unpark all watchdog threads that are specified in
      watchdog_cpumask.

      Signed-off-by: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
      Reviewed-by: Aaron Tomlin <atomlin@xxxxxxxxxx>
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Don Zickus <dzickus@xxxxxxxxxx>
      Cc: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Michal Hocko <mhocko@xxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit aacfbe6a9724bb6d66a656a5abcc681d5649ed92
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Fri Sep 4 15:45:12 2015 -0700

      kernel/watchdog: move NMI function header declarations from watchdog.h to 
nmi.h

      The kernel's NMI watchdog has nothing to do with the watchdog subsystem.
      Its header declarations should be in linux/nmi.h, not linux/watchdog.h.

      The code provided two sets of dummy functions if HARDLOCKUP_DETECTOR is
      not configured, one in the include file and one in kernel/watchdog.c.
      Remove the dummy functions from kernel/watchdog.c and use those from the
      include file.

      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Cc: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Don Zickus <dzickus@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 314b08ff5205420d956d14657e16d92c460a6f21
  Author: Frederic Weisbecker <fweisbec@xxxxxxxxx>
  Date:   Fri Sep 4 15:45:09 2015 -0700

      watchdog: simplify housekeeping affinity with the appropriate mask

      housekeeping_mask gathers all the CPUs that aren't part of the nohz_full
      set.  This is exactly what we want the watchdog to be affine to without
      the need to use complicated cpumask operations.

      Signed-off-by: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Reviewed-by: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Don Zickus <dzickus@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 230ec93909f00678401cb2d63b8b95f1dea68e40
  Author: Frederic Weisbecker <fweisbec@xxxxxxxxx>
  Date:   Fri Sep 4 15:45:06 2015 -0700

      smpboot: allow passing the cpumask on per-cpu thread registration

      It makes the registration cheaper and simpler for the smpboot per-cpu
      kthread users that don't need to always update the cpumask after threads
      creation.

      [sfr@xxxxxxxxxxxxxxxx: fix for allow passing the cpumask on per-cpu 
thread registration]
      Signed-off-by: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Reviewed-by: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Reviewed-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Don Zickus <dzickus@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
      Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3dd08c0c918f9bf058572ddbf26e7d6fb5674a5c
  Author: Frederic Weisbecker <fweisbec@xxxxxxxxx>
  Date:   Fri Sep 4 15:45:03 2015 -0700

      smpboot: make cleanup to mirror setup

      The per-cpu kthread cleanup() callback is the mirror of the setup()
      callback.  When the per-cpu kthread is started, it first calls setup()
      to initialize the resources which are then released by cleanup() when
      the kthread exits.

      Now since the introduction of a per-cpu kthread cpumask, the kthreads
      excluded by the cpumask on boot may happen to be parked immediately
      after their creation without taking the setup() stage, waiting to be
      asked to unpark to do so.  Then when smpboot_unregister_percpu_thread()
      is later called, the kthread is stopped without having ever called
      setup().

      But this triggers a bug as the kthread unconditionally calls cleanup()
      on exit but this doesn't mirror any setup().  Thus the kernel crashes
      because we try to free resources that haven't been initialized, as in
      the watchdog case:

          WATCHDOG disable 0
          WATCHDOG disable 1
          WATCHDOG disable 2
          BUG: unable to handle kernel NULL pointer dereference at           
(null)
          IP: hrtimer_active+0x26/0x60
          [...]
          Call Trace:
            hrtimer_try_to_cancel+0x1c/0x280
            hrtimer_cancel+0x1d/0x30
            watchdog_disable+0x56/0x70
            watchdog_cleanup+0xe/0x10
            smpboot_thread_fn+0x23c/0x2c0
            kthread+0xf8/0x110
            ret_from_fork+0x3f/0x70

      This bug is currently masked with explicit kthread unparking before
      kthread_stop() on smpboot_destroy_threads(). This forces a call to
      setup() and then unpark().

      We could fix this by unconditionally calling setup() on kthread entry.
      But setup() isn't always cheap.  In the case of watchdog it launches
      hrtimer, perf events, etc...  So we may as well like to skip it if there
      are chances the kthread will never be used, as in a reduced cpumask value.

      So let's simply do a state machine check before calling cleanup() that
      makes sure setup() has been called before mirroring it.

      And remove the nasty hack workaround.

      Signed-off-by: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Reviewed-by: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Reviewed-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Don Zickus <dzickus@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 5869b5064b0950afc447610c0f5d4134b71d9e94
  Author: Frederic Weisbecker <fweisbec@xxxxxxxxx>
  Date:   Fri Sep 4 15:45:00 2015 -0700

      smpboot: fix memory leak on error handling

      The cpumask is allocated before threads get created. If the latter step
      fails, we need to free the cpumask.

      Signed-off-by: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Reviewed-by: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Reviewed-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Don Zickus <dzickus@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Ulrich Obergfell <uobergfe@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit a068acf2ee77693e0bf39d6e07139ba704f461c3
  Author: Kees Cook <keescook@xxxxxxxxxxxx>
  Date:   Fri Sep 4 15:44:57 2015 -0700

      fs: create and use seq_show_option for escaping

      Many file systems that implement the show_options hook fail to correctly
      escape their output which could lead to unescaped characters (e.g.  new
      lines) leaking into /proc/mounts and /proc/[pid]/mountinfo files.  This
      could lead to confusion, spoofed entries (resulting in things like
      systemd issuing false d-bus "mount" notifications), and who knows what
      else.  This looks like it would only be the root user stepping on
      themselves, but it's possible weird things could happen in containers or
      in other situations with delegated mount privileges.

      Here's an example using overlay with setuid fusermount trusting the
      contents of /proc/mounts (via the /etc/mtab symlink).  Imagine the use
      of "sudo" is something more sneaky:

        $ BASE="ovl"
        $ MNT="$BASE/mnt"
        $ LOW="$BASE/lower"
        $ UP="$BASE/upper"
        $ WORK="$BASE/work/ 0 0
        none /proc fuse.pwn user_id=1000"
        $ mkdir -p "$LOW" "$UP" "$WORK"
        $ sudo mount -t overlay -o "lowerdir=$LOW,upperdir=$UP,workdir=$WORK" 
none /mnt
        $ cat /proc/mounts
        none /root/ovl/mnt overlay 
rw,relatime,lowerdir=ovl/lower,upperdir=ovl/upper,workdir=ovl/work/ 0 0
        none /proc fuse.pwn user_id=1000 0 0
        $ fusermount -u /proc
        $ cat /proc/mounts
        cat: /proc/mounts: No such file or directory

      This fixes the problem by adding new seq_show_option and
      seq_show_option_n helpers, and updating the vulnerable show_option
      handlers to use them as needed.  Some, like SELinux, need to be open
      coded due to unusual existing escape mechanisms.

      [akpm@xxxxxxxxxxxxxxxxxxxx: add lost chunk, per Kees]
      [keescook@xxxxxxxxxxxx: seq_show_option should be using const parameters]
      Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Acked-by: Serge Hallyn <serge.hallyn@xxxxxxxxxxxxx>
      Acked-by: Jan Kara <jack@xxxxxxxx>
      Acked-by: Paul Moore <paul@xxxxxxxxxxxxxx>
      Cc: J. R. Okajima <hooanon05g@xxxxxxxxx>
      Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 46359295a352e01a5a017297c70b7ee0c5da6de6
  Author: Joseph Qi <joseph.qi@xxxxxxxxxx>
  Date:   Fri Sep 4 15:44:54 2015 -0700

      ocfs2: clean up redundant NULL checks before kfree

      NULL check before kfree is redundant and so clean them up.

      Signed-off-by: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Reviewed-by: Mark Fasheh <mfasheh@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 7ecef14ab1db961545354fa443749aeda2ea1b75
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Fri Sep 4 15:44:51 2015 -0700

      ocfs2: neaten do_error, ocfs2_error and ocfs2_abort

      These uses sometimes do and sometimes don't have '\n' terminations.  Make
      the uses consistently use '\n' terminations and remove the newline from
      the functions.

      Miscellanea:

      o Coalesce formats
      o Realign arguments

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Reviewed-by: Mark Fasheh <mfasheh@xxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d0c97d52f5e1de125394d748be7bd5763fd9ed9e
  Author: Xue jiufei <xuejiufei@xxxxxxxxxx>
  Date:   Fri Sep 4 15:44:48 2015 -0700

      ocfs2: do not set fs read-only if rec[0] is empty while committing 
truncate

      While appending an extent to a file, it will call these functions:
      ocfs2_insert_extent

        -> call ocfs2_grow_tree() if there's no free rec
           -> ocfs2_add_branch add a new branch to extent tree,
              now rec[0] in the leaf of rightmost path is empty
        -> ocfs2_do_insert_extent
           -> ocfs2_rotate_tree_right
             -> ocfs2_extend_rotate_transaction
                -> jbd2_journal_restart if jbd2_journal_extend fail
           -> ocfs2_insert_path
              -> ocfs2_extend_trans
                -> jbd2_journal_restart if jbd2_journal_extend fail
              -> ocfs2_insert_at_leaf
           -> ocfs2_et_update_clusters
      Function jbd2_journal_restart() may be called and it may happened that
      buffers dirtied in ocfs2_add_branch() are committed
      while buffers dirtied in ocfs2_insert_at_leaf() and
      ocfs2_et_update_clusters() are not.
      So an empty rec[0] is left in rightmost path which will cause
      read-only filesystem when call ocfs2_commit_truncate()
      with the error message: "Inode %lu has an empty extent record".

      This is not a serious problem, so remove the rightmost path when call
      ocfs2_commit_truncate().

      Signed-off-by: joyce.xue <xuejiufei@xxxxxxxxxx>
      Reviewed-by: Mark Fasheh <mfasheh@xxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 7f27ec978b0ef37391262bbf15c587fd8526e268
  Author: yangwenfang <vicky.yangwenfang@xxxxxxxxxx>
  Date:   Fri Sep 4 15:44:45 2015 -0700

      ocfs2: call ocfs2_journal_access_di() before ocfs2_journal_dirty() in 
ocfs2_write_end_nolock()

      1: After we call ocfs2_journal_access_di() in ocfs2_write_begin(),
         jbd2_journal_restart() may also be called, in this function transaction
         A's t_updates-- and obtains a new transaction B.  If
         jbd2_journal_commit_transaction() is happened to commit transaction A,
         when t_updates==0, it will continue to complete commit and unfile
         buffer.

         So when jbd2_journal_dirty_metadata(), the handle is pointed a new
         transaction B, and the buffer head's journal head is already freed,
         jh->b_transaction == NULL, jh->b_next_transaction == NULL, it returns
         EINVAL, So it triggers the BUG_ON(status).

      thread 1                                          jbd2
      ocfs2_write_begin                     jbd2_journal_commit_transaction
      ocfs2_write_begin_nolock
        ocfs2_start_trans
          jbd2__journal_start(t_updates+1,
                             transaction A)
          ocfs2_journal_access_di
          ocfs2_write_cluster_by_desc
            ocfs2_mark_extent_written
              ocfs2_change_extent_flag
                ocfs2_split_extent
                  ocfs2_extend_rotate_transaction
                    jbd2_journal_restart
                    (t_updates-1,transaction B) t_updates==0
                                              __jbd2_journal_refile_buffer
                                              (jh->b_transaction = NULL)
      ocfs2_write_end
      ocfs2_write_end_nolock
          ocfs2_journal_dirty
              jbd2_journal_dirty_metadata(bug)
         ocfs2_commit_trans

      2.  In ext4, I found that: jbd2_journal_get_write_access() called by
         ext4_write_end.

      ext4_write_begin
          ext4_journal_start
              __ext4_journal_start_sb
                  ext4_journal_check_start
                  jbd2__journal_start

      ext4_write_end
          ext4_mark_inode_dirty
              ext4_reserve_inode_write
                  ext4_journal_get_write_access
                      jbd2_journal_get_write_access
              ext4_mark_iloc_dirty
                  ext4_do_update_inode
                      ext4_handle_dirty_metadata
                          jbd2_journal_dirty_metadata

      3. So I think we should put ocfs2_journal_access_di before
         ocfs2_journal_dirty in the ocfs2_write_end.  and it works well after my
         modification.

      Signed-off-by: vicky <vicky.yangwenfang@xxxxxxxxxx>
      Reviewed-by: Mark Fasheh <mfasheh@xxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Cc: Zhangguanghui <zhang.guanghui@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 40476b8294466d40e7db57b4cbf69a831a4486b8
  Author: Tina Ruchandani <ruchandani.tina@xxxxxxxxx>
  Date:   Fri Sep 4 15:44:43 2015 -0700

      ocfs2: use 64bit variables to track heartbeat time

      o2hb_elapsed_msecs computes the time taken for a disk heartbeat.
      'struct timeval' variables are used to store start and end times.  On
      32-bit systems, the 'tv_sec' component of 'struct timeval' will overflow
      in year 2038 and beyond.

      This patch solves the overflow with the following:

      1. Replace o2hb_elapsed_msecs using 'ktime_t' values to measure start
         and end time, and built-in function 'ktime_ms_delta' to compute the
         elapsed time.  ktime_get_real() is used since the code prints out the
         wallclock time.

      2. Changes format string to print time as a single 64-bit nanoseconds
         value ("%lld") instead of seconds and microseconds.  This simplifies
         the code since converting ktime_t to that format would need expensive
         computation.  However, the debug log string is less readable than the
         previous format.

      Signed-off-by: Tina Ruchandani <ruchandani.tina@xxxxxxxxx>
      Suggested by: Arnd Bergmann <arnd@xxxxxxxx>
      Reviewed-by: Mark Fasheh <mfasheh@xxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit ad694821224634d46b6571f0161e85ac2e397396
  Author: Joseph Qi <joseph.qi@xxxxxxxxxx>
  Date:   Fri Sep 4 15:44:40 2015 -0700

      ocfs2: fix race between crashed dio and rm

      There is a race case between crashed dio and rm, which will lead to
      OCFS2_VALID_FL not set read-only.

        N1                              N2
        ------------------------------------------------------------------------
        dd with direct flag
                                        rm file
        crashed with an dio entry left
        in orphan dir
                                        clear OCFS2_VALID_FL in
                                        ocfs2_remove_inode
                                        recover N1 and read the corrupted inode,
                                        and set filesystem read-only

      So we skip the inode deletion this time and wait for dio entry recovered
      first.

      Signed-off-by: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Reviewed-by: Mark Fasheh <mfasheh@xxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit f57a22ddecd6f26040a67e2c12880f98f88b6e00
  Author: Yiwen Jiang <jiangyiwen@xxxxxxxxxx>
  Date:   Fri Sep 4 15:44:37 2015 -0700

      ocfs2: avoid access invalid address when read o2dlm debug messages

      The following case will lead to a lockres is freed but is still in use.

      cat /sys/kernel/debug/o2dlm/locking_state dlm_thread
      lockres_seq_start
          -> lock dlm->track_lock
          -> get resA
                                                      resA->refs decrease to 0,
                                                      call dlm_lockres_release,
                                                      and wait for "cat" unlock.
      Although resA->refs is already set to 0,
      increase resA->refs, and then unlock
                                                      lock dlm->track_lock
                                                          -> list_del_init()
                                                          -> unlock
                                                          -> free resA

      In such a race case, invalid address access may occurs.  So we should
      delete list res->tracking before resA->refs decrease to 0.

      Signed-off-by: Yiwen Jiang <jiangyiwen@xxxxxxxxxx>
      Reviewed-by: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Mark Fasheh <mfasheh@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 743b5f1434f57a147226c747fe228cadeb7b05ed
  Author: Tariq Saeed <tariq.x.saeed@xxxxxxxxxx>
  Date:   Fri Sep 4 15:44:34 2015 -0700

      ocfs2: take inode lock in ocfs2_iop_set/get_acl()

      This bug in mainline code is pointed out by Mark Fasheh.  When
      ocfs2_iop_set_acl() and ocfs2_iop_get_acl() are entered from VFS layer,
      inode lock is not held.  This seems to be regression from older kernels.
      The patch is to fix that.

      Orabug: 20189959
      Signed-off-by: Tariq Saeed <tariq.x.saeed@xxxxxxxxxx>
      Reviewed-by: Mark Fasheh <mfasheh@xxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3d46a44a0c01b15d385ccaae24b56f619613c256
  Author: Tariq Saeed <tariq.x.saeed@xxxxxxxxxx>
  Date:   Fri Sep 4 15:44:31 2015 -0700

      ocfs2: fix BUG_ON() in ocfs2_ci_checkpointed()

      PID: 614    TASK: ffff882a739da580  CPU: 3   COMMAND: "ocfs2dc"
        #0 [ffff882ecc3759b0] machine_kexec at ffffffff8103b35d
        #1 [ffff882ecc375a20] crash_kexec at ffffffff810b95b5
        #2 [ffff882ecc375af0] oops_end at ffffffff815091d8
        #3 [ffff882ecc375b20] die at ffffffff8101868b
        #4 [ffff882ecc375b50] do_trap at ffffffff81508bb0
        #5 [ffff882ecc375ba0] do_invalid_op at ffffffff810165e5
        #6 [ffff882ecc375c40] invalid_op at ffffffff815116fb
           [exception RIP: ocfs2_ci_checkpointed+208]
           RIP: ffffffffa0a7e940  RSP: ffff882ecc375cf0  RFLAGS: 00010002
           RAX: 0000000000000001  RBX: 000000000000654b  RCX: ffff8812dc83f1f8
           RDX: 00000000000017d9  RSI: ffff8812dc83f1f8  RDI: ffffffffa0b2c318
           RBP: ffff882ecc375d20   R8: ffff882ef6ecfa60   R9: ffff88301f272200
           R10: 0000000000000000  R11: 0000000000000000  R12: ffffffffffffffff
           R13: ffff8812dc83f4f0  R14: 0000000000000000  R15: ffff8812dc83f1f8
           ORIG_RAX: ffffffffffffffff  CS: 0010  SS: 0018
        #7 [ffff882ecc375d28] ocfs2_check_meta_downconvert at ffffffffa0a7edbd 
[ocfs2]
        #8 [ffff882ecc375d38] ocfs2_unblock_lock at ffffffffa0a84af8 [ocfs2]
        #9 [ffff882ecc375dc8] ocfs2_process_blocked_lock at ffffffffa0a85285 
[ocfs2]
      #10 [ffff882ecc375e18] ocfs2_downconvert_thread_do_work at 
ffffffffa0a85445 [ocfs2]
      #11 [ffff882ecc375e68] ocfs2_downconvert_thread at ffffffffa0a854de 
[ocfs2]
      #12 [ffff882ecc375ee8] kthread at ffffffff81090da7
      #13 [ffff882ecc375f48] kernel_thread_helper at ffffffff81511884
      assert is tripped because the tran is not checkpointed and the lock level 
is PR.

      Some time ago, chmod command had been executed. As result, the following 
call
      chain left the inode cluster lock in PR state, latter on causing the 
assert.
      system_call_fastpath
        -> my_chmod
         -> sys_chmod
          -> sys_fchmodat
           -> notify_change
            -> ocfs2_setattr
             -> posix_acl_chmod
              -> ocfs2_iop_set_acl
               -> ocfs2_set_acl
                -> ocfs2_acl_set_mode
      Here is how.
      1119 int ocfs2_setattr(struct dentry *dentry, struct iattr *attr)
      1120 {
      1247         ocfs2_inode_unlock(inode, 1); <<< WRONG thing to do.
      ..
      1258         if (!status && attr->ia_valid & ATTR_MODE) {
      1259                 status =  posix_acl_chmod(inode, inode->i_mode);

      519 posix_acl_chmod(struct inode *inode, umode_t mode)
      520 {
      ..
      539         ret = inode->i_op->set_acl(inode, acl, ACL_TYPE_ACCESS);

      287 int ocfs2_iop_set_acl(struct inode *inode, struct posix_acl *acl, ...
      288 {
      289         return ocfs2_set_acl(NULL, inode, NULL, type, acl, NULL, 
NULL);

      224 int ocfs2_set_acl(handle_t *handle,
      225                          struct inode *inode, ...
      231 {
      ..
      252                                 ret = ocfs2_acl_set_mode(inode, di_bh,
      253                                                          handle, 
mode);

      168 static int ocfs2_acl_set_mode(struct inode *inode, struct buffer_head 
...
      170 {
      183         if (handle == NULL) {
                          >>> BUG: inode lock not held in ex at this point <<<
      184                 handle = ocfs2_start_trans(OCFS2_SB(inode->i_sb),
      185                                            
OCFS2_INODE_UPDATE_CREDITS);

      ocfs2_setattr.#1247 we unlock and at #1259 call posix_acl_chmod. When we 
reach
      ocfs2_acl_set_mode.#181 and do trans, the inode cluster lock is not held 
in EX
      mode (it should be). How this could have happended?

      We are the lock master, were holding lock EX and have released it in
      ocfs2_setattr.#1247.  Note that there are no holders of this lock at
      this point.  Another node needs the lock in PR, and we downconvert from
      EX to PR.  So the inode lock is PR when do the trans in
      ocfs2_acl_set_mode.#184.  The trans stays in core (not flushed to disc).
      Now another node want the lock in EX, downconvert thread gets kicked
      (the one that tripped assert abovt), finds an unflushed trans but the
      lock is not EX (it is PR).  If the lock was at EX, it would have flushed
      the trans ocfs2_ci_checkpointed -> ocfs2_start_checkpoint before
      downconverting (to NULL) for the request.

      ocfs2_setattr must not drop inode lock ex in this code path.  If it
      does, takes it again before the trans, say in ocfs2_set_acl, another
      cluster node can get in between, execute another setattr, overwriting
      the one in progress on this node, resulting in a mode acl size combo
      that is a mix of the two.

      Orabug: 20189959
      Signed-off-by: Tariq Saeed <tariq.x.saeed@xxxxxxxxxx>
      Reviewed-by: Mark Fasheh <mfasheh@xxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Cc: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 72f6fe1fe5a386225cdc30f025681830a63a117e
  Author: Norton.Zhu <norton.zhu@xxxxxxxxxx>
  Date:   Fri Sep 4 15:44:28 2015 -0700

      ocfs2: optimize error handling in dlm_request_join

      Currently error handling in dlm_request_join is a little obscure, so
      optimize it to promote readability.

      If packet.code is invalid, reset it to JOIN_DISALLOW to keep it
      meaningful.  It only influences the log printing.

      Signed-off-by: Norton.Zhu <norton.zhu@xxxxxxxxxx>
      Cc: Srinivas Eeda <srinivas.eeda@xxxxxxxxxx>
      Reviewed-by: Mark Fasheh <mfasheh@xxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 928dda1f9433f024ac48c3d97ae683bf83dd0e42
  Author: Yiwen Jiang <jiangyiwen@xxxxxxxxxx>
  Date:   Fri Sep 4 15:44:25 2015 -0700

      ocfs2: fix a tiny case that inode can not removed

      When running dirop_fileop_racer we found a case that inode
      can not removed.

      Two nodes, say Node A and Node B, mount the same ocfs2 volume.  Create
      two dirs /race/1/ and /race/2/ in the filesystem.

        Node A                            Node B
        rm -r /race/2/
                                          mv /race/1/ /race/2/
        call ocfs2_unlink(), get
        the EX mode of /race/2/
                                          wait for B unlock /race/2/
        decrease i_nlink of /race/2/ to 0,
        and add inode of /race/2/ into
        orphan dir, unlock /race/2/
                                          got EX mode of /race/2/. because
                                          /race/1/ is dir, so inc i_nlink
                                          of /race/2/ and update into disk,
                                          unlock /race/2/
        because i_nlink of /race/2/
        is not zero, this inode will
        always remain in orphan dir

      This patch fixes this case by test whether i_nlink of new dir is zero.

      Signed-off-by: Yiwen Jiang <jiangyiwen@xxxxxxxxxx>
      Reviewed-by: Mark Fasheh <mfasheh@xxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Cc: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Cc: Xue jiufei <xuejiufei@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 6ab855a99b735c227ad1e0deda636833f41c5b87
  Author: WeiWei Wang <wangww631@xxxxxxxxxx>
  Date:   Fri Sep 4 15:44:23 2015 -0700

      ocfs2: add ip_alloc_sem in direct IO to protect allocation changes

      In ocfs2, ip_alloc_sem is used to protect allocation changes on the
      node.  In direct IO, we add ip_alloc_sem to protect date consistent
      between direct-io and ocfs2_truncate_file race (buffer io use
      ip_alloc_sem already).  Although inode->i_mutex lock is used to avoid
      concurrency of above situation, i think ip_alloc_sem is still needed
      because protect allocation changes is significant.

      Other filesystem like ext4 also uses rw_semaphore to protect data
      consistent between get_block-vs-truncate race by other means, So
      ip_alloc_sem in ocfs2 direct io is needed.

      Signed-off-by: Weiwei Wang <wangww631@xxxxxxxxxx>
      Signed-off-by: Mark Fasheh <mfasheh@xxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 34237681e02ad1617138926f437d0a147249ec13
  Author: Goldwyn Rodrigues <rgoldwyn@xxxxxxx>
  Date:   Fri Sep 4 15:44:20 2015 -0700

      ocfs2: clear the rest of the buffers on error

      In case a validation fails, clear the rest of the buffers and return the
      error to the calling function.

      This also facilitates bubbling up the error originating from ocfs2_error
      to calling functions.

      Signed-off-by: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>
      Reviewed-by: Mark Fasheh <mfasheh@xxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 17a5b9ab32fe0464e7f556e28a2b49d2023fb533
  Author: Goldwyn Rodrigues <rgoldwyn@xxxxxxx>
  Date:   Fri Sep 4 15:44:17 2015 -0700

      ocfs2: acknowledge return value of ocfs2_error()

      Caveat: This may return -EROFS for a read case, which seems wrong.  This
      is happening even without this patch series though.  Should we convert
      EROFS to EIO?

      Signed-off-by: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>
      Cc: Mark Fasheh <mfasheh@xxxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 7d0fb9148ab6f52006de7cce18860227594ba872
  Author: Goldwyn Rodrigues <rgoldwyn@xxxxxxx>
  Date:   Fri Sep 4 15:44:11 2015 -0700

      ocfs2: add errors=continue

      OCFS2 is often used in high-availaibility systems.  However, ocfs2
      converts the filesystem to read-only at the drop of the hat.  This may
      not be necessary, since turning the filesystem read-only would affect
      other running processes as well, decreasing availability.

      This attempt is to add errors=continue, which would return the EIO to
      the calling process and terminate furhter processing so that the
      filesystem is not corrupted further.  However, the filesystem is not
      converted to read-only.

      As a future plan, I intend to create a small utility or extend
      fsck.ocfs2 to fix small errors such as in the inode.  The input to the
      utility such as the inode can come from the kernel logs so we don't have
      to schedule a downtime for fixing small-enough errors.

      The patch changes the ocfs2_error to return an error.  The error
      returned depends on the mount option set.  If none is set, the default
      is to turn the filesystem read-only.

      Perhaps errors=continue is not the best option name.  Historically it is
      used for making an attempt to progress in the current process itself.
      Should we call it errors=eio? or errors=killproc? Suggestions/Comments
      welcome.

      Sources are available at:
        https://github.com/goldwynr/linux/tree/error-cont

      Signed-off-by: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>
      Signed-off-by: Mark Fasheh <mfasheh@xxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 513e2dae9422223072ed3887e91efebec2fc0a01
  Author: Xue jiufei <xuejiufei@xxxxxxxxxx>
  Date:   Fri Sep 4 15:44:11 2015 -0700

      ocfs2: flush inode data to disk and free inode when i_count becomes zero

      Disk inode deletion may be heavily delayed when one node unlink a file
      after the same dentry is freed on another node(say N1) because of memory
      shrink but inode is left in memory.  This inode can only be freed while
      N1 doing the orphan scan work.

      However, N1 may skip orphan scan for several times because other nodes
      may do the work earlier.  In our tests, it may take 1 hour on 4 nodes
      cluster and it hurts the user experience.  So we think the inode should
      be freed after the data flushed to disk when i_count becomes zero to
      avoid such circumstances.

      Signed-off-by: Joyce.xue <xuejiufei@xxxxxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Reviewed-by: Mark Fasheh <mfasheh@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 0f5e7b41f91814447defc34e915fc5d6e52266d9
  Author: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
  Date:   Fri Sep 4 15:44:08 2015 -0700

      ocfs2: trusted xattr missing CAP_SYS_ADMIN check

      The trusted extended attributes are only visible to the process which
      hvae CAP_SYS_ADMIN capability but the check is missing in ocfs2
      xattr_handler trusted list.  The check is important because this will be
      used for implementing mechanisms in the userspace for which other
      ordinary processes should not have access to.

      Signed-off-by: Sanidhya Kashyap <sanidhya.gatech@xxxxxxxxx>
      Reviewed-by: Mark Fasheh <mfasheh@xxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Cc: Taesoo kim <taesoo@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 807a7907114c7c703017ed7a96477a2eeb0d08e0
  Author: jiangyiwen <jiangyiwen@xxxxxxxxxx>
  Date:   Fri Sep 4 15:44:06 2015 -0700

      ocfs2: set filesytem read-only when ocfs2_delete_entry failed.

      In ocfs2_rename, it will lead to an inode with two entried(old and new) if
      ocfs2_delete_entry(old) failed.  Thus, filesystem will be inconsistent.

      The case is described below:

      ocfs2_rename
          -> ocfs2_start_trans
          -> ocfs2_add_entry(new)
          -> ocfs2_delete_entry(old)
              -> __ocfs2_journal_access *failed* because of -ENOMEM
          -> ocfs2_commit_trans

      So filesystem should be set to read-only at the moment.

      Signed-off-by: Yiwen Jiang <jiangyiwen@xxxxxxxxxx>
      Cc: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Reviewed-by: Mark Fasheh <mfasheh@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit f83c7b5e9fd633fe91128af116e6472a8c4d29a5
  Author: Joseph Qi <joseph.qi@xxxxxxxxxx>
  Date:   Fri Sep 4 15:44:03 2015 -0700

      ocfs2/dlm: use list_for_each_entry instead of list_for_each

      Use list_for_each_entry instead of list_for_each to simplify code.

      Signed-off-by: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Cc: Mark Fasheh <mfasheh@xxxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 0e3d9eafb86183a33efc42f0beff5afceebbafba
  Author: Joseph Qi <joseph.qi@xxxxxxxxxx>
  Date:   Fri Sep 4 15:44:00 2015 -0700

      ocfs2: remove unneeded code in dlm_register_domain_handlers

      The last goto statement is unneeded, so remove it.

      Signed-off-by: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Cc: Mark Fasheh <mfasheh@xxxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit cdd09f49cb271d95cbe69ef886459e0490040e98
  Author: Joseph Qi <joseph.qi@xxxxxxxxxx>
  Date:   Fri Sep 4 15:43:57 2015 -0700

      ocfs2: fix BUG when o2hb_register_callback fails

      In dlm_register_domain_handlers, if o2hb_register_callback fails, it
      will call dlm_unregister_domain_handlers to unregister.  This will
      trigger the BUG_ON in o2hb_unregister_callback because hc_magic is 0.
      So we should call o2hb_setup_callback to initialize hc first.

      Signed-off-by: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Cc: Mark Fasheh <mfasheh@xxxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 914a9b74295774b92409fbc3e0abcfa9185d9469
  Author: Joseph Qi <joseph.qi@xxxxxxxxxx>
  Date:   Fri Sep 4 15:43:54 2015 -0700

      ocfs2: remove unneeded code in ocfs2_dlm_init

      status is already initialized and it will only be 0 or negatives in the
      code flow.  So remove the unneeded assignment after the lable 'local'.

      Signed-off-by: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Cc: Mark Fasheh <mfasheh@xxxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3cb2ec43f63c42412a18620f1226eb4aa434a7a8
  Author: Joseph Qi <joseph.qi@xxxxxxxxxx>
  Date:   Fri Sep 4 15:43:52 2015 -0700

      ocfs2: adjust code to match locking/unlocking order

      Unlocking order in ocfs2_unlink and ocfs2_rename mismatches the
      corresponding locking order, although it won't cause issues, adjust the
      code so that it looks more reasonable.

      Signed-off-by: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Cc: Mark Fasheh <mfasheh@xxxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit bf59e6623a3a92a2bf428f2d6592c81aae6317e1
  Author: Joseph Qi <joseph.qi@xxxxxxxxxx>
  Date:   Fri Sep 4 15:43:49 2015 -0700

      ocfs2: clean up unused local variables in ocfs2_file_write_iter

      Since commit 86b9c6f3f891 ("ocfs2: remove filesize checks for sync I/O
      journal commit") removes filesize checks for sync I/O journal commit,
      variables old_size and old_clusters are not actually used any more.  So
      clean them up.

      Signed-off-by: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Cc: Mark Fasheh <mfasheh@xxxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 372a447c4bb8271d128def5f93e3365d5d06b4d8
  Author: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
  Date:   Fri Sep 4 15:43:46 2015 -0700

      ocfs2: do not log twice error messages

      'o2hb_map_slot_data' and 'o2hb_populate_slot_data' are called from only
      one place, in 'o2hb_region_dev_write'.  Return value is checked and
      'mlog_errno' is called to log a message if it is not 0.

      So there is no need to call 'mlog_errno' directly within these functions.
      This would result on logging the message twice.

      Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
      Cc: Mark Fasheh <mfasheh@xxxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit acf8fdbe6afb084666df347602fe4258f1cf5fd5
  Author: Joseph Qi <joseph.qi@xxxxxxxxxx>
  Date:   Fri Sep 4 15:43:43 2015 -0700

      ocfs2: do not BUG if buffer not uptodate in __ocfs2_journal_access

      When storage network is unstable, it may trigger the BUG in
      __ocfs2_journal_access because of buffer not uptodate.  We can retry the
      write in this case or return error instead of BUG.

      Signed-off-by: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Reported-by: Zhangguanghui <zhang.guanghui@xxxxxxx>
      Tested-by: Zhangguanghui <zhang.guanghui@xxxxxxx>
      Cc: Mark Fasheh <mfasheh@xxxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit faaebf18f831c1546bdc65ff8f49d2a73e675ded
  Author: Joseph Qi <joseph.qi@xxxxxxxxxx>
  Date:   Fri Sep 4 15:43:40 2015 -0700

      ocfs2: fix several issues of append dio

      1) Take rw EX lock in case of append dio.
      2) Explicitly treat the error code -EIOCBQUEUED as normal.
      3) Set di_bh to NULL after brelse if it may be used again later.

      Signed-off-by: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Cc: Yiwen Jiang <jiangyiwen@xxxxxxxxxx>
      Cc: Weiwei Wang <wangww631@xxxxxxxxxx>
      Cc: Mark Fasheh <mfasheh@xxxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 512f62acbdf1ee81ce4882c85835f5420a1c304c
  Author: Joseph Qi <joseph.qi@xxxxxxxxxx>
  Date:   Fri Sep 4 15:43:37 2015 -0700

      ocfs2: fix race between dio and recover orphan

      During direct io the inode will be added to orphan first and then
      deleted from orphan.  There is a race window that the orphan entry will
      be deleted twice and thus trigger the BUG when validating
      OCFS2_DIO_ORPHANED_FL in ocfs2_del_inode_from_orphan.

      ocfs2_direct_IO_write
          ...
          ocfs2_add_inode_to_orphan
          >>>>>>>> race window.
                   1) another node may rm the file and then down, this node
                   take care of orphan recovery and clear flag
                   OCFS2_DIO_ORPHANED_FL.
                   2) since rw lock is unlocked, it may race with another
                   orphan recovery and append dio.
          ocfs2_del_inode_from_orphan

      So take inode mutex lock when recovering orphans and make rw unlock at the
      end of aio write in case of append dio.

      Signed-off-by: Joseph Qi <joseph.qi@xxxxxxxxxx>
      Reported-by: Yiwen Jiang <jiangyiwen@xxxxxxxxxx>
      Cc: Weiwei Wang <wangww631@xxxxxxxxxx>
      Cc: Mark Fasheh <mfasheh@xxxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 81cf09edc793688cbf53c3082802571e2018f3ac
  Author: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
  Date:   Fri Sep 4 15:43:35 2015 -0700

      sh: use PFN_DOWN macro

      Replace ((x) >> PAGE_SHIFT) with the predefined PFN_DOWN macro.

      Signed-off-by: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
      Acked-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 917520e100e1db5e8dd546dd94fef070a31652a5
  Author: SF Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:43:32 2015 -0700

      ntfs: delete unnecessary checks before calling iput()

      iput() tests whether its argument is NULL and then returns immediately.
      Thus the test around the call is not needed.

      This issue was detected by using the Coccinelle software.

      Signed-off-by: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
      Cc: Julia Lawall <julia.lawall@xxxxxxx>
      Reviewed-by: Anton Altaparmakov <anton@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 35108d71383c5f4abc286430c0b5da79d22553f9
  Author: Zhao Lei <zhaolei@xxxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:43:29 2015 -0700

      scripts/spelling.txt: add some typo-words

      I wrote a small script to show word-pair from all linux spelling-typo
      commits, and get following result by sort | uniq -c:

          181 occured -> occurred
           78 transfered -> transferred
           67 recieved -> received
           65 dependant -> dependent
           58 wether -> whether
           56 accomodate -> accommodate
           54 occured -> occurred
           51 recieve -> receive
           47 cant -> can't
           40 sucessfully -> successfully
           ...

      Some of them are not in spelling.txt, this patch adds the most common
      word-pairs into spelling.txt.

      Signed-off-by: Zhao Lei <zhaolei@xxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit e260fe01fa39eddb05bd8b70fad5bc9a129648f2
  Author: Robert Jarzmik <robert.jarzmik@xxxxxxx>
  Date:   Fri Sep 4 15:43:26 2015 -0700

      scripts: decode_stacktrace: fix ARM architecture decoding

      Fix the stack decoder for the ARM architecture.
      An ARM stack is designed as :

      [   81.547704] [<c023eb04>] (bucket_find_contain) from [<c023ec88>] 
(check_sync+0x40/0x4f8)
      [   81.559668] [<c023ec88>] (check_sync) from [<c023f8c4>] 
(debug_dma_sync_sg_for_cpu+0x128/0x194)
      [   81.571583] [<c023f8c4>] (debug_dma_sync_sg_for_cpu) from [<c0327dec>] 
(__videobuf_s

      The current script doesn't expect the symbols to be bound by
      parenthesis, and triggers the following errors :

        awk: cmd. line:1: error: Unmatched ( or \(: / (check_sync$/
        [   81.547704] (bucket_find_contain) from (check_sync+0x40/0x4f8)

      Fix it by chopping starting and ending parenthesis from the each symbol
      name.

      As a side note, this probably comes from the function
      dump_backtrace_entry(), which is implemented differently for each
      architecture.  That makes a single decoding script a bit a challenge.

      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Cc: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Cc: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Cc: Michal Marek <mmarek@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit fa70900e0984792cc45a9e51c28684c3287058c2
  Author: Jean Delvare <jdelvare@xxxxxxx>
  Date:   Fri Sep 4 15:43:24 2015 -0700

      scripts/Lindent: handle missing indent gracefully

      If indent is not found, bail out immediately instead of spitting random
      shell script error messages.

      Signed-off-by: Jean Delvare <jdelvare@xxxxxxx>
      Cc: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit d40e1e6532efbb40f8fc1f5af093063a3d186754
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Fri Sep 4 15:43:21 2015 -0700

      kerneldoc: Convert error messages to GNU error message format

      Editors like emacs and vi recognize a number of error message formats.
      The format used by the kerneldoc tool is not recognized by emacs.

      Change the kerneldoc error message format to the GNU style such that the
      emacs prev-error and next-error commands can be used to navigate through
      kerneldoc error messages.  For more information about the GNU error
      message format, see also
        https://www.gnu.org/prep/standards/html_node/Errors.html.

      This patch has been generated via the following sed command:

        sed -i.orig 's/Error(\${file}:\$.):/\${file}:\$.: 
error:/g;s/Warning(\${file}:\$.):/\${file}:\$.: 
warning:/g;s/Warning(\${file}):/\${file}:1: 
warning:/g;s/Info(\${file}:\$.):/\${file}:\$.: info:/g' scripts/kernel-doc

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Cc: Johannes Berg <johannes.berg@xxxxxxxxx>
      Acked-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit c22b6ae69ee93c1ecc6821847a8542163fbf3e1a
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Fri Sep 4 15:43:18 2015 -0700

      scripts/spelling.txt: spelling of uninitialized

      I just did a spelling mistake of uninitialized and wrote that as
      unintialized.  Fortunately I noticed it in my final review.

      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 779a6ce877bf711323f998b3a7382cdbe7350d87
  Author: Maninder Singh <maninder1.s@xxxxxxxxxxx>
  Date:   Fri Sep 4 15:43:15 2015 -0700

      scripts/spelling.txt: add misspelled words for check

      misspelled words for check:-
       chcek
       chck
       cehck

      I myself did these spell mistakes in changelog for patches, Thus
      suggesting to add in spelling.txt, so that checkpatch.pl warns it
      earlier.  References:-

      ./arch/powerpc/kernel/exceptions-64e.S:456: . . . make sure you chcek
      https://lkml.org/lkml/2015/6/25/289
      ./arch/x86/mm/pageattr.c:1368: * No need to cehck in that case

      [akpm@xxxxxxxxxxxxxxxxxxxx: add whcih->which, whcih I always get wrong]
      Signed-off-by: Maninder Singh <maninder1.s@xxxxxxxxxxx>
      Acked-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 4712e722f91457e60723b9cef6265a74290efba9
  Author: Jan Kara <jack@xxxxxxxx>
  Date:   Fri Sep 4 15:43:12 2015 -0700

      fsnotify: get rid of fsnotify_destroy_mark_locked()

      fsnotify_destroy_mark_locked() is subtle to use because it temporarily
      releases group->mark_mutex.  To avoid future problems with this
      function, split it into two.

      fsnotify_detach_mark() is the part that needs group->mark_mutex and
      fsnotify_free_mark() is the part that must be called outside of
      group->mark_mutex.  This way it's much clearer what's going on and we
      also avoid some pointless acquisitions of group->mark_mutex.

      Signed-off-by: Jan Kara <jack@xxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 925d1132a03e33cb8f29a0057300d023b4f1be23
  Author: Jan Kara <jack@xxxxxxxx>
  Date:   Fri Sep 4 15:43:09 2015 -0700

      fsnotify: remove mark->free_list

      Free list is used when all marks on given inode / mount should be
      destroyed when inode / mount is going away.  However we can free all of
      the marks without using a special list with some care.

      Signed-off-by: Jan Kara <jack@xxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 1e39fc01836d02a11515aaabd97a0a938326bfe2
  Author: Jan Kara <jack@xxxxxxxx>
  Date:   Fri Sep 4 15:43:06 2015 -0700

      fsnotify: document mark locking

      Signed-off-by: Jan Kara <jack@xxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 3c53e514212455db9923c203694a72007558b48f
  Author: Jan Kara <jack@xxxxxxx>
  Date:   Fri Sep 4 15:43:03 2015 -0700

      fsnotify: fix check in inotify fdinfo printing

      A check in inotify_fdinfo() checking whether mark is valid was always
      true due to a bug.  Luckily we can never get to invalidated marks since
      we hold mark_mutex and invalidated marks get removed from the group list
      when they are invalidated under that mutex.

      Anyway fix the check to make code more future proof.

      Signed-off-by: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 7c49b8616460ebb12ee56d80d1abfbc20b6f3cbb
  Author: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:43:01 2015 -0700

      fs/notify: optimize inotify/fsnotify code for unwatched files

      I have a _tiny_ microbenchmark that sits in a loop and writes single
      bytes to a file.  Writing one byte to a tmpfs file is around 2x slower
      than reading one byte from a file, which is a _bit_ more than I expecte.
      This is a dumb benchmark, but I think it's hard to deny that write() is
      a hot path and we should avoid unnecessary overhead there.

      I did a 'perf record' of 30-second samples of read and write.  The top
      item in a diffprofile is srcu_read_lock() from fsnotify().  There are
      active inotify fd's from systemd, but nothing is actually listening to
      the file or its part of the filesystem.

      I *think* we can avoid taking the srcu_read_lock() for the common case
      where there are no actual marks on the file.  This means that there will
      both be nothing to notify for *and* implies that there is no need for
      clearing the ignore mask.

      This patch gave a 13.1% speedup in writes/second on my test, which is an
      improvement from the 10.8% that I saw with the last version.

      Signed-off-by: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Reviewed-by: Jan Kara <jack@xxxxxxxx>
      Cc: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
      Cc: Eric Paris <eparis@xxxxxxxxxx>
      Cc: John McCutchan <john@xxxxxxxxxxxxxxxxx>
      Cc: Robert Love <rlove@xxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 031e29b5877f31676739dc2f847d04c2c0732034
  Author: Yuriy Kolerov <yuriy.kolerov@xxxxxxxxxxxx>
  Date:   Fri Sep 4 15:42:58 2015 -0700

      drivers/video/concole: add negative dependency for VGA_CONSOLE on ARC

      Architectures which support VGA console must define screen_info
      structurture from "uapi/linux/screen_info.h".  Otherwise undefined
      symbol error occurs.  Usually it's defined in "setup.c" for each
      architecture.

      If an architecture does not support VGA console (ARC's case) there are 2
      ways: define a dummy instance of screen_info or add a negative
      dependency for VGA_CONSOLE in to prevent selecting this option.

      I've implemented the second way.  However the best solution is to add
      HAVE_VGA_CONSOLE option for targets which support VGA console.  Then
      turn off VGA_CONSOLE by default and add dependency to HAVE_VGA_CONSOLE.
      But right now it's better to just add a negative dependency for ARC and
      then consider how to collaborate about this issue with maintainers of
      other architectures.

      Signed-off-by: Yuriy Kolerov <yuriy.kolerov@xxxxxxxxxxxx>
      Acked-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Cc: Jean-Christophe Plagniol-Villard <plagnioj@xxxxxxxxxxxx>
      Cc: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
      Cc: Jaya Kumar <jayalk@xxxxxxxxxxxx>
      Cc: Vineet Gupta <vgupta@xxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 746bf6d64275be0c65b0631d8a72b16f1454cfa1
  Author: Andy Lutomirski <luto@xxxxxxxxxx>
  Date:   Fri Sep 4 15:42:51 2015 -0700

      capabilities: add a securebit to disable PR_CAP_AMBIENT_RAISE

      Per Andrew Morgan's request, add a securebit to allow admins to disable
      PR_CAP_AMBIENT_RAISE.  This securebit will prevent processes from adding
      capabilities to their ambient set.

      For simplicity, this disables PR_CAP_AMBIENT_RAISE entirely rather than
      just disabling setting previously cleared bits.

      Signed-off-by: Andy Lutomirski <luto@xxxxxxxxxx>
      Acked-by: Andrew G. Morgan <morgan@xxxxxxxxxx>
      Acked-by: Serge Hallyn <serge.hallyn@xxxxxxxxxxxxx>
      Cc: Kees Cook <keescook@xxxxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Serge Hallyn <serge.hallyn@xxxxxxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Cc: Aaron Jones <aaronmdjones@xxxxxxxxx>
      Cc: Ted Ts'o <tytso@xxxxxxx>
      Cc: Andrew G. Morgan <morgan@xxxxxxxxxx>
      Cc: Mimi Zohar <zohar@xxxxxxxxxxxxxxxxxx>
      Cc: Austin S Hemmelgarn <ahferroin7@xxxxxxxxx>
      Cc: Markku Savela <msa@xxxxxxxxxxx>
      Cc: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx>
      Cc: Michael Kerrisk <mtk.manpages@xxxxxxxxx>
      Cc: James Morris <james.l.morris@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 32ae976ed3b5ba39c9208ace41bcdf4157d21db3
  Author: Andy Lutomirski <luto@xxxxxxxxxx>
  Date:   Fri Sep 4 15:42:48 2015 -0700

      selftests/capabilities: Add tests for capability evolution

      This test focuses on ambient capabilities.  It requires either root or
      the ability to create user namespaces.  Some of the test cases will be
      skipped for nonroot users.

      Signed-off-by: Andy Lutomirski <luto@xxxxxxxxxx>
      Acked-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx> # Original author
      Cc: Serge E. Hallyn <serge.hallyn@xxxxxxxxxx>
      Cc: James Morris <james.l.morris@xxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 58319057b7847667f0c9585b9de0e8932b0fdb08
  Author: Andy Lutomirski <luto@xxxxxxxxxx>
  Date:   Fri Sep 4 15:42:45 2015 -0700

      capabilities: ambient capabilities

      Credit where credit is due: this idea comes from Christoph Lameter with
      a lot of valuable input from Serge Hallyn.  This patch is heavily based
      on Christoph's patch.

      ===== The status quo =====

      On Linux, there are a number of capabilities defined by the kernel.  To
      perform various privileged tasks, processes can wield capabilities that
      they hold.

      Each task has four capability masks: effective (pE), permitted (pP),
      inheritable (pI), and a bounding set (X).  When the kernel checks for a
      capability, it checks pE.  The other capability masks serve to modify
      what capabilities can be in pE.

      Any task can remove capabilities from pE, pP, or pI at any time.  If a
      task has a capability in pP, it can add that capability to pE and/or pI.
      If a task has CAP_SETPCAP, then it can add any capability to pI, and it
      can remove capabilities from X.

      Tasks are not the only things that can have capabilities; files can also
      have capabilities.  A file can have no capabilty information at all [1].
      If a file has capability information, then it has a permitted mask (fP)
      and an inheritable mask (fI) as well as a single effective bit (fE) [2].
      File capabilities modify the capabilities of tasks that execve(2) them.

      A task that successfully calls execve has its capabilities modified for
      the file ultimately being excecuted (i.e.  the binary itself if that
      binary is ELF or for the interpreter if the binary is a script.) [3] In
      the capability evolution rules, for each mask Z, pZ represents the old
      value and pZ' represents the new value.  The rules are:

        pP' = (X & fP) | (pI & fI)
        pI' = pI
        pE' = (fE ? pP' : 0)
        X is unchanged

      For setuid binaries, fP, fI, and fE are modified by a moderately
      complicated set of rules that emulate POSIX behavior.  Similarly, if
      euid == 0 or ruid == 0, then fP, fI, and fE are modified differently
      (primary, fP and fI usually end up being the full set).  For nonroot
      users executing binaries with neither setuid nor file caps, fI and fP
      are empty and fE is false.

      As an extra complication, if you execute a process as nonroot and fE is
      set, then the "secure exec" rules are in effect: AT_SECURE gets set,
      LD_PRELOAD doesn't work, etc.

      This is rather messy.  We've learned that making any changes is
      dangerous, though: if a new kernel version allows an unprivileged
      program to change its security state in a way that persists cross
      execution of a setuid program or a program with file caps, this
      persistent state is surprisingly likely to allow setuid or file-capped
      programs to be exploited for privilege escalation.

      ===== The problem =====

      Capability inheritance is basically useless.

      If you aren't root and you execute an ordinary binary, fI is zero, so
      your capabilities have no effect whatsoever on pP'.  This means that you
      can't usefully execute a helper process or a shell command with elevated
      capabilities if you aren't root.

      On current kernels, you can sort of work around this by setting fI to
      the full set for most or all non-setuid executable files.  This causes
      pP' = pI for nonroot, and inheritance works.  No one does this because
      it's a PITA and it isn't even supported on most filesystems.

      If you try this, you'll discover that every nonroot program ends up with
      secure exec rules, breaking many things.

      This is a problem that has bitten many people who have tried to use
      capabilities for anything useful.

      ===== The proposed change =====

      This patch adds a fifth capability mask called the ambient mask (pA).
      pA does what most people expect pI to do.

      pA obeys the invariant that no bit can ever be set in pA if it is not
      set in both pP and pI.  Dropping a bit from pP or pI drops that bit from
      pA.  This ensures that existing programs that try to drop capabilities
      still do so, with a complication.  Because capability inheritance is so
      broken, setting KEEPCAPS, using setresuid to switch to nonroot uids, and
      then calling execve effectively drops capabilities.  Therefore,
      setresuid from root to nonroot conditionally clears pA unless
      SECBIT_NO_SETUID_FIXUP is set.  Processes that don't like this can
      re-add bits to pA afterwards.

      The capability evolution rules are changed:

        pA' = (file caps or setuid or setgid ? 0 : pA)
        pP' = (X & fP) | (pI & fI) | pA'
        pI' = pI
        pE' = (fE ? pP' : pA')
        X is unchanged

      If you are nonroot but you have a capability, you can add it to pA.  If
      you do so, your children get that capability in pA, pP, and pE.  For
      example, you can set pA = CAP_NET_BIND_SERVICE, and your children can
      automatically bind low-numbered ports.  Hallelujah!

      Unprivileged users can create user namespaces, map themselves to a
      nonzero uid, and create both privileged (relative to their namespace)
      and unprivileged process trees.  This is currently more or less
      impossible.  Hallelujah!

      You cannot use pA to try to subvert a setuid, setgid, or file-capped
      program: if you execute any such program, pA gets cleared and the
      resulting evolution rules are unchanged by this patch.

      Users with nonzero pA are unlikely to unintentionally leak that
      capability.  If they run programs that try to drop privileges, dropping
      privileges will still work.

      It's worth noting that the degree of paranoia in this patch could
      possibly be reduced without causing serious problems.  Specifically, if
      we allowed pA to persist across executing non-pA-aware setuid binaries
      and across setresuid, then, naively, the only capabilities that could
      leak as a result would be the capabilities in pA, and any attacker
      *already* has those capabilities.  This would make me nervous, though --
      setuid binaries that tried to privilege-separate might fail to do so,
      and putting CAP_DAC_READ_SEARCH or CAP_DAC_OVERRIDE into pA could have
      unexpected side effects.  (Whether these unexpected side effects would
      be exploitable is an open question.) I've therefore taken the more
      paranoid route.  We can revisit this later.

      An alternative would be to require PR_SET_NO_NEW_PRIVS before setting
      ambient capabilities.  I think that this would be annoying and would
      make granting otherwise unprivileged users minor ambient capabilities
      (CAP_NET_BIND_SERVICE or CAP_NET_RAW for example) much less useful than
      it is with this patch.

      ===== Footnotes =====

      [1] Files that are missing the "security.capability" xattr or that have
      unrecognized values for that xattr end up with has_cap set to false.
      The code that does that appears to be complicated for no good reason.

      [2] The libcap capability mask parsers and formatters are dangerously
      misleading and the documentation is flat-out wrong.  fE is *not* a mask;
      it's a single bit.  This has probably confused every single person who
      has tried to use file capabilities.

      [3] Linux very confusingly processes both the script and the interpreter
      if applicable, for reasons that elude me.  The results from thinking
      about a script's file capabilities and/or setuid bits are mostly
      discarded.

      Preliminary userspace code is here, but it needs updating:
      
https://git.kernel.org/cgit/linux/kernel/git/luto/util-linux-playground.git/commit/?h=cap_ambient&id=7f5afbd175d2

      Here is a test program that can be used to verify the functionality
      (from Christoph):

      /*
       * Test program for the ambient capabilities. This program spawns a shell
       * that allows running processes with a defined set of capabilities.
       *
       * (C) 2015 Christoph Lameter <cl@xxxxxxxxx>
       * Released under: GPL v3 or later.
       *
       *
       * Compile using:
       *
       *        gcc -o ambient_test ambient_test.o -lcap-ng
       *
       * This program must have the following capabilities to run properly:
       * Permissions for CAP_NET_RAW, CAP_NET_ADMIN, CAP_SYS_NICE
       *
       * A command to equip the binary with the right caps is:
       *
       *        setcap cap_net_raw,cap_net_admin,cap_sys_nice+p ambient_test
       *
       *
       * To get a shell with additional caps that can be inherited by other 
processes:
       *
       *        ./ambient_test /bin/bash
       *
       *
       * Verifying that it works:
       *
       * From the bash spawed by ambient_test run
       *
       *        cat /proc/$$/status
       *
       * and have a look at the capabilities.
       */

      #include <stdlib.h>
      #include <stdio.h>
      #include <errno.h>
      #include <cap-ng.h>
      #include <sys/prctl.h>
      #include <linux/capability.h>

      /*
       * Definitions from the kernel header files. These are going to be removed
       * when the /usr/include files have these defined.
       */
      #define PR_CAP_AMBIENT 47
      #define PR_CAP_AMBIENT_IS_SET 1
      #define PR_CAP_AMBIENT_RAISE 2
      #define PR_CAP_AMBIENT_LOWER 3
      #define PR_CAP_AMBIENT_CLEAR_ALL 4

      static void set_ambient_cap(int cap)
      {
        int rc;

        capng_get_caps_process();
        rc = capng_update(CAPNG_ADD, CAPNG_INHERITABLE, cap);
        if (rc) {
                printf("Cannot add inheritable cap\n");
                exit(2);
        }
        capng_apply(CAPNG_SELECT_CAPS);

        /* Note the two 0s at the end. Kernel checks for these */
        if (prctl(PR_CAP_AMBIENT, PR_CAP_AMBIENT_RAISE, cap, 0, 0)) {
                perror("Cannot set cap");
                exit(1);
        }
      }

      int main(int argc, char **argv)
      {
        int rc;

        set_ambient_cap(CAP_NET_RAW);
        set_ambient_cap(CAP_NET_ADMIN);
        set_ambient_cap(CAP_SYS_NICE);

        printf("Ambient_test forking shell\n");
        if (execv(argv[1], argv + 1))
                perror("Cannot exec");

        return 0;
      }

      Signed-off-by: Christoph Lameter <cl@xxxxxxxxx> # Original author
      Signed-off-by: Andy Lutomirski <luto@xxxxxxxxxx>
      Acked-by: Serge E. Hallyn <serge.hallyn@xxxxxxxxxx>
      Acked-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Cc: Aaron Jones <aaronmdjones@xxxxxxxxx>
      Cc: Ted Ts'o <tytso@xxxxxxx>
      Cc: Andrew G. Morgan <morgan@xxxxxxxxxx>
      Cc: Mimi Zohar <zohar@xxxxxxxxxxxxxxxxxx>
      Cc: Austin S Hemmelgarn <ahferroin7@xxxxxxxxx>
      Cc: Markku Savela <msa@xxxxxxxxxxx>
      Cc: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx>
      Cc: Michael Kerrisk <mtk.manpages@xxxxxxxxx>
      Cc: James Morris <james.l.morris@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit e9f069868d60550c4b46f084ac9276a57c1b4711
  Author: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:42:42 2015 -0700

      kernel/kthread.c:kthread_create_on_node(): clarify documentation

      - Make it clear that the `node' arg refers to memory allocations only:
        kthread_create_on_node() does not pin the new thread to that node's
        CPUs.

      - Encourage the use of NUMA_NO_NODE.

      [nzimmer@xxxxxxx: use NUMA_NO_NODE in kthread_create() also]
      Cc: Nathan Zimmer <nzimmer@xxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Eric Dumazet <edumazet@xxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 04697858d89e4bf2650364f8d6956e2554e8ef88
  Author: Yinghai Lu <yinghai@xxxxxxxxxx>
  Date:   Fri Sep 4 15:42:39 2015 -0700

      mm: check if section present during memory block registering

      Tony Luck found on his setup, if memory block size 512M will cause crash
      during booting.

        BUG: unable to handle kernel paging request at ffffea0074000020
        IP: get_nid_for_pfn+0x17/0x40
        PGD 128ffcb067 PUD 128ffc9067 PMD 0
        Oops: 0000 [#1] SMP
        Modules linked in:
        CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.2.0-rc8 #1
        ...
        Call Trace:
           ? register_mem_sect_under_node+0x66/0xe0
           register_one_node+0x17b/0x240
           ? pci_iommu_alloc+0x6e/0x6e
           topology_init+0x3c/0x95
           do_one_initcall+0xcd/0x1f0

      The system has non continuous RAM address:
       BIOS-e820: [mem 0x0000001300000000-0x0000001cffffffff] usable
       BIOS-e820: [mem 0x0000001d70000000-0x0000001ec7ffefff] usable
       BIOS-e820: [mem 0x0000001f00000000-0x0000002bffffffff] usable
       BIOS-e820: [mem 0x0000002c18000000-0x0000002d6fffefff] usable
       BIOS-e820: [mem 0x0000002e00000000-0x00000039ffffffff] usable

      So there are start sections in memory block not present.  For example:

          memory block : [0x2c18000000, 0x2c20000000) 512M

      first three sections are not present.

      The current register_mem_sect_under_node() assume first section is
      present, but memory block section number range [start_section_nr,
      end_section_nr] would include not present section.

      For arch that support vmemmap, we don't setup memmap for struct page
      area within not present sections area.

      So skip the pfn range that belong to absent section.

      [akpm@xxxxxxxxxxxxxxxxxxxx: simplification]
      [rientjes@xxxxxxxxxx: more simplification]
      Fixes: bdee237c0343 ("x86: mm: Use 2GB memory block size on large memory 
x86-64 systems")
      Fixes: 982792c782ef ("x86, mm: probe memory block size for generic x86 
64bit")
      Signed-off-by: Yinghai Lu <yinghai@xxxxxxxxxx>
      Signed-off-by: David Rientjes <rientjes@xxxxxxxxxx>
      Reported-by: Tony Luck <tony.luck@xxxxxxxxx>
      Tested-by: Tony Luck <tony.luck@xxxxxxxxx>
      Cc: Greg KH <greg@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxx>
      Tested-by: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>      [3.15+]
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit aa1057b3dec478b20c77bad07442318ae36d893c
  Author: Ryan Ding <ryan.ding@xxxxxxxxxx>
  Date:   Fri Sep 4 15:42:36 2015 -0700

      ocfs2: direct write will call ocfs2_rw_unlock() twice when doing aio+dio

      ocfs2_file_write_iter() is usng the wrong return value ('written').  This
      will cause ocfs2_rw_unlock() be called both in write_iter & end_io,
      triggering a BUG_ON.

      This issue was introduced by commit 7da839c47589 ("ocfs2: use
      __generic_file_write_iter()").

      Orabug: 21612107
      Fixes: 7da839c47589 ("ocfs2: use __generic_file_write_iter()")
      Signed-off-by: Ryan Ding <ryan.ding@xxxxxxxxxx>
      Reviewed-by: Junxiao Bi <junxiao.bi@xxxxxxxxxx>
      Cc: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
      Cc: Mark Fasheh <mfasheh@xxxxxxxx>
      Cc: Joel Becker <jlbec@xxxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 7f36e3e56db1ae75d1e157011b3cb2e0957f0a7e
  Author: Tang Chen <tangchen@xxxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:42:32 2015 -0700

      memory-hotplug: add hot-added memory ranges to memblock before allocate 
node_data for a node.

      Commit f9126ab9241f ("memory-hotplug: fix wrong edge when hot add a new
      node") hot-added memory range to memblock, after creating pgdat for new
      node.

      But there is a problem:

        add_memory()
        |--> hotadd_new_pgdat()
             |--> free_area_init_node()
                  |--> get_pfn_range_for_nid()
                       |--> find start_pfn and end_pfn in memblock
        |--> ......
        |--> memblock_add_node(start, size, nid)    --------    Here, just too 
late.

      get_pfn_range_for_nid() will find that start_pfn and end_pfn are both 0.
      As a result, when adding memory, dmesg will give the following wrong
      message.

        Initmem setup node 5 [mem 0x0000000000000000-0xffffffffffffffff]
        On node 5 totalpages: 0
        Built 5 zonelists in Node order, mobility grouping on.  Total pages: 
32588823
        Policy zone: Normal
        init_memory_mapping: [mem 0x60000000000-0x607ffffffff]

      The solution is simple, just add the memory range to memblock a little
      earlier, before hotadd_new_pgdat().

      [akpm@xxxxxxxxxxxxxxxxxxxx: coding-style fixes]
      Signed-off-by: Tang Chen <tangchen@xxxxxxxxxxxxxx>
      Cc: Xishi Qiu <qiuxishi@xxxxxxxxxx>
      Cc: Yasuaki Ishimatsu <isimatu.yasuaki@xxxxxxxxxxxxxx>
      Cc: Kamezawa Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx>
      Cc: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Cc: Gu Zheng <guz.fnst@xxxxxxxxxxxxxx>
      Cc: Naoya Horiguchi <n-horiguchi@xxxxxxxxxxxxx>
      Cc: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxxxxxxxxxxxxxx>
      Cc: David Rientjes <rientjes@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>      [4.2.x]
      Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit 254a0f4135482dc02701562a38e10675a48c8ddf
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Fri May 22 20:58:49 2015 +0200

      CRISv10: delete unused lib/dmacopy.c

      This file is never built.

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jespern@xxxxxxxx>

  commit c2ffc68afc0fce16923a54b2dad4d544463b9e0b
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Fri May 22 20:58:48 2015 +0200

      CRISv10: delete unused lib/old_checksum.c

      This file is never built.

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit 7f0144e7779a8c62e3177301d4b2179432ce5460
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Fri Feb 20 19:35:16 2015 +0100

      CRIS: fix switch_mm() lockdep splat

      With lockdep support implemented on CRISv32, we get the following splat.
      switch_mm() can be called both from the scheduler() (with interrupts
      disabled) and from flush_old_exec (via activate_mm()), with interrupts
      enabled.  Fix it by disabling interrupts in activate_mm(), similar to
      powerpc and hexagon.

       t======================================================
       [ INFO: HARDIRQ-safe -> HARDIRQ-unsafe lock order detected ]
       3.19.0-08802-g20bc9f1-dirty #323 Not tainted
       ------------------------------------------------------
       init/1 [HC0[0]:SC0[0]:HE0:SE1] is trying to acquire:
        (mmu_context_lock){+.+...}, at: [<c0009290>] switch_mm+0x22/0xc6

       and this task is already holding:
        (&rq->lock){-.-.-.}, at: [<c01a0756>] __schedule+0x5e/0x648
       which would create a new lock dependency:
        (&rq->lock){-.-.-.} -> (mmu_context_lock){+.+...}

       but this new dependency connects a HARDIRQ-irq-safe lock:
        (&rq->lock){-.-.-.}
       ... which became HARDIRQ-irq-safe at:
         [<c002b03c>] scheduler_tick+0x28/0x5e
         [<c0007c6c>] timer_interrupt+0x4e/0x6a
         [<c0043ac4>] handle_irq_event_percpu+0x54/0x13c
         [<c004343c>] generic_handle_irq+0x2a/0x36

       to a HARDIRQ-irq-unsafe lock:
        (mmu_context_lock){+.+...}
       ... which became HARDIRQ-irq-unsafe at:
       ...  [<c0039e60>] __lock_acquire+0x8f8/0x1d9c
         [<c0009290>] switch_mm+0x22/0xc6
         [<c009c260>] flush_old_exec+0x500/0x5d4
         [<c00da4c6>] load_elf_phdrs+0x7a/0x84
         [<c00dbdb0>] load_elf_binary+0x21c/0x13b4
         [<c009cdb6>] do_execve+0x22/0x2c
         [<c001dcf2>] ____call_usermodehelper+0x0/0x154
         [<c000581e>] ret_from_kernel_thread+0xe/0x14

       other info that might help us debug this:

        Possible interrupt unsafe locking scenario:

              CPU0                    CPU1
              ----                    ----
         lock(mmu_context_lock);
                                      local_irq_disable();
                                      lock(&rq->lock);
                                      lock(mmu_context_lock);
         <Interrupt>
           lock(&rq->lock);

        *** DEADLOCK ***

       1 lock held by init/1:
        #0:  (&rq->lock){-.-.-.}, at: [<c01a0756>] __schedule+0x5e/0x648

       Call Trace:
       [<c019fe9e>] printk+0x0/0x4e
       [<c00368f8>] print_shortest_lock_dependencies+0x0/0x15c
       [<c0048628>] print_stack_trace+0x0/0x88
       [<c0038912>] __lock_is_held+0x3e/0x5e
       [<c003b894>] lock_acquire+0x8a/0xcc
       [<c01a50c4>] _raw_spin_lock+0x44/0x7a
       [<c0009290>] switch_mm+0x22/0xc6
       [<c01a06f8>] __schedule+0x0/0x648
       [<c01a0d76>] schedule+0x36/0x7c
       [<c0037d04>] trace_hardirqs_on+0x0/0x1e
       [<c0004e18>] do_work_pending+0x30/0xd4
       [<c000591a>] _work_pending+0xe/0x12

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit 94c5c115c1f7d347d5ec7f32a090f8643dd42525
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Thu May 14 18:19:37 2015 +0200

      CRISv32: enable LOCKDEP_SUPPORT

      Now that we have stack tracing and irq flags tracing support,
      we can also enable lockdep support

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit aa6f4d2b6547a9949d87c9b09a872a7015366588
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Thu May 14 18:19:03 2015 +0200

      CRIS: add STACKTRACE_SUPPORT

      Add stacktrace support, which is required for lockdep and tracing.  The
      stack tracing simply looks at all kernel text symbols found on the
      stack, similar to the trap stack dumping code, which can also be
      converted to use this.

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit 3fffa23ee0a348aef1b597b67626d4724667143b
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Fri Feb 20 18:57:37 2015 +0100

      CRISv32: annotate irq enable in idle loop

      Use a call to local_irq_enable() instead of incline asm so that the
      irqsoff latency tracer knows that interrupts are enabled here.

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit 444e0c2881bcc70db6833d9c653c6ced36813d3b
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Thu Feb 19 21:36:55 2015 +0100

      CRISv32: add support for irqflags tracing

      Add support irqflags tracing, which is required for things like lockdep
      and ftrace.

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit 20ae24739968ae7f94d0e73215d444042f91df78
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Sat Feb 28 23:59:50 2015 +0100

      CRIS: UAPI: use generic types.h

      CRIS' types.h is functionally identical to the asm-generic version.

      Effective diff:

       +#ifndef _ASM_GENERIC_TYPES_H
       +#define _ASM_GENERIC_TYPES_H
       +
        #include <asm-generic/int-ll64.h>
       +
       +#endif

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit 258a9ff66c30c830f6e2f06856878be4d4cc81af
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Sat Feb 28 23:55:46 2015 +0100

      CRIS: UAPI: use generic shmbuf.h

      CRIS' shmbuf.h is equivalent to the asm-generic verison.

      Effective diff:

       -#ifndef _CRIS_SHMBUF_H
       -#define _CRIS_SHMBUF_H
       +#ifndef __ASM_GENERIC_SHMBUF_H
       +#define __ASM_GENERIC_SHMBUF_H
       +
       +#include <asm/bitsperlong.h>

                struct ipc64_perm       shm_perm;
                size_t                  shm_segsz;
                __kernel_time_t         shm_atime;
       +#if __BITS_PER_LONG != 64
                unsigned long           __unused1;
       +#endif
                __kernel_time_t         shm_dtime;
       +#if __BITS_PER_LONG != 64
                unsigned long           __unused2;
       +#endif
                __kernel_time_t         shm_ctime;
       +#if __BITS_PER_LONG != 64
                unsigned long           __unused3;
       +#endif
                __kernel_pid_t          shm_cpid;
                __kernel_pid_t          shm_lpid;
       -        unsigned long           shm_nattch;
       -        unsigned long           __unused4;
       -        unsigned long           __unused5;
       +        __kernel_ulong_t        shm_nattch;
       +        __kernel_ulong_t        __unused4;
       +        __kernel_ulong_t        __unused5;
        };

        struct shminfo64 {
       -        unsigned long   shmmax;
       -        unsigned long   shmmin;
       -        unsigned long   shmmni;
       -        unsigned long   shmseg;
       -        unsigned long   shmall;
       -        unsigned long   __unused1;
       -        unsigned long   __unused2;
       -        unsigned long   __unused3;
       -        unsigned long   __unused4;
       +        __kernel_ulong_t        shmmax;
       +        __kernel_ulong_t        shmmin;
       +        __kernel_ulong_t        shmmni;
       +        __kernel_ulong_t        shmseg;
       +        __kernel_ulong_t        shmall;
       +        __kernel_ulong_t        __unused1;
       +        __kernel_ulong_t        __unused2;
       +        __kernel_ulong_t        __unused3;
       +        __kernel_ulong_t        __unused4;
        };

        #endif

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit 74d94adb351161cc4027f94e878ac4e80adcfdc9
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Sat Feb 28 23:53:37 2015 +0100

      CRIS: UAPI: use generic msgbuf.h

      CRIS' msgbuf.h is equivalent to the asm-generic version.

      Effective diff:

       -#ifndef _CRIS_MSGBUF_H
       -#define _CRIS_MSGBUF_H
       -
       -
       +#ifndef __ASM_GENERIC_MSGBUF_H
       +#define __ASM_GENERIC_MSGBUF_H

       +#include <asm/bitsperlong.h>

        struct msqid64_ds {
                struct ipc64_perm msg_perm;
                __kernel_time_t msg_stime;
       +#if __BITS_PER_LONG != 64
                unsigned long   __unused1;
       +#endif
                __kernel_time_t msg_rtime;
       +#if __BITS_PER_LONG != 64
                unsigned long   __unused2;
       +#endif
                __kernel_time_t msg_ctime;
       +#if __BITS_PER_LONG != 64
                unsigned long   __unused3;
       -        unsigned long  msg_cbytes;
       -        unsigned long  msg_qnum;
       -        unsigned long  msg_qbytes;
       +#endif
       +        __kernel_ulong_t msg_cbytes;
       +        __kernel_ulong_t msg_qnum;
       +        __kernel_ulong_t msg_qbytes;
                __kernel_pid_t msg_lspid;
                __kernel_pid_t msg_lrpid;
       -        unsigned long  __unused4;
       -        unsigned long  __unused5;
       +        __kernel_ulong_t __unused4;
       +        __kernel_ulong_t __unused5;
        };

        #endif

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit 45266922510fcd1e55df483f41be8debd5df9de8
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Sat Feb 28 23:47:37 2015 +0100

      CRIS: UAPI: use generic socket.h

      CRIS' socket.h is equivalent to the asm-generic version.

      Effective diff:

       -#ifndef _ASM_SOCKET_H
       -#define _ASM_SOCKET_H
       -
       -
       +#ifndef __ASM_GENERIC_SOCKET_H
       +#define __ASM_GENERIC_SOCKET_H

        #include <asm/sockios.h>

        #define SO_LINGER       13
        #define SO_BSDCOMPAT    14
        #define SO_REUSEPORT    15
       +#ifndef SO_PASSCRED
        #define SO_PASSCRED     16
        #define SO_PEERCRED     17
        #define SO_RCVLOWAT     18
        #define SO_SNDLOWAT     19
        #define SO_RCVTIMEO     20
        #define SO_SNDTIMEO     21
       +#endif

       #define SO_SECURITY_AUTHENTICATION               22

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit 53789d25a0603e5c836e460c758867d2071eb135
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Sat Feb 28 23:43:31 2015 +0100

      CRIS: UAPI: use generic sembuf.h

      CRIS's sembuf.h is equivalent to the asm-generic version.
      Effective diff:

       -#ifndef _CRIS_SEMBUF_H
       -#define _CRIS_SEMBUF_H
       +#ifndef __ASM_GENERIC_SEMBUF_H
       +#define __ASM_GENERIC_SEMBUF_H

       +#include <asm/bitsperlong.h>

        struct semid64_ds {
                struct ipc64_perm sem_perm;
                __kernel_time_t sem_otime;
       +#if __BITS_PER_LONG != 64
                unsigned long   __unused1;
       +#endif
                __kernel_time_t sem_ctime;
       +#if __BITS_PER_LONG != 64
                unsigned long   __unused2;
       +#endif
                unsigned long   sem_nsems;
                unsigned long   __unused3;
                unsigned long   __unused4;

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit c823b970b632a86e4f01f3eae9c0860350b70c3c
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Sat Feb 28 23:21:25 2015 +0100

      CRIS: UAPI: use generic sockios.h

      CRIS' sockios.h is equivalent to the asm-generic version.

      Effective diff:

       -#ifndef __ARCH_CRIS_SOCKIOS__
       -#define __ARCH_CRIS_SOCKIOS__
       +#ifndef __ASM_GENERIC_SOCKIOS_H
       +#define __ASM_GENERIC_SOCKIOS_H

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit 889d74a4d40f60427d0482bc271bfc5660a1157b
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Sat Feb 28 22:59:42 2015 +0100

      CRIS: UAPI: use generic auxvec.h

      CRIS's auxvec.h is empty just like the asm-generic version.

      Effective diff:

       -#ifndef __ASMCRIS_AUXVEC_H
       -#define __ASMCRIS_AUXVEC_H
       +#ifndef __ASM_GENERIC_AUXVEC_H
       +#define __ASM_GENERIC_AUXVEC_H
       +

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit 0c02fa2f4ef47334387aeb3aef21ccdab6513459
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Sat Feb 28 23:31:10 2015 +0100

      CRIS: UAPI: use generic headers via Kbuild

      Use Kbuild magic to include the generic headers.

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit f377ea88b862bf7151be96d276f4cb740f8e1c41
  Merge: 51e771c 73bf1b7
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:49:32 2015 -0700

      Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux

      Pull drm updates from Dave Airlie:
       "This is the main pull request for the drm for 4.3.  Nouveau is
        probably the biggest amount of changes in here, since it missed 4.2.
        Highlights below, along with the usual bunch of fixes.

        All stuff outside drm should have applicable acks.

        Highlights:

         - new drivers:
              freescale dcu kms driver

         - core:
              more atomic fixes
              disable some dri1 interfaces on kms drivers
              drop fb panic handling, this was just getting more broken, as 
more locking was required.
              new core fbdev Kconfig support - instead of each driver 
enable/disabling it
              struct_mutex cleanups

         - panel:
              more new panels
              cleanup Kconfig

         - i915:
              Skylake support enabled by default
              legacy modesetting using atomic infrastructure
              Skylake fixes
              GEN9 workarounds

         - amdgpu:
              Fiji support
              CGS support for amdgpu
              Initial GPU scheduler - off by default
              Lots of bug fixes and optimisations.

         - radeon:
              DP fixes
              misc fixes

         - amdkfd:
              Add Carrizo support for amdkfd using amdgpu.

         - nouveau:
              long pending cleanup to complete driver,
              fully bisectable which makes it larger,
              perfmon work
              more reclocking improvements
              maxwell displayport fixes

         - vmwgfx:
              new DX device support, supports OpenGL 3.3
              screen targets support

         - mgag200:
              G200eW support
              G200e new revision support

         - msm:
              dragonboard 410c support, msm8x94 support, msm8x74v1 support
              yuv format support
              dma plane support
              mdp5 rotation
              initial hdcp

         - sti:
              atomic support

         - exynos:
              lots of cleanups
              atomic modesetting/pageflipping support
              render node support

         - tegra:
              tegra210 support (dc, dsi, dp/hdmi)
              dpms with atomic modesetting support

         - atmel:
              support for 3 more atmel SoCs
              new input formats, PRIME support.

         - dwhdmi:
              preparing to add audio support

         - rockchip:
              yuv plane support"

      * 'drm-next' of git://people.freedesktop.org/~airlied/linux: (1369 
commits)
        drm/amdgpu: rename gmc_v8_0_init_compute_vmid
        drm/amdgpu: fix vce3 instance handling
        drm/amdgpu: remove ib test for the second VCE Ring
        drm/amdgpu: properly enable VM fault interrupts
        drm/amdgpu: fix warning in scheduler
        drm/amdgpu: fix buffer placement under memory pressure
        drm/amdgpu/cz: fix cz_dpm_update_low_memory_pstate logic
        drm/amdgpu: fix typo in dce11 watermark setup
        drm/amdgpu: fix typo in dce10 watermark setup
        drm/amdgpu: use top down allocation for non-CPU accessible vram
        drm/amdgpu: be explicit about cpu vram access for driver BOs (v2)
        drm/amdgpu: set MEC doorbell range for Fiji
        drm/amdgpu: implement burst NOP for SDMA
        drm/amdgpu: add insert_nop ring func and default implementation
        drm/amdgpu: add amdgpu_get_sdma_instance helper function
        drm/amdgpu: add AMDGPU_MAX_SDMA_INSTANCES
        drm/amdgpu: add burst_nop flag for sdma
        drm/amdgpu: add count field for the SDMA NOP packet v2
        drm/amdgpu: use PT for VM sync on unmap
        drm/amdgpu: make wait_event uninterruptible in push_job
        ...

  commit 2493d3e28a22087116158249d79410fd355d1e83
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Fri Mar 27 22:35:11 2015 +0100

      CRIS: UAPI: fix elf.h export

      CRIS userspace (uClibc for one) expects asm/elf.h to be exported but
      this header appears to have gone missing at some point.  Move it to
      uapi/ and export it.

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit 3a79a075375cebb672ddaea7896378afa0203e87
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Thu May 14 17:00:58 2015 +0200

      CRIS: don't make asm/elf.h depend on asm/user.h

      We're going to export asm/elf.h; remove its dependencies on the
      non-exported asm/user.h and the unused asm/system.h include.

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit 835e4177284e1574033dea47d4bb8e55c21b6345
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Fri Mar 27 22:32:27 2015 +0100

      CRIS: UAPI: fix ptrace.h

      The exported ptrace.h header on CRIS references an "arch" directory
      which does not exist.  Fix this by having the variants in the same
      directory and including them conditionally, similar to other
      architectures.

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit 4b86715748da506b176b5ec50c041b335c9d1769
  Author: Jesper Nilsson <jespern@xxxxxxxx>
  Date:   Wed Jun 3 13:04:23 2015 +0200

      CRISv32: Squash compile warnings for axisflashmap

      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit 939b83fb03f275016cd72a0f81f49bf8e63c2a14
  Author: Jesper Nilsson <jespern@xxxxxxxx>
  Date:   Wed Jun 3 12:42:01 2015 +0200

      CRISv32: Add GPIO driver to the default configs

      Fix a number of small issues visible when GPIO is enabled:

      - Correct missing default for !ETRAXFS in Kconfig
      - Remove information on number of bits for some Kconfigs
        related to the GPIO, they are different in ETRAX FS and ARTPEC-3
      - Fix compile warning in ARTPEC-3 GPIO driver

      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit 94230178678cb7e0f82ff2c161ac84742f79a2e7
  Author: Jesper Nilsson <jespern@xxxxxxxx>
  Date:   Wed Jun 3 12:25:51 2015 +0200

      CRISv32: ETRAX FS: Squash warnings in pinmux driver

      Squash the followng warnings

      arch/cris/arch-v32/mach-fs/pinmux.c: In function 
'crisv32_pinmux_alloc_fixed':
      arch/cris/arch-v32/mach-fs/pinmux.c:104:2: warning: ISO C90 forbids mixed 
declarations and code [-Wdeclaration-after-statement]
      arch/cris/arch-v32/mach-fs/pinmux.c: In function 
'crisv32_pinmux_dealloc_fixed':
      arch/cris/arch-v32/mach-fs/pinmux.c:238:2: warning: ISO C90 forbids mixed 
declarations and code [-Wdeclaration-after-statement]
      arch/cris/arch-v32/mach-fs/pinmux.c: In function '__crisv32_pinmux_alloc':
      arch/cris/arch-v32/mach-fs/pinmux.c:49:1: warning: control reaches end of 
non-void function [-Wreturn-type]

      Signed-off-by: Jesper Nilsson <jesper.nilsson@xxxxxxxx>

  commit ee59843cd2b4331db49671c7f045ee2ff9d535b6
  Author: Chen Gang <xili_gchen_5257@xxxxxxxxxxx>
  Date:   Wed May 6 21:48:12 2015 +0800

      CRIS: Wire up missing syscalls

      The related warnings:

          CALL    scripts/checksyscalls.sh
        <stdin>:1229:2: warning: #warning syscall sched_setattr not implemented 
[-Wcpp]
        <stdin>:1232:2: warning: #warning syscall sched_getattr not implemented 
[-Wcpp]
        <stdin>:1235:2: warning: #warning syscall renameat2 not implemented 
[-Wcpp]
        <stdin>:1238:2: warning: #warning syscall seccomp not implemented 
[-Wcpp]
        <stdin>:1241:2: warning: #warning syscall getrandom not implemented 
[-Wcpp]
        <stdin>:1244:2: warning: #warning syscall memfd_create not implemented 
[-Wcpp]
        <stdin>:1247:2: warning: #warning syscall bpf not implemented [-Wcpp]
        <stdin>:1250:2: warning: #warning syscall execveat not implemented 
[-Wcpp]

      Signed-off-by: Chen Gang <gang.chen.5i5j@xxxxxxxxx>
      Signed-off-by: Jesper Nilsson <jespern@xxxxxxxx>

  commit f59625a8f770741d590da09be4f0fcfc75b31e46
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Thu May 14 14:36:56 2015 +0200

      CRISv32: allow CONFIG_DEBUG_BUGVERBOSE

      Support for verbose BUG reporting already exists, but the HAVE flag that
      allows the option to be enabled is missing.

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jespern@xxxxxxxx>

  commit 98a725a57a8e92bfbe962a8c69975ce0f9ff11fe
  Author: Rabin Vincent <rabin@xxxxxx>
  Date:   Thu May 14 14:36:55 2015 +0200

      CRISv32: add unreachable() to BUG()

      Add an unreachable() in the BUG() implementations, to get rid of
      several warnings similar to the one below:

       kernel/sched/core.c: In function 'pick_next_task':
       kernel/sched/core.c:2690:1: warning: control reaches end of non-void 
function [-Wreturn-type]

      Signed-off-by: Rabin Vincent <rabin@xxxxxx>
      Signed-off-by: Jesper Nilsson <jespern@xxxxxxxx>

  commit 6a4756f6951f97a9a601ba24632c5906750ef00d
  Author: Christophe Jaillet <christophe.jaillet@xxxxxxxxxx>
  Date:   Fri May 1 15:58:19 2015 +0200

      cris: arch-v32: gpio: Use kzalloc instead of kmalloc/memset

      Turn a kmalloc/memset into an equivalent kzalloc.
      Doing so also move the zero'ing of the memory outside of a mutex.

      Signed-off-by: Christophe Jaillet <christophe.jaillet@xxxxxxxxxx>
      Signed-off-by: Jesper Nilsson <jespern@xxxxxxxx>

  commit 73bf1b7be7aab60d7c651402441dd0b0b4991098
  Merge: 5b78cb6 35c7a95
  Author: Dave Airlie <airlied@xxxxxxxxx>
  Date:   Sat Sep 5 07:46:09 2015 +1000

      Merge branch 'drm-next-4.3' of git://people.freedesktop.org/~agd5f/linux 
into drm-next

      A few more fixes for amdgpu from the last few days:
      - Fix several copy paste typos
      - Resume from suspend fixes for VCE
      - Fix the GPU scheduler warning in kfifo_out
      - Re-enable GPUVM fault interrupts which were inadvertently disabled
      - GPUVM page table hang fix when paging

      * 'drm-next-4.3' of git://people.freedesktop.org/~agd5f/linux:
        drm/amdgpu: rename gmc_v8_0_init_compute_vmid
        drm/amdgpu: fix vce3 instance handling
        drm/amdgpu: remove ib test for the second VCE Ring
        drm/amdgpu: properly enable VM fault interrupts
        drm/amdgpu: fix warning in scheduler
        drm/amdgpu: fix buffer placement under memory pressure
        drm/amdgpu/cz: fix cz_dpm_update_low_memory_pstate logic
        drm/amdgpu: fix typo in dce11 watermark setup
        drm/amdgpu: fix typo in dce10 watermark setup
        drm/amdgpu: use top down allocation for non-CPU accessible vram
        drm/amdgpu: be explicit about cpu vram access for driver BOs (v2)

  commit 4eae50143bcbfda819c650b7ed6739f3b6338ffc
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:17:53 2015 -0400

      Revert "NFS: Make close(2) asynchronous when closing NFS O_DIRECT files"

      This reverts commit f895c53f8ace3c3e49ebf9def90e63fc6d46d2bf.

      This commit causes a NFSv4 regression in that close()+unlink() can end
      up failing. The reason is that we no longer have a guarantee that the
      CLOSE has completed on the server, meaning that the subsequent call to
      REMOVE may fail with NFS4ERR_FILE_OPEN if the server implements Windows
      unlink() semantics.

      Reported-by: <Olga Kornievskaia <aglo@xxxxxxxxx>
      Cc: Chuck Lever <chuck.lever@xxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 5cf9d70659594e1a75b34d18619d0bb6e0cbbafa
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:07:37 2015 -0400

      NFS: Optimise away the close-to-open getattr if there is no cached data

      If there is no cached data, then there is no need to track the file
      change attribute on close.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 35c7a9526af75040fac744babd0fafe18b8fe0a1
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Thu Sep 3 18:01:00 2015 -0400

      drm/amdgpu: rename gmc_v8_0_init_compute_vmid

      It should be gfx_v8_0_init_compute_vmid since it's
      part of the gfx block.

      Acked-by: Leo Liu <leo.liu@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit be4f38e28ca2bbd6d06db8064277d71389746e26
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Thu Sep 3 19:03:11 2015 -0400

      drm/amdgpu: fix vce3 instance handling

      Need to properly handle the instances for the idle
      checks and soft reset.

      Acked-by: Leo Liu <leo.liu@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 898e50d444e12f735e45d07cd3f306ac5d4abca8
  Author: Leo Liu <leo.liu@xxxxxxx>
  Date:   Fri Sep 4 15:08:55 2015 -0400

      drm/amdgpu: remove ib test for the second VCE Ring

      it seems the VCE ring 1 ib test not reliable, remove it for now.

      Signed-off-by: Leo Liu <leo.liu@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Tested-and-Reviewed-by: Sonny Jiang <sonny.jiang@xxxxxxx>

  commit 140b519f7a117c86c085b3800a2fea3015cd877f
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Fri Sep 4 18:48:29 2015 +0200

      drm/amdgpu: properly enable VM fault interrupts

      This fixes not printing VM faults.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 51e771c0d25b43d0f12b2c7c01939942becbbe28
  Merge: abebcdf 01b944f
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 12:02:11 2015 -0700

      Merge branch 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input

      Pull input subsystem updates from Dmitry Torokhov:
       "Drivers, drivers, drivers...  No interesting input core changes this
        time"

      * 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (74 commits)
        Input: elan_i2c - use iap_version to get firmware information
        Input: max8997_haptic - fix module alias
        Input: elan_i2c - fix typos for validpage_count
        Input: psmouse - add small delay for IBM trackpoint pass-through mode
        Input: synaptics - fix handling of disabling gesture mode
        Input: elan_i2c - enable ELAN0100 acpi panels
        Input: gpio-keys - report error when disabling unsupported key
        Input: sur40 - fix error return code
        Input: sentelic - silence some underflow warnings
        Input: zhenhua - switch to using bitrev8()
        Input: cros_ec_keyb - replace KEYBOARD_CROS_EC dependency
        Input: cap11xx - add LED support
        Input: elants_i2c - fix for devm_gpiod_get API change
        Input: elan_i2c - enable asynchronous probing
        Input: elants_i2c - enable asynchronous probing
        Input: elants_i2c - wire up regulator support
        Input: do not emit unneeded EV_SYN when suspending
        Input: elants_i2c - disable idle mode before updating firmware
        MAINTAINERS: Add maintainer for atmel_mxt_ts
        Input: atmel_mxt_ts - remove warning on zero T44 count
        ...

  commit abebcdfb64f1b39eeeb14282d9cd4aad1ed86f8d
  Merge: 670c039 d5f362a
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 11:46:02 2015 -0700

      Merge tag 'sound-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound

      Pull sound updates from Takashi Iwai:
       "There are little changes in core part, but lots of development are
        found in drivers, especially ASoC.  The diffstat shows regmap-related
        changes for a slight API additions / changes, and that's all.

        Looking at the code size statistics, the most significant addition is
        for Intel Skylake.  (Note that SKL support is still underway, the
        codec driver is missing.) Also STI controller driver is a major
        addition as well as a few new codec drivers.

        In HD-audio side, there are fewer changes than the past.  The
        noticeable change is the support of ELD notification from i915
        graphics driver.  Thus this pull request carries a few changes in
        drm/i915.

        Other than that, USB-audio got a rewrite of runtime PM code.  It was
        initiated by lockdep warning, but resulted in a good cleanup in the
        end.

        Below are the highlights:

        Common:
         - Factoring out of AC'97 reset code from ASoC into the core helper
         - A few regmap API extensions (in case it's not pulled yet)

        ASoC:
         - New drivers for Cirrus CS4349, GTM601, InvenSense ICS43432, Realtek
           RT298 and ST STI controllers
         - Machine drivers for Rockchip systems with MAX98090 and RT5645 and
           RT5650
         - Initial driver support for Intel Skylake devices
         - Lots of rsnd cleanup and enhancements
         - A few DAPM fixes and cleanups
         - A large number of cleanups in various drivers (conversion and
           standardized to regmap, component) mostly by Lars-Peter and Axel

        HD-audio:
         - Extended HD-audio core for Intel Skylake controller support
         - Quirks for Dell headsets, Alienware 15
         - Clean up of pin-based quirk tables for Realtek codecs
         - ELD notifier implenetation for Intel HDMI/DP

        USB-audio:
         - Refactor runtime PM code to make lockdep happier"

      * tag 'sound-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (411 commits)
        drm/i915: Add locks around audio component bind/unbind
        drm/i915: Drop port_mst_index parameter from pin/eld callback
        ALSA: hda - Fix missing inline for dummy snd_hdac_set_codec_wakeup()
        ALSA: hda - Wake the codec up on pin/ELD notify events
        ALSA: hda - allow codecs to access the i915 pin/ELD callback
        drm/i915: Call audio pin/ELD notify function
        drm/i915: Add audio pin sense / ELD callback
        ASoC: zx296702-i2s: Fix resource leak when unload module
        ASoC: sti_uniperif: Ensure component is unregistered when unload module
        ASoC: au1x: psc-i2s: Convert to use devm_ioremap_resource
        ASoC: sh: dma-sh7760: Convert to devm_snd_soc_register_platform
        ASoC: spear_pcm: Use devm_snd_dmaengine_pcm_register to fix resource 
leak
        ALSA: fireworks/bebob/dice/oxfw: fix substreams counting at vmalloc 
failure
        ASoC: Clean up docbook warnings
        ASoC: txx9: Convert to devm_snd_soc_register_platform
        ASoC: pxa: Convert to devm_snd_soc_register_platform
        ASoC: nuc900: Convert to devm_snd_soc_register_platform
        ASoC: blackfin: Convert to devm_snd_soc_register_platform
        ASoC: au1x: Convert to devm_snd_soc_register_platform
        ASoC: qcom: Constify asoc_qcom_lpass_cpu_dai_ops
        ...

  commit 670c039deeffb5c0a3a900de53b95dba781aaf89
  Merge: 8bd8fd0 13d20b3
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 11:40:40 2015 -0700

      Merge tag 'backlight-for-linus-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight

      Pull backlight updates from Lee Jones:
       - Stop using LP855X Platform Data to control regulators
       - Move PWM8941 WLED driver into Backlight
       - Remove invalid use of IS_ERR_VALUE() macro
       - Remove duplicate check for NULL data before unregistering
       - Export I2C Device ID structure

      * tag 'backlight-for-linus-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight:
        backlight: tosa: Export I2C module alias information
        backlight: lp8788_bl: Delete a check before 
backlight_device_unregister()
        backlight: sky81452: Remove unneeded use of IS_ERR_VALUE() macro
        backlight: pm8941-wled: Move PM8941 WLED driver to backlight
        backlight: lp855x: Use private data for regulator control

  commit 8bd8fd0a29bfd5ad8e1976edd8c4c40cdb39aa4f
  Merge: 3527122 5a688c4
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 11:35:03 2015 -0700

      Merge tag 'mfd-for-linus-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd

      Pull MFD updates from Lee Jones:
       "New Device Support:
         - New Clocksource driver from ST
         - New MFD/ACPI/DMA drivers for Intel's Sunrisepoint PCH based platforms
         - Add support for Arizona WM8998 and WM1814
         - Add support for Dialog Semi DA9062 and DA9063
         - Add support for Kontron COMe-bBL6 and COMe-cBW6
         - Add support for X-Powers AXP152
         - Add support for Atmel, many
         - Add support for STMPE, many
         - Add support for USB in X-Powers AXP22X

        Core Frameworks:
         - New Base API to traverse devices and their children in reverse order

        Bug Fixes:
         - Fix race between runtime-suspend and IRQs
         - Obtain platform data form more reliable source

        Fix-ups:
         - Constifying things
         - Variable signage changes
         - Kconfig depends|selects changes
         - Make use of BIT() macro
         - Do not supply .owner attribute in *_driver structures
         - MAINTAINERS entries
         - Stop using set_irq_flags()
         - Start using irq_set_chained_handler_and_data()
         - Export DT device ID structures"

      * tag 'mfd-for-linus-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (69 commits)
        mfd: jz4740-adc: Init mask cache in generic IRQ chip
        mfd: cros_ec: spi: Add OF match table
        mfd: stmpe: Add OF match table
        mfd: max77686: Split out regulator part from the DT binding
        mfd: Add DT binding for Maxim MAX77802 IC
        mfd: max77686: Use a generic name for the PMIC node in the example
        mfd: max77686: Don't suggest in binding to use a deprecated property
        mfd: Add MFD_CROS_EC dependencies
        mfd: cros_ec: Remove CROS_EC_PROTO dependency for SPI and I2C drivers
        mfd: axp20x: Add a cell for the usb power_supply part of the axp20x 
PMICs
        mfd: axp20x: Add missing registers, and mark more registers volatile
        mfd: arizona: Fixup some formatting/white space errors
        mfd: wm8994: Fix NULL pointer exception on missing pdata
        of: Add vendor prefix for Nuvoton
        mfd: mt6397: Implement wake handler and suspend/resume to handle wake 
up event
        mfd: atmel-hlcdc: Add support for new SoCs
        mfd: Export OF module alias information in missing drivers
        mfd: stw481x: Export I2C module alias information
        mfd: da9062: Support for the DA9063 OnKey in the DA9062 core
        mfd: max899x: Avoid redundant irq_data lookup
        ...

  commit 352712274507645b6f82b8763977ad87321919a3
  Merge: 88a9988 ab98193
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 11:10:18 2015 -0700

      Merge tag 'dmaengine-4.3-rc1' of 
git://git.infradead.org/users/vkoul/slave-dma

      Pull dmaengine updates from Vinod Koul:
       "This time we have aded a new capability for scatter-gathered memset
        using dmaengine APIs.  This is supported in xdmac & hdmac drivers

        We have added support for reusing descriptors for examples like video
        buffers etc.  Driver will follow

        The behaviour of descriptor ack has been clarified and documented

        New devices added are:
         - dma controller in sun[457]i SoCs
         - lpc18xx dmamux
         - ZTE ZX296702 dma controller
         - Analog Devices AXI-DMAC DMA controller
         - eDMA support for dma-crossbar
         - imx6sx support in imx-sdma driver
         - imx-sdma device to device support

        Other:
         - jz4780 fixes
         - ioatdma large refactor and cleanup for removal of ioat v1 and v2
           which is deprecated and fixes
         - ACPI support in X-Gene DMA engine driver
         - ipu irq fixes
         - mvxor fixes
         - minor fixes spread thru drivers"

      [ The Kconfig and Makefile entries got re-sorted alphabetically, and I
        handled the conflict with the new Intel integrated IDMA driver by
        slightly mis-sorting it on purpose: "IDMA64" got sorted after "IMX" in
        order to keep the Intel entries together.  I think it might be a good
        idea to just rename the IDMA64 config entry to INTEL_IDMA64 to make
        the sorting be a true sort, not this mismash.

        Also, this merge disables the COMPILE_TEST for the sun4i DMA
        controller, because it does not compile cleanly at all.     - Linus ]

      * tag 'dmaengine-4.3-rc1' of 
git://git.infradead.org/users/vkoul/slave-dma: (89 commits)
        dmaengine: ioatdma: add Broadwell EP ioatdma PCI dev IDs
        dmaengine :ipu: change ipu_irq_handler() to remove compile warning
        dmaengine: ioatdma: Fix variable array length
        dmaengine: ioatdma: fix sparse "error" with prep lock
        dmaengine: hdmac: Add memset capabilities
        dmaengine: sort the sh Makefile
        dmaengine: sort the sh Kconfig
        dmaengine: sort the dw Kconfig
        dmaengine: sort the Kconfig
        dmaengine: sort the makefile
        drivers/dma: make mv_xor.c driver explicitly non-modular
        dmaengine: Add support for the Analog Devices AXI-DMAC DMA controller
        devicetree: Add bindings documentation for Analog Devices AXI-DMAC
        dmaengine: xgene-dma: Fix the lock to allow client for further 
submission of requests
        dmaengine: ioatdma: fix coccinelle warning
        dmaengine: ioatdma: fix zero day warning on incompatible pointer type
        dmaengine: tegra-apb: Simplify locking for device using global pause
        dmaengine: tegra-apb: Remove unnecessary return statements and variables
        dmaengine: tegra-apb: Avoid unnecessary channel base address calculation
        dmaengine: tegra-apb: Remove unused variables
        ...

  commit 88a99886c26fec8bf662e7b6bc080431a8660326
  Merge: 8d2faea 1ab3638
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 10:22:09 2015 -0700

      Merge tag 'pinctrl-v4.3-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl

      Pull pin control updates from Linus Walleij:
       "This is the bulk of pin control changes for the v4.3 development
        cycle.

        Like with GPIO it's a lot of stuff.  If my subsystems are any sign of
        the overall tempo of the kernel v4.3 will be a gigantic diff.

      [ It looks like 4.3 is calmer than 4.2 in most other subsystems, but
        we'll see - Linus ]

        Core changes:

         - It is possible configure groups in debugfs.

         - Consolidation of chained IRQ handler install/remove replacing all
           call sites where irq_set_handler_data() and
           irq_set_chained_handler() were done in succession with a combined
           call to irq_set_chained_handler_and_data().  This series was
           created by Thomas Gleixner after the problem was observed by
           Russell King.

         - Tglx also made another series of patches switching
           __irq_set_handler_locked() for irq_set_handler_locked() which is
           way cleaner.

         - Tglx also wrote a good bunch of patches to make use of
           irq_desc_get_xxx() accessors and avoid looking up irq_descs from
           IRQ numbers.  The goal is to get rid of the irq number from the
           handlers in the IRQ flow which is nice.

        Driver feature enhancements:

         - Power management support for the SiRF SoC Atlas 7.

         - Power down support for the Qualcomm driver.

         - Intel Cherryview and Baytrail: switch drivers to use raw spinlocks
           in IRQ handlers to play nice with the realtime patch set.

         - Rework and new modes handling for Qualcomm SPMI-MPP.

         - Pinconf power source config for SH PFC.

        New drivers and subdrivers:

         - A new driver for Conexant Digicolor CX92755.

         - A new driver for UniPhier PH1-LD4, PH1-Pro4, PH1-sLD8, PH1-Pro5,
           ProXtream2 and PH1-LD6b SoC pin control support.

         - Reverse-egineered the S/PDIF settings for the Allwinner sun4i
           driver.

         - Support for Qualcomm Technologies QDF2xxx ARM64 SoCs

         - A new Freescale i.mx6ul subdriver.

        Cleanup:

         - Remove platform data support in a number of SH PFC subdrivers"

      * tag 'pinctrl-v4.3-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (95 commits)
        pinctrl: at91: fix null pointer dereference
        pinctrl: mediatek: Implement wake handler and suspend resume
        pinctrl: mediatek: Fix multiple registration issue.
        pinctrl: sh-pfc: r8a7794: add USB pin groups
        pinctrl: at91: Use generic irq_{request,release}_resources()
        pinctrl: cherryview: Use raw_spinlock for locking
        pinctrl: baytrail: Use raw_spinlock for locking
        pinctrl: imx6ul: Remove .owner field
        pinctrl: zynq: Fix typos in smc0_nand_grp and smc0_nor_grp
        pinctrl: sh-pfc: Implement pinconf power-source param for voltage 
switching
        clk: rockchip: add pclk_pd_pmu to the list of rk3288 critical clocks
        pinctrl: sun4i: add spdif to pin description.
        pinctrl: atlas7: clear ugly branch statements for pull and drivestrength
        pinctrl: baytrail: Serialize all register access
        pinctrl: baytrail: Drop FSF mailing address
        pinctrl: rockchip: only enable gpio clock when it setting
        pinctrl/mediatek: fix spelling mistake in dev_err error message
        pinctrl: cherryview: Serialize all register access
        pinctrl: UniPhier: PH1-Pro5: add I2C ch6 pin-mux setting
        pinctrl: nomadik: reflect current input value
        ...

  commit 8d2faea672606827c2018143ec7d88c760f2d6de
  Merge: 02cf1da 01e2dae
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 10:07:45 2015 -0700

      Merge tag 'gpio-v4.3-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio

      Pull GPIO updates from Linus Walleij:
       "This is the bulk of GPIO changes for the v4.3 kernel cycle.

        There is quite a lot going on in the GPIO subsystem this merge window,
        so the main matter is decribed below.

        The hits in other subsystems when making the GPIO flags optional are
        all ACKed by their respective subsystem maintainers.

        Core changes:

         - Root out the wrapper devm_gpiod_get() and gpiod_get() etc versions
           of the descriptor calls that did not use the flags argument on the
           end.  This was around for too long and eventually Uwe Kleine-König
           took the time to clean it out and the last users are removed along
           with the macros in this tag.  In several cases the use of flags
           simplifies the code.  For this reason we have (ACKed) patches
           hitting in DRM, IIO, media, NFC, USB+PHY up until we hammer in the
           nail with removing the macros.

         - Add a fat document describing how much ready-made GPIO stuff we
           have i the kernel to discourage people from reinventing a square
           wheel in userspace, as so often happens.

         - Create a separate lockdep class for each instance of a GPIO IRQ
           chip instead of using one class for all chips, as the current code
           will not work with systems with several GPIO chips doing lockdep
           debugging.

         - Protect against driver unloading also when a GPIO line is only used
           as IRQ for the GPIOLIB_IRQCHIP helpers.

         - If the GPIO chip has no designated owner, assign the parent device
           driver owner as owner.

         - Consolidation of chained IRQ handler install/remove replacing all
           call sites where irq_set_handler_data() and
           irq_set_chained_handler() were done in succession with a combined
           call to irq_set_chained_handler_and_data().

           This series was created by Thomas Gleixner after the problem was
           observed by Russell King.

         - Tglx also made another series of patches switching
           __irq_set_handler_locked() for irq_set_handler_locked() which is
           way cleaner.

         - Tglx and Jiang Liu wrote a good bunch of patches to make use of
           irq_desc_get_xxx() accessors and avoid looking up irq_descs from
           IRQ numbers.  The goal is to get rid of the irq number from the
           handlers in the IRQ flow which is nice.

         - Rob Herring killed off the set_irq_flags() for all GPIO drivers.
           This was an ARM specific function that is replaced with the generic
           irq_modify_status() where special flags are actually needed.

         - When an OF node has a pin range for its GPIOs, return -EPROBE_DEFER
           if the pin controller isn't available.  Pretty logical, yet needed
           to be fixed.

         - If a driver using GPIOLIB_IRQCHIP has its own irq_*_resources call
           back, then call these instead of the defaults provided by the
           GPIOLIB.

         - Fix an undocumented ABI hole: named GPIOs were not properly
           documented.

        Driver improvements:

         - Add get_direction() support to the generic GPIO driver, it's
           strange that we didn't have that before.

         - Make it possible to have input-only GPIO chips using the generic
           GPIO driver.

         - Clean out platform data support from the Emma Mobile (EM) driver

         - Finegrained runtime PM support for the RCAR driver.

         - Support r8a7795 (R-car H3) in the RCAR driver.

         - Support interrupts on GPIOs 16 thru 31 in the DaVinci driver.

         - Some consolidation and new support in the MPC8xxx driver, we now
           support MPC5125.

         - Preempt-RT-friendly patches: the OMAP, MPC8xxx, drivers uses raw
           spinlocks making it work better with the realime patches.

         - Interrupt support for the EXTRAXFS GPIO driver.

         - Make the ETRAXFS GPIO driver support also ARTPEC-3.

         - Interrupt and wakeup support for the BRCMSTB driver, also for
           wakeup from S5 cold boot.

         - Mask MXC IRQs during suspend.

         - Improve OMAP2 GPIO set_debounce() to work according to spec.

         - The VF610 driver handles IRQs properly.

        New drivers:

         - ZTE ZX GPIO driver"

      * tag 'gpio-v4.3-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (87 commits)
        Revert "gpio: extraxfs: fix returnvar.cocci warnings"
        gpio: tc3589x: use static container helper
        gpio: xlp: fix error return code
        gpio: vf610: handle level IRQ's properly
        gpio: max732x: Fix error handling in probe()
        gpio: omap: fix clk_prepare/unprepare usage
        gpio: omap: protect regs access in omap_gpio_irq_handler
        gpio: omap: fix omap2_set_gpio_debounce
        gpio: omap: switch to use platform_get_irq
        gpio: omap: remove wrong irq_domain_remove usage in probe
        gpiolib: add description for gpio irqchip fields in struct gpio_chip
        gpio: extraxfs: fix returnvar.cocci warnings
        gpiolib: irqchip: use different lockdep class for each gpio irqchip
        gpio/grgpio: fix deadlock in grgpio_irq_unmap()
        Documentation: gpio: consumer: describe active low property
        gpio: mxc: fix section mismatch warning
        gpio/mxc: mask gpio interrupts in suspend
        gpio: omap: Fix missing raw locks conversion
        gpio: brcmstb: support wakeup from S5 cold boot
        gpio: brcmstb: Add interrupt and wakeup source support
        ...

  commit 072502a67c9164625288cca17704808e6c06273f
  Merge: 84fb901 1ed8111 2de9d60
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Fri Sep 4 17:22:10 2015 +0100

      Merge remote-tracking branches 'regmap/topic/lockdep' and 
'regmap/topic/seq-delay' into regmap-next

  commit 84fb9015d20dc12a2d36f7d775700a53cc45ad90
  Merge: a458a6d ad3a942 e874e6c
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Fri Sep 4 17:22:09 2015 +0100

      Merge remote-tracking branches 'regmap/topic/debugfs' and 
'regmap/topic/force-update' into regmap-next

  commit a458a6d411b86de7a2a8e51f9016cf017d5ed545
  Merge: f7474161 04782ca
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Fri Sep 4 17:22:08 2015 +0100

      Merge remote-tracking branch 'regmap/topic/core' into regmap-next

  commit f74741615368af1b8401be4b7a6f0b9ccbc2420a
  Merge: b3959b5 9a16ea9
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Fri Sep 4 17:22:07 2015 +0100

      Merge remote-tracking branch 'regmap/fix/raw' into regmap-linus

  commit b3959b5cd33383d9fa9b6c653e162331c2af2e08
  Merge: 64291f7 2f9b660
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Fri Sep 4 17:22:07 2015 +0100

      Merge remote-tracking branch 'regmap/fix/core' into regmap-linus

  commit 04782ca20a8ebb5acf0c35756a38964ae5ea7321
  Merge: d5b98eb 17649c9
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Fri Sep 4 17:16:39 2015 +0100

      Merge branch 'topic/smbus-block' of 
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap into regmap-core

  commit 0de6cfb9f314db230c47b2158e7725208b3b4728
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 09:13:56 2015 -0700

      Revert "uart: pl011: Rename regs with enumeration"

      This reverts commit 534e14e2293d8cd714b94513686228453b21fae2 as with
      this patch the serial console is broken on lots of platforms.

      Reported-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: Jun Nie <jun.nie@xxxxxxxxxx>
      Acked-by: Will Deacon <will.deacon@xxxxxxx>
      Tested-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit f11c98417c65ddd730c483c1c9290ae0f7b121a7
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 09:13:39 2015 -0700

      Revert "uart: pl011: Introduce register accessor"

      This reverts commit 7b753f318d1456c8e7740f3bd96d1dbb362d5449 as with
      this patch the serial console is broken on lots of platforms.

      Reported-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: Jun Nie <jun.nie@xxxxxxxxxx>
      Acked-by: Will Deacon <will.deacon@xxxxxxx>
      Tested-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ab66ca27c801605c6bb19baed2933544dd7d39e6
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 09:13:30 2015 -0700

      Revert "uart: pl011: Introduce register look up table"

      This reverts commit 2c096a9eedc6841d3610545f4e6c3d72bd0962be as with
      this patch the serial console is broken on lots of platforms.

      Reported-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: Jun Nie <jun.nie@xxxxxxxxxx>
      Acked-by: Will Deacon <will.deacon@xxxxxxx>
      Tested-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 8e50254a6ab2abb6ae08699adffe3d89e4c75912
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 09:12:03 2015 -0700

      Revert "uart: pl011: Improve LCRH register access decision"

      This reverts commit 09dcc7dfc05b31bf0bbcd1511cd1a2644908d5c8 as with
      this patch the serial console is broken on lots of platforms.

      Reported-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: Jun Nie <jun.nie@xxxxxxxxxx>
      Acked-by: Will Deacon <will.deacon@xxxxxxx>
      Tested-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 062a68a5e0aaa9577d75391ffafa11e3c2a5f892
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 09:11:24 2015 -0700

      Revert "uart: pl011: Add support to ZTE ZX296702 uart"

      This reverts commit 8cd90e50d1408c65c355084b1c7f8f9085f49c6b as with
      this patch the serial console is broken on lots of platforms.

      Reported-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: Jun Nie <jun.nie@xxxxxxxxxx>
      Acked-by: Will Deacon <will.deacon@xxxxxxx>
      Tested-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 0c0672922dcc70ffba11d96385e98e42fb3ae08d
  Author: Alexander Spyridakis <a.spyridakis@xxxxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 17:06:24 2015 +0200

      arm/arm64: KVM: Fix PSCI affinity info return value for non valid cores

      If a guest requests the affinity info for a non-existing vCPU we need to
      properly return an error, instead of erroneously reporting an off state.

      Signed-off-by: Alexander Spyridakis <a.spyridakis@xxxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Alvise Rigo <a.rigo@xxxxxxxxxxxxxxxxxxxxxx>
      Acked-by: Mark Rutland <mark.rutland@xxxxxxx>
      Reviewed-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 02cf1da2548d318ad4db9eb4cf8656e24b11aefc
  Merge: a4fdb2a 8d03bc5
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 08:59:53 2015 -0700

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile

      Pull tile updates from Chris Metcalf:
       "This includes secure computing support as well as miscellaneous minor
        improvements"

      * git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
        tile: correct some typos in opcode type names
        tile/vdso: emit a GNU hash as well
        tile: Remove finish_arch_switch
        tile: enable full SECCOMP support
        tile/time: Migrate to new 'set-state' interface

  commit 857d1a973077245f03b351e2539529c86267bfe4
  Author: Mark Rutland <mark.rutland@xxxxxxx>
  Date:   Mon Aug 24 14:42:05 2015 +0100

      arm64: KVM: set {v,}TCR_EL2 RES1 bits

      Currently we don't set the RES1 bits of TCR_EL2 and VTCR_EL2 when
      configuring them, which could lead to unexpected behaviour when an
      architectural meaning is defined for those bits.

      Set the RES1 bits to avoid issues.

      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Cc: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: Suzuki Poulose <suzuki.poulose@xxxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Reviewed-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Signed-off-by: Mark Rutland <mark.rutland@xxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 4ad9e16af36bbe8657aabe494ff912acbc213ce4
  Author: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
  Date:   Fri Sep 4 16:24:39 2015 +0200

      arm/arm64: KVM: arch timer: Reset CNTV_CTL to 0

      Provide a better quality of implementation and be architecture compliant
      on ARMv7 for the architected timer by resetting the CNTV_CTL to 0 on
      reset of the timer.

      This change alone fixes the UEFI reset issue reported by Laszlo back in
      February.

      Cc: Laszlo Ersek <lersek@xxxxxxxxxx>
      Cc: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Cc: Drew Jones <drjones@xxxxxxxxxx>
      Cc: Wei Huang <wei@xxxxxxxxxx>
      Cc: Peter Maydell <peter.maydell@xxxxxxxxxx>
      Reviewed-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Signed-off-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 04bdfa8ab5bab929cc57f73952c503a88372601d
  Author: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
  Date:   Fri Sep 4 16:24:38 2015 +0200

      arm/arm64: KVM: vgic: Move active state handling to flush_hwstate

      We currently set the physical active state only when we *inject* a new
      pending virtual interrupt, but this is actually not correct, because we
      could have been preempted and run something else on the system that
      resets the active state to clear.  This causes us to run the VM with the
      timer set to fire, but without setting the physical active state.

      The solution is to always check the LR configurations, and we if have a
      mapped interrupt in the LR in either the pending or active state
      (virtual), then set the physical active state.

      Acked-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Signed-off-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 71c6da846be478a61556717ef1ee1cea91f5d6a8
  Author: Andrey Ryabinin <aryabinin@xxxxxxxx>
  Date:   Thu Sep 3 14:32:01 2015 +0300

      crypto: ghash-clmulni: specify context size for ghash async algorithm

      Currently context size (cra_ctxsize) doesn't specified for
      ghash_async_alg. Which means it's zero. Thus crypto_create_tfm()
      doesn't allocate needed space for ghash_async_ctx, so any
      read/write to ctx (e.g. in ghash_async_init_tfm()) is not valid.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Andrey Ryabinin <aryabinin@xxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 5134e999cb72c621f48305d5c201ab30156505c1
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Fri Sep 4 00:11:54 2015 -0400

      drm/amdgpu: fix warning in scheduler

      This should never happen so warn when the count does
      not equal the expected size.

      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit a4fdb2a46f617b8b2cd47acec026ec16532edbc6
  Merge: 807249d 674c242c
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Sep 4 07:18:09 2015 -0700

      Merge tag 'arm64-upstream' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux

      Pull arm64 updates from Will Deacon:

       - Support for new architectural features introduced in ARMv8.1:
         * Privileged Access Never (PAN) to catch user pointer dereferences in
           the kernel
         * Large System Extension (LSE) for building scalable atomics and locks
           (depends on locking/arch-atomic from tip, which is included here)
         * Hardware Dirty Bit Management (DBM) for updating clean PTEs
           automatically

       - Move our PSCI implementation out into drivers/firmware/, where it can
         be shared with arch/arm/. RMK has also pulled this component branch
         and has additional patches moving arch/arm/ over. MAINTAINERS is
         updated accordingly.

       - Better BUG implementation based on the BRK instruction for trapping

       - Leaf TLB invalidation for unmapping user pages

       - Support for PROBE_ONLY PCI configurations

       - Various cleanups and non-critical fixes, including:
         * Always flush FP/SIMD state over exec()
         * Restrict memblock additions based on range of linear mapping
         * Ensure *(LIST_POISON) generates a fatal fault
         * Context-tracking syscall return no longer corrupts return value when
           not forced on.
         * Alternatives patching synchronisation/stability improvements
         * Signed sub-word cmpxchg compare fix (tickled by HAVE_CMPXCHG_LOCAL)
         * Force SMP=y
         * Hide direct DCC access from userspace
         * Fix EFI stub memory allocation when DRAM starts at 0x0

      * tag 'arm64-upstream' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (92 commits)
        arm64: flush FP/SIMD state correctly after execve()
        arm64: makefile: fix perf_callchain.o kconfig dependency
        arm64: set MAX_MEMBLOCK_ADDR according to linear region size
        of/fdt: make memblock maximum physical address arch configurable
        arm64: Fix source code file path in comments
        arm64: entry: always restore x0 from the stack on syscall return
        arm64: mdscr_el1: avoid exposing DCC to userspace
        arm64: kconfig: Move LIST_POISON to a safe value
        arm64: Add __exception_irq_entry definition for function graph
        arm64: mm: ensure patched kernel text is fetched from PoU
        arm64: alternatives: ensure secondary CPUs execute ISB after patching
        arm64: make ll/sc __cmpxchg_case_##name asm consistent
        arm64: dma-mapping: Simplify pgprot handling
        arm64: restore cpu suspend/resume functionality
        ARM64: PCI: do not enable resources on PROBE_ONLY systems
        arm64: cmpxchg: truncate sub-word signed types before comparison
        arm64: alternative: put secondary CPUs into polling loop during patch
        arm64/Documentation: clarify wording regarding memory below the Image
        arm64: lse: fix lse cmpxchg code indentation
        arm64: remove redundant object file list
        ...

  commit ef9be10c8c999e00b239eec24cf01952a308f8e7
  Author: Johannes Berg <johannes.berg@xxxxxxxxx>
  Date:   Fri Aug 28 10:44:20 2015 +0200

      mac80211: reject software RSSI CQM with beacon filtering

      When beacon filtering is enabled the mac80211 software implementation
      for RSSI CQM cannot work as beacons will not be available. Rather than
      accepting such a configuration without proper effect, reject it.

      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 52a45f38ca5998db0394e782d137595a82a08b43
  Author: Arik Nemtsov <arik@xxxxxxxxxx>
  Date:   Sat Aug 15 22:39:53 2015 +0300

      mac80211: avoid VHT usage with no 80MHz chans allowed

      Currently if 80MHz channels are not allowed for use, the VHT IE is not
      included in the probe request for an AP. This is not good enough if the
      AP is configured with the wrong regulatory and supports VHT even where
      prohibited or in TDLS scenarios.
      Mark the ifmgd with the DISABLE_VHT flag for the misbehaving-AP case, and
      unset VHT support from the peer-station entry for the TDLS case.

      Signed-off-by: Arik Nemtsov <arikx.nemtsov@xxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 549cc1c560128d583698ba9a73af283fe87dbab8
  Author: Maciej S. Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 19:00:31 2015 +0200

      cfg80211: regulatory: restore proper user alpha2

      restore_regulatory_settings() should restore alpha2
      as computed in restore_alpha2(), not raw user_alpha2 to
      behave as described in the comment just above that code.

      This fixes endless loop of calling CRDA for "00" and "97"
      countries after resume from suspend on my laptop.

      Looks like others had the same problem, too:
      
http://ath9k-devel.ath9k.narkive.com/knY5W6St/ath9k-and-crda-messages-in-logs
      https://bugs.launchpad.net/ubuntu/+source/linux/+bug/899335
      https://forum.porteus.org/viewtopic.php?t=4975&p=36436
      
https://forums.opensuse.org/showthread.php/483356-Authentication-Regulatory-Domain-issues-ath5k-12-2

      Signed-off-by: Maciej Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 4c0778933a3d7c35a94e8c35847acd9bb59a257d
  Author: João Paulo Rechi Vita <jprvita@xxxxxxxxx>
  Date:   Tue Aug 25 08:56:43 2015 -0400

      rfkill: Copy "all" global state to other types

      When switching the state of all RFKill switches of type all we need to
      replicate the RFKILL_TYPE_ALL global state to all the other types global
      state, so it is used to initialize persistent RFKill switches on
      register.

      Signed-off-by: João Paulo Rechi Vita <jprvita@xxxxxxxxxxxx>
      Acked-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 22f66895e60cfc55b92f6fa93f05bb3fbdbd0bed
  Author: Avri Altman <avri.altman@xxxxxxxxx>
  Date:   Tue Aug 18 16:52:07 2015 +0300

      mac80211: protect non-HT BSS when HT TDLS traffic exists

      HT TDLS traffic should be protected in a non-HT BSS to avoid
      collisions. Therefore, when TDLS peers join/leave, check if
      protection is (now) needed and set the ht_operation_mode of
      the virtual interface according to the HT capabilities of the
      TDLS peer(s).

      This works because a non-HT BSS connection never sets (or
      otherwise uses) the ht_operation_mode; it just means that
      drivers must be aware that this field applies to all HT
      traffic for this virtual interface, not just the traffic
      within the BSS. Document that.

      Signed-off-by: Avri Altman <avri.altman@xxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 98a1f8282b8c37378c1b947d661a58942331ca90
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 26 12:22:14 2015 +0200

      mac80211: Do not use sizeof() on pointer type

      The rate_control_cap_mask() function takes a parameter mcs_mask, which
      GCC will take to be u8 * even though it was declared with a fixed size.
      This causes the following warning:

        net/mac80211/rate.c: In function 'rate_control_cap_mask':
        net/mac80211/rate.c:719:25: warning: 'sizeof' on array function 
parameter 'mcs_mask' will return size of 'u8 * {aka unsigned char *}' 
[-Wsizeof-array-argument]
           for (i = 0; i < sizeof(mcs_mask); i++)
                                 ^
        net/mac80211/rate.c:684:10: note: declared here
               u8 mcs_mask[IEEE80211_HT_MCS_MASK_LEN],
                  ^

      This can be easily fixed by using the IEEE80211_HT_MCS_MASK_LEN directly
      within the loop condition.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 5631d9c429857194bd55d7bcd8fa5bdd1a9899a3
  Author: Michal Marek <mmarek@xxxxxxxx>
  Date:   Wed Aug 19 17:36:41 2015 +0200

      kbuild: Fix clang detection

      We cannot detect clang before including the arch Makefile, because that
      can set the default cross compiler. We also cannot detect clang after
      including the arch Makefile, because powerpc wants to know about clang.
      Solve this by using an deferred variable. This costs us a few shell
      invocations, but this is only a constant number.

      Reported-by: Behan Webster <behanw@xxxxxxxxxxxxxxxxxx>
      Reported-by: Anton Blanchard <anton@xxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit 86bfbc15660a61bb7b3df73db11939eec3393008
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 13:03:04 2015 +0200

      ALSA: sparc: amd7930: Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 3716001bcb7f5822382ac1f2f54226b87312cc6b
  Author: Riku Voipio <riku.voipio@xxxxxxxxxx>
  Date:   Wed Sep 2 12:57:24 2015 +0300

      deb-pkg: add source package

      Make deb-pkg build both source and binary package like make rpm-pkg does.
      For people who only need binary kernel package, there is now bindeb-pkg
      target, same target also used to build the .deb files if built from the
      source package using dpkg-buildpackage.

      Generated source package will build the same kernel .config than what
      was available for make deb-pkg. The name of the source package can
      be set with KDEB_SOURCENAME enviroment variable.

      The source package is useful for GPL compliance, or for feeding to a
      automated debian package builder.

      Cc: Chris J Arges <chris.j.arges@xxxxxxxxxxxxx>
      Reviewed-by: maximilian attems <maks@xxxxxxx>
      Reviewed-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
      Signed-off-by: Riku Voipio <riku.voipio@xxxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit 26803821463c4e76322559b3dfb0c6b0fcc8aee8
  Author: Riku Voipio <riku.voipio@xxxxxxxxxx>
  Date:   Wed Sep 2 12:57:08 2015 +0300

      package/Makefile: move source tar creation to a function

      Split source tarball creation from rpm-pkg target
      so it can be used from deb-pkg target as well. As
      added bonus, we can now pretty print TAR the name of
      tarball created in quiet mode

      This patch prepares the groundwork for deb-pkg source
      package adding bit.

      Signed-off-by: Riku Voipio <riku.voipio@xxxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit 21adf76e908dd03ae47c8f4dd53b180996a725ad
  Merge: 5b92356 53ff6bc
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Fri Sep 4 11:00:56 2015 +0200

      Merge tag 'perf-urgent-for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent

      Pull perf/urgent fixes from Arnaldo Carvalho de Melo:

        - In some cases where perf_event.fork.{pid,tid} should be used we were 
instead
          using perf_event.comm.{pid,tid}, which is not a problem for for the 
'pid'
          case, that sits in the same place in these union_perf_event members, 
but
          comm.tid sits where fork.ppid is, oops.

          These cases were considered as (potentially) problematic:

           - 'perf script' with !sample_id_all, i.e. only non old kernels 
without
              perf_event_attr.sample_id_all.

           - intel_pt could be affected when decoding without timestamps, as 
the exit
             event is only used to flush out data which anyway gets flushed at 
the
             end of the session.

           - intel_bts also uses the exit event to flush data which would 
probably not
             cause errors as it would get flushed at the end of the session 
instead.

          Fix it. (Adrian Hunter)

        - Due to relaxing the compiler checks for bison generated files, we 
missed
          updating one parse_events_add_pmu() caller when this function had its
          prototype changed, fix it. (Jiri Olsa)

      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 1adecc6755e1e4193b5618ddb2e107f6d6e88f4b
  Author: Woodrow Shen <woodrow.shen@xxxxxxxxxxxxx>
  Date:   Fri Sep 4 15:08:12 2015 +0800

      ALSA: hda - Add some FIXUP quirks for white noise on Dell laptop.

      Dell laptop has a series model to use the same codec but different 
subsystem ID.
      At the same time they happens the white noise by login screen and 
headphone;
      for fixing them together, I only can add these IDs to FIXUP function 
ALC292_FIXUP_DISABLE_AAMIX,
      then try to solve such the similar issues.

      Codec: Realtek ALC3235
      Vendor Id: 0x10ec0293
      Subsystem Id: 0x102806dd
      Subsystem Id: 0x102806df
      Subsystem Id: 0x102806e0

      Cc: <stable@xxxxxxxxxxxxxxx>
      BugLink: https://bugs.launchpad.net/bugs/1492132
      Signed-off-by: Woodrow Shen <woodrow.shen@xxxxxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit eb38f3a4f6e86f8bb10a3217ebd85ecc5d763aae
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Thu Sep 3 22:20:00 2015 -0700

      Input: evdev - do not report errors form flush()

      We've got bug reports showing the old systemd-logind (at least
      system-210) aborting unexpectedly, and this turned out to be because
      of an invalid error code from close() call to evdev devices.  close()
      is supposed to return only either EINTR or EBADFD, while the device
      returned ENODEV.  logind was overreacting to it and decided to kill
      itself when an unexpected error code was received.  What a tragedy.

      The bad error code comes from flush fops, and actually evdev_flush()
      returns ENODEV when device is disconnected or client's access to it is
      revoked. But in these cases the fact that flush did not actually happen is
      not an error, but rather normal behavior. For non-disconnected devices
      result of flush is also not that interesting as there is no potential of
      data loss and even if it fails application has no way of handling the
      error. Because of that we are better off always returning success from
      evdev_flush().

      Also returning EINTR from flush()/close() is discouraged (as it is not
      clear how application should handle this error), so let's stop taking
      evdev->mutex interruptibly.

      Bugzilla: http://bugzilla.suse.com/show_bug.cgi?id=939834
      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 22c15e5e008297c90daa8657fea1a3f0e0675454
  Author: James Chen <james.chen@xxxxxxxxxx>
  Date:   Thu Sep 3 22:12:38 2015 -0700

      Input: elants_i2c - extend the calibration timeout to 12 seconds

      The 23 inch device found in Chrome project buddy requires 9.2~10.5 seconds
      to complete calibration. Let's increase calibration timeout to 12 seconds
      to give the device enough time.

      Signed-off-by: James Chen <james.chen@xxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 26492f195eed08b95ad5acdfbe625062ad7d86c6
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 10:50:57 2015 -0700

      Input: sparcspkr - fix module autoload for OF platform drivers

      These platform drivers have a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 5b78cb668764061bd8a06f73f9bd081ba6942fef
  Merge: aed160e 6fa2d19
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Sep 4 13:09:20 2015 +1000

      Merge tag 'drm-intel-next-fixes-2015-09-02' of 
git://anongit.freedesktop.org/drm-intel into drm-next

      i915 display fixes headed for v4.3. Mostly SKL, but some regression
      fixes too.

      * tag 'drm-intel-next-fixes-2015-09-02' of 
git://anongit.freedesktop.org/drm-intel:
        i915: Set ddi_pll_sel in DP MST path
        drm/i915: Don't use link_bw for PLL setup
        drm/i915: Preserve SSC earlier
        drm/i915/skl: Adding DDI_E power well domain
        drm/i915: eDP can be present on DDI-E
        drm/i915/skl: Enable DDI-E
        drm/i915: Enable HDMI on DDI-E
        drm/i915: apply the PCI_D0/D3 hibernation workaround everywhere on pre 
GEN6
        drm/i915: Check DP link status on long hpd too
        drm/i915: set CDCLK if DPLL0 enabled during resuming from S3

  commit aed160eac581258f5f280b6e4b3f49b106973a78
  Merge: 41e8a0a3 4c156c2
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Sep 4 13:08:40 2015 +1000

      Merge branch 'drm-rockchip-2015-08-26' of 
https://github.com/markyzq/kernel-drm-rockchip into drm-next

      Here are some fixes and some new features for rockchip drm,
          tested on popmetal rk3288 board, can you land them?

      * 'drm-rockchip-2015-08-26' of 
https://github.com/markyzq/kernel-drm-rockchip:
        drm/rockchip: vop: support plane scale
        drm/rockchip: vop: restore vop registers when resume
        drm/rockchip: vop: Default enable win2/3 area0 bit
        drm/rockchip: vop: Add yuv plane support
        drm/rockchip: vop: Fix window dest start point
        drm/rockchip: vop: Fix virtual stride calculation

  commit 41e8a0a3046530911bf2f2fc28c971bf588858b8
  Merge: 55cdb31 aa3469c
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Sep 4 13:08:08 2015 +1000

      Merge tag 'vmwgfx-next-15-09-01' of 
git://people.freedesktop.org/~thomash/linux into drm-next

      Pull request of 2015-09-01

      A single commit. Workaround for
      https://bugzilla.redhat.com/show_bug.cgi?id=1227193

      * tag 'vmwgfx-next-15-09-01' of 
git://people.freedesktop.org/~thomash/linux:
        drm/vmwgfx: Allow dropped masters render-node like access on legacy 
nodes v2

  commit 55cdb314494b0372c2f0ba3a589aeb412a9626ba
  Merge: 9949558 c305857
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Sep 4 13:07:18 2015 +1000

      Merge branch 'exynos-drm-next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos into drm-next

         This is a last pull request, which includes two g2d patches
         I missed, and more cleanup series of Exynos drm driver.

         The cleanup series makes Exynos drm driver more simple,
         and removes unnecessary codes, and considers multiple plane format
         of framebuffer. I hope this not to be late.

      * 'exynos-drm-next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos:
        drm/exynos: remove buf_cnt from struct exynos_drm_fb
        drm/exynos: remove exynos_drm_fb_get_buf_cnt()
        drm/exynos: cleanup exynos_user_fb_create()
        drm/exynos: update exynos_drm_framebuffer_init() for multiple buffers
        drm/exynos: cleanup to get gem object for fb
        drm/exynos: update fb_info via only one function
        drm/exynos: cleanup exynos_drm_fbdev_update()
        drm/exynos: s/exynos_gem_obj/obj in exynos_drm_fbdev.c
        drm/exynos: remove exynos_drm_fb_set_buf_cnt()
        drm/exynos: remove superfluous checks in g2d_check_reg_offset()
        drm/exynos: fix size check in g2d_check_buf_desc_is_valid()

  commit 99495589aa4de7166af254bc497cdbe133fc24bb
  Merge: 879a37d bddf802
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Sep 4 13:06:29 2015 +1000

      Merge branch 'drm-next-4.3' of git://people.freedesktop.org/~agd5f/linux 
into drm-next

      More fixes for radeon and amdgpu for 4.3:
      - Send full DP aux address fixes for radeon and amdgpu
      - Fix an HDMI display regression for pre-DCE5 parts
      - UVD suspend fixes for amdgpu
      - Add an rs480 suspend quirk
      - Fix bo reserve handling in amdgpu GEM_OP ioctl
      - GPU scheduler fixes
      - SDMA optimizations
      - MEC fix for Fiji

      * 'drm-next-4.3' of git://people.freedesktop.org/~agd5f/linux: (21 
commits)
        drm/amdgpu: set MEC doorbell range for Fiji
        drm/amdgpu: implement burst NOP for SDMA
        drm/amdgpu: add insert_nop ring func and default implementation
        drm/amdgpu: add amdgpu_get_sdma_instance helper function
        drm/amdgpu: add AMDGPU_MAX_SDMA_INSTANCES
        drm/amdgpu: add burst_nop flag for sdma
        drm/amdgpu: add count field for the SDMA NOP packet v2
        drm/amdgpu: use PT for VM sync on unmap
        drm/amdgpu: make wait_event uninterruptible in push_job
        drm/amdgpu: fix amdgpu_bo_unreserve order in GEM_OP IOCTL v2
        drm/amdgpu: partially revert "modify amdgpu_fence_wait_any() to 
amdgpu_fence_wait_multiple()" v2
        Add radeon suspend/resume quirk for HP Compaq dc5750.
        drm/amdgpu: re-work sync_resv
        drm/amdgpu/atom: Send out the full AUX address
        drm/radeon/native: Send out the full AUX address
        drm/radeon/atom: Send out the full AUX address
        drm/amdgpu: use IB for fill_buffer instead of direct command
        drm/amdgpu: stop trying to suspend UVD sessions v2
        drm/amdgpu: add scheduler dependency callback v2
        drm/amdgpu: let the scheduler work more with jobs v2
        ...

  commit dc3a04d551b5d21f1badbb39bfe8e5bc1289b184
  Author: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 17:11:22 2015 -0700

      security/device_cgroup: Fix RCU_LOCKDEP_WARN() condition

      f78f5b90c4ff ("rcu: Rename rcu_lockdep_assert() to RCU_LOCKDEP_WARN()")
      introduced a bug by incorrectly inverting the condition when moving from
      rcu_lockdep_assert() to RCU_LOCKDEP_WARN().  This commit therefore fixes
      the inversion.

      Reported-by: Felipe Balbi <balbi@xxxxxx>
      Reported-by: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
      Acked-by: Serge Hallyn <serge.hallyn@xxxxxxxxxxxxx>
      Tested-by: Josh Boyer <jwboyer@xxxxxxxxxxxxxxxxx>

  commit 807249d3ada1ff28a47c4054ca4edd479421b671
  Merge: ff474e8 2db9704
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 16:55:55 2015 -0700

      Merge branch 'upstream' of 
git://git.linux-mips.org/pub/scm/ralf/upstream-linus

      Pull MIPS updates from Ralf Baechle:
       "This is the main pull request for 4.3 for MIPS.  Here's the summary:

        Three fixes that didn't make 4.2-stable:

         - a -Os build might compile the kernel using the MIPS16 instruction
           set but the R2 optimized inline functions in <uapi/asm/swab.h> are
           implemented using 32-bit wide instructions which is invalid.

         - a build error in pgtable-bits.h for a particular kernel
           configuration.

         - accessing registers of the CM GCR might have been compiled to use
           64 bit accesses but these registers are onl 32 bit wide.

        And also a few new bits:

         - move the ATH79 GPIO driver to drivers/gpio

         - the definition of IRQCHIP_DECLARE has moved to linux/irqchip.h,
           change ATH79 accordingly.

         - fix definition of pgprot_writecombine

         - add an implementation of dma_map_ops.mmap

         - fix alignment of quiet build output for vmlinuz link

         - BCM47xx: Use kmemdup rather than duplicating its implementation

         - Netlogic: Fix 0x0x prefixes of constants.

         - merge Bjorn Helgaas' series to remove most of the weak keywords
           from function declarations.

         - CP0 and CP1 registers are best considered treated as unsigned
           values to avoid large values from becoming negative values.

         - improve support for the MIPS GIC timer.

         - enable common clock framework for Malta and SEAD3.

         - a number of improvments and fixes to dump_tlb().

         - document the MIPS TLB dump functionality in Magic SysRq.

         - Cavium Octeon CN68XX improvments.

         - NetLogic improvments.

         - irq: Use access helper irq_data_get_affinity_mask.

         - handle MSA unaligned accesses.

         - a number of R6-related math-emu fixes.

         - support for I6400.

         - improvments to MSA support.

         - add uprobes support.

         - move from deprecated __initcall to arch_initcall.

         - remove finish_arch_switch().

         - IRQ cleanups by Thomas Gleixner.

         - migrate to new 'set-state' interface.

         - random small cleanups"

      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: 
(148 commits)
        MIPS: UAPI: Fix unrecognized opcode WSBH/DSBH/DSHD when using MIPS16.
        MIPS: Fix alignment of quiet build output for vmlinuz link
        MIPS: math-emu: Remove unused handle_dsemul function declaration
        MIPS: math-emu: Add support for the MIPS R6 MAX{, A} FPU instruction
        MIPS: math-emu: Add support for the MIPS R6 MIN{, A} FPU instruction
        MIPS: math-emu: Add support for the MIPS R6 CLASS FPU instruction
        MIPS: math-emu: Add support for the MIPS R6 RINT FPU instruction
        MIPS: math-emu: Add support for the MIPS R6 MSUBF FPU instruction
        MIPS: math-emu: Add support for the MIPS R6 MADDF FPU instruction
        MIPS: math-emu: Add support for the MIPS R6 SELNEZ FPU instruction
        MIPS: math-emu: Add support for the MIPS R6 SELEQZ FPU instruction
        MIPS: math-emu: Add support for the CMP.condn.fmt R6 instruction
        MIPS: inst.h: Add new MIPS R6 FPU opcodes
        MIPS: Octeon: Fix management port MII address on Kontron S1901
        MIPS: BCM47xx: Use kmemdup rather than duplicating its implementation
        STAGING: Octeon: Use common helpers for determining interface and port
        MIPS: Octeon: Support interfaces 4 and 5
        MIPS: Octeon: Set up 1:1 mapping between CN68XX PKO queues and ports
        MIPS: Octeon: Initialize CN68XX PKO
        STAGING: Octeon: Support CN68XX style WQE
        ...

  commit ff474e8ca8547d09cb82ebab56d4c96f9eea01ce
  Merge: 4c92b5b 390fd59
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 16:41:38 2015 -0700

      Merge tag 'powerpc-4.3-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux

      Pull powerpc updates from Michael Ellerman:

       - support "hybrid" iommu/direct DMA ops for coherent_mask < dma_mask
         from Benjamin Herrenschmidt

       - EEH fixes for SRIOV from Gavin

       - introduce rtas_get_sensor_fast() for IRQ handlers from Thomas Huth

       - use hardware RNG for arch_get_random_seed_* not arch_get_random_*
         from Paul Mackerras

       - seccomp filter support from Michael Ellerman

       - opal_cec_reboot2() handling for HMIs & machine checks from Mahesh
         Salgaonkar

       - add powerpc timebase as a trace clock source from Naveen N.  Rao

       - misc cleanups in the xmon, signal & SLB code from Anshuman Khandual

       - add an inline function to update POWER8 HID0 from Gautham R.  Shenoy

       - fix pte_pagesize_index() crash on 4K w/64K hash from Michael Ellerman

       - drop support for 64K local store on 4K kernels from Michael Ellerman

       - move dma_get_required_mask() from pnv_phb to pci_controller_ops from
         Andrew Donnellan

       - initialize distance lookup table from drconf path from Nikunj A
         Dadhania

       - enable RTC class support from Vaibhav Jain

       - disable automatically blocked PCI config from Gavin Shan

       - add LEDs driver for PowerNV platform from Vasant Hegde

       - fix endianness issues in the HVSI driver from Laurent Dufour

       - kexec endian fixes from Samuel Mendoza-Jonas

       - fix corrupted pdn list from Gavin Shan

       - fix fenced PHB caused by eeh_slot_error_detail() from Gavin Shan

       - Freescale updates from Scott: Highlights include 32-bit memcpy/memset
         optimizations, checksum optimizations, 85xx config fragments and
         updates, device tree updates, e6500 fixes for non-SMP, and misc
         cleanup and minor fixes.

       - a ton of cxl updates & fixes:
          - add explicit precision specifiers from Rasmus Villemoes
          - use more common format specifier from Rasmus Villemoes
          - destroy cxl_adapter_idr on module_exit from Johannes Thumshirn
          - destroy afu->contexts_idr on release of an afu from Johannes
            Thumshirn
          - compile with -Werror from Daniel Axtens
          - EEH support from Daniel Axtens
          - plug irq_bitmap getting leaked in cxl_context from Vaibhav Jain
          - add alternate MMIO error handling from Ian Munsie
          - allow release of contexts which have been OPENED but not STARTED
            from Andrew Donnellan
          - remove use of macro DEFINE_PCI_DEVICE_TABLE from Vaishali Thakkar
          - release irqs if memory allocation fails from Vaibhav Jain
          - remove racy attempt to force EEH invocation in reset from Daniel
            Axtens
          - fix + cleanup error paths in cxl_dev_context_init from Ian Munsie
          - fix force unmapping mmaps of contexts allocated through the kernel
            api from Ian Munsie
          - set up and enable PSL Timebase from Philippe Bergheaud

      * tag 'powerpc-4.3-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (140 commits)
        cxl: Set up and enable PSL Timebase
        cxl: Fix force unmapping mmaps of contexts allocated through the kernel 
api
        cxl: Fix + cleanup error paths in cxl_dev_context_init
        powerpc/eeh: Fix fenced PHB caused by eeh_slot_error_detail()
        powerpc/pseries: Cleanup on pci_dn_reconfig_notifier()
        powerpc/pseries: Fix corrupted pdn list
        powerpc/powernv: Enable LEDS support
        powerpc/iommu: Set default DMA offset in dma_dev_setup
        cxl: Remove racy attempt to force EEH invocation in reset
        cxl: Release irqs if memory allocation fails
        cxl: Remove use of macro DEFINE_PCI_DEVICE_TABLE
        powerpc/powernv: Fix mis-merge of OPAL support for LEDS driver
        powerpc/powernv: Reset HILE before kexec_sequence()
        powerpc/kexec: Reset secondary cpu endianness before kexec
        powerpc/hvsi: Fix endianness issues in the HVSI driver
        leds/powernv: Add driver for PowerNV platform
        powerpc/powernv: Create LED platform device
        powerpc/powernv: Add OPAL interfaces for accessing and modifying system 
LED states
        powerpc/powernv: Fix the log message when disabling VF
        cxl: Allow release of contexts which have been OPENED but not STARTED
        ...

  commit 4c92b5bb14226faa16d29a1df5752baf1ff22b53
  Merge: c706c7e fca8b80
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 16:36:33 2015 -0700

      Merge branch 'pcmcia' of git://ftp.arm.linux.org.uk/~rmk/linux-arm

      Pull ARM pcmcia updates from Russell King:
       "A series of changes updating the PXA and SA11x0 PCMCIA code to use
        devm_* APIs, and resolve some resource leaks in doing so.  This
        results in a few small cleanups which are included in this set.

        FYI, the recommit of these today is to add Robert Jarzmik's
        reviewed-by tags, which I'd forgotten to add from mid-July"

      * 'pcmcia' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
        pcmcia: soc_common: remove skt_dev_info's clk pointer
        pcmcia: sa11xx_base.c: remove useless init/exit functions
        pcmcia: sa1111: simplify clk handing in sa1111_pcmcia_add()
        pcmcia: sa1111: update socket driver to use devm_clk_get() API
        pcmcia: pxa2xx: convert memory allocation to devm_* API
        pcmcia: pxa2xx: update socket driver to use devm_clk_get() API
        pcmcia: sa11x0: convert memory allocation to devm_* API
        pcmcia: sa11x0: fix missing clk_put() in sa11x0 socket drivers

  commit c706c7eb0d08098f0d768aeef945d7cf1f8858b4
  Merge: 79b0691 3ff32a0
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 16:27:01 2015 -0700

      Merge branch 'for-linus' of git://ftp.arm.linux.org.uk/~rmk/linux-arm

      Pull ARM development updates from Russell King:
       "Included in this update:

         - moving PSCI code from ARM64/ARM to drivers/

         - removal of some architecture internals from global kernel view

         - addition of software based "privileged no access" support using the
           old domains register to turn off the ability for kernel
           loads/stores to access userspace.  Only the proper accessors will
           be usable.

         - addition of early fixup support for early console

         - re-addition (and reimplementation) of OMAP special interconnect
           barrier

         - removal of finish_arch_switch()

         - only expose cpuX/online in sysfs if hotpluggable

         - a number of code cleanups"

      * 'for-linus' of git://ftp.arm.linux.org.uk/~rmk/linux-arm: (41 commits)
        ARM: software-based priviledged-no-access support
        ARM: entry: provide uaccess assembly macro hooks
        ARM: entry: get rid of multiple macro definitions
        ARM: 8421/1: smp: Collapse arch_cpu_idle_dead() into cpu_die()
        ARM: uaccess: provide uaccess_save_and_enable() and uaccess_restore()
        ARM: mm: improve do_ldrd_abort macro
        ARM: entry: ensure that IRQs are enabled when calling 
syscall_trace_exit()
        ARM: entry: efficiency cleanups
        ARM: entry: get rid of asm_trace_hardirqs_on_cond
        ARM: uaccess: simplify user access assembly
        ARM: domains: remove DOMAIN_TABLE
        ARM: domains: keep vectors in separate domain
        ARM: domains: get rid of manager mode for user domain
        ARM: domains: move initial domain setting value to asm/domains.h
        ARM: domains: provide domain_mask()
        ARM: domains: switch to keeping domain value in register
        ARM: 8419/1: dma-mapping: harmonize definition of DMA_ERROR_CODE
        ARM: 8417/1: refactor bitops functions with BIT_MASK() and BIT_WORD()
        ARM: 8416/1: Feroceon: use of_iomap() to map register base
        ARM: 8415/1: early fixmap support for earlycon
        ...

  commit 79b0691d0c1d3d4a976e3304a1512e6eca9671ec
  Merge: ca520ca 5b92356
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 16:15:41 2015 -0700

      Merge branch 'perf-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull perf fixes from Ingo Molnar:
       "Tooling fixes plus a handful of late arriving tooling changes"

      * 'perf-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf tools: Fix link time error with sample_reg_masks on non x86
        perf build: Fix Intel PT instruction decoder dependency problem
        perf dwarf: Fix potential array out of bounds access
        perf record: Add ability to name registers to record
        perf/x86: Add list of register names
        perf script: Enable printing of interrupted machine state
        perf evlist: Open event on evsel cpus and threads
        bpf tools: New API to get name from a BPF object
        perf tools: Fix build on powerpc broken by pt/bts

  commit ca520cab25e0e8da717c596ccaa2c2b3650cfa09
  Merge: 4c12ab7 d420acd
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 15:46:07 2015 -0700

      Merge branch 'locking-core-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull locking and atomic updates from Ingo Molnar:
       "Main changes in this cycle are:

         - Extend atomic primitives with coherent logic op primitives
           (atomic_{or,and,xor}()) and deprecate the old partial APIs
           (atomic_{set,clear}_mask())

           The old ops were incoherent with incompatible signatures across
           architectures and with incomplete support.  Now every architecture
           supports the primitives consistently (by Peter Zijlstra)

         - Generic support for 'relaxed atomics':

             - _acquire/release/relaxed() flavours of xchg(), cmpxchg() and 
{add,sub}_return()
             - atomic_read_acquire()
             - atomic_set_release()

           This came out of porting qwrlock code to arm64 (by Will Deacon)

         - Clean up the fragile static_key APIs that were causing repeat bugs,
           by introducing a new one:

             DEFINE_STATIC_KEY_TRUE(name);
             DEFINE_STATIC_KEY_FALSE(name);

           which define a key of different types with an initial true/false
           value.

           Then allow:

             static_branch_likely()
             static_branch_unlikely()

           to take a key of either type and emit the right instruction for the
           case.  To be able to know the 'type' of the static key we encode it
           in the jump entry (by Peter Zijlstra)

         - Static key self-tests (by Jason Baron)

         - qrwlock optimizations (by Waiman Long)

         - small futex enhancements (by Davidlohr Bueso)

         - ... and misc other changes"

      * 'locking-core-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (63 commits)
        jump_label/x86: Work around asm build bug on older/backported GCCs
        locking, ARM, atomics: Define our SMP atomics in terms of _relaxed() 
operations
        locking, include/llist: Use linux/atomic.h instead of asm/cmpxchg.h
        locking/qrwlock: Make use of _{acquire|release|relaxed}() atomics
        locking/qrwlock: Implement queue_write_unlock() using 
smp_store_release()
        locking/lockref: Remove homebrew cmpxchg64_relaxed() macro definition
        locking, asm-generic: Add _{relaxed|acquire|release}() variants for 
'atomic_long_t'
        locking, asm-generic: Rework atomic-long.h to avoid bulk code 
duplication
        locking/atomics: Add _{acquire|release|relaxed}() variants of some 
atomic operations
        locking, compiler.h: Cast away attributes in the WRITE_ONCE() magic
        locking/static_keys: Make verify_keys() static
        jump label, locking/static_keys: Update docs
        locking/static_keys: Provide a selftest
        jump_label: Provide a self-test
        s390/uaccess, locking/static_keys: employ static_branch_likely()
        x86, tsc, locking/static_keys: Employ static_branch_likely()
        locking/static_keys: Add selftest
        locking/static_keys: Add a new static_key interface
        locking/static_keys: Rework update logic
        locking/static_keys: Add static_key_{en,dis}able() helpers
        ...

  commit 724a7636ad026a3a68f3fc626ccd04111f65cfd9
  Merge: 4548a69 410f038
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Sep 3 15:43:06 2015 -0700

      Merge branch 'sctp-fixes'

      Marcelo Ricardo Leitner says:

      ====================
      couple of sctp fixes for 0ca50d12fe46

      These are two fixes for sctp after my patch on 0ca50d12fe46 ("sctp: fix
      src address selection if using secondary addresses")

      The first, fix a dst leak on those it decided to skip.

      The second, adds the fallback on src selection that Vlad had asked
      about. Unfortunatelly a lot of ipvs setups relies on the old behavior
      and I don't see a better fix for it.

      Please consider both to -stable tree.
      ====================

      Acked-by: Neil Horman <nhorman@xxxxxxxxxxxxx>
      Acked-by: Vlad Yasevich <vyasevich@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 410f03831c0768f2b1850d28ba697b167ddcb89b
  Author: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
  Date:   Wed Sep 2 16:20:22 2015 -0300

      sctp: add routing output fallback

      Commit 0ca50d12fe46 added a restriction that the address must belong to
      the output interface, so that sctp will use the right interface even
      when using secondary addresses.

      But it breaks IPVS setups, on which people is used to attach VIP
      addresses to loopback interface on real servers. It's preferred to
      attach to the interface actually in use, but it's a very common setup
      and that used to work.

      This patch then saves the first routing good result, even if it would be
      going out through an interface that doesn't have that address. If no
      better hit found, it's then used. This effectively restores the original
      behavior if no better interface could be found.

      Fixes: 0ca50d12fe46 ("sctp: fix src address selection if using secondary 
addresses")
      Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d82f0f1fc8a4f214a50c9dfc64e3896f9894afb7
  Author: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
  Date:   Wed Sep 2 16:20:21 2015 -0300

      sctp: fix dst leak

      Commit 0ca50d12fe46 failed to release the reference to dst entries that
      it decided to skip.

      Fixes: 0ca50d12fe46 ("sctp: fix src address selection if using secondary 
addresses")
      Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4548a697e4969d695047cebd6d9af5e2f6cc728e
  Author: Atsushi Nemoto <nemoto@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 17:49:29 2015 +0900

      net: eth: altera: fix napi poll_list corruption

      tse_poll() calls __napi_complete() with irq enabled.  This leads napi
      poll_list corruption and may stop all napi drivers working.
      Use napi_complete() instead of __napi_complete().

      Signed-off-by: Atsushi Nemoto <nemoto@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4e33d1f0a145d48e8cf287954bbf791af8387cfb
  Author: Greg Kurz <gkurz@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 11:12:59 2015 +0200

      KVM: PPC: Book3S: Fix typo in top comment about locking

      Signed-off-by: Greg Kurz <gkurz@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>

  commit d1178cbcdcf91900ccf10a177350d7945703c151
  Author: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:34:13 2015 -0600

      IB/ipoib: Suppress warning for send only join failures

      We expect send only joins to fail, it just means there are no listeners
      for the group. The correct thing to do is silently drop the packet
      at source.

      Eg avahi will full join 224.0.0.251 which causes a send only IGMP packet
      to 224.0.0.22, and then a warning level kmessage like this:

       ib0: sendonly multicast join failed for 
ff12:401b:ffff:0000:0000:0000:0000:0016, status -22

      If there is no IP router listening to IGMP.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit c3acdc06a95ff20d920220ecb931186b0bb22c42
  Author: Doug Ledford <dledford@xxxxxxxxxx>
  Date:   Thu Sep 3 17:05:58 2015 -0400

      IB/ipoib: Clean up send-only multicast joins

      Even though we don't expect the group to be created by the SM we
      sill need to provide all the parameters to force the SM to validate
      they are correct.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 4c12ab7e5e2e892fa94df500f96001837918a281
  Merge: 9cbf22b 01a5ad8
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 13:10:22 2015 -0700

      Merge tag 'for-f2fs-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs

      Pull f2fs updates from Jaegeuk Kim:
       "The major work includes fixing and enhancing the existing extent_cache
        feature, which has been well settling down so far and now it becomes a
        default mount option accordingly.

        Also, this version newly registers a f2fs memory shrinker to reclaim
        several objects consumed by a couple of data structures in order to
        avoid memory pressures.

        Another new feature is to add ioctl(F2FS_GARBAGE_COLLECT) which
        triggers a cleaning job explicitly by users.

        Most of the other patches are to fix bugs occurred in the corner cases
        across the whole code area"

      * tag 'for-f2fs-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (85 commits)
        f2fs: upset segment_info repair
        f2fs: avoid accessing NULL pointer in f2fs_drop_largest_extent
        f2fs: update extent tree in batches
        f2fs: fix to release inode correctly
        f2fs: handle f2fs_truncate error correctly
        f2fs: avoid unneeded initializing when converting inline dentry
        f2fs: atomically set inode->i_flags
        f2fs: fix wrong pointer access during try_to_free_nids
        f2fs: use __GFP_NOFAIL to avoid infinite loop
        f2fs: lookup neighbor extent nodes for merging later
        f2fs: split __insert_extent_tree_ret for readability
        f2fs: kill dead code in __insert_extent_tree
        f2fs: adjust showing of extent cache stat
        f2fs: add largest/cached stat in extent cache
        f2fs: fix incorrect mapping for bmap
        f2fs: add annotation for space utilization of regular/inline dentry
        f2fs: fix to update cached_en of extent tree properly
        f2fs: fix typo
        f2fs: check the node block address of newly allocated nid
        f2fs: go out for insert_inode_locked failure
        ...

  commit bf2d087749d91e1fa2826edde1e2fd650d3053ca
  Author: Corey Minyard <cminyard@xxxxxxxxxx>
  Date:   Thu Aug 27 15:49:18 2015 -0500

      ipmi:ssif: Add a module parm to specify that SMBus alerts don't work

      They are broken on some platforms, this gives people a chance to work
      around it until the firmware is fixed.

      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>

  commit acbd9ae70a94bdc626508f444879e19ebe1c421f
  Author: Brijesh Singh <brijeshkumar.singh@xxxxxxx>
  Date:   Mon Aug 24 09:15:25 2015 -0500

      ipmi: add of_device_id in MODULE_DEVICE_TABLE

      Fix autoloading ipmi modules when using device tree.

      Signed-off-by: Brijesh Singh <brijeshkumar.singh@xxxxxxx>

      Moved this change up into the CONFIG_OF section to account
      for changes to the probing code.

      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>

  commit d08828973d96eb26e48fb7ca8fb8a8d49adbe53a
  Author: Corey Minyard <cminyard@xxxxxxxxxx>
  Date:   Tue Aug 18 14:29:10 2015 -0500

      ipmi: Compensate for BMCs that wont set the irq enable bit

      It appears that some BMCs support interrupts but don't support setting
      the irq enable bits.  The interrupts are just always on.  Sigh.
      Add code to compensate.

      The new code was very similar to another functions, so this also
      factors out the common code into other functions.

      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>
      Tested-by: Henrik Korkuc <henrik@xxxxxxxxx>

  commit c49c097610fe1aabf86111297280a718abb5dcc2
  Author: Hidehiro Kawai <hidehiro.kawai.ez@xxxxxxxxxxx>
  Date:   Mon Jul 27 14:55:16 2015 +0900

      ipmi: Don't call receive handler in the panic context

      Received handlers defined as ipmi_recv_hndl member of struct
      ipmi_user_hndl can take a spinlock.  This means that if the kernel
      panics while holding the lock, a deadlock may happen on the lock
      while flushing queued messages in the panic context.

      Calling the receive handler doesn't make much meanings in the panic
      context, simply skip it to avoid possible deadlocks.

      Signed-off-by: Hidehiro Kawai <hidehiro.kawai.ez@xxxxxxxxxxx>
      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>

  commit 06e5e345fea8df24b1d935f98741343df4cab664
  Author: Hidehiro Kawai <hidehiro.kawai.ez@xxxxxxxxxxx>
  Date:   Mon Jul 27 14:55:16 2015 +0900

      ipmi: Avoid touching possible corrupted lists in the panic context

      When processing queued messages in the panic context, IPMI driver
      tries to do it without any locking to avoid deadlocks.  However,
      this means we can touch a corrupted list if the kernel panicked
      while manipulating the list.  Fortunately, current `add-tail and
      del-from-head' style implementation won't touch the corrupted part,
      but it is inherently risky.

      To get rid of the risk, this patch re-initializes the message lists
      on panic if the related spinlock has already been acquired.  As the
      result, we may lose queued messages, but it's not so painful.
      Dropping messages on the received message list is also less
      problematic because no one can respond the received messages.

      Signed-off-by: Hidehiro Kawai <hidehiro.kawai.ez@xxxxxxxxxxx>

      Fixed a comment typo.

      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>

  commit 82802f968bd3118af04eaeb3814c21d9813be527
  Author: Hidehiro Kawai <hidehiro.kawai.ez@xxxxxxxxxxx>
  Date:   Mon Jul 27 14:55:16 2015 +0900

      ipmi: Don't flush messages in sender() in run-to-completion mode

      When flushing queued messages in run-to-completion mode,
      smi_event_handler() is recursively called.

      flush_messages()
       smi_event_handler()
        handle_transaction_done()
         deliver_recv_msg()
          ipmi_smi_msg_received()
           smi_recv_tasklet()
            sender()
             flush_messages()
              smi_event_handler()
               ...

      The depth of the recursive call depends on the number of queued
      messages, so it can cause a stack overflow if many messages have
      been queued.

      To solve this problem, this patch removes flush_messages()
      from sender()@ipmi_si_intf.c.  Instead, add flush_messages() to
      caller side of sender() if needed.  Additionally, to implement this,
      add new handler flush_messages to struct ipmi_smi_handlers.

      Signed-off-by: Hidehiro Kawai <hidehiro.kawai.ez@xxxxxxxxxxx>

      Fixed up a comment and some spacing issues.

      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>

  commit e45361d733d0a1432b0f6307375045e66ac02489
  Author: Hidehiro Kawai <hidehiro.kawai.ez@xxxxxxxxxxx>
  Date:   Mon Jul 27 14:55:16 2015 +0900

      ipmi: Factor out message flushing procedure

      Factor out message flushing procedure which is used in run-to-completion
      mode.  This patch doesn't change the logic.

      Signed-off-by: Hidehiro Kawai <hidehiro.kawai.ez@xxxxxxxxxxx>
      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>

  commit b0868dd5c17c0d9cc8919e786db2e428aa225621
  Author: Hidehiro Kawai <hidehiro.kawai.ez@xxxxxxxxxxx>
  Date:   Mon Jul 27 14:55:16 2015 +0900

      ipmi: Remove unneeded set_run_to_completion call

      send_panic_events() calls intf->handlers->set_run_to_completion(),
      but it has already been done in the caller function panic_event().
      Remove it from send_panic_events().

      Signed-off-by: Hidehiro Kawai <hidehiro.kawai.ez@xxxxxxxxxxx>
      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>

  commit 81d02b7f8c507f06299476a0e5b2aa677c5eaecb
  Author: Corey Minyard <cminyard@xxxxxxxxxx>
  Date:   Sat Jun 13 10:34:25 2015 -0500

      ipmi: Make some data const that was only read

      Several data structures were only used for reading, so make them
      const.

      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>

  commit 5186cf9c74034a4a7856de9c8048493be34c457d
  Author: Mathias Krause <minipli@xxxxxxxxxxxxxx>
  Date:   Sat Jun 13 14:19:33 2015 +0200

      ipmi: constify SSIF ACPI device ids

      Constify the ACPI device ID array, it doesn't need to be writable at
      runtime.

      Signed-off-by: Mathias Krause <minipli@xxxxxxxxxxxxxx>
      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>

  commit a7930899ca0082a33350b253c6ed34f67255f98e
  Author: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Jun 27 18:12:14 2015 +0200

      ipmi: Delete an unnecessary check before the function call 
"cleanup_one_si"

      The cleanup_one_si() function tests whether its argument is NULL and then
      returns immediately. Thus the test around the call is not needed.

      This issue was detected by using the Coccinelle software.

      Signed-off-by: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>

  commit fedb25ea903d3520b6cff00c41740a892cf6bc0e
  Author: Shailendra Verma <shailendra.capricorn@xxxxxxxxx>
  Date:   Tue May 26 00:54:57 2015 +0530

      char:ipmi - Change 1 to true for bool type variables during 
initialization.

      Signed-off-by: Shailendra Verma <shailendra.capricorn@xxxxxxxxx>
      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>

  commit 881c585ef79addb2440a7f8d59bda5640d0ff623
  Author: Nicholas Krause <xerofoify@xxxxxxxxx>
  Date:   Sat May 9 15:32:28 2015 -0400

      impi:Remove unneeded setting of module owner to THIS_MODULE in the 
platform structure, powernv_ipmi_driver

      This removes the no longer required setting of the module owner
      for the plaform structure,powernv_ipmi_driver to THIS_MODULE as
      the driver core for ipmi drivers will directly find and
      set the module owner for this driver.

      Signed-off-by: Nicholas Krause <xerofoify@xxxxxxxxx>
      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>

  commit b2234ee9fc059c17e811a365383e3412a2f50bed
  Author: Corey Minyard <cminyard@xxxxxxxxxx>
  Date:   Thu Feb 19 11:29:24 2015 -0600

      ipmi: Add a comment in how messages are delivered from the lower layer

      To avoid confusion in the future.

      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>

  commit cca85f19c260df495a487495479c67803b25fa8a
  Author: Neelesh Gupta <neelegup@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 16 16:46:54 2015 +0530

      ipmi/powernv: Fix potential invalid pointer dereference

      If the OPAL call to receive the ipmi message fails, then we free up the
      smi message and return. But, the driver still holds the reference to
      old smi message in the 'cur_msg' which can potentially be accessed later
      and freed again leading to kernel oops. To fix it up,

      The kernel driver should reset the 'cur_msg' and send reply to the user
      in addition to freeing the message.

      Signed-off-by: Neelesh Gupta <neelegup@xxxxxxxxxxxxxxxxxx>

      Fixed a checkpatch warning dealing with an else after a return.

      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>

  commit 0fbcf4af7c8362d4691f9388efa57d0b14b34225
  Author: Corey Minyard <cminyard@xxxxxxxxxx>
  Date:   Tue Jun 9 16:51:46 2015 -0500

      ipmi: Convert the IPMI SI ACPI handling to a platform device

      The IPMI SI driver was using direct PNP, but that was not really
      ideal because the IPMI device is a platform device.  There was
      some special handling in the acpi_pnp.c code for making this work,
      but that was breaking ACPI handling for the IPMI SSIF driver.

      So without this patch there were significant issues getting the
      SSIF driver to work with ACPI.

      So use a platform device for ACPI detection and remove the
      entry from acpi_pnp.c.

      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>

  commit 92e847212676bb3c5f9f7e317907367dbb8c504b
  Author: Corey Minyard <cminyard@xxxxxxxxxx>
  Date:   Thu Sep 3 14:58:55 2015 -0500

      ipmi: Add device tree bindings information

      Signed-off-by: Corey Minyard <cminyard@xxxxxxxxxx>

  commit 7fbc67df2cd6d0b72fd5d6d3acaa79ab6f5b0224
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Mon Aug 24 19:04:51 2015 +0300

      IB/srp: Fix possible protection fault

      srp_destroy_qp is designed to indicate we are safe to continue with
      freeing the channel resources by modifying the qp error state,
      posting a dummy wr on the queue-pair and waiting for it to flush.
      This also holds for the channel registration pool as we are unmapping
      the memory region when handling a scsi response. Destroying the
      channel registration pool before we make sure we processed all the
      inflight IO might introduce a use-after-free of the registration pool.

      This use-after-free is demonstrated in the stack trace below where
      srp is trying to unmap a used FMR after the fmr_pool was already 
destroyed.

      general protection fault: 0000 [#1] SMP
      RIP: 0010:[<ffffffff8151121b>]  [<ffffffff8151121b>] 
_raw_spin_lock_irqsave+0x1b/0x50
      Call Trace:
       [<ffffffffa055d88a>] ib_fmr_pool_unmap+0x1a/0xb0 [ib_core]
       [<ffffffffa06c00ed>] srp_unmap_data.isra.28+0x17d/0x250 [ib_srp]
       [<ffffffffa06c01eb>] srp_free_req+0x2b/0x60 [ib_srp]
       [<ffffffffa06c0c94>] srp_recv_completion+0x174/0x580 [ib_srp]
       [<ffffffffa04580fe>] mlx4_eq_int+0x4de/0xe50 [mlx4_core]
       [<ffffffffa0458b00>] mlx4_msi_x_interrupt+0x10/0x20 [mlx4_core]
       [<ffffffff810abc45>] handle_irq_event_percpu+0x35/0x1b0
       [<ffffffff810abdf2>] handle_irq_event+0x32/0x50
       [<ffffffff810ae5cf>] handle_edge_irq+0x6f/0x120
       [<ffffffff8100455a>] handle_irq+0x1a/0x30
       [<ffffffff8151b475>] do_IRQ+0x45/0xb0
       [<ffffffff8151162d>] common_interrupt+0x6d/0x6d
       [<ffffffff813e4d2f>] cpuidle_enter_state+0x4f/0xc0
       [<ffffffff813e4e6c>] cpuidle_idle_call+0xcc/0x210
       [<ffffffff8100b9ea>] arch_cpu_idle+0xa/0x30
       [<ffffffff810ab1e1>] cpu_startup_entry+0xe1/0x270
       [<ffffffff81030b3a>] start_secondary+0x21a/0x2c0

      Reported-by: Eliott Kespi <eliottk@xxxxxxxxxxxx>
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 9cbf22b37ae0592dea809cb8d424990774c21786
  Merge: ea814ab b3a5bbf
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 12:57:48 2015 -0700

      Merge tag 'dlm-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm

      Pull dlm updates from David Teigland:
       "This set mainly includes a change to the way the dlm uses the SCTP API
        in the kernel, removing the direct dependency on the sctp module.
        Other odd SCTP-related fixes are also included.

        The other notable fix is for a long standing regression in the
        behavior of lock value blocks for user space locks"

      * tag 'dlm-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm:
        dlm: print error from kernel_sendpage
        dlm: fix lvb copy for user locks
        dlm: sctp_accept_from_sock() can be static
        dlm: fix reconnecting but not sending data
        dlm: replace BUG_ON with a less severe handling
        dlm: use sctp 1-to-1 API
        dlm: fix not reconnecting on connecting error handling
        dlm: fix race while closing connections
        dlm: fix connection stealing if using SCTP

  commit ea814ab9aab23505f6828a0cc01c985e59847f4e
  Merge: e31fb9e bdfe0cbd
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 12:52:19 2015 -0700

      Merge tag 'ext4_for_linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4

      Pull ext4 updates from Ted Ts'o:
       "Pretty much all bug fixes and clean ups for 4.3, after a lot of
        features and other churn going into 4.2"

      * tag 'ext4_for_linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
        Revert "ext4: remove block_device_ejected"
        ext4: ratelimit the file system mounted message
        ext4: silence a format string false positive
        ext4: simplify some code in read_mmp_block()
        ext4: don't manipulate recovery flag when freezing no-journal fs
        jbd2: limit number of reserved credits
        ext4 crypto: remove duplicate header file
        ext4: update c/mtime on truncate up
        jbd2: avoid infinite loop when destroying aborted journal
        ext4, jbd2: add REQ_FUA flag when recording an error in the superblock
        ext4 crypto: fix spelling typo in comment
        ext4 crypto: exit cleanly if ext4_derive_key_aes() fails
        ext4: reject journal options for ext2 mounts
        ext4: implement cgroup writeback support
        ext4: replace ext4_io_submit->io_op with ->io_wbc
        ext4 crypto: check for too-short encrypted file names
        ext4 crypto: use a jbd2 transaction when adding a crypto policy
        jbd2: speedup jbd2_journal_dirty_metadata()

  commit 0629cb06cdf8f1a403ce71bce5b83380ae898e1a
  Author: Ira Weiny <ira.weiny@xxxxxxxxx>
  Date:   Thu Sep 3 14:16:30 2015 -0400

      IB/core: Move SM class defines from ib_mad.h to ib_smi.h

      When the hfi1 driver was added these definitions were moved from the qib 
driver
      to ib_mad.h to be used by both qib and hfi1.  They should have been moved 
to
      ib_smi.h instead.

      Fixes: d4ab347005fb ("IB/core: Add core header changes needed for OPA")
      Reviewed-by: Hal Rosenstock <hal@xxxxxxxxxxxx>
      Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit ce755c9b01e09ee4907cf79bd0f57fa5cf65c4c3
  Author: Ira Weiny <ira.weiny@xxxxxxxxx>
  Date:   Wed Sep 2 18:45:54 2015 -0400

      IB/core: Remove unnecessary defines from ib_mad.h

      Remove the unused IB_NOTICE_REPRESS_* defines.

      When the hfi1 driver was added these definitions were moved from the qib 
driver
      to ib_mad.h.  They should have been removed instead.

      Fixes: d4ab347005fb ("IB/core: Add core header changes needed for OPA")
      Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx>
      Reviewed-by: Hal Rosenstock <hal@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 6f876ce4b53f7c748e07cedab661aa4bcc8a09d2
  Author: Ira Weiny <ira.weiny@xxxxxxxxx>
  Date:   Wed Sep 2 18:46:21 2015 -0400

      IB/hfi1: Add PSM2 user space header to header_install

      When the hfi1 driver was added a user space header file (hfi1_user.h) was 
added
      to be shared between PSM2 and the driver.  However, the file was not 
added to
      the header install.  Add it now.

      Fixes: d4ab347005fb ("IB/core: Add core header changes needed for OPA")
      Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit e31fb9e00543e5d3c5b686747d3c862bc09b59f3
  Merge: 824b005 9181f8b
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 12:28:30 2015 -0700

      Merge branch 'for_linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs

      Pull ext3 removal, quota & udf fixes from Jan Kara:
       "The biggest change in the pull is the removal of ext3 filesystem
        driver (~28k lines removed).  Ext4 driver is a full featured
        replacement these days and both RH and SUSE use it for several years
        without issues.  Also there are some workarounds in VM & block layer
        mainly for ext3 which we could eventually get rid of.

        Other larger change is addition of proper error handling for
        dquot_initialize().  The rest is small fixes and cleanups"

      [ I wasn't convinced about the ext3 removal and worried about things
        falling through the cracks for legacy users, but ext4 maintainers
        piped up and were all unanimously in favor of removal, and maintaining
        all legacy ext3 support inside ext4.   - Linus ]

      * 'for_linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
        udf: Don't modify filesystem for read-only mounts
        quota: remove an unneeded condition
        ext4: memory leak on error in ext4_symlink()
        mm/Kconfig: NEED_BOUNCE_POOL: clean-up condition
        ext4: Improve ext4 Kconfig test
        block: Remove forced page bouncing under IO
        fs: Remove ext3 filesystem driver
        doc: Update doc about journalling layer
        jfs: Handle error from dquot_initialize()
        reiserfs: Handle error from dquot_initialize()
        ocfs2: Handle error from dquot_initialize()
        ext4: Handle error from dquot_initialize()
        ext2: Handle error from dquot_initalize()
        quota: Propagate error from ->acquire_dquot()

  commit 66c117d7fa2ae429911e60d84bf31a90b2b96189
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Thu Sep 3 12:34:55 2015 +0200

      x86/alternatives: Make optimize_nops() interrupt safe and synced

      Richard reported the following crash:

      [    0.036000] BUG: unable to handle kernel paging request at 55501e06
      [    0.036000] IP: [<c0aae48b>] common_interrupt+0xb/0x38
      [    0.036000] Call Trace:
      [    0.036000]  [<c0409c80>] ? add_nops+0x90/0xa0
      [    0.036000]  [<c040a054>] apply_alternatives+0x274/0x630

      Chuck decoded:

       "  0:   8d 90 90 83 04 24       lea    0x24048390(%eax),%edx
          6:   80 fc 0f                cmp    $0xf,%ah
          9:   a8 0f                   test   $0xf,%al
       >> b:   a0 06 1e 50 55          mov    0x55501e06,%al
         10:   57                      push   %edi
         11:   56                      push   %esi

       Interrupt 0x30 occurred while the alternatives code was replacing the
       initial 0x90,0x90,0x90 NOPs (from the ASM_CLAC macro) with the
       optimized version, 0x8d,0x76,0x00. Only the first byte has been
       replaced so far, and it makes a mess out of the insn decoding."

      optimize_nops() is buggy in two aspects:

      - It's not disabling interrupts across the modification
      - It's lacking a sync_core() call

      Add both.

      Fixes: 4fd4b6e5537c 'x86/alternatives: Use optimized NOPs for padding'
      Reported-and-tested-by: "Richard W.M. Jones" <rjones@xxxxxxxxxx>
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Richard W.M. Jones <rjones@xxxxxxxxxx>
      Cc: Chuck Ebbert <cebbert.lkml@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Link: http://lkml.kernel.org/r/alpine.DEB.2.11.1509031232340.15006@nanos
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 6fd8edabc2b03203e6bc44e77d1dfff415e706cc
  Author: Jubin John <jubin.john@xxxxxxxxx>
  Date:   Wed Sep 2 10:43:24 2015 -0400

      IB/hfi1: Add CSRs for CONFIG_SDMA_VERBOSITY

      3 CSRs needed by the CONFIG_SDMA_VERBOSITY code were removed during
      the CSR clean up. Adding these CSRs back to resolve 0-day build failure:
      https://lists.01.org/pipermail/kbuild-all/2015-August/011919.html

      Reviewed-by: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx>
      Signed-off-by: Jubin John <jubin.john@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 824b005c86f91fe02eb2743a4526361f11786f70
  Merge: dd5cdb4 f49a26e
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 11:55:55 2015 -0700

      Merge branch 'hpfs' (patches from Mikulas)

      Merge hpfs upddate from Mikulas Patocka.

      * emailed patches from Mikulas Patocka <mikulas@xxxxxxxxxxxxx>:
        hpfs: update ctime and mtime on directory modification
        hpfs: support hotfixes

  commit f49a26e7718dd30b49e3541e3e25aecf5e7294e2
  Author: Mikulas Patocka <mikulas@xxxxxxxxxxxxx>
  Date:   Wed Sep 2 22:51:53 2015 +0200

      hpfs: update ctime and mtime on directory modification

      Update ctime and mtime when a directory is modified. (though OS/2 doesn't
      update them anyway)

      Signed-off-by: Mikulas Patocka <mpatocka@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxx     # v3.3+
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit a64eefaac1c5cc8dbc6995228fe08a61b8e1d26b
  Author: Mikulas Patocka <mikulas@xxxxxxxxxxxxx>
  Date:   Wed Sep 2 22:50:12 2015 +0200

      hpfs: support hotfixes

      When the OS/2 driver hits a disk write error, it writes the sector to
      another location and adds the sector mapping to the hotfix map.

      This patch makes the hpfs driver understand the hotfix map and remap
      accesses accoring to it.

      Signed-off-by: Mikulas Patocka <mikulas@xxxxxxxxxxxxx>
      Signed-off-by: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

  commit b636401f0ec9bbf7931774e00f3adf7ee9214cce
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Wed Sep 2 22:23:04 2015 +0300

      mlx5: Fix incorrect wc pkey_index assignment for GSI messages

      Since patch series "Demux IB CM requests in the rdma_cm module" the
      P_Key index is taken from the work completion rather than the message
      itself.

      The HCA provides us with the message P_Key. In order to provide the
      P_Key index, we need to look it up. Given that this is relevant only
      for GSI messages (session establishments) which is less performance 
critical,
      micro-optimize against the GSI (is_qp1) branch.

      Fixes: 4c21b5bcef73 ("IB/cma: Add net_dev and private data checks to
      RDMA CM")
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 11d748045c6dadb279d1acdb6d2ea8f3f2ede85b
  Author: Haggai Eran <haggaie@xxxxxxxxxxxx>
  Date:   Tue Sep 1 09:56:56 2015 +0300

      IB/mlx5: avoid destroying a NULL mr in reg_user_mr error flow

      The mlx5_ib_reg_user_mr() function will attempt to call clean_mr() in
      its error flow even though there is never a case where the error flow
      occurs with a valid MR pointer to destroy.

      Remove the clean_mr() call and the incorrect comment above it.

      Fixes: b4cfe447d47b ("IB/mlx5: Implement on demand paging by adding
      support for MMU notifiers")
      Cc: Eli Cohen <eli@xxxxxxxxxxxx>
      Signed-off-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Reviewed-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 8f7e0a806db0a3ba33234af3c39d68ed8c144071
  Author: Andreas Gruenbacher <agruenba@xxxxxxxxxx>
  Date:   Thu Aug 27 13:02:54 2015 -0500

      gfs2: A minor "sbstats" cleanup

      It seems cleaner to avoid the temporary value here.

      Signed-off-by: Andreas Gruenbacher <agruenba@xxxxxxxxxx>
      Signed-off-by: Bob Peterson <rpeterso@xxxxxxxxxx>

  commit c9ea8c8b74b5fb2584879e4338770ed252d8a489
  Author: Andreas Gruenbacher <agruenba@xxxxxxxxxx>
  Date:   Thu Aug 27 13:05:08 2015 -0500

      gfs2: Fix a typo in a comment

      Signed-off-by: Andreas Gruenbacher <agruenba@xxxxxxxxxx>
      Signed-off-by: Bob Peterson <rpeterso@xxxxxxxxxx>

  commit 4d207133e9c362bc05a3bb6701d63eeb75cc4b77
  Author: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 12:51:45 2015 -0500

      gfs2: Make statistics unsigned, suitable for use with do_div()

      None of these statistics can meaningfully be negative, and the
      numerator for do_div() must have the type u64.  The generic
      implementation of do_div() used on some 32-bit architectures asserts
      that, resulting in a compiler error in gfs2_rgrp_congested().

      Fixes: 0166b197c2ed ("GFS2: Average in only non-zero round-trip times 
...")

      Signed-off-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
      Signed-off-by: Bob Peterson <rpeterso@xxxxxxxxxx>
      Acked-by: Andreas Gruenbacher <agruenba@xxxxxxxxxx>

  commit 88ffbf3e037e67b52c46d528aca1618489c21f68
  Author: Bob Peterson <rpeterso@xxxxxxxxxx>
  Date:   Mon Mar 16 11:02:46 2015 -0500

      GFS2: Use resizable hash table for glocks

      This patch changes the glock hash table from a normal hash table to
      a resizable hash table, which scales better. This also simplifies
      a lot of code.

      Signed-off-by: Bob Peterson <rpeterso@xxxxxxxxxx>
      Signed-off-by: Andreas Gruenbacher <agruenba@xxxxxxxxxx>
      Acked-by: Steven Whitehouse <swhiteho@xxxxxxxxxx>

  commit 15562c439d0a1850b71aa1c0d92d1f4fb9503c8d
  Author: Bob Peterson <rpeterso@xxxxxxxxxx>
  Date:   Mon Mar 16 11:52:05 2015 -0500

      GFS2: Move glock superblock pointer to field gl_name

      What uniquely identifies a glock in the glock hash table is not
      gl_name, but gl_name and its superblock pointer. This patch makes
      the gl_name field correspond to a unique glock identifier. That will
      allow us to simplify hashing with a future patch, since the hash
      algorithm can then take the gl_name and hash its components in one
      operation.

      Signed-off-by: Bob Peterson <rpeterso@xxxxxxxxxx>
      Signed-off-by: Andreas Gruenbacher <agruenba@xxxxxxxxxx>
      Acked-by: Steven Whitehouse <swhiteho@xxxxxxxxxx>

  commit 81648d043191e5f8f5870c5af6060b56383b139d
  Author: Andreas Gruenbacher <agruenba@xxxxxxxxxx>
  Date:   Thu Aug 27 11:43:00 2015 -0500

      gfs2: Simplify the seq file code for "sbstats"

      Don't use struct gfs2_glock_iter as the helper data structure for 
iterating
      through "sbstats"; we are not iterating through glocks here.

      Signed-off-by: Andreas Gruenbacher <agruenba@xxxxxxxxxx>
      Signed-off-by: Bob Peterson <rpeterso@xxxxxxxxxx>

  commit 270e869d846af143f60b7404e01e785d18420007
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Wed Sep 2 20:25:48 2015 +0200

      drm/amdgpu: fix buffer placement under memory pressure

      Some buffers (UVD/VM page tables) must be placed in VRAM,
      but the byte restriction for moving buffers didn't took this
      into account.

      Port of radeon commit 4b09556660bfe1b43d72ca858524c6baf2c6cb1d.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit b632ffa7cee439ba5dce3b3bc4a5cbe2b3e20133
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Wed Aug 26 11:00:37 2015 +0200

      IB/uverbs: reject invalid or unknown opcodes

      We have many WR opcodes that are only supported in kernel space
      and/or require optional information to be copied into the WR
      structure.  Reject all those not explicitly handled so that we
      can't pass invalid information to drivers.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Reviewed-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 54b9a96f10d9acb7b1ffd40e2e1736443eb7656d
  Author: Nicholas Krause <xerofoify@xxxxxxxxx>
  Date:   Wed Aug 26 23:00:59 2015 -0400

      IB/cxgb4: Fix if statement in pick_local_ip6adddrs

      This fixes an if statement checking the return value of the function
      get_lladdr for success in the function pick_local_ip6addrs to instead
      of directly checking the return value of this call check the opposite
      as get_lladdr returns zero for success which would incorrectly make
      this if statement block not execute with the current if statement
      check.

      Signed-off-by: Nicholas Krause <xerofoify@xxxxxxxxx>
      Acked-by: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 731857715f03035c812c3f6bdcb6b0179150c1aa
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 10:50:21 2015 -0700

      Input: regulator-haptic - fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 544edf56fdbf3916f4dad4e2dc71de3965a9d964
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 10:49:46 2015 -0700

      Input: pwm-beeper - fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit e4dbe796285d96976586487fe0555f678c95b60f
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 10:49:17 2015 -0700

      Input: ab8500-ponkey - Fix module autoload for OF platform driver

      This platform driver has a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit f2bc114b82ecbd32b3581bebdf40f1f2c4e9941b
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 10:47:25 2015 -0700

      Input: cyttsp - remove unnecessary MODULE_ALIAS()

      The drivers have a I2C device ID table that is used to create the module
      aliases and also "cyttsp" and "cyttsp4" are not supported I2C device IDs
      so these module aliases are never used.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 4aeca98c49e9873e18b27540a0ba18b22e1b9424
  Author: João Paulo Rechi Vita <jprvita@xxxxxxxxx>
  Date:   Thu Sep 3 10:04:49 2015 -0700

      Input: elan_i2c - add ACPI ID "ELAN1000"

      This ACPI ID present in the DSDT of the ASUS E202SA laptop.

      Signed-off-by: João Paulo Rechi Vita <jprvita@xxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 9f42a89da6b4dc015631e01ba990d3db2cae2a1b
  Author: Leo Yan <leo.yan@xxxxxxxxxx>
  Date:   Wed Sep 2 10:57:47 2015 +0800

      clk: Hi6220: separately build stub clock driver

      The previous code, kernel builds Hi6220's common clock driver and stub
      clock driver together. Stub clock driver has introduced the dependency
      with CONFIG_MAILBOX, so kernel will not build Hi6220's common clock
      driver due ARM64's defconfig have not enabled CONFIG_MAILBOX by default.

      So separately build stub clock driver and common clock driver for
      Hi6220; and only let stub clock driver has the dependency with
      CONFIG_MAILBOX.

      Signed-off-by: Leo Yan <leo.yan@xxxxxxxxxx>
      Tested-by: Kevin Hilman <khilman@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 50ef28a6ac216fd8b796257a3768fef8f57b917d
  Author: Peter Griffin <peter.griffin@xxxxxxxxxx>
  Date:   Tue Sep 1 07:48:11 2015 -0300

      [media] c8sectpfe: Remove select on undefined LIBELF_32

      LIBELF_32 is not defined in Kconfig, and is left over legacy
      which is not required in the upstream driver, so remove it.

      Suggested-by: Valentin Rothberg <valentinrothberg@xxxxxxxxx>

      Signed-off-by: Peter Griffin <peter.griffin@xxxxxxxxxx>
      Acked-by: Lee Jones <lee.jones@xxxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 01b944fe1cd4e21a2a9ed51adbdbafe2d5e905ba
  Merge: e51e384 58f1eae
  Author: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
  Date:   Thu Sep 3 10:01:44 2015 -0700

      Merge branch 'next' into for-linus

      Prepare first round of input updates for 4.3 merge window.

  commit 58f1eae48e5372200553de07b5ecc7574803ee91
  Author: Duson Lin <dusonlin@xxxxxxxxxx>
  Date:   Thu Sep 3 09:46:45 2015 -0700

      Input: elan_i2c - use iap_version to get firmware information

      When driver is in IAP mode ic_type query may return 0xff. However
      iap_version will always be valid, so let's use it to determine parameters
      of the firmware that the controller is supposed to accept.

      Signed-off-by: Duson Lin <dusonlin@xxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit cfd34ed8deede7cbb0ba46d61870f075ac9694e3
  Author: Fengguang Wu <fengguang.wu@xxxxxxxxx>
  Date:   Fri Aug 21 17:12:20 2015 -0300

      [media] i2c: fix platform_no_drv_owner.cocci warnings

      drivers/media/i2c/tc358743.c:1960:3-8: No need to set .owner here. The 
core will do it.

       Remove .owner field if calls are used which set it automatically

      Generated by: scripts/coccinelle/api/platform_no_drv_owner.cocci

      CC: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 543409a2475de00d336468eee5bba8409092db16
  Author: Steven Rostedt <rostedt@xxxxxxxxxxx>
  Date:   Thu Aug 20 18:03:43 2015 -0300

      [media] cx231xx: Use wake_up_interruptible() instead of 
wake_up_interruptible_nr()

      While looking at use cases of the wake queues in order to add support
      for simple wait queues, I noticed that there was only a single user of
      wake_up_interruptible_nr(), and that use was doing a single task wake
      up. Have that user use the proper wake_up_interruptible() instead, and
      perhaps we can even remove the function wake_up_interruptible_nr().

      Signed-off-by: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit abeaca0ff5666a1cd7460304e619e4c6a486ea04
  Author: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
  Date:   Thu Aug 20 04:35:43 2015 -0300

      [media] tc358743: only queue subdev notifications if devnode is set

      Hardware interrupts are enabled in the probe function, before the subdev
      is registered to its v4l2_device. Until v4l2_device_register_subdev_node
      is called, sd->devnode is NULL and v4l2_subdev_notify_event must not be
      called.

      Signed-off-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 22dbe35a3aa2c06cef9faa472c46e8decbcd64e9
  Author: Hans Verkuil <hverkuil@xxxxxxxxx>
  Date:   Wed Aug 19 03:27:27 2015 -0300

      [media] tc358743: add missing Kconfig dependency/select

      As reported by Randy:
      > when CONFIG_MEDIA_CONTROLLER is not enabled:
      >
      > ../drivers/media/i2c/tc358743.c: In function 'tc358743_probe':
      > ../drivers/media/i2c/tc358743.c:1890:29: error: 'struct v4l2_subdev' 
has no member named 'entity'
      >   err = media_entity_init(&sd->entity, 1, &state->pad, 0);
      >                              ^
      > ../drivers/media/i2c/tc358743.c:1940:26: error: 'struct v4l2_subdev' 
has no member named 'entity'
      >   media_entity_cleanup(&sd->entity);
      >                           ^
      > ../drivers/media/i2c/tc358743.c: In function 'tc358743_remove':
      > ../drivers/media/i2c/tc358743.c:1955:26: error: 'struct v4l2_subdev' 
has no member named 'entity'
      >   media_entity_cleanup(&sd->entity);
      >                           ^

      This driver depends on VIDEO_V4L2_SUBDEV_API and needs to select HDMI.

      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Reported-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 62e5f051c110a4f8de66f4c33e690892089aaac4
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Tue Aug 18 10:23:05 2015 -0300

      [media] c8sectpfe: Use %pad to print 'dma_addr_t'

      Use %pad to print 'dma_addr_t' in order to fix the following
      build warning:

      drivers/media/platform/sti/c8sectpfe/c8sectpfe-core.c:588:2: warning: 
format '%x' expects argument of type 'unsigned int', but argument 5 has type 
'dma_addr_t' [-Wformat=]

      Reported-by: Olof's autobuilder <build@xxxxxxxxx>
      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 5e7c4274a70aa2d6f485996d0ca1dad52d0039ca
  Author: Jens Axboe <axboe@xxxxxx>
  Date:   Thu Sep 3 19:28:20 2015 +0300

      block: Check for gaps on front and back merges

      We are checking for gaps to previous bio_vec, which can
      only detect back merges gaps. Moreover, at the point where
      we check for a gap, we don't know if we will attempt a back
      or a front merge. Thus, check for gap to prev in a back merge
      attempt and check for a gap to next in a front merge attempt.

      Signed-off-by: Jens Axboe <axboe@xxxxxx>
      [sagig: Minor rename change]
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>

  commit 062683901ad5c29ac375e6b7c7bca2737d41e11a
  Author: Masanari Iida <standby24x7@xxxxxxxxx>
  Date:   Mon Aug 17 08:20:56 2015 -0300

      [media] DocBook media: Fix typo "the the" in xml files

      This patch fix spelling typo "the the" found in controls.xml
      and vidioc-g-param.xml.
      These xml files are'nt generated from any source files, so I have
      to fix these xml files directly.

      Signed-off-by: Masanari Iida <standby24x7@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 1e137d92c0c6f162d57ede1ba85c298acde26bdc
  Author: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
  Date:   Tue Aug 18 05:31:10 2015 -0300

      [media] tc358743: make reset gpio optional

      Commit 256148246852 ("[media] tc358743: support probe from device tree")
      specified in the device tree binding documentation that the reset gpio
      is optional. Make the implementation match accordingly.

      Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
      Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Acked-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 06d3f2e02024912d46e1fc8387c0284c9dfc36ad
  Author: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
  Date:   Tue Aug 18 05:31:09 2015 -0300

      [media] tc358743: set direction of reset gpio using devm_gpiod_get

      Commit 256148246852 ("[media] tc358743: support probe from device tree")
      failed to explicitly set the direction of the reset gpio. Use the
      optional flag of devm_gpiod_get to make up leeway.

      This is also necessary because the flag parameter will become mandatory
      soon.

      Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
      Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Acked-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 362eda04ba0638af1c41dcc1e594dcbff80346c1
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Thu Sep 3 00:53:24 2015 -0400

      drm/amdgpu/cz: fix cz_dpm_update_low_memory_pstate logic

      The logic was reversed.  This feature is not enabled
      at the moment, but fix it now for the future.

      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 99a092383794e07d60644b449a01656da112eb1f
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Thu Sep 3 10:16:23 2015 -0400

      drm/amdgpu: fix typo in dce11 watermark setup

      Using the wrong watermwark value for the secondary
      watermark.  Copy paste typo.  Noticed by Mykola.

      Reviewed-by: Harry Wentland <harry.wentland@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit be9fd2e978939ab3e59ee4164fa0893e70359557
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Thu Sep 3 10:19:03 2015 -0400

      drm/amdgpu: fix typo in dce10 watermark setup

      Using the wrong watermwark value for the secondary
      watermark.  Copy paste typo.  Noticed by Mykola.

      Reviewed-by: Harry Wentland <harry.wentland@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit dd5cdb48edfd34401799056a9acf61078d773f90
  Merge: 1e1a4e8 62da986
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 08:08:17 2015 -0700

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next

      Pull networking updates from David Miller:
       "Another merge window, another set of networking changes.  I've heard
        rumblings that the lightweight tunnels infrastructure has been voted
        networking change of the year.  But what do I know?

         1) Add conntrack support to openvswitch, from Joe Stringer.

         2) Initial support for VRF (Virtual Routing and Forwarding), which
            allows the segmentation of routing paths without using multiple
            devices.  There are some semantic kinks to work out still, but
            this is a reasonably strong foundation.  From David Ahern.

         3) Remove spinlock fro act_bpf fast path, from Alexei Starovoitov.

         4) Ignore route nexthops with a link down state in ipv6, just like
            ipv4.  From Andy Gospodarek.

         5) Remove spinlock from fast path of act_gact and act_mirred, from
            Eric Dumazet.

         6) Document the DSA layer, from Florian Fainelli.

         7) Add netconsole support to bcmgenet, systemport, and DSA.  Also
            from Florian Fainelli.

         8) Add Mellanox Switch Driver and core infrastructure, from Jiri
            Pirko.

         9) Add support for "light weight tunnels", which allow for
            encapsulation and decapsulation without bearing the overhead of a
            full blown netdevice.  From Thomas Graf, Jiri Benc, and a cast of
            others.

        10) Add Identifier Locator Addressing support for ipv6, from Tom
            Herbert.

        11) Support fragmented SKBs in iwlwifi, from Johannes Berg.

        12) Allow perf PMUs to be accessed from eBPF programs, from Kaixu Xia.

        13) Add BQL support to 3c59x driver, from Loganaden Velvindron.

        14) Stop using a zero TX queue length to mean that a device shouldn't
            have a qdisc attached, use an explicit flag instead.  From Phil
            Sutter.

        15) Use generic geneve netdevice infrastructure in openvswitch, from
            Pravin B Shelar.

        16) Add infrastructure to avoid re-forwarding a packet in software
            that was already forwarded by a hardware switch.  From Scott
            Feldman.

        17) Allow AF_PACKET fanout function to be implemented in a bpf
            program, from Willem de Bruijn"

      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1458 
commits)
        netfilter: nf_conntrack: make nf_ct_zone_dflt built-in
        netfilter: nf_dup{4, 6}: fix build error when nf_conntrack disabled
        net: fec: clear receive interrupts before processing a packet
        ipv6: fix exthdrs offload registration in out_rt path
        xen-netback: add support for multicast control
        bgmac: Update fixed_phy_register()
        sock, diag: fix panic in sock_diag_put_filterinfo
        flow_dissector: Use 'const' where possible.
        flow_dissector: Fix function argument ordering dependency
        ixgbe: Resolve "initialized field overwritten" warnings
        ixgbe: Remove bimodal SR-IOV disabling
        ixgbe: Add support for reporting 2.5G link speed
        ixgbe: fix bounds checking in ixgbe_setup_tc for 82598
        ixgbe: support for ethtool set_rxfh
        ixgbe: Avoid needless PHY access on copper phys
        ixgbe: cleanup to use cached mask value
        ixgbe: Remove second instance of lan_id variable
        ixgbe: use kzalloc for allocating one thing
        flow: Move __get_hash_from_flowi{4,6} into flow_dissector.c
        ixgbe: Remove unused PCI bus types
        ...

  commit fca8b807a667c6f34af1cffe57efbd17b257d07b
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Mar 26 11:01:04 2015 +0000

      pcmcia: soc_common: remove skt_dev_info's clk pointer

      We no longer need to store the clk pointer in struct skt_dev_info as we
      no longer need to remember the clk pointer for the cleanup paths.

      Reviewed-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit c3eb700c5db18be80c1ba37d39995b4c23fbe792
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Mar 26 10:57:48 2015 +0000

      pcmcia: sa11xx_base.c: remove useless init/exit functions

      A library module is not required to have module init/exit functions.
      Get rid of these unnecessary functions.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 321ae9646bbfdf27550ecb65617322abc2b92052
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Mar 26 10:46:35 2015 +0000

      pcmcia: sa1111: simplify clk handing in sa1111_pcmcia_add()

      clk_get(dev, NULL) will always refer to the same clock, so it's
      pointless calling this multiple times for the same device.  As we no
      longer have to worry about the cleanup (via use of devm_clk_get()) we
      can simplify sa1111_pcmcia_add() too.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 924e5ea2ce0f6addb8b098760d840b0923573d19
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Mar 26 10:27:08 2015 +0000

      pcmcia: sa1111: update socket driver to use devm_clk_get() API

      Update the pxa2xx socket driver to use the devm_clk_get() API so that
      the cleanup paths are simplified.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 8e2caf0d21a7059d8b56cb19d5d0182a28b1eabc
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Mar 26 10:33:16 2015 +0000

      pcmcia: pxa2xx: convert memory allocation to devm_* API

      Convert the pxa2xx socket driver memory allocation to use devm_kzalloc()
      to simplify the cleanup path.

      Reviewed-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit ac92f1517379299c03dc501b6a44be49cfcbcfe4
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Mar 26 10:27:08 2015 +0000

      pcmcia: pxa2xx: update socket driver to use devm_clk_get() API

      Update the pxa2xx socket driver to use the devm_clk_get() API so that
      the cleanup paths are simplified.

      Reviewed-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit cace5dce5581a5a1232b68e1bc7b778ff40c328b
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Wed Sep 2 15:06:08 2015 -0400

      drm/amdgpu: use top down allocation for non-CPU accessible vram

      Should help avoid fragmentation of vram due to CPU access
      requirements.

      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 857d913d057f8e7330e9f17eaa2b0eb7ad492c33
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Thu Aug 27 00:14:16 2015 -0400

      drm/amdgpu: be explicit about cpu vram access for driver BOs (v2)

      For kernel driver BOs, be explicit about whether we need
      vram access up front.  This avoids unecessary migrations and
      avoids using visible vram for buffers were it's not needed.

      v2: line wrap fixes

      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 3ff32a0def6e0d2e21a6c5ad1b00726592774018
  Merge: 40d3f02 8149795
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 15:28:50 2015 +0100

      Merge branch 'devel-stable' into for-linus

      Conflicts:
        drivers/perf/arm_pmu.c

  commit 40d3f02851577da27b5cbb1538888301245ef1e7
  Merge: e0aa3a6 3939f33 9205b79 3fa6097 a5e090a
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Sep 3 15:28:37 2015 +0100

      Merge branches 'cleanup', 'fixes', 'misc', 'omap-barrier' and 'uaccess' 
into for-linus

  commit b7dc42fd79390c074e2bff3b172b585d5c2d80c2
  Author: Steven Rostedt (Red Hat) <rostedt@xxxxxxxxxxx>
  Date:   Thu Sep 3 08:57:12 2015 -0400

      ring-buffer: Revert "ring-buffer: Get timestamp after event is allocated"

      The commit a4543a2fa9ef31 "ring-buffer: Get timestamp after event is
      allocated" is needed for some future work. But after adding it, there is a
      race somewhere that causes the saved timestamp to have a slight shift, and
      get ahead of the actual timestamp and make it look like time goes 
backwards.

      I'm still looking into why this happens, but in the mean time, this is
      holding up other work to get in. I'm reverting the change for now (which
      makes the problem go away), and will add it back after I know what is 
wrong
      and fix it.

      Signed-off-by: Steven Rostedt <rostedt@xxxxxxxxxxx>

  commit 2db97045aa40da4312f7321845bc52b136c8603a
  Merge: fb2646a e0d8b2e
  Author: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
  Date:   Thu Sep 3 14:06:33 2015 +0200

      Merge branch '4.2-fixes' into mips-for-linux-next

  commit d5f362a7b977bdfaf8a955f3d604a29267bd5464
  Author: David Henningsson <david.henningsson@xxxxxxxxxxxxx>
  Date:   Thu Sep 3 11:51:35 2015 +0200

      drm/i915: Add locks around audio component bind/unbind

      This will make sure that audio callbacks do not race with
      component bind/unbind.

      [Note: this is an update patch to commit [51e1d83cab99: drm/i915: Call
       audio pin/ELD notify function] where I mistakenly applied the older
       version.  Jani and Daniel's review tags were to the latest version,
       so I add them below, too -- tiwai]

      Signed-off-by: David Henningsson <david.henningsson@xxxxxxxxxxxxx>
      Reviewed-by: Jani Nikula <jani.nikula@xxxxxxxxx>
      Acked-by: Daniel Vetter <daniel@xxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit e0d8b2ec532852d4b5aabcec3e7611848c32237d
  Author: Yousong Zhou <yszhou4tech@xxxxxxxxx>
  Date:   Thu Sep 3 17:47:45 2015 +0800

      MIPS: UAPI: Fix unrecognized opcode WSBH/DSBH/DSHD when using MIPS16.

      The nomips16 has to be added both as function attribute and assembler
      directive.

      When only function attribute is specified, the compiler will inline the
      function with -Os optimization.  The generated assembly code cannot be
      correctly assembled because ISA mode switch has to be done through jump
      instruction.

      When only ".set nomips16" directive is used, the generated assembly code
      will use MIPS32 code for the inline assembly template and MIPS16 for the
      function return.  The compiled binary is invalid:

          00403100 <__arch_swab16>:
            403100:   7c0410a0    wsbh    v0,a0
            403104:   e820ea31    swc2    $0,-5583(at)

      while correct code should be:

          00402650 <__arch_swab16>:
            402650:   7c0410a0    wsbh    v0,a0
            402654:   03e00008    jr  ra
            402658:   3042ffff    andi    v0,v0,0xffff

      Signed-off-by: Yousong Zhou <yszhou4tech@xxxxxxxxx>
      Cc: Chen Jie <chenj@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/11087/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit f0675d4a8ed9d3e863ff611561ee0944969a2784
  Author: David Henningsson <david.henningsson@xxxxxxxxxxxxx>
  Date:   Thu Sep 3 11:51:34 2015 +0200

      drm/i915: Drop port_mst_index parameter from pin/eld callback

      The port_mst_index parameter was reserved for future use, but
      maintainers prefer to add it later when it is actually used.

      [Note: this is an update patch to commit [51e1d83cab99: drm/i915: Call
       audio pin/ELD notify function] where I mistakenly applied the older
       version.  Jani and Daniel's review tags were to the latest version,
       so I add them below, too -- tiwai]

      Signed-off-by: David Henningsson <david.henningsson@xxxxxxxxxxxxx>
      Reviewed-by: Jani Nikula <jani.nikula@xxxxxxxxx>
      Acked-by: Daniel Vetter <daniel@xxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit fb2646ab032d12ef06225c64768691c7ecc500ec
  Author: Alex Smith <alex.smith@xxxxxxxxxx>
  Date:   Tue Aug 18 15:03:10 2015 +0100

      MIPS: Fix alignment of quiet build output for vmlinuz link

      The "LD vmlinuz" line in the quiet build output is misaligned with the
      rest of the output. Fix this.

      Signed-off-by: Alex Smith <alex.smith@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/11019/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 65ab562cabe01d524ec6b50f37694200745c21c1
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Wed Aug 12 10:14:35 2015 +0100

      MIPS: math-emu: Remove unused handle_dsemul function declaration

      handle_dsemul does not exist and it's not being used in the code at all
      so remove its declaration. The deliberate DS emulation exception is
      handled by the do_dsemulret C code.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10950/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit a79f5f9ba5088f157482feaa6ae2bacc9da0f5db
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Aug 13 09:56:36 2015 +0200

      MIPS: math-emu: Add support for the MIPS R6 MAX{, A} FPU instruction

      MIPS R6 introduced the following instruction:
      Scalar Floating-Point Maximum and
      Scalar Floating-Point argument with Maximum Absolute Value
      MAX.fmt writes the maximum value of the inputs fs and ft to the
      destination fd.
      MAXA.fmt takes input arguments fs and ft and writes the argument with
      the maximum absolute value to the destination fd.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10961/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 4e9561b20e2f5c1170704a81ec7e1ac961ba5e68
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Aug 13 09:56:35 2015 +0200

      MIPS: math-emu: Add support for the MIPS R6 MIN{, A} FPU instruction

      MIPS R6 introduced the following instruction:
      Scalar Floating-Point Minimum and
      Scalar Floating-Point argument with Minimum Absolute Value

      MIN.fmt writes the minimum value of the inputs fs and ft to the
      destination fd.
      MINA.fmt takes input arguments fs and ft and writes the argument with
      the minimum absolute value to the destination fd.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10960/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 38db37ba069f9d801ef56b820cfc7c247a7ffc02
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Aug 13 09:56:34 2015 +0200

      MIPS: math-emu: Add support for the MIPS R6 CLASS FPU instruction

      MIPS R6 introduced the following instruction:
      Stores in fd a bit mask reflecting the floating-point class of the
      floating point scalar value fs.

      CLASS.fmt: FPR[fd] = class(FPR[fs])

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10959/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 400bd2e41393a783e0532321fdb369d2cc15ea26
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Aug 13 09:56:33 2015 +0200

      MIPS: math-emu: Add support for the MIPS R6 RINT FPU instruction

      MIPS R6 introduced the following instruction:
      Floating-Point Round to Integral
      Scalar floating-point round to integral floating point value.

      RINT.fmt: FPR[fd] = round_int(FPR[fs])

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10958/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 83d43305a1df2aa2976e3ccf012e4cf0dc29673d
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Aug 13 09:56:32 2015 +0200

      MIPS: math-emu: Add support for the MIPS R6 MSUBF FPU instruction

      MIPS R6 introduced the following instruction:
      Floating Point Fused Multiply Subtract:
      MSUBF.fmt To perform a fused multiply-subtract of FP values.

      MSUBF.fmt: FPR[fd] = FPR[fd] - (FPR[fs] x FPR[ft])

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10957/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit e24c3bec3e8e254a3784b3e4c97bd3a76fbcc807
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Aug 13 09:56:31 2015 +0200

      MIPS: math-emu: Add support for the MIPS R6 MADDF FPU instruction

      MIPS R6 introduced the following instruction:
      Floating Point Fused Multiply Add:
      MADDF.fmt To perform a fused multiply-add of FP values.

      MADDF.fmt: FPR[fd] = FPR[fd] + (FPR[fs] x FPR[ft])

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10956/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 130fe357ee895421a4aefef7b1285bf52f295afe
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Aug 13 09:56:30 2015 +0200

      MIPS: math-emu: Add support for the MIPS R6 SELNEZ FPU instruction

      MIPS R6 introduced the following instruction:
      SELNEZ.fmt: FPR[fd] ï?¬ FPR[ft].bit0 ? FPR[fs] : 0

      Add support for emulating the single and double precision
      formats of the said instruction.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10955/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 67613f02788d73541c7c9b1c851061b8c223057b
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Aug 13 09:56:29 2015 +0200

      MIPS: math-emu: Add support for the MIPS R6 SELEQZ FPU instruction

      MIPS R6 introduced the following instruction:
      SELEQZ.fmt: FPR[fd] ï?¬ FPR[ft].bit0 ? 0 : FPR[fs]

      Add support for emulating the single and double precision formats
      of the said instruction.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10954/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit f8c3c6717a7128f9601b20f890d658283d59561a
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Aug 13 09:56:28 2015 +0200

      MIPS: math-emu: Add support for the CMP.condn.fmt R6 instruction

      Add support for emulating the new CMP.condn.fmt R6 instructions and
      return SIGILL for the old C.cond.fmt if R2 emulation is not enabled
      since it's not supported by R6.

      The functionality of the new CMP.condn.fmt is the following one:

      If the comparison specified by the condn field of the instruction
      is true for the operand values, the result is true; otherwise, the
      result is false. If no exception is taken, the result is written into
      FPR fd; true is all 1s and false is all 0s repeated the operand width
      of fmt. All other bits beyond the operand width fmt are UNPREDICTABLE.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10953/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 107d34009ef00d1680521be2c4a1cba31f9b69a6
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Aug 13 09:56:27 2015 +0200

      MIPS: inst.h: Add new MIPS R6 FPU opcodes

      Add opcodes for the new MIPS R6 FPU instructions.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10952/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit cef232ec86cdadfa7f58c7db140084db0b6cc9db
  Author: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
  Date:   Tue Aug 11 10:56:28 2015 +0300

      MIPS: Octeon: Fix management port MII address on Kontron S1901

      Management port MII address is incorrect on Kontron S1901 resulting
      in broken networking. Fix by providing definitions for the in-tree DT
      pruning code.

      Signed-off-by: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10914/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit e5dd8f2cf65cb228fad881ecd35093d8409d17c6
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Fri Aug 7 09:59:10 2015 +0200

      MIPS: BCM47xx: Use kmemdup rather than duplicating its implementation

      The patch was generated using fixed coccinelle semantic patch
      scripts/coccinelle/api/memdup.cocci [1].

      [1]: http://permalink.gmane.org/gmane.linux.kernel/2014320

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Acked-by: Hauke Mehrtens <hauke@xxxxxxxxxx>
      Cc: Hauke Mehrtens <hauke@xxxxxxxxxx>
      Cc: RafaÅ? MiÅ?ecki <zajec5@xxxxxxxxx>
      Cc: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
      Cc: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10898/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 1d39a5e4ce09172358a5435a3411a46e76a04bb4
  Author: Janne Huttunen <janne.huttunen@xxxxxxxxx>
  Date:   Thu Aug 13 16:21:46 2015 +0300

      STAGING: Octeon: Use common helpers for determining interface and port

      Currently the Octeon Ethernet driver hardcodes the mapping between
      interface/port and IPD port number. Since we have generic helpers for
      the very same purpose, we might as well use them instead. This prevents
      having the same information in multiple places.

      Signed-off-by: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Signed-off-by: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: David Daney <ddaney.cavm@xxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Cc: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: devel@xxxxxxxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10975/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 31705376a2fd71f5c5b596fb2d3b2c6232a6268a
  Author: Janne Huttunen <janne.huttunen@xxxxxxxxx>
  Date:   Thu Aug 13 16:21:45 2015 +0300

      MIPS: Octeon: Support interfaces 4 and 5

      Add the support for mapping between interface/port numbers and IPD port
      numbers also for the additional interfaces some Octeon II models have.

      Signed-off-by: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Signed-off-by: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: David Daney <ddaney.cavm@xxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Cc: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: devel@xxxxxxxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10967/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 85847d8033b66c2f36e9a992ff3873fb10d72b80
  Author: Janne Huttunen <janne.huttunen@xxxxxxxxx>
  Date:   Thu Aug 13 16:21:44 2015 +0300

      MIPS: Octeon: Set up 1:1 mapping between CN68XX PKO queues and ports

      Use the internal port number also as the queue number on CN68XX.

      Signed-off-by: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Signed-off-by: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: David Daney <ddaney.cavm@xxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Cc: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: devel@xxxxxxxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10962/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 153bfe381356226ed4c330bb2dff957a6e6c3986
  Author: Janne Huttunen <janne.huttunen@xxxxxxxxx>
  Date:   Thu Aug 13 16:21:43 2015 +0300

      MIPS: Octeon: Initialize CN68XX PKO

      CN68XX requires a different PKO configuration. This patch provides
      just enough setup to get the XAUI interfaces on CN6880 working with
      default parameters.

      Signed-off-by: Janne Huttunen <janne.huttunen@xxxxxxx>
      Signed-off-by: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: David Daney <ddaney.cavm@xxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Cc: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: devel@xxxxxxxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10974/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit f8023da8ae40c275403568d6f9fc9b585c7f6fab
  Author: Janne Huttunen <janne.huttunen@xxxxxxxxx>
  Date:   Thu Aug 13 16:21:42 2015 +0300

      STAGING: Octeon: Support CN68XX style WQE

      CN68XX has a bit different WQE structure. This patch provides the new
      definitions and converts the code to use the proper variant based on
      the actual model.

      Signed-off-by: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Signed-off-by: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: David Daney <ddaney.cavm@xxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Cc: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: devel@xxxxxxxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10973/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit d5f9bc7360fc130b6f26e7c0684bc61df29deb6a
  Author: Janne Huttunen <janne.huttunen@xxxxxxxxx>
  Date:   Thu Aug 13 16:21:41 2015 +0300

      STAGING: Octeon: Increase output command buffers

      The Octeon II models have more interfaces and thus require more output
      command buffers. Increase the allocation to support these models.

      Signed-off-by: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Signed-off-by: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: David Daney <ddaney.cavm@xxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Cc: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: devel@xxxxxxxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10965/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit f5cfc8db28e63d992d293d5b49d7cb8ec5214c56
  Author: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
  Date:   Thu Aug 13 16:21:40 2015 +0300

      STAGING: Octeon: Set SSO group mask properly on CN68XX

      CN68XX uses SSO instead of POW.

      Signed-off-by: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: David Daney <ddaney.cavm@xxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Cc: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: devel@xxxxxxxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10966/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit bcbb13964dd4174f3a512d6a4460173c5c252199
  Author: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
  Date:   Thu Aug 13 16:21:39 2015 +0300

      STAGING: Octeon: Properly enable/disable SSO WQE interrupts

      The Octeon models with SSO instead of POW need to use a different register
      for configuring the WQE interrupt thresholds.

      Signed-off-by: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: David Daney <ddaney.cavm@xxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Cc: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: devel@xxxxxxxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10964/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 70b4e2ed4343f03bd7d64d6a58801ff28d231d34
  Author: Janne Huttunen <janne.huttunen@xxxxxxxxx>
  Date:   Thu Aug 13 16:21:38 2015 +0300

      MIPS: Octeon: Add definitions for setting up SSO

      Some Octeon II models have SSO instead of POW and use a different register
      for setting the interrupt thresholds. Add the necessary definitions for
      configuring the interrupts also on those models.

      Signed-off-by: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Signed-off-by: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: David Daney <ddaney.cavm@xxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Cc: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: devel@xxxxxxxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10972/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit b92084ba545b73933ca179d46fe11801f7f9d349
  Author: Janne Huttunen <janne.huttunen@xxxxxxxxx>
  Date:   Thu Aug 13 16:21:37 2015 +0300

      MIPS: Octeon: Configure minimum PKO packet sizes on CN68XX

      CN68XX has common minimum packet size filters that need to be configured
      for the traffic to work. Just set them to a default value.

      Signed-off-by: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Signed-off-by: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: David Daney <ddaney.cavm@xxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Cc: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: devel@xxxxxxxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10963/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 4397564542c18d2fee904b1e2c09ae15a871d853
  Author: Janne Huttunen <janne.huttunen@xxxxxxxxx>
  Date:   Thu Aug 13 16:21:36 2015 +0300

      MIPS: Octeon: Configure XAUI pkinds

      Configure the pkinds of XAUI interfaces on Octeon models that have
      them. This simple configuration uses 1:1 mapping between the PIP input
      port number and the selected pkind.

      Signed-off-by: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Signed-off-by: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: David Daney <ddaney.cavm@xxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Cc: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: devel@xxxxxxxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10971/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit fce0af1dc34e2765357dfbd21dd923c89254bcdb
  Author: Janne Huttunen <janne.huttunen@xxxxxxxxx>
  Date:   Thu Aug 13 16:21:35 2015 +0300

      MIPS: Octeon: Support all PIP input ports on CN68XX

      CN68XX has 48 PIP input ports.

      Signed-off-by: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Signed-off-by: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: David Daney <ddaney.cavm@xxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Cc: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: devel@xxxxxxxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10969/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 2c8c3f0201333f430b632c6b62a5b81456284884
  Author: Janne Huttunen <janne.huttunen@xxxxxxxxx>
  Date:   Thu Aug 13 16:21:34 2015 +0300

      MIPS: Octeon: Support additional interfaces on CN68XX

      CN68XX has 9 interfaces.

      Signed-off-by: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Signed-off-by: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: David Daney <ddaney.cavm@xxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Cc: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: devel@xxxxxxxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10968/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit c0034c30ed301e28c72dc516156baabf5840ce5f
  Author: Janne Huttunen <janne.huttunen@xxxxxxxxx>
  Date:   Thu Aug 13 16:21:33 2015 +0300

      MIPS: Octeon: Fix CN6880 hang on XAUI init

      Some CN68XX series Octeon II chips seem to hang if a reset is issued on
      XAUI initialization. Avoid the hang by disabling the reset on affected
      models. Tested on Cavium EBB6800 evaluation board and Kontron S1901 board.

      Signed-off-by: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Signed-off-by: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: David Daney <ddaney.cavm@xxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Janne Huttunen <janne.huttunen@xxxxxxxxx>
      Cc: Aaro Koskinen <aaro.koskinen@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: devel@xxxxxxxxxxxxxxxxxxxx
      Patchwork: http://patchwork.linux-mips.org/patch/10970/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit af0cfb2c44ee5cd3c86d1ffd054d318f536cb6dd
  Author: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
  Date:   Thu Aug 6 12:22:43 2015 +0100

      MIPS: pistachio: Allow to enable the external timer based clocksource

      This commit introduces a new config, so the user can choose to enable
      the General Purpose Timer based clocksource. This option is required
      to have CPUFreq support.

      Signed-off-by: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: devicetree@xxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: James Hartley <James.Hartley@xxxxxxxxxx>
      Cc: Govindraj Raja <Govindraj.Raja@xxxxxxxxxx>
      Cc: Damien Horsley <Damien.Horsley@xxxxxxxxxx>
      Cc: James Hogan <James.Hogan@xxxxxxxxxx>
      Cc: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
      Cc: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
      Patchwork: http://patchwork.linux-mips.org/patch/10887/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 84583983c31983068429d82e6f9262009d584549
  Author: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
  Date:   Fri Aug 7 16:39:31 2015 +0100

      CLOCKSOURCE: Add Pistachio clocksource-only driver

      The Pistachio SoC provides four general purpose timers, and allow
      to implement a clocksource driver.

      This driver can be used as a replacement for the MIPS GIC and MIPS R4K
      clocksources and sched clocks, which are clocked from the CPU clock.

      Given the general purpose timers are clocked from an independent clock,
      this new clocksource driver will be useful to introduce CPUFreq support
      for Pistachio machines.

      Signed-off-by: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
      Signed-off-by: Govindraj Raja <govindraj.raja@xxxxxxxxxx>
      Reviewed-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Acked-by: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: devicetree@xxxxxxxxxxxxxxx
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: James Hartley <James.Hartley@xxxxxxxxxx>
      Cc: Damien Horsley <Damien.Horsley@xxxxxxxxxx>
      Cc: James Hogan <James.Hogan@xxxxxxxxxx>
      Cc: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
      Cc: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10899/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit d6ed2b9b60cb03091e0c84c270d145a475606297
  Author: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
  Date:   Mon Jul 27 15:02:33 2015 +0100

      Documentation: dt: Add Pistachio SoC general purpose timer binding 
document

      Add a device-tree binding document for the clocksource driver provided
      by Pistachio SoC general purpose timers.

      Signed-off-by: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
      Reviewed-by: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: devicetree@xxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: James Hartley <James.Hartley@xxxxxxxxxx>
      Cc: Govindraj Raja <Govindraj.Raja@xxxxxxxxxx>
      Cc: Damien Horsley <Damien.Horsley@xxxxxxxxxx>
      Cc: James Hogan <James.Hogan@xxxxxxxxxx>
      Cc: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10783/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit fc6a6772f888ee8ab4c5428854f7f1d3abda13df
  Author: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
  Date:   Mon Jul 27 15:00:15 2015 +0100

      CLOCKSOURCE: mips-gic: Update clockevent frequency on clock rate changes

      This commit introduces the clockevent frequency update, using
      a clock notifier. It will be used to support CPUFreq on platforms
      using MIPS GIC based clockevents.

      Signed-off-by: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
      Acked-by: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: devicetree@xxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: James Hartley <James.Hartley@xxxxxxxxxx>
      Cc: Govindraj Raja <Govindraj.Raja@xxxxxxxxxx>
      Cc: Damien Horsley <Damien.Horsley@xxxxxxxxxx>
      Cc: James Hogan <James.Hogan@xxxxxxxxxx>
      Cc: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10782/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 42b002ab73e00b24356be4f01954fa961fea4d82
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Sat Aug 22 02:40:41 2015 -0700

      MIPS: Kconfig: Enable common clock framework for Malta and SEAD3

      Now that we're ready to enable COMMON_CLK for GIC platforms do so for
      Malta and SEAD3.  The only other user of the GIC Pistachio does already
      do so.

      [ralf@xxxxxxxxxxxxxx: Rewrite the commit message because applied in the
      right order there is no breakage thus no fix required.]

      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/11038/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 67d4e669c1e504a491e44737f3561eaba919b304
  Author: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
  Date:   Mon Jul 27 15:00:14 2015 +0100

      CLOCKSOURCE: mips-gic: Split clocksource and clockevent initialization

      This is preparation work for the introduction of clockevent frequency
      update with a clock notifier. This is only possible when the device
      is passed a clk struct, so let's split the legacy and devicetree
      initialization.

      Reviewed-by: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Signed-off-by: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
      Acked-by: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: devicetree@xxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: James Hartley <James.Hartley@xxxxxxxxxx>
      Cc: Govindraj Raja <Govindraj.Raja@xxxxxxxxxx>
      Cc: Damien Horsley <Damien.Horsley@xxxxxxxxxx>
      Cc: James Hogan <James.Hogan@xxxxxxxxxx>
      Cc: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10781/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit f95ac8558b88a5e9ae2b1d580a5cc55bffa512fa
  Author: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
  Date:   Mon Jul 27 15:00:13 2015 +0100

      CLOCKSOURCE: mips-gic: Add missing error returns checks

      This commit adds the required checks on the functions that return
      an error. Some of them are not critical, so only a warning is
      printed.

      Signed-off-by: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
      Reviewed-by: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Acked-by: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: devicetree@xxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: James Hartley <James.Hartley@xxxxxxxxxx>
      Cc: Govindraj Raja <Govindraj.Raja@xxxxxxxxxx>
      Cc: Damien Horsley <Damien.Horsley@xxxxxxxxxx>
      Cc: James Hogan <James.Hogan@xxxxxxxxxx>
      Cc: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10780/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit eb811c73b69f18cefb7a63f22fe07212c6575650
  Author: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
  Date:   Mon Jul 27 15:00:12 2015 +0100

      CLOCKSOURCE: mips-gic: Enable the clock before using it

      For the clock to be used (e.g. get its rate through clk_get_rate)
      it should be prepared and enabled first.

      Also, while the clock is enabled the driver must hold a reference to it,
      so let's remove the call to clk_put.

      Reviewed-by: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Signed-off-by: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
      Acked-by: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: devicetree@xxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: James Hartley <James.Hartley@xxxxxxxxxx>
      Cc: Govindraj Raja <Govindraj.Raja@xxxxxxxxxx>
      Cc: Damien Horsley <Damien.Horsley@xxxxxxxxxx>
      Cc: James Hogan <James.Hogan@xxxxxxxxxx>
      Cc: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10779/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 1a3d59579b9f436da038f377309cf2270c76318e
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Aug 3 08:49:30 2015 -0700

      MIPS: Tidy up FPU context switching

      Rather than saving the scalar FP or vector context in the assembly
      resume function, reuse the existing C code we have in fpu.h to do
      exactly that. This reduces duplication, results in a much easier to read
      resume function & should allow the compiler to optimise out more MSA
      code due to is_msa_enabled()/cpu_has_msa being known-zero at compile
      time for kernels without MSA support.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Leonid Yegoshin <Leonid.Yegoshin@xxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: Manuel Lauss <manuel.lauss@xxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10830/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 23eb6f4016758b756b54704b359e3c51d425d6ab
  Author: Antonio Ospite <ao2@xxxxxx>
  Date:   Tue Apr 28 13:11:25 2015 +0200

      MIPS: Netlogic: Fix 0x0x prefixes.

      Fix the 0x0x prefix in integer constants, in this case the registers
      interval is actually 0x8065 .. 0x80A4 as confirmed some lines above in
      the code.

      Signed-off-by: Antonio Ospite <ao2@xxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Jiri Kosina <trivial@xxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/9908/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit b7565cc3321987e46d1f65f5b5eb3fb48268fdc2
  Author: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
  Date:   Wed Jul 29 23:17:00 2015 +0200

      Documentation: MIPS now supports uprobes.

      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 40e084a506eba78310cd5e8ab700fd1226c6130a
  Author: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
  Date:   Wed Jul 29 22:44:53 2015 +0200

      MIPS: Add uprobes support.

      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit e3b28831c18c6c95c51b6bb717fa116d2b658ba9
  Author: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
  Date:   Tue Jul 28 20:37:43 2015 +0200

      MIPS: Set trap_no field in thread_struct on exception.

      This reverts commit 7281cd22973008a782860e48ed8d85d00204168c and adds
      actual functionality to use the field.

  commit 8c576912e4708144cbaa28228cc910746f39bafd
  Author: Subhendu Sekhar Behera <sbehera@xxxxxxxxxxxx>
  Date:   Sat Aug 1 17:44:23 2015 +0530

      MIPS: Netlogic: NAND IRQ mapping

      Add NAND IRQ mapping for XLP9xx processor.

      Signed-off-by: Subhendu Sekhar Behera <sbehera@xxxxxxxxxxxx>
      Signed-off-by: Jayachandran C <jchandra@xxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10820/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 079e31600786b1ef8cab15ac6345605ad9150daf
  Author: Kamlakant Patel <kamlakant.patel@xxxxxxxxxxxx>
  Date:   Sat Aug 1 17:44:22 2015 +0530

      MIPS: Netlogic: set ARCH_REQUIRE_GPIOLIB for XLP platform

      This is needed to enable GPIO framework support for Netlogic XLP platform.

      Signed-off-by: Kamlakant Patel <kamlakant.patel@xxxxxxxxxxxx>
      Signed-off-by: Jayachandran C <jchandra@xxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10818/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit a8a747764a970fc4c4f39f554c7dc08a4ca67db8
  Author: Kamlakant Patel <kamlakant.patel@xxxxxxxxxxxx>
  Date:   Sat Aug 1 17:44:21 2015 +0530

      MIPS: Netlogic: add device tree entry for XLP GPIO

      Add GPIO entries to the Netlogic XLP device tree files.

      Signed-off-by: Kamlakant Patel <kamlakant.patel@xxxxxxxxxxxx>
      Signed-off-by: Jayachandran C <jchandra@xxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10819/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 325f0a1833c41d2d399fda161866923b72592cc9
  Author: Kamlakant Patel <kamlakant.patel@xxxxxxxxxxxx>
  Date:   Sat Aug 1 17:44:20 2015 +0530

      MIPS: Netlogic: Use chip_data for irq_chip methods

      Update mips/netlogic/common/irq.c and mips/pci/msi-xlp.c to use chip_data
      to store interrupt controller data pointer. It uses handler_data now,
      and that causes errors when an API (like the GPIO subsystem) tries to
      use the handler data.

      Signed-off-by: Kamlakant Patel <kamlakant.patel@xxxxxxxxxxxx>
      Signed-off-by: Jayachandran C <jchandra@xxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10817/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 832f5dacfa0bb081a3b3b979a36a132b28ffacf3
  Author: Alban Bedel <albeu@xxxxxxx>
  Date:   Sun Aug 2 18:30:11 2015 +0200

      MIPS: Remove all the uses of custom gpio.h

      Currently CONFIG_ARCH_HAVE_CUSTOM_GPIO_H is defined for all MIPS
      machines, and each machine type provides its own gpio.h. However
      only a handful really implement the GPIO API, most just forward
      everythings to gpiolib.

      The Alchemy machine is notable as it provides a system to allow
      implementing the GPIO API at the board level. But it is not used by
      any board currently supported, so it can also be removed.

      For most machine types we can just remove the custom gpio.h, as well
      as the custom wrappers if some exists. Some of the code found in
      the wrappers must be moved to the respective GPIO driver.

      A few more fixes are need in some drivers as they rely on linux/gpio.h
      to provides some machine specific definitions, or used asm/gpio.h
      instead of linux/gpio.h for the gpio API.

      Signed-off-by: Alban Bedel <albeu@xxxxxxx>
      Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Hauke Mehrtens <hauke@xxxxxxxxxx>
      Cc: RafaÅ? MiÅ?ecki <zajec5@xxxxxxxxx>
      Cc: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
      Cc: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Alexandre Courbot <gnurou@xxxxxxxxx>
      Cc: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
      Cc: Florian Fainelli <florian@xxxxxxxxxxx>
      Cc: Manuel Lauss <manuel.lauss@xxxxxxxxx>
      Cc: Joe Perches <joe@xxxxxxxxxxx>
      Cc: Daniel Walter <dwalter@xxxxxxxxxx>
      Cc: Sergey Ryazanov <ryazanov.s.a@xxxxxxxxx>
      Cc: Huacai Chen <chenhc@xxxxxxxxxx>
      Cc: James Hartley <james.hartley@xxxxxxxxxx>
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: Jiri Kosina <jkosina@xxxxxxx>
      Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: Wolfram Sang <wsa@xxxxxxxxxxxxx>
      Cc: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
      Cc: Varka Bhadram <varkabhadram@xxxxxxxxx>
      Cc: Masanari Iida <standby24x7@xxxxxxxxx>
      Cc: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
      Cc: Michael Buesch <m@xxxxxxx>
      Cc: abdoulaye berthe <berthe.ab@xxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: linux-ide@xxxxxxxxxxxxxxx
      Cc: linux-gpio@xxxxxxxxxxxxxxx
      Cc: linux-input@xxxxxxxxxxxxxxx
      Cc: netdev@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10828/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 1d473c2cb9fe25fc6bad30b0eb8d92e384496042
  Author: Alban Bedel <albeu@xxxxxxx>
  Date:   Fri Jul 3 11:11:49 2015 +0200

      MIPS: ath79: Move the GPIO driver to drivers/gpio

      GPIO drivers should be in drivers/gpio

      Signed-off-by: Alban Bedel <albeu@xxxxxxx>
      Acked-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Cc: linux-gpio@xxxxxxxxxxxxxxx
      Cc: Alexandre Courbot <gnurou@xxxxxxxxx>
      Cc: Gabor Juhos <juhosg@xxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10597/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit f689332b19fa1120de1bd84988a7bd0c08bd9b7b
  Author: Alban Bedel <albeu@xxxxxxx>
  Date:   Fri Jul 3 11:11:48 2015 +0200

      MIPS: Ath79: Remove the unused GPIO function API

      To prepare moving the GPIO driver to drivers/gpio remove the
      platform specific pinmux API. As it is not used by any board,
      and such functionality should better be implemented using the
      pinmux subsystem just removing it seems to be the best option.

      Signed-off-by: Alban Bedel <albeu@xxxxxxx>
      Acked-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Cc: linux-gpio@xxxxxxxxxxxxxxx
      Cc: Alexandre Courbot <gnurou@xxxxxxxxx>
      Cc: Gabor Juhos <juhosg@xxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10596/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 5fac4f7ac067b2eee3aaf19eff8bd1d7d8e9a91e
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Thu Jul 30 08:16:10 2015 -0700

      MIPS: Select CONFIG_ARCH_USE_CMPXCHG_LOCKREF for MIPS64

      On MIPS64 we have spinlocks that are 32b in size and an efficient
      cmpxchg64 implementation, so we qualify to make use of cmpxchg backed
      lockrefs. Select the ARCH_USE_CMPXCHG_LOCKREF Kconfig symbol and provide
      a trivial implementation of arch_spin_value_unlocked to satisfy the
      lockref code.

      Using Linus' simple testcase from
      http://article.gmane.org/gmane.linux.file-systems/77466 on a dual core
      system with an in-development MIPS64 CPU running on FPGA I see around an
      8% gain:

      Pre-patch:
          Total loops: 252698
          Total loops: 251482
          Total loops: 250806
          Total loops: 252885
          Total loops: 251666

      Post-patch:
          Total loops: 273728
          Total loops: 269932
          Total loops: 269341
          Total loops: 275004
          Total loops: 270208

      [ralf@xxxxxxxxxxxxxx: Fixed conflict.]

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Steven J. Hill <Steven.Hill@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10810/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit f51246efee2b6bc72e86bc1d16599fc7c455b986
  Author: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
  Date:   Wed Jul 29 12:14:42 2015 +0200

      MIPS: Get rid of finish_arch_switch().

      MIPS was using finish_arch_switch() as a hook to restore and initialize
      CPU context for all threads, even newly created kernel and user threads.
      This is however entirely solvable within switch_to() so get rid of
      finish_arch_switch() which is in the way of scheduler cleanups.

      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit f1f5e414851fdb69a3200e5c15799ea4788d423e
  Author: Alex Smith <alex.smith@xxxxxxxxxx>
  Date:   Fri Jul 24 16:16:12 2015 +0100

      MIPS: Use Ingenic-specific write combine attribute on all Ingenic 
platforms

      The Ingenic-specific write combining cache attribute was defined based
      on CONFIG_MACH_JZ4740 and therefore not used on JZ4780. Change this to
      CONFIG_MACH_INGENIC so that it gets used on all Ingenic platforms.

      Signed-off-by: Alex Smith <alex.smith@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10769/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 8c172467be36f7c9591e59b647e4cd342ce2ef41
  Author: Alex Smith <alex.smith@xxxxxxxxxx>
  Date:   Thu Jul 30 12:03:42 2015 +0100

      MIPS: Add implementation of dma_map_ops.mmap()

      The generic implementation of dma_map_ops.mmap(), dma_common_mmap(),
      is not correct for non-coherent devices. It expects to be passed a
      virtual address previously returned by dma_alloc_coherent(), which for
      a non-coherent device will return a KSEG1 address. It then attempts to
      convert that virtual address to a physical address using virt_to_page()
      which will yield an incorrect address.

      Also, dma_common_mmap() does not handle the DMA_ATTR_WRITE_COMBINE
      attribute, and therefore dma_mmap_writecombine() will not actually set
      the appropriate pgprot_t flags for write combining.

      This patch adds an implementation of dma_map_ops.mmap() that correctly
      handles KSEG1 addresses, and enables write combining when requested.

      Signed-off-by: Alex Smith <alex.smith@xxxxxxxxxx>
      Cc: Sadegh Abbasi <Sadegh.Abbasi@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10808/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit c4687b15a8487e8ef028814a301a88958baf72bc
  Author: Alex Smith <alex.smith@xxxxxxxxxx>
  Date:   Fri Jul 24 16:16:10 2015 +0100

      MIPS: Fix definition of pgprot_writecombine()

      If pgprot_writecombine is not #defined, asm-generic/pgtable.h will try
      to provide a default implementation by #defining it to pgprot_noncached.
      However our implementation is an inline function rather than a #define,
      so it was never actually used because of the #define in generic code.

      Add "#define pgprot_writecombine pgprot_writecombine" to prevent generic
      code from re-defining it.

      Signed-off-by: Alex Smith <alex.smith@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10767/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 0ce3417e84825155e2d74ac65e133bf7ba995a74
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jul 27 12:58:27 2015 -0700

      MIPS: Drop EXPERIMENTAL tag from O32+FP64 & MSA

      CONFIG_MIPS_O32_FP64_SUPPORT and CONFIG_CPU_HAS_MSA are in pretty good
      shape these days, and in much wider use than they once were. Stop
      referring to them as EXPERIMENTAL.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Matthew Fortune <matthew.fortune@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10801/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 3cc9fa7fb3e38e83e59977c8bc5c355687232362
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jul 27 12:58:25 2015 -0700

      MIPS: Advertise MSA support via HWCAP when present

      If MSA is supported by both the hardware & the kernel then advertise
      that support to userland via the AT_HWCAP aux vector.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Matthew Fortune <matthew.fortune@xxxxxxxxxx>
      Cc: Leonid Yegoshin <Leonid.Yegoshin@xxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Huacai Chen <chenhc@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10799/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 4c0630346e2fcfe68eac8fa31d38daf04570e671
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jul 27 12:58:24 2015 -0700

      MIPS: Advertise MIPSr6 via HWCAP when appropriate

      When running on a CPU implementing the release 6 of the MIPS32 or MIPS64
      ISA, advertise that to userland via the appropriate HWCAP bit.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Matthew Fortune <matthew.fortune@xxxxxxxxxx>
      Cc: Leonid Yegoshin <Leonid.Yegoshin@xxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Huacai Chen <chenhc@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10798/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit e14f1db7a61f016d74393ca9e8fc49a91d27f603
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jul 27 12:58:23 2015 -0700

      MIPS: AT_HWCAP aux vector infrastructure

      In order for userland to determine whether various features are safe to
      use, it will need to know both that the hardware supports those features
      and that the kernel is recent enough & configured appropriately to
      support them. For example under the O32 modeless FP proposal the dynamic
      linker & ifunc resolvers will need this information.  The kernel is the
      only thing in a position to know availability accurately, so the kernel
      needs to provide the information to userland. This patch introduces the
      infrastructure to provide the AT_HWCAP aux vector to userland in order
      to provide that information. It also defines the 2 currently specified
      flags, which indicate MIPSr6 & MSA support.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Matthew Fortune <matthew.fortune@xxxxxxxxxx>
      Cc: Kees Cook <keescook@xxxxxxxxxxxx>
      Cc: Huacai Chen <chenhc@xxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Cc: Alex Smith <alex@xxxxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Leonid Yegoshin <Leonid.Yegoshin@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10797/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit bf82cb30c7e58b3a9742f0a45962ebdf51befac7
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jul 27 12:58:22 2015 -0700

      MIPS: Save MSA extended context around signals

      It is desirable for signal handlers to be allowed to make use of MSA,
      particularly if auto vectorisation is used when compiling a program.
      The MSA context must therefore be saved & restored before & after
      invoking the signal handler. Make use of the extended context structs
      defined in the preceding patch to save MSA context after the sigframe
      when appropriate.

      [ralf@xxxxxxxxxxxxxx: Fixed conflicts.]

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Matthew Fortune <matthew.fortune@xxxxxxxxxx>
      Cc: Leonid Yegoshin <Leonid.Yegoshin@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Richard Weinberger <richard@xxxxxx>
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: Manuel Lauss <manuel.lauss@xxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10796/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit f1fe2d21f4e1aca8644cea888dc618f0183ad671
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jul 27 12:58:21 2015 -0700

      MIPS: Add definitions for extended context

      The context introduced by MSA needs to be saved around signals. However,
      we can't increase the size of struct sigcontext because that will change
      the offset of the signal mask in struct sigframe or struct ucontext.
      This patch instead places the new context immediately after the struct
      sigframe for traditional signals, or similarly after struct ucontext for
      RT signals. The layout of struct sigframe & struct ucontext is identical
      from their sigcontext fields onwards, so the offset from the sigcontext
      to the extended context will always be the same regardless of the type
      of signal.

      Userland will be able to search through the extended context by using
      the magic values to detect which types of context are present. Any
      unrecognised context can be skipped over using the size field of struct
      extcontext. Once the magic value END_EXTCONTEXT_MAGIC is seen it is
      known that there are no further extended context structures to examine.

      This approach is somewhat similar to that taken by ARM to save VFP &
      other context at the end of struct ucontext.

      Userland can determine whether extended context is present by checking
      for the USED_EXTCONTEXT bit in the sc_used_math field of struct
      sigcontext. Whilst this could potentially change the historic semantics
      of sc_used_math if further extended context which does not imply FP
      context were to be introduced in the future, I have been unable to find
      any userland code making use of sc_used_math at all. Using one of the
      fields described as unused in struct sigcontext was considered, but the
      kernel does not already write to those fields so there would be no
      guarantee of the field being clear on older kernels. Other alternatives
      would be to have userland check the kernel version, or to have a HWCAP
      bit indicating presence of extended context. However there is a desire
      to have the context & information required to decode it be self
      contained such that, for example, debuggers could decode the saved
      context easily.

      [ralf@xxxxxxxxxxxxxx: Fixed conflict.]

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Matthew Fortune <matthew.fortune@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@xxxxxxxxxx>
      Cc: Alex Smith <alex@xxxxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Richard Weinberger <richard@xxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: Daniel Borkmann <dborkman@xxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10795/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 0d071fa3772b85fe5d81032fbc011c623570d2fc
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jul 27 12:58:20 2015 -0700

      MIPS: Indicate FP mode in sigcontext sc_used_math

      The sc_used_math field of struct sigcontext & its variants has
      traditionally been used as a boolean value indicating only whether or
      not floating point context is saved within the sigcontext. With various
      supported FP modes & the ability to switch between them this information
      will no longer be enough to decode the meaning of the data stored in the
      sc_fpregs fields of struct sigcontext.

      To make that possible 3 bits are defined within sc_used_math:

        - Bit 0 (USED_FP) represents whether FP was used, essentially
          providing the boolean flag which sc_used_math as a whole provided
          previously.

        - Bit 1 (USED_FR1) provides the value of the Status.FR bit at the time
          the FP context was saved.

        - Bit 2 (USED_HYBRID_FPRS) indicates whether the FP context was saved
          under the hybrid FPR scheme. Essentially, when set the odd singles
          are located in bits 63:32 of the preceding even indexed sc_fpregs
          element.

      Any userland that tests whether the sc_used_math field is zero or
      non-zero will continue to function as expected. Having said that, I
      could not find any userland which uses the sc_used_math field at all.

      [ralf@xxxxxxxxxxxxxx: Fixed rejects.]

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Matthew Fortune <matthew.fortune@xxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Richard Weinberger <richard@xxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10794/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 6a24432cf9cfb6e071fb3566144a3a5ace9d3c0d
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jul 27 12:58:19 2015 -0700

      MIPS: Remove unused {get,put}_sigset functions

      These functions are never called & thus dead code. Remove them.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Matthew Fortune <matthew.fortune@xxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Richard Weinberger <richard@xxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10793/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit d02a40aff6e043bae1cd6e6416e9048990928b1d
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jul 27 12:58:18 2015 -0700

      MIPS: Use common FP sigcontext code for O32 compat

      Make use of the common FP sigcontext code for O32 binaries running on
      MIPS64 kernels now that it is taking appropriate offsets into struct
      sigcontext(32) from struct mips_abi.

      [ralf@xxxxxxxxxxxxxx: Fixed reject.]

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Matthew Fortune <matthew.fortune@xxxxxxxxxx>
      Cc: Leonid Yegoshin <Leonid.Yegoshin@xxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Richard Weinberger <richard@xxxxxx>
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: Manuel Lauss <manuel.lauss@xxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10792/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 6f0aba63bfb3eb33b68cf746c44b6ab302599180
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jul 27 12:58:17 2015 -0700

      MIPS: Skip odd double FP registers when copying FP32 sigcontext

      When a task uses 32 bit floating point, the odd indexed 32b register
      values are stored in bits 63:32 of the preceding even indexed 64b
      FP register field in saved context. Thus there is no point in
      preserving the odd indexed 64b register fields since they hold no
      valid context. This patch will cause them to be skipped, as is
      already done in arch/mips/kernel/signal32.c.

      [ralf@xxxxxxxxxxxxxx: Fixed reject.]

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Matthew Fortune <matthew.fortune@xxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Richard Weinberger <richard@xxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10791/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 64243c2a945640392b59fe1dc66c30ee1ca04170
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jul 27 12:58:16 2015 -0700

      MIPS: Move FP usage checks into protected_{save, restore}_fp_context

      In preparation for sharing protected_{save,restore}_fp_context with
      compat ABIs, move the FP usage checks into said functions. This will
      both enable that code to be shared, and allow for extensions of it in
      further patches to also be shared.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Matthew Fortune <matthew.fortune@xxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Richard Weinberger <richard@xxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10790/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 2db9ca0a355100c40d1bef2aae3b9d9cf199cd04
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jul 27 12:58:15 2015 -0700

      MIPS: Use struct mips_abi offsets to save FP context

      When saving FP state to struct sigcontext, make use of the offsets
      provided by struct mips_abi to obtain appropriate addresses for the
      sc_fpregs & sc_fpc_csr fields of the sigcontext. This is done only for
      the native struct sigcontext in this patch (ie. for O32 in CONFIG_32BIT
      kernels or for N64 in CONFIG_64BIT kernels) but is done in preparation
      for sharing this code with compat ABIs in further patches.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Matthew Fortune <matthew.fortune@xxxxxxxxxx>
      Cc: Leonid Yegoshin <Leonid.Yegoshin@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Richard Weinberger <richard@xxxxxx>
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: Manuel Lauss <manuel.lauss@xxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10789/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 778561006e5891801ac794ddf7b21148a5555e35
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jul 27 12:58:14 2015 -0700

      MIPS: Add offsets to sigcontext FP fields to struct mips_abi

      Add fields to struct mips_abi, which holds information regarding the
      kernel-userland ABI regarding signals, to specify the offsets to the FP
      related fields within the appropriate variant of struct sigcontext.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Matthew Fortune <matthew.fortune@xxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Richard Weinberger <richard@xxxxxx>
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10788/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 689ee8565c5b5af9369f4c34af04196f2d3fea83
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jul 27 12:58:13 2015 -0700

      MIPS: Simplify EVA FP context handling code

      The protected_{save,restore}_fp_context functions had effectively
      different implementations for EVA. Simplify & unify the code somewhat
      such that EVA configurations simply guarantee the FPU-not-owned path
      through the standard code path.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Matthew Fortune <matthew.fortune@xxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Richard Weinberger <richard@xxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10787/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 397d08b006fc8bbb087615214400b86b64f8fe50
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Jul 6 16:42:05 2015 +0530

      MIPS: sni: Migrate to new 'set-state' interface

      Migrate sni driver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linaro-kernel@xxxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10612/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 0c16240ab07ff8a0e611f676f86a92a4b513d15d
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Jul 6 16:42:04 2015 +0530

      MIPS: IP27: Migrate to new 'set-state' interface

      Migrate sgidriver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      We weren't doing anything in the ->set_mode() callback. So, this patch
      doesn't provide any set-state callbacks.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: Deng-Cheng Zhu <dengcheng.zhu@xxxxxxxxxx>
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linaro-kernel@xxxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10611/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 59113d93c2b483485cf62f0b057f896e420048c2
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Jul 6 16:42:03 2015 +0530

      MIPS: rt3352: Migrate to new 'set-state' interface

      Migrate ralink driver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linaro-kernel@xxxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10610/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 1fed884d5f3d615d56d3b3c07d5ef95f7b49b5f5
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Jul 6 16:42:02 2015 +0530

      MIPS: loongsoon32: Migrate to new 'set-state' interface

      Migrate loongsoon32 driver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: Kelvin Cheung <keguang.zhang@xxxxxxxxx>
      Cc: Huacai Chen <chenhc@xxxxxxxxxx>
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linaro-kernel@xxxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10609/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit e3280b2a54b38406563d6422685a20172382d365
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Jul 6 16:42:01 2015 +0530

      MIPS: loongson64/timer: Migrate to new 'set-state' interface

      Migrate loongson driver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      [ralf@xxxxxxxxxxxxxx: Folded in Viresh's followon fix.]

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: Huacai Chen <chenhc@xxxxxxxxxx>
      Cc: Michael Opdenacker <michael.opdenacker@xxxxxxxxxxxxxxxxxx>
      Cc: Hongliang Tao <taohl@xxxxxxxxxx>
      Cc: Valentin Rothberg <valentinrothberg@xxxxxxxxx>
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linaro-kernel@xxxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10608/
      Patchwork: https://patchwork.linux-mips.org/patch/10883/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit d199da550da30e0946a7554f8a93ef75f66f8005
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Jul 6 16:42:00 2015 +0530

      MIPS: cevt-txx9: Migrate to new 'set-state' interface

      Migrate cevt-txx9 driver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: Deng-Cheng Zhu <dengcheng.zhu@xxxxxxxxxx>
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linaro-kernel@xxxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10607/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 57e148cabbb2f1e6770d6a506088486142b26b97
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Jul 6 16:41:59 2015 +0530

      MIPS: cevt-sb1250: Migrate to new 'set-state' interface

      Migrate cevt-rsb1250 driver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linaro-kernel@xxxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10606/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 877c61dc63c2eaa98515abfd89596f293b543342
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Jul 6 16:41:58 2015 +0530

      MIPS: cevt-r4k: Migrate to new 'set-state' interface

      Migrate cevt-4k driver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      We weren't doing anything in the ->set_mode() callback. So, this patch
      doesn't provide any set-state callbacks.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: Qais Yousef <qais.yousef@xxxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: Leonid Yegoshin <Leonid.Yegoshin@xxxxxxxxxx>
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linaro-kernel@xxxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10605/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit c88f2fb4d81df3dbafd79d51b2cacefb356d466c
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Jul 6 16:41:57 2015 +0530

      MIPS: cevt-gt641xx: Migrate to new 'set-state' interface

      Migrate cevt-gt641xx driver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linaro-kernel@xxxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10604/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 9f95618f9fe5fc902a3d8fecd10c98e482fab6c5
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Jul 6 16:41:56 2015 +0530

      MIPS: cevt-ds1287: Migrate to new 'set-state' interface

      Migrate cevt-ds1287 driver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linaro-kernel@xxxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10603/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 1edf907a09e1cad9032411d84679b637ab696593
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Jul 6 16:41:55 2015 +0530

      MIPS: cevt-bcm1480: Migrate to new 'set-state' interface

      Migrate cevt-bcm1480 driver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      Read operation on R_SCD_TIMER_CFG and R_SCD_TIMER_INIT registers isn't
      performed now for many modes as there returned values aren't used.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linaro-kernel@xxxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10602/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit c87cbe06916868e1b14a0681e874b96cfab61083
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Jul 6 16:41:54 2015 +0530

      MIPS: jz4740: Migrate to new 'set-state' interface

      Migrate jz4740 driver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: Deng-Cheng Zhu <dengcheng.zhu@xxxxxxxxxx>
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linaro-kernel@xxxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10601/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 20a7835f8f3666eaaec599f8f9f1628c4e7e88dd
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Jul 6 16:41:53 2015 +0530

      MIPS: Jazz: Migrate to new 'set-state' interface

      Migrate jazz driver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      We weren't doing anything in the ->set_mode() callback. So, this patch
      doesn't provide any set-state callbacks.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linaro-kernel@xxxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10600/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 3dcd7779ac4dada4a2c97e19a9ac3593891d89a0
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Jul 6 16:41:52 2015 +0530

      MIPS: Alchemy: Migrate to new 'set-state' interface

      Migrate alchemy driver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      We weren't doing anything in the ->set_mode() callback. So, this patch
      doesn't provide any set-state callbacks.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: Manuel Lauss <manuel.lauss@xxxxxxxxx>
      Cc: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linaro-kernel@xxxxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10599/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit f17c4ca33601f03f4b5f598f085ee356358932b7
  Author: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
  Date:   Thu Jul 23 12:02:09 2015 +0200

      MIPS: Kconfig: Separate 32BIT and 64BIT config block by blank line.

      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 1249ed3540809d30d1fe42c94276a9db2845d173
  Author: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
  Date:   Mon Jul 20 09:10:20 2015 +0200

      MIPS: math-emu: Move from deprecated __initcall to arch_initcall.

      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 1bab0b627f6d9cd5af08f6be81288883d3b1aa9c
  Author: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
  Date:   Mon Jul 20 09:09:40 2015 +0200

      MIPS: Lasat: Move from deprecated __initcall to arch_initcall.

      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 8d6b591ce9b2706403b4c79d72c4483a7fbeda54
  Author: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
  Date:   Mon Jul 20 09:04:41 2015 +0200

      MIPS: unaligned: Move from deprecated __initcall to arch_initcall.

      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 486fcde40d8f903dbd460fb0b5a35423528032e3
  Author: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
  Date:   Mon Jul 20 08:58:20 2015 +0200

      MIPS: Sibyte: Move bus watcher from deprecated __initcall to 
device_initcall

      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit bae637a2148c97882a1bbfdac08d7a5f4441cdb3
  Author: James Hogan <james.hogan@xxxxxxxxxx>
  Date:   Wed Jul 15 16:17:47 2015 +0100

      MIPS: Rearrange ENTRYLO field definitions

      The generic field definitions (i.e. present before MIPS32/MIPS64) in
      mipsregs.h are conventionally not prefixed with MIPS_, so rename the
      recently added MIPS_ENTRYLO_* definitions for the G, V, D, and C fields
      to ENTRYLO_*. Also rearrange to put the EntryLo and EntryHi definitions
      in the right place in the file.

      Fixes: 8ab6abcb6aa4 ("MIPS: mipsregs.h: Add EntryLo bit definitions")
      Reported-by: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Signed-off-by: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10725/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 9bd860cae3c46a83371ce899ae0d665b6e253687
  Author: James Hogan <james.hogan@xxxxxxxxxx>
  Date:   Wed Jul 15 16:17:46 2015 +0100

      MIPS: dump_tlb: Dump FrameMask register if exists

      The FrameMask register is relevant to the TLB so it should be dumped by
      dump_tlb_regs(), however it is only present in certain cores (r10000,
      r12000, r14000, r16000). Add dumping of it, conditional upon
      current_cpu_type().

      Suggested-by: Joshua Kinard <kumba@xxxxxxxxxx>
      Suggested-by: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Signed-off-by: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Joshua Kinard <kumba@xxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10724/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 5d3c3c7d296d9622560558de96875cf694d96f58
  Author: James Hogan <james.hogan@xxxxxxxxxx>
  Date:   Wed Jul 15 16:17:45 2015 +0100

      MIPS: dump_tlb: Only dump PageGrain if interesting

      The PageGrain register may not exist if certain architectural features
      aren't present, therefore only print out its value when dumping the TLB
      registers if it is expected to contain fields relevant to the TLB.

      Fixes: d1e9a4f54735 ("MIPS: Add SysRq operation to dump TLBs on all CPUs")
      Reported-by: Joshua Kinard <kumba@xxxxxxxxxx>
      Reported-by: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Signed-off-by: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Joshua Kinard <kumba@xxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10723/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit aaa7be48fdbf14836ff1bc61c72969960a5923c6
  Author: James Hogan <james.hogan@xxxxxxxxxx>
  Date:   Wed Jul 15 16:17:44 2015 +0100

      MIPS: Probe for small (1KiB) page support

      Probe Config3 for small page support. This will be useful to give clues
      as to whether the PageGrain register exists.

      Signed-off-by: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10722/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 3c865dd9c1d64046877112451f13db2cb46d4d28
  Author: James Hogan <james.hogan@xxxxxxxxxx>
  Date:   Wed Jul 15 16:17:43 2015 +0100

      MIPS: Refactor dumping of TLB registers for r3k/r4k

      The TLB registers are dumped in a couble of places:
       - sysrq_tlbdump_single() - when dumping TLB state.
       - do_mcheck() - in response to a machine check error.

      The main TLB registers also differ between r3k and r4k, but r4k appears
      to be assumed.

      Refactor this code into a dump_tlb_regs() function, implemented for both
      r3k and r4k, and used by both of the above functions.

      Fixes: d1e9a4f54735 ("MIPS: Add SysRq operation to dump TLBs on all CPUs")
      Suggested-by: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Signed-off-by: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10721/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 0f6ce77538c3f0628acdeee30738e4c8fe08d7e2
  Author: James Hogan <james.hogan@xxxxxxxxxx>
  Date:   Wed Jul 15 16:17:42 2015 +0100

      Documentation/sysrq.txt: Mention MIPS TLB dump (x)

      Commit d1e9a4f54735 ("MIPS: Add SysRq operation to dump TLBs on all
      CPUs") added the 'x' sysrq key for dumping MIPS TLB entries, but didn't
      document it in Documentation/sysrq.txt.

      Add mention of the MIPS use of the 'x' SysRq key.

      Reported-by: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Signed-off-by: James Hogan <james.hogan@xxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-doc@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10720/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit c909ca718e8f50cf484ef06a8dd935e738e8e53d
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Fri Jul 17 10:38:32 2015 +0100

      MIPS: math-emu: Emulate missing BC1{EQ,NE}Z instructions

      Commit c8a34581ec09 ("MIPS: Emulate the BC1{EQ,NE}Z FPU instructions")
      added support for emulating the new R6 BC1{EQ,NE}Z branches but it missed
      the case where the instruction that caused the exception was not on a DS.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Fixes: c8a34581ec09 ("MIPS: Emulate the BC1{EQ,NE}Z FPU instructions")
      Cc: <stable@xxxxxxxxxxxxxxx> # 4.0+
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10738/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit e8f80cc1a6d80587136b015e989a12827e1fcfe5
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Fri Jul 17 10:36:03 2015 +0100

      MIPS: math-emu: Allow m{f,t}hc emulation on MIPS R6

      The mfhc/mthc instructions are supported on MIPS R6 so emulate
      them if needed.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # 4.0+
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10737/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 166457436e38175e1d9891f98d9d6edbee100f32
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Jul 16 16:43:33 2015 +0100

      MIPS: math-emu: Fix indentation

      Fix indentation for the final 'else' blocks.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10735/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit bbdd8147b1b9efb7268a7cad31e148d794363abe
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Jul 16 14:06:45 2015 +0100

      MIPS: cp1emu: Fix closing bracket for the d_fmt case

      The double format (d_fmt) case uses an opening bracket which then
      closes at the end of the word format (w_fmt). This can be rather confusing
      so add the closing bracket at the end of the d_fmt case and use another 
one
      for the w_fmt one.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10733/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 674d10e26dd4c1a1b9161e9dcce0667d1c5dd318
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Jul 16 13:24:46 2015 +0100

      MIPS: Kconfig: Drop the EXPERIMENTAL tag from MIPS R6

      The MIPS R6 ISA support has been part of mainline since v4.0
      and it should be in a good shape nowadays so it is not an
      experimental feature anymore.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10731/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit c46a2f01fb2bea6ae7e4e3f3f2aad65d8eda837d
  Author: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
  Date:   Wed Jul 15 11:48:15 2015 +0200

      MIPS: Treat CP1 control registers as unsigned ints.

      These are bitfields and treating them as signed values doesn't make
      any sense.

      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
      Reported-by: Chris Packham <judge.packham@xxxxxxxxx>

  commit 82eb8f7342cf722a8bf3d42e9982f56bff166b85
  Author: Chris Packham <judge.packham@xxxxxxxxx>
  Date:   Wed Jul 15 10:44:30 2015 +1200

      MIPS: Use unsigned int when reading CP0 registers

      Update __read_32bit_c0_register() and __read_32bit_c0_ctrl_register() to
      use "unsigned int res;" instead of "int res;". There is little reason to
      treat these register values as signed. They are either counters (which
      by definition are unsigned) or are made up of various bit fields to be
      interpreted as per the CPU datasheet.

      This has come up via u-boot[1] which sync's asm/mipsregs.h with the
      kernel. In u-boots case the value read from read_c0_count() is assigned
      to an unsigned long [2] which triggers a sign extension and causes a
      bug.

      U-boot should probably be more explicit about the types used for the
      timer_read_counter() API but that aside is there any reason to treat
      these values as signed integers? A quick grep around the arch/mips makes
      me thing that there may be some bugs lurking when read_c0_count() starts
      to yield a negative value but I haven't really explored any of them.

      [1] - http://lists.denx.de/pipermail/u-boot/2015-July/219086.html
      [2] - http://git.denx.de/?p=u-boot.git;a=blob;f=arch/mips/cpu/time.c#l11

      Signed-off-by: Chris Packham <judge.packham@xxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Daniel Schwierzeck <daniel.schwierzeck@xxxxxxxxx>
      Cc: Chris Packham <judge.packham@xxxxxxxxx>
      Cc: Steven J. Hill <Steven.Hill@xxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: Paul Burton <paul.burton@xxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10718/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 570e5d26ff2e970e018343675bc64302420221d8
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Fri Jul 10 16:52:39 2015 +0100

      MIPS: malta: Use generic platform_maar_init

      The default implementation of platform_maar_init is sufficient for Malta
      boards where we want to allow speculation in the regions of memory
      corresponding to DDR & disallow it elsewhere. Drop the custom
      implementation such that the default is used, reducing the duplication
      of information provided by the Malta platform code.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10677/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit cbd95a89996d1b5fadf411e9218c64e713a83099
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Fri Jul 10 16:52:38 2015 +0100

      MIPS: mm: default platform_maar_init using bootmem data

      Introduce a default weak implementation of platform_maar_init which
      makes use of the data that platforms already provide to the bootmem
      allocator. This should hopefully cover the most common configurations,
      reduce the duplication of information provided by platforms & leaves
      platforms with the option of providing a custom implementation if
      required.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Steven J. Hill <Steven.Hill@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10676/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit e4aa1f153add29343eeb8b3bf0f64e7c6fc7e697
  Author: Leonid Yegoshin <Leonid.Yegoshin@xxxxxxxxxx>
  Date:   Mon Jun 22 12:21:00 2015 +0100

      MIPS: MSA unaligned memory access support

      The MSA architecture specification allows for hardware to not implement
      unaligned vector memory accesses in some or all cases. A typical example
      of this is the I6400 core which does not implement unaligned vector
      memory access when the memory crosses a page boundary. The architecture
      also requires that such memory accesses complete successfully as far as
      userland is concerned, so the kernel is required to emulate them.

      This patch implements support for emulating unaligned MSA ld & st
      instructions by copying between the user memory & the tasks FP context
      in struct thread_struct, updating hardware registers from there as
      appropriate in order to avoid saving & restoring the entire vector
      context for each unaligned memory access.

      Tested both using an I6400 CPU and with a QEMU build hacked to produce
      AdEL exceptions for unaligned vector memory accesses.

      [paul.burton@xxxxxxxxxx:
        - Remove #ifdef's
        - Move msa_op into enum major_op rather than #define
        - Replace msa_{to,from}_wd with {read,write}_msa_wr_{b,h,w,l} and the
          format-agnostic wrappers, removing the custom endian mangling for
          big endian systems.
        - Restructure the msa_op case in emulate_load_store_insn to share
          more code between the load & store cases.
        - Avoid the need for a temporary union fpureg on the stack by simply
          reusing the already suitably aligned context in struct
          thread_struct.
        - Use sizeof(*fpr) rather than hardcoding 16 as the size for user
          memory checks & copies.
        - Stop recalculating the address of the unaligned vector memory access
          and rely upon the value read from BadVAddr as we do for other
          unaligned memory access instructions.
        - Drop the now unused val8 & val16 fields in union fpureg.
        - Rewrite commit message.
        - General formatting cleanups.]

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Leonid Yegoshin <Leonid.Yegoshin@xxxxxxxxxx>
      Cc: Huacai Chen <chenhc@xxxxxxxxxx>
      Cc: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Jie Chen <chenj@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10573/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 6b35e11442db48638c9e9f2ff19f706484a73abe
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jun 22 12:20:59 2015 +0100

      MIPS: Introduce accessors for MSA vector registers

      Introduce accessor functions allowing the kernel to access arbitrary
      vector registers using an arbitrary data format. The accessors are
      implemented in assembly, using macros to avoid massive duplication, in
      order to make use of the existing support for MSA with & without
      toolchain support. The accessors will be used in a later patch.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Leonid Yegoshin <Leonid.Yegoshin@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: Manuel Lauss <manuel.lauss@xxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10572/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 6701ca2df4e22fb130330800b6cde687cb761637
  Author: Leonid Yegoshin <Leonid.Yegoshin@xxxxxxxxxx>
  Date:   Mon Jun 22 12:20:58 2015 +0100

      MIPS: Declare MSA MI10 instruction formats

      Declare a struct describing the MSA MI10 instruction format used for ld &
      st instructions, for use by subsequent patches.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Leonid Yegoshin <Leonid.Yegoshin@xxxxxxxxxx>
      Cc: Steven J. Hill <Steven.Hill@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10571/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit b620c9720a0e18bc2067c65ad3b9020e813372eb
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Sun Jul 12 18:12:03 2015 -0500

      MIPS: Remove "__weak" definition from arch-specific linkage.h

      "__weak" is defined in include/linux/compiler-gcc.h.  We shouldn't need an
      arch-specific definition.

      Remove the "__weak" definition from arch/mips/include/asm/linkage.h.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10689/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit e1d97497309867cdc1064ed6b10953abd1740b05
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Sun Jul 12 18:11:54 2015 -0500

      MIPS: Remove "weak" from mips_cdmm_phys_base() declaration

      Weak header file declarations are error-prone because they make every
      definition weak, and the linker chooses one based on link order (see
      10629d711ed7 ("PCI: Remove __weak annotation from pcibios_get_phb_of_node
      decl")).

      mips_cdmm_phys_base() is defined only in 
arch/mips/mti-malta/malta-memory.c
      so there's no problem with multiple definitions.  But it works better to
      have a weak default implementation and allow a strong function to override
      it.  Then we don't have to test whether a definition is present, and if
      there are ever multiple strong definitions, we get a link error instead of
      calling a random definition.

      Add a weak mips_cdmm_phys_base() definition and remove the weak annotation
      from the declaration in arch/mips/include/asm/cdmm.h.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10688/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 770847bad0200b62af2d93808b4e69d82f14264e
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Sun Jul 12 18:11:46 2015 -0500

      MIPS: Remove "weak" from get_c0_fdc_int() declaration

      Weak header file declarations are error-prone because they make every
      definition weak, and the linker chooses one based on link order (see
      10629d711ed7 ("PCI: Remove __weak annotation from pcibios_get_phb_of_node
      decl")).

      The most elegant solution is to have a weak default implementation and
      allow a strong function to override it.  Then we don't have to test
      whether a definition is present, and if there are ever multiple strong
      definitions, we get a link error instead of calling a random definition.

      Add a weak get_c0_fdc_int() definition with the default code and remove 
the
      weak annotation from the declaration.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10687/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit ec0b9d35d1fbf7e3a3eccc662ad641794d3685a5
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Sun Jul 12 18:11:38 2015 -0500

      MIPS: Remove "weak" from get_c0_compare_int() declaration

      Weak header file declarations are error-prone because they make every
      definition weak, and the linker chooses one based on link order (see
      10629d711ed7 ("PCI: Remove __weak annotation from pcibios_get_phb_of_node
      decl")).

      get_c0_compare_int() is defined in several files.  Each definition is 
weak,
      so I assume Kconfig prevents two or more from being included.  The caller
      contains default code used when get_c0_compare_int() isn't defined at all.

      Add a weak get_c0_compare_int() definition with the default code and 
remove
      the weak annotation from the declaration.

      Then the platform implementations will be strong and will override the 
weak
      default.  If multiple platforms are ever configured in, we'll get a link
      error instead of calling a random platform's implementation.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10686/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 5a73882fd2c3a86b502d54da532d373a1f2db15e
  Author: York Sun <yorksun@xxxxxxxxxxxxx>
  Date:   Wed Sep 2 11:40:46 2015 -0500

      i2c: mux: reg Change ioread endianness for readback

      Reading the register (if allowed) after writing is to ensure writing
      is completed on a posted bus. The endianness of reading doesn't matter.

      Signed-off-by: York Sun <yorksun@xxxxxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit a05a34e7f6ff4a942186e99932885b10c6bc1d1a
  Author: Mike Rapoport <mike.rapoport@xxxxxxxxx>
  Date:   Wed Sep 2 11:03:41 2015 +0300

      i2c: mux: reg: fix compilation warnings

      With CONFIG_OF=n, the following warnings occur when compiling
      drivers/i2c/muxes/i2c-mux-reg.c:

        CC      drivers/i2c/muxes/i2c-mux-reg.o
      drivers/i2c/muxes/i2c-mux-reg.c:170:13: warning: â??struct gpiomuxâ?? 
declared inside parameter list [enabled by default]
            struct platform_device *pdev)
                   ^
      drivers/i2c/muxes/i2c-mux-reg.c:170:13: warning: its scope
      is only this definition or declaration, which is probably not what you 
want [enabled by default]
      drivers/i2c/muxes/i2c-mux-reg.c: In function â??i2c_mux_reg_probeâ??:
      drivers/i2c/muxes/i2c-mux-reg.c:201:3: warning: passing argument 1 of 
â??i2c_mux_reg_probe_dtâ?? from incompatible pointer type [enabled by default]
         ret = i2c_mux_reg_probe_dt(mux, pdev);
         ^

      Signed-off-by: Mike Rapoport <mike.rapoport@xxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit fce388afd633cdf20844e17f47b0d97c7ee06e69
  Author: Wolfram Sang <wsa@xxxxxxxxxxxxx>
  Date:   Thu Aug 20 23:40:46 2015 +0200

      i2c: mux: reg: simplify register size checking

      Checking was done at three different locations, just do it once and
      properly at probing time.

      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>
      Tested-by: York Sun <yorksun@xxxxxxxxxxxxx>

  commit b9c93646fd5cb669d096fec5ad25a01f04cfde27
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Thu Sep 3 12:20:37 2015 +0530

      regulator: pbias: program pbias register offset in pbias driver

      Add separate compatible strings for every platform and populate the
      pbias register offset in the driver data.
      This helps avoid depending on the dt for pbias register offset.

      Also update the dt binding documentation for the new compatible
      strings.

      Suggested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Acked-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit f35f3a48d6ee810557b58e6b7d933438999401b6
  Author: Thomas Huth <thuth@xxxxxxxxxx>
  Date:   Wed Sep 2 11:14:48 2015 +0200

      KVM: PPC: Book3S: Fix size of the PSPB register

      The size of the Problem State Priority Boost Register is only
      32 bits, but the kvm_vcpu_arch->pspb variable is declared as
      "ulong", ie. 64-bit. However, the assembler code accesses this
      variable with 32-bit accesses, and the KVM_REG_PPC_PSPB macro
      is defined with SIZE_U32, too, so that the current code is
      broken on big endian hosts: kvmppc_get_one_reg_hv() will only
      return zero for this register since it is using the wrong half
      of the pspb variable. Let's fix this problem by adjusting the
      size of the pspb field in the kvm_vcpu_arch structure.

      Signed-off-by: Thomas Huth <thuth@xxxxxxxxxx>
      Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>

  commit 06554d9f6cc8f0b5ec903db19726a15dfc7b09d6
  Author: Gautham R. Shenoy <ego@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 17:41:20 2015 +0530

      KVM: PPC: Book3S HV: Exit on H_DOORBELL if HOST_IPI is set

      The code that handles the case when we receive a H_DOORBELL interrupt
      has a comment which says "Hypervisor doorbell - exit only if host IPI
      flag set".  However, the current code does not actually check if the
      host IPI flag is set.  This is due to a comparison instruction that
      got missed.

      As a result, the current code performs the exit to host only
      if some sibling thread or a sibling sub-core is exiting to the
      host.  This implies that, an IPI sent to a sibling core in
      (subcores-per-core != 1) mode will be missed by the host unless the
      sibling core is on the exit path to the host.

      This patch adds the missing comparison operation which will ensure
      that when HOST_IPI flag is set, we unconditionally exit to the host.

      Fixes: 66feed61cdf6
      Cc: stable@xxxxxxxxxxxxxxx # v4.1+
      Signed-off-by: Gautham R. Shenoy <ego@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: David Gibson <david@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>

  commit 7f23532866f931be626e69ff55caf39e54516047
  Author: Gautham R. Shenoy <ego@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 21:48:58 2015 +0530

      KVM: PPC: Book3S HV: Fix race in starting secondary threads

      The current dynamic micro-threading code has a race due to which a
      secondary thread naps when it is supposed to be running a vcpu. As a
      side effect of this, on a guest exit, the primary thread in
      kvmppc_wait_for_nap() finds that this secondary thread hasn't cleared
      its vcore pointer. This results in "CPU X seems to be stuck!"
      warnings.

      The race is possible since the primary thread on exiting the guests
      only waits for all the secondaries to clear its vcore pointer. It
      subsequently expects the secondary threads to enter nap while it
      unsplits the core. A secondary thread which hasn't yet entered the nap
      will loop in kvm_no_guest until its vcore pointer and the do_nap flag
      are unset. Once the core has been unsplit, a new vcpu thread can grab
      the core and set the do_nap flag *before* setting the vcore pointers
      of the secondary. As a result, the secondary thread will now enter nap
      via kvm_unsplit_nap instead of running the guest vcpu.

      Fix this by setting the do_nap flag after setting the vcore pointer in
      the PACA of the secondary in kvmppc_run_core. Also, ensure that a
      secondary thread doesn't nap in kvm_unsplit_nap when the vcore pointer
      in its PACA struct is set.

      Fixes: b4deba5c41e9
      Signed-off-by: Gautham R. Shenoy <ego@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: David Gibson <david@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>

  commit abceaa9cded5f059f8c3b3b6f32730084fe5e39f
  Author: Xunlei Pang <pang.xunlei@xxxxxxxxxx>
  Date:   Mon Aug 31 11:34:05 2015 +0800

      cpuidle/coupled: Add sanity check for safe_state_index

      Since we are using cpuidle_driver::safe_state_index directly as the
      target state index, it is better to add the sanity check at the point
      of registering the driver.

      Signed-off-by: Xunlei Pang <pang.xunlei@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 29e47e2173349ee06bd339f7753821c720d50923
  Author: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
  Date:   Wed Sep 2 10:16:13 2015 +0200

      PM / Domains: Try power off masters in error path of __pm_genpd_poweron()

      While powering up a genpd, its domain masters are first being powered up.
      In the error path of __pm_genpd_poweron(), we didn't care to try power off
      these domain masters. Let's deal with that to avoid leaving unused PM
      domains powered.

      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit a2022001cebd0825b96aa0f3345ea3ad44ae79d4
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Wed Sep 2 14:36:50 2015 +0530

      cpufreq: dt: Tolerance applies on both sides of target voltage

      Tolerance applies on both sides of the target voltage, i.e. both min and
      max sides. But while checking if a voltage is supported by the regulator
      or not, we haven't taken care of tolerance on the lower side. Fix that.

      Cc: Lucas Stach <l.stach@xxxxxxxxxxxxxx>
      Fixes: 045ee45c4ff2 ("cpufreq: cpufreq-dt: disable unsupported OPPs")
      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Reviewed-by: Lucas Stach <l.stach@xxxxxxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 8bc862843901e282e58f5ecd66f1df24366ecb6b
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Wed Sep 2 14:36:49 2015 +0530

      cpufreq: dt: Print error on failing to mark OPPs as shared

      We need to explicitly mark OPPs as shared, when they are not defined
      with OPP-v2 bindings. This operation can potentially fail, and in that
      case we should at least print an error message.

      Fixes: 2e02d8723edf ("cpufreq: dt: Add support for operating-points-v2 
bindings")
      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 7d5d0c8ba369cbfb68eec6912f35197d82214668
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Wed Sep 2 14:36:48 2015 +0530

      cpufreq: dt: Check OPP count before marking them shared

      We need to explicitly mark OPPs as shared, when they are not defined
      with OPP-v2 bindings. But this isn't required to be done if we failed to
      initialize OPP table.

      Reorder code to verify OPP count before marking them shared.

      Fixes: 2e02d8723edf ("cpufreq: dt: Add support for operating-points-v2 
bindings")
      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 0ed537b5fd18c38b526fd0e6837a00f96aee30c4
  Merge: 72e624d 50a3cb0
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Thu Sep 3 02:46:01 2015 +0200

      Merge branch 'pm-opp' into pm-cpufreq

  commit 21dd33b09c61597df603c654589adffd7955491a
  Author: Lina Iyer <lina.iyer@xxxxxxxxxx>
  Date:   Wed Sep 2 16:18:57 2015 -0600

      kernel/cpu_pm: fix cpu_cluster_pm_exit comment

      cpu_cluster_pm_exit() must be sent after cpu_cluster_pm_enter() has been
      sent for the cluster and before any cpu_pm_exit() notifications are sent
      for any CPU.

      Cc: Nicolas Pitre <nicolas.pitre@xxxxxxxxxx>
      Acked-by: Kevin Hilman <khilman@xxxxxxxxxx>
      Signed-off-by: Lina Iyer <lina.iyer@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit ac0e137ab0da80e8fc0db2027598e2f7f82a5a02
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Mon Aug 31 20:27:32 2015 -0700

      clk: h8s2678: Fix compile error

      Recent cleanup removed some include files without checking if the cleaned
      up code still compiles. This results in the following compile error.

      drivers/clk/h8300/clk-h8s2678.c: In function â??h8s2678_pll_clk_setupâ??:
      drivers/clk/h8300/clk-h8s2678.c:99:14: error:
        implicit declaration of function â??kzallocâ??
      drivers/clk/h8300/clk-h8s2678.c:138:2: error:
            implicit declaration of function â??kfreeâ??

      Cc: Yoshinori Sato <ysato@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 1e1a4e8f439113b7820bc7150569f685e1cc2b43
  Merge: d975f30 cc7da0b
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 16:35:26 2015 -0700

      Merge tag 'dm-4.3-changes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm

      Pull device mapper update from Mike Snitzer:

       - a couple small cleanups in dm-cache, dm-verity, persistent-data's
         dm-btree, and DM core.

       - a 4.1-stable fix for dm-cache that fixes the leaking of deferred bio
         prison cells

       - a 4.2-stable fix that adds feature reporting for the dm-stats
         features added in 4.2

       - improve DM-snapshot to not invalidate the on-disk snapshot if
         snapshot device write overflow occurs; but a write overflow triggered
         through the origin device will still invalidate the snapshot.

       - optimize DM-thinp's async discard submission a bit now that late bio
         splitting has been included in block core.

       - switch DM-cache's SMQ policy lock from using a mutex to a spinlock;
         improves performance on very low latency devices (eg. NVMe SSD).

       - document DM RAID 4/5/6's discard support

      [ I did not pull the slab changes, which weren't appropriate for this
        tree, and weren't obviously the right thing to do anyway.  At the very
        least they need some discussion and explanation before getting merged.

        Because not pulling the actual tagged commit but doing a partial pull
        instead, this merge commit thus also obviously is missing the git
        signature from the original tag ]

      * tag 'dm-4.3-changes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
        dm cache: fix use after freeing migrations
        dm cache: small cleanups related to deferred prison cell cleanup
        dm cache: fix leaking of deferred bio prison cells
        dm raid: document RAID 4/5/6 discard support
        dm stats: report precise_timestamps and histogram in @stats_list output
        dm thin: optimize async discard submission
        dm snapshot: don't invalidate on-disk image on snapshot write overflow
        dm: remove unlikely() before IS_ERR()
        dm: do not override error code returned from dm_get_device()
        dm: test return value for DM_MAPIO_SUBMITTED
        dm verity: remove unused mempool
        dm cache: move wake_waker() from free_migrations() to where it is needed
        dm btree remove: remove unused function get_nr_entries()
        dm btree: remove unused "dm_block_t root" parameter in 
btree_split_sibling()
        dm cache policy smq: change the mutex to a spinlock

  commit 2ff46e6fea6254ac8fa97aeb9c14e51436ab95f6
  Author: Brian Norris <computersforpeace@xxxxxxxxx>
  Date:   Wed Sep 2 16:34:35 2015 -0700

      mtd: spi-nor: fix NULL dereference when no match found in spi_nor_ids[]

      Commit 06bb6f5a69df ("mtd: spi-nor: stop (ab)using struct
      spi_device_id") converted an array into a pointer, which means that
      we should be checking if the pointer goes anywhere, not whether the C
      string is empty. To do the latter means we dereference a NULL pointer
      when we reach the terminating entry, for which 'name' is now NULL
      instead of an array { 0, 0, ... }.

      Sample crash:

      [    1.101371] Unable to handle kernel NULL pointer dereference at 
virtual address 00000000
      [    1.109457] pgd = c0004000
      [    1.112157] [00000000] *pgd=00000000
      [    1.115736] Internal error: Oops: 5 [#1] SMP ARM
      [    1.120345] Modules linked in:
      [    1.123405] CPU: 3 PID: 1 Comm: swapper/0 Not tainted 
4.2.0-next-20150902+ #61
      [    1.130611] Hardware name: Rockchip (Device Tree)
      [    1.135306] task: ee0b8d40 ti: ee0ba000 task.ti: ee0ba000
      [    1.140697] PC is at spi_nor_scan+0x90/0x8c4
      [    1.144958] LR is at spi_nor_scan+0xa4/0x8c4
      ...
      [    1.504112] [<c03cc2e0>] (spi_nor_scan) from [<c03cb188>] 
(m25p_probe+0xc8/0x11c)
      [    1.511583] [<c03cb188>] (m25p_probe) from [<c03cd9d8>] 
(spi_drv_probe+0x60/0x7c)
      [    1.519055] [<c03cd9d8>] (spi_drv_probe) from [<c037faa0>] 
(driver_probe_device+0x1a0/0x444)
      [    1.527478] [<c037faa0>] (driver_probe_device) from [<c037fec8>] 
(__device_attach_driver+0x94/0xa0)
      [    1.536507] [<c037fec8>] (__device_attach_driver) from [<c037db3c>] 
(bus_for_each_drv+0x94/0xa4)
      [    1.545277] [<c037db3c>] (bus_for_each_drv) from [<c037f7e4>] 
(__device_attach+0xa4/0x144)
      [    1.553526] [<c037f7e4>] (__device_attach) from [<c0380058>] 
(device_initial_probe+0x1c/0x20)
      [    1.562035] [<c0380058>] (device_initial_probe) from [<c037ec88>] 
(bus_probe_device+0x38/0x94)
      [    1.570631] [<c037ec88>] (bus_probe_device) from [<c037ccf4>] 
(device_add+0x430/0x558)
      [    1.578534] [<c037ccf4>] (device_add) from [<c03d0240>] 
(spi_add_device+0xe4/0x174)
      [    1.586178] [<c03d0240>] (spi_add_device) from [<c03d0a24>] 
(spi_register_master+0x698/0x7d4)
      [    1.594688] [<c03d0a24>] (spi_register_master) from [<c03d0ba0>] 
(devm_spi_register_master+0x40/0x7c)
      [    1.603892] [<c03d0ba0>] (devm_spi_register_master) from [<c03d2fb4>] 
(rockchip_spi_probe+0x360/0x3f4)
      [    1.613182] [<c03d2fb4>] (rockchip_spi_probe) from [<c0381e34>] 
(platform_drv_probe+0x58/0xa8)
      [    1.621779] [<c0381e34>] (platform_drv_probe) from [<c037faa0>] 
(driver_probe_device+0x1a0/0x444)
      [    1.630635] [<c037faa0>] (driver_probe_device) from [<c037fdc4>] 
(__driver_attach+0x80/0xa4)
      [    1.639058] [<c037fdc4>] (__driver_attach) from [<c037e850>] 
(bus_for_each_dev+0x98/0xac)
      [    1.647221] [<c037e850>] (bus_for_each_dev) from [<c037f448>] 
(driver_attach+0x28/0x30)
      [    1.655210] [<c037f448>] (driver_attach) from [<c037ef74>] 
(bus_add_driver+0x128/0x250)
      [    1.663200] [<c037ef74>] (bus_add_driver) from [<c0380c40>] 
(driver_register+0xac/0xf0)
      [    1.671191] [<c0380c40>] (driver_register) from [<c0381d50>] 
(__platform_driver_register+0x58/0x6c)
      [    1.680221] [<c0381d50>] (__platform_driver_register) from 
[<c0a467c8>] (rockchip_spi_driver_init+0x18/0x20)
      [    1.690033] [<c0a467c8>] (rockchip_spi_driver_init) from [<c00098a4>] 
(do_one_initcall+0x124/0x1dc)
      [    1.699063] [<c00098a4>] (do_one_initcall) from [<c0a19f84>] 
(kernel_init_freeable+0x218/0x2ec)
      [    1.707748] [<c0a19f84>] (kernel_init_freeable) from [<c0719ed8>] 
(kernel_init+0x1c/0xf4)
      [    1.715912] [<c0719ed8>] (kernel_init) from [<c000fe50>] 
(ret_from_fork+0x14/0x24)
      [    1.723460] Code: e3510000 159f67c0 0a00000c e5961000 (e5d13000)
      [    1.729564] ---[ end trace 95baa6b3b861ce25 ]---

      Fixes: 06bb6f5a69df ("mtd: spi-nor: stop (ab)using struct spi_device_id")
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>
      Cc: RafaÅ? MiÅ?ecki <zajec5@xxxxxxxxx>

  commit 62da98656b62a5ca57f22263705175af8ded5aa1
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Thu Sep 3 01:26:07 2015 +0200

      netfilter: nf_conntrack: make nf_ct_zone_dflt built-in

      Fengguang reported, that some randconfig generated the following linker
      issue with nf_ct_zone_dflt object involved:

        [...]
        CC      init/version.o
        LD      init/built-in.o
        net/built-in.o: In function `ipv4_conntrack_defrag':
        nf_defrag_ipv4.c:(.text+0x93e95): undefined reference to 
`nf_ct_zone_dflt'
        net/built-in.o: In function `ipv6_defrag':
        nf_defrag_ipv6_hooks.c:(.text+0xe3ffe): undefined reference to 
`nf_ct_zone_dflt'
        make: *** [vmlinux] Error 1

      Given that configurations exist where we have a built-in part, which is
      accessing nf_ct_zone_dflt such as the two handlers nf_ct_defrag_user()
      and nf_ct6_defrag_user(), and a part that configures nf_conntrack as a
      module, we must move nf_ct_zone_dflt into a fixed, guaranteed built-in
      area when netfilter is configured in general.

      Therefore, split the more generic parts into a common header under
      include/linux/netfilter/ and move nf_ct_zone_dflt into the built-in
      section that already holds parts related to CONFIG_NF_CONNTRACK in the
      netfilter core. This fixes the issue on my side.

      Fixes: 308ac9143ee2 ("netfilter: nf_conntrack: push zone object into 
functions")
      Reported-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a82b0e63917f597c546cd479acc938e08ac54f2d
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Wed Sep 2 20:54:02 2015 +0200

      netfilter: nf_dup{4, 6}: fix build error when nf_conntrack disabled

      While testing various Kconfig options on another issue, I found that
      the following one triggers as well on allmodconfig and nf_conntrack
      disabled:

        net/ipv4/netfilter/nf_dup_ipv4.c: In function â??nf_dup_ipv4â??:
        net/ipv4/netfilter/nf_dup_ipv4.c:72:20: error: â??nf_skb_duplicatedâ?? 
undeclared (first use in this function)
          if (this_cpu_read(nf_skb_duplicated))
        [...]
        net/ipv6/netfilter/nf_dup_ipv6.c: In function â??nf_dup_ipv6â??:
        net/ipv6/netfilter/nf_dup_ipv6.c:66:20: error: â??nf_skb_duplicatedâ?? 
undeclared (first use in this function)
          if (this_cpu_read(nf_skb_duplicated))

      Fix it by including directly the header where it is defined.

      Fixes: bbde9fc1824a ("netfilter: factor out packet duplication for 
IPv4/IPv6")
      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ed63f1dcd5788d36f942fbcce350742385e3e18c
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 17:24:14 2015 +0800

      net: fec: clear receive interrupts before processing a packet

      The patch just to re-submit the patch "db3421c114cfa6326" because the
      patch "4d494cdc92b3b9a0" remove the change.

      Clear any pending receive interrupt before we process a pending packet.
      This helps to avoid any spurious interrupts being raised after we have
      fully cleaned the receive ring, while still allowing an interrupt to be
      raised if we receive another packet.

      The position of this is critical: we must do this prior to reading the
      next packet status to avoid potentially dropping an interrupt when a
      packet is still pending.

      Acked-by: Fugang Duan <B38611@xxxxxxxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 5fdb7e1b976dc9d18aff8c711e51d17c4c324a0e
  Author: Matias Bjørling <m@xxxxxxxxxxx>
  Date:   Mon Aug 31 14:17:31 2015 +0200

      null_blk: fix wrong capacity when bs is not 512 bytes

      set_capacity() sets device's capacity using 512 bytes sectors.
      null_blk calculates the number of sectors by size / bs, which
      set_capacity is called with. This led to null_blk exposing the
      wrong number of sectors when bs is not 512 bytes.

      Signed-off-by: Matias Bjørling <m@xxxxxxxxxxx>
      Reviewed-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit de65d2d26f81f7f84c7258b3a137f20e8fa5bb6a
  Author: Matias Bjørling <mb@xxxxxxxxxxx>
  Date:   Mon Aug 31 14:17:18 2015 +0200

      null_blk: fix memory leak on cleanup

      Driver was not freeing the memory allocated for internal nullb queues.
      This patch frees the memory during driver unload.

      Signed-off-by: Matias Bjørling <mb@xxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 5014c311baa2b21384321fa4a9f617a92e3e56f0
  Author: Jens Axboe <axboe@xxxxxx>
  Date:   Wed Sep 2 16:46:02 2015 -0600

      block: fix bogus compiler warnings in blk-merge.c

      The compiler can't figure out that bvprv is initialized whenever 'prev'
      is set to 1 as well. Use a pointer to bvprv instead, setting it to NULL
      initially, and get rid of the 'prev' tracking. This dumbs it down
      enough that gcc is happy.

      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit e41b0bedba0293b9e1e8d1e8ed553104b9693656
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Thu Sep 3 00:29:07 2015 +0200

      ipv6: fix exthdrs offload registration in out_rt path

      We previously register IPPROTO_ROUTING offload under inet6_add_offload(),
      but in error path, we try to unregister it with inet_del_offload(). This
      doesn't seem correct, it should actually be inet6_del_offload(), also
      ipv6_exthdrs_offload_exit() from that commit seems rather incorrect (it
      also uses rthdr_offload twice), but it got removed entirely later on.

      Fixes: 3336288a9fea ("ipv6: Switch to using new offload infrastructure.")
      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7cc8c5cde0a5872f5d013f82978b73c011d8f8f1
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 15:22:48 2015 -0700

      NFSv4.1/flexfiles: Clean up 
ff_layout_write_done_cb/ff_layout_commit_done_cb

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit f95c03b2d5fb6d56c0d7ec21970329b49b657fed
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 15:15:11 2015 -0700

      NFSv4.1/flexfiles: Mark the layout for return in 
ff_layout_io_track_ds_error()

      When I/O cannot complete due to a fatal error on the DS, ensure that we
      invalidate the corresponding layout segment and return it.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 0f12a27b47284e86eaa4a5ad3877ec3018463178
  Author: Joachim Eastwood <manabian@xxxxxxxxx>
  Date:   Fri Aug 14 18:42:32 2015 +0200

      mtd: spi-nor: s25sl064p supports both dual and quad I/O

      This chip can be found on Hitex LPC4350 Evaluation Board.

      Signed-off-by: Joachim Eastwood <manabian@xxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit c1752086796bafaf0c933240642ed1cf21ddab4f
  Author: Jonas Gorski <jogo@xxxxxxxxxxx>
  Date:   Wed Aug 26 14:56:53 2015 +0200

      mtd: spi-nor: allow dual/quad reads on S25FL129P

      According to the datasheet[1], both S25FL129P0 (256kB sectors) and
      S25FL129P1 (64kB sectors) support dual read, quad read, dual i/o read
      and quad i/o read.

      I have verified dual read to be working for S25FL129P1 on a dual
      capable spi controller. Quad as well as S25FL129P0 is untested, lacking
      hardware to verify.

      [1] http://www.spansion.com/Support/Datasheets/S25FL129P_00.pdf

      Signed-off-by: Jonas Gorski <jogo@xxxxxxxxxxx>
      Reviewed-by: Marek Vasut <marex@xxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 092f05c3eccbd616a0cfa21945412a3e82a9fb6c
  Author: Roger Quadros <rogerq@xxxxxx>
  Date:   Fri Aug 21 13:45:35 2015 +0300

      mtd: nand: omap2: Rename shippable module to omap2_nand

      As both omap2 onenand and omap2 nand driver modules are
      named the same i.e. "omap2.ko", only one of them gets shipped
      during MODPOST if both are configured as loadable modules.

      To avoid this ambiguity let's ship the omap2 nand
      driver as "omap2_nand.ko"

      Reported by Pierre Neyron via github
      https://github.com/beagleboard/linux/issues/40

      Cc: Robert Nelson <robertcnelson@xxxxxxxxx>
      Signed-off-by: Roger Quadros <rogerq@xxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit a1d97ef96e3899ad9d4ec0024f9b4927e0490689
  Author: Alexis Ballier <aballier@xxxxxxxxxx>
  Date:   Fri Aug 14 19:35:39 2015 +0200

      mtd: spi-nor: Add support for sst25wf020a

      It is a 256KiB flash with 4 KiB erase sectors
      and 64KiB overlay blocks.

      This is the one available on Hardkernel's Odroid U3 shield.

      Signed-off-by: Alexis Ballier <aballier@xxxxxxxxxx>
      [Brian: seems like this does NOT require the usual SST_WRITE hacks]
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 2a06c7b1fd2389aed2a308db8de803603d592444
  Author: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 12:52:19 2015 +0300

      mtd: spi-nor: Add support for Micron n25q064a serial flash

      Add Micron (n25q064a) 8MB flash to the list of supported chips.

      Signed-off-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
      Reviewed-by: Jagan Teki <jteki@xxxxxxxxxxxx>
      [Brian: fixup context]
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 53ff6bc37be449f546158a39c528d7814dfb15a1
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Tue Aug 18 12:07:05 2015 +0300

      perf tools: Fix use of wrong event when processing exit events

      In a couple of cases the 'comm' member of 'union event' has been used
      instead of the correct member ('fork') when processing exit events.

      In the cases where it has been used incorrectly, only the 'pid' and
      'tid' are affected.  The 'pid' value would be correct anyway because it
      is in the same position in 'comm' and 'fork' events, but the 'tid' would
      have been incorrectly assigned from 'ppid'.

      However, for exit events, the kernel puts the current task in the 'ppid'
      and 'ttid' which is the same as the exiting task.  That is 'ppid' ==
      'pid' and if the task is not multi-threaded, 'pid' == 'tid' i.e. the
      data goes wrong only when tracing multi-threaded programs.

      It is hard to find an example of how this would produce an error in
      practice.  There are 3 occurences of the fix:

      1. perf script is only affected if !sample_id_all which only happens on
        old kernels.

      2. intel_pt is only affected when decoding without timestamps
         and would probably still decode correctly - the exit event is
         only used to flush out data which anyway gets flushed at the
         end of the session

      3. intel_bts also uses the exit event to flush data which
         would probably not cause errors as it would get flushed at
         the end of the session instead

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439888825-27708-1-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit d975f309a8b250e67b66eabeb56be6989c783629
  Merge: 52b084d f8bcbe6
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 13:22:38 2015 -0700

      Merge branch 'for-4.3/sg' of git://git.kernel.dk/linux-block

      Pull SG updates from Jens Axboe:
       "This contains a set of scatter-gather related changes/fixes for 4.3:

         - Add support for limited chaining of sg tables even for
           architectures that do not set ARCH_HAS_SG_CHAIN.  From Christoph.

         - Add sg chain support to target_rd.  From Christoph.

         - Fixup open coded sg->page_link in crypto/omap-sham.  From
           Christoph.

         - Fixup open coded crypto ->page_link manipulation.  From Dan.

         - Also from Dan, automated fixup of manual sg_unmark_end()
           manipulations.

         - Also from Dan, automated fixup of open coded sg_phys()
           implementations.

         - From Robert Jarzmik, addition of an sg table splitting helper that
           drivers can use"

      * 'for-4.3/sg' of git://git.kernel.dk/linux-block:
        lib: scatterlist: add sg splitting function
        scatterlist: use sg_phys()
        crypto/omap-sham: remove an open coded access to ->page_link
        scatterlist: remove open coded sg_unmark_end instances
        crypto: replace scatterwalk_sg_chain with sg_chain
        target/rd: always chain S/G list
        scatterlist: allow limited chaining without ARCH_HAS_SG_CHAIN

  commit 52b084d31cbc8e90cb6fc1ac4061d9a24375c89d
  Merge: 1081230 e19b127
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 13:14:58 2015 -0700

      Merge branch 'for-4.3/drivers' of git://git.kernel.dk/linux-block

      Pull block driver updates from Jens Axboe:
       "On top of the 4.3 core block IO changes, here are the driver related
        changes for 4.3.  Basically just NVMe and nbd this time around:

         - NVMe:
            - PRACT PI improvement from Alok Pandey.
            - Cleanups and improvements on submission queue doorbell and
              writing, using CMB if available.  From Jon Derrick.
            - From Keith, support for setting queue maximum segments, and
              reset support.
            - Also from Jon, fixup of u64 division issue on 32-bit archs and
              wiring up of the reset support through and ioctl.
            - Two small cleanups from Matias and Sunad

        - Various code cleanups and fixes from Markus Pargmann"

      * 'for-4.3/drivers' of git://git.kernel.dk/linux-block:
        NVMe: Using PRACT bit to generate and verify PI by controller
        NVMe:Remove unreachable code in nvme_abort_req
        NVMe: Add nvme subsystem reset IOCTL
        NVMe: Add nvme subsystem reset support
        NVMe: removed unused nn var from nvme_dev_add
        NVMe: Set queue max segments
        nbd: flags is a u32 variable
        nbd: Rename functions for clearness of recv/send path
        nbd: Change 'disconnect' to be boolean
        nbd: Add debugfs entries
        nbd: Remove variable 'pid'
        nbd: Move clear queue debug message
        nbd: Remove 'harderror' and propagate error properly
        nbd: restructure sock_shutdown
        nbd: sock_shutdown, remove conditional lock
        nbd: Fix timeout detection
        nvme: Fixes u64 division which breaks i386 builds
        NVMe: Use CMB for the IO SQes if available
        NVMe: Unify SQ entry writing and doorbell ringing

  commit 1081230b748de8f03f37f80c53dfa89feda9b8de
  Merge: df91039 2ca495a
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 13:10:25 2015 -0700

      Merge branch 'for-4.3/core' of git://git.kernel.dk/linux-block

      Pull core block updates from Jens Axboe:
       "This first core part of the block IO changes contains:

         - Cleanup of the bio IO error signaling from Christoph.  We used to
           rely on the uptodate bit and passing around of an error, now we
           store the error in the bio itself.

         - Improvement of the above from myself, by shrinking the bio size
           down again to fit in two cachelines on x86-64.

         - Revert of the max_hw_sectors cap removal from a revision again,
           from Jeff Moyer.  This caused performance regressions in various
           tests.  Reinstate the limit, bump it to a more reasonable size
           instead.

         - Make /sys/block/<dev>/queue/discard_max_bytes writeable, by me.
           Most devices have huge trim limits, which can cause nasty latencies
           when deleting files.  Enable the admin to configure the size down.
           We will look into having a more sane default instead of UINT_MAX
           sectors.

         - Improvement of the SGP gaps logic from Keith Busch.

         - Enable the block core to handle arbitrarily sized bios, which
           enables a nice simplification of bio_add_page() (which is an IO hot
           path).  From Kent.

         - Improvements to the partition io stats accounting, making it
           faster.  From Ming Lei.

         - Also from Ming Lei, a basic fixup for overflow of the sysfs pending
           file in blk-mq, as well as a fix for a blk-mq timeout race
           condition.

         - Ming Lin has been carrying Kents above mentioned patches forward
           for a while, and testing them.  Ming also did a few fixes around
           that.

         - Sasha Levin found and fixed a use-after-free problem introduced by
           the bio->bi_error changes from Christoph.

         - Small blk cgroup cleanup from Viresh Kumar"

      * 'for-4.3/core' of git://git.kernel.dk/linux-block: (26 commits)
        blk: Fix bio_io_vec index when checking bvec gaps
        block: Replace SG_GAPS with new queue limits mask
        block: bump BLK_DEF_MAX_SECTORS to 2560
        Revert "block: remove artifical max_hw_sectors cap"
        blk-mq: fix race between timeout and freeing request
        blk-mq: fix buffer overflow when reading sysfs file of 'pending'
        Documentation: update notes in biovecs about arbitrarily sized bios
        block: remove bio_get_nr_vecs()
        fs: use helper bio_add_page() instead of open coding on bi_io_vec
        block: kill merge_bvec_fn() completely
        md/raid5: get rid of bio_fits_rdev()
        md/raid5: split bio for chunk_aligned_read
        block: remove split code in blkdev_issue_{discard,write_same}
        btrfs: remove bio splitting and merge_bvec_fn() calls
        bcache: remove driver private bio splitting code
        block: simplify bio_add_page()
        block: make generic_make_request handle arbitrarily sized bios
        blk-cgroup: Drop unlikely before IS_ERR(_OR_NULL)
        block: don't access bio->bi_error after bio_put()
        block: shrink struct bio down to 2 cache lines again
        ...

  commit df910390e2db07a76c87f258475f6c96253cee6c
  Merge: 91a247d 9f55bca
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 12:22:54 2015 -0700

      Merge tag 'scsi-misc' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi

      Pull first round of SCSI updates from James Bottomley:
       "This includes one new driver: cxlflash plus the usual grab bag of
        updates for the major drivers: qla2xxx, ipr, storvsc, pm80xx, hptiop,
        plus a few assorted fixes.

        There's another tranch coming, but I want to incubate it another few
        days in the checkers, plus it includes a mpt2sas separated lifetime
        fix, which Avago won't get done testing until Friday"

      * tag 'scsi-misc' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (85 commits)
        aic94xx: set an error code on failure
        storvsc: Set the error code correctly in failure conditions
        storvsc: Allow write_same when host is windows 10
        storvsc: use storage protocol version to determine storage capabilities
        storvsc: use correct defaults for values determined by protocol 
negotiation
        storvsc: Untangle the storage protocol negotiation from the vmbus 
protocol negotiation.
        storvsc: Use a single value to track protocol versions
        storvsc: Rather than look for sets of specific protocol versions, make 
decisions based on ranges.
        cxlflash: Remove unused variable from queuecommand
        cxlflash: shift wrapping bug in afu_link_reset()
        cxlflash: off by one bug in cxlflash_show_port_status()
        cxlflash: Virtual LUN support
        cxlflash: Superpipe support
        cxlflash: Base error recovery support
        qla2xxx: Update driver version to 8.07.00.26-k
        qla2xxx: Add pci device id 0x2261.
        qla2xxx: Fix missing device login retries.
        qla2xxx: do not clear slot in outstanding cmd array
        qla2xxx: Remove decrement of sp reference count in abort handler.
        qla2xxx: Add support to show MPI and PEP FW version for ISP27xx.
        ...

  commit 91a247d7d3694a161092931ea4e0b13c11b8e9a0
  Merge: 8bdc69b 718e38b
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 12:16:24 2015 -0700

      Merge tag 'for-linus-20150901' of git://git.infradead.org/linux-mtd

      Pull MTD updates from Brian Norris:
       "SPI NOR:
         - reduce virtual address space requirements for fsl-quadspi memory map
         - new fsl-quadspi IP support: imx6ul-qspi and imx7d-qspi
         - add new NOR flash device support
         - add new driver for NXP SPI Flash Interface (SPIFI)
         - stop abusing SPI API structs for non-SPI framework
         - fixup DT table matching for new "jedec,spi-nor" string

        NAND:
         - brcmnand: fix big endian MIPS macro usage
         - denali: refactor to use devres, dev_*() printing, etc.
         - OMAP ELM: change the module alias to actually be usable
         - pxa3xx_nand: fixup a few command sequencing issues -- both new and 
old
            - race conditions in the IRQ handler status clearing
            - problems when a bootloader left interrupts pending
            - config issues when overriding the bootloader configuration
         - new flash device support
         - sunxi_nand:
            - optimize timing configuration by calculation, rather than fixed
              fail-safe values
            - use EDO setting from ONFI
         - r852: fix compiler warnings
         - davinci: add 4KB page support

        Core:
         - oobtest: correct debug print information"

      * tag 'for-linus-20150901' of git://git.infradead.org/linux-mtd: (42 
commits)
        mtd: mtd_oobtest: Fix the address offset with vary_offset case
        mtd: blkdevs: fix switch-bool compilation warning
        mtd: spi-nor: stop (ab)using struct spi_device_id
        mtd: nand: add Toshiba TC58NVG0S3E to nand_ids table
        mtd: dataflash: Export OF module alias information
        nand: pxa3xx: Increase READ_ID buffer and make the size static
        mtd: nand: pxa3xx-nand: fix random command timeouts
        mtd: nand: pxa3xx_nand: fix early spurious interrupt
        mtd: pxa3xx_nand: add a default chunk size
        mtd: omap_elm: Fix module alias
        mtd: physmap_of: fix null pointer deference when kzalloc returns null
        mtd: nettel: do not ignore mtd_device_register() failure in 
nettel_init()
        mtd: denali_pci: switch to dev_err()
        mtd: denali_pci: refactor driver using devres API
        mtd: denali_pci: use module_pci_driver() macro
        mtd: denali: hide core part from user in Kconfig
        mtd: spi-nor: add Spansion S25FL204K support
        mtd: spi-nor: Improve Kconfig help text for SPI_FSL_QUADSPI
        mtd: spi-nor: add driver for NXP SPI Flash Interface (SPIFI)
        doc: dt: add documentation for nxp,lpc1773-spifi
        ...

  commit 210c34dcd8d912dcc740f1f17625a7293af5cb56
  Author: Paul Durrant <Paul.Durrant@xxxxxxxxxx>
  Date:   Wed Sep 2 17:58:36 2015 +0100

      xen-netback: add support for multicast control

      Xen's PV network protocol includes messages to add/remove ethernet
      multicast addresses to/from a filter list in the backend. This allows
      the frontend to request the backend only forward multicast packets
      which are of interest thus preventing unnecessary noise on the shared
      ring.

      The canonical netif header in git://xenbits.xen.org/xen.git specifies
      the message format (two more XEN_NETIF_EXTRA_TYPEs) so the minimal
      necessary changes have been pulled into include/xen/interface/io/netif.h.

      To prevent the frontend from extending the multicast filter list
      arbitrarily a limit (XEN_NETBK_MCAST_MAX) has been set to 64 entries.
      This limit is not specified by the protocol and so may change in future.
      If the limit is reached then the next XEN_NETIF_EXTRA_TYPE_MCAST_ADD
      sent by the frontend will be failed with NETIF_RSP_ERROR.

      Signed-off-by: Paul Durrant <paul.durrant@xxxxxxxxxx>
      Cc: Ian Campbell <ian.campbell@xxxxxxxxxx>
      Cc: Wei Liu <wei.liu2@xxxxxxxxxx>
      Acked-by: Wei Liu <wei.liu2@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4db78d31deff77f227de56316ee865d65eaa7f01
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Wed Sep 2 13:25:59 2015 -0300

      bgmac: Update fixed_phy_register()

      Commit a5597008dbc2 ("phy: fixed_phy: Add gpio to determine link 
up/down.")
      added a new argument to fixed_phy_register(), but missed to update bgmac
      driver, causing the following build failure:

      drivers/net/ethernet/broadcom/bgmac.c:1450:2: error: too few arguments to 
function 'fixed_phy_register'

      Add the missing argument.

      Reported-by: Mark Brown <broonie@xxxxxxxxxx>
      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b382c08656000c12a146723a153b85b13a855b49
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Wed Sep 2 14:00:36 2015 +0200

      sock, diag: fix panic in sock_diag_put_filterinfo

      diag socket's sock_diag_put_filterinfo() dumps classic BPF programs
      upon request to user space (ss -0 -b). However, native eBPF programs
      attached to sockets (SO_ATTACH_BPF) cannot be dumped with this method:

      Their orig_prog is always NULL. However, sock_diag_put_filterinfo()
      unconditionally tries to access its filter length resp. wants to copy
      the filter insns from there. Internal cBPF to eBPF transformations
      attached to sockets don't have this issue, as orig_prog state is kept.

      It's currently only used by packet sockets. If we would want to add
      native eBPF support in the future, this needs to be done through
      a different attribute than PACKET_DIAG_FILTER to not confuse possible
      user space disassemblers that work on diag data.

      Fixes: 89aa075832b0 ("net: sock: allow eBPF programs to be attached to 
sockets")
      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Acked-by: Nicolas Dichtel <nicolas.dichtel@xxxxxxxxx>
      Acked-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ba13b5f8f86efa78bc0aaea297b0001b6cbf6c21
  Author: Kaike Wan <kaike.wan@xxxxxxxxx>
  Date:   Thu Aug 20 14:20:42 2015 -0400

      IB/sa: Fix rdma netlink message flags

      The flags to ibnl_put_msg should be NLM_F_REQUEST instead of GFP_KERNEL.

      Signed-off-by: Kaike Wan <kaike.wan@xxxxxxxxx>
      Signed-off-by: John Fleck <john.fleck@xxxxxxxxx>
      Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit bddf8026386927985ef6d0d11c3ba78f70b76bad
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Tue Sep 1 16:44:11 2015 +0800

      drm/amdgpu: set MEC doorbell range for Fiji

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit ac01db3dd5a0c7916e804a52752b780c5c18b98d
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Tue Sep 1 13:13:54 2015 +0800

      drm/amdgpu: implement burst NOP for SDMA

      Customize the insert_nop func for SDMA rings, and use burst NOP for
      ring/IB submissions in other places as well

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit edff0e2826412be38f0c7977cbf89262141aad87
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Tue Sep 1 13:04:08 2015 +0800

      drm/amdgpu: add insert_nop ring func and default implementation

      The insert_nop function is added to amdgpu_ring_funcs structure as
      well as the default implementation

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 4b2f7e2ca94d58ea16e411a1f717392b91f7730a
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Tue Sep 1 12:56:17 2015 +0800

      drm/amdgpu: add amdgpu_get_sdma_instance helper function

      This function is added to map the ring to sdma instance

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 36f523a7c095192662286057a7eb70d583203fe5
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Tue Sep 1 12:54:27 2015 +0800

      drm/amdgpu: add AMDGPU_MAX_SDMA_INSTANCES

      Remove the hardcoded usage

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 18111de0dfc38c582c4348af3bda5d3331d35012
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Mon Aug 31 14:06:39 2015 +0800

      drm/amdgpu: add burst_nop flag for sdma

      The burst NOP is supported for SDMA when feature_version is >= 20.

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 4207a734c32cafd8ea603eb440d6a8e100e7d1d2
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Mon Aug 31 14:01:05 2015 +0800

      drm/amdgpu: add count field for the SDMA NOP packet v2

      This is added to support the burst NOP

      v2: squash the typo fix

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit a60c42320b375e80e52e7861acd6b81c61f05166
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Sep 1 15:33:25 2015 +0200

      drm/amdgpu: use PT for VM sync on unmap

      Instead of the array which is used for ID management.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit c9f0fe5e19ec485476c3b22e9265016b96c813ef
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Aug 31 15:46:12 2015 +0800

      drm/amdgpu: make wait_event uninterruptible in push_job

      with interruptible, the push_job maybe return -ERESTARTSYS,
      then result in push_job error.

      E.g. bug trace:
      [  181.618860] *****amdgpu_copy_buffer:fence->seq:0x0000000048d8758b, 
contxt:1207959552, ref:683967304, r:-512
      [  181.618929] BUG: unable to handle kernel paging request at 
ffffffff811aa266
      [  181.625887] IP: [<ffffffff81548ffc>] 
reservation_object_add_excl_fence+0x3c/0x120
      ...
      [  181.859767]  [<ffffffff811aa266>] ? unmap_mapping_range+0x66/0x110
      [  181.865928]  [<ffffffffc0608ac1>] ttm_bo_move_accel_cleanup+0x41/0x3c0 
[ttm]
      [  181.872971]  [<ffffffffc062d382>] amdgpu_move_blit.isra.18+0x122/0x150 
[amdgpu]
      [  181.880254]  [<ffffffff811aa266>] ? unmap_mapping_range+0x66/0x110
      [  181.886420]  [<ffffffffc062d709>] amdgpu_bo_move+0xa9/0x200 [amdgpu]
      [  181.892753]  [<ffffffffc0606e8d>] ttm_bo_handle_move_mem+0x26d/0x5c0 
[ttm]

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit 4c28fb0b27ad58d772cb972564369b9ebdad0d6b
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Fri Aug 28 17:27:54 2015 +0200

      drm/amdgpu: fix amdgpu_bo_unreserve order in GEM_OP IOCTL v2

      No copy_(to|from)_user while BO is reserved.

      v2: handle default path as well

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 8221d706f4f39337e28644f333aefbca41ac0d18
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Wed Sep 2 12:14:57 2015 -0400

      drm/amdgpu: partially revert "modify amdgpu_fence_wait_any() to 
amdgpu_fence_wait_multiple()" v2

      That isn't used any more.

      v2: rebase

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 09bfda10e6efd7b65bcc29237bee1765ed779657
  Author: Jeffery Miller <jmiller@xxxxxxxxxxxxx>
  Date:   Tue Sep 1 11:23:02 2015 -0400

      Add radeon suspend/resume quirk for HP Compaq dc5750.

      With the radeon driver loaded the HP Compaq dc5750
      Small Form Factor machine fails to resume from suspend.
      Adding a quirk similar to other devices avoids
      the problem and the system resumes properly.

      Signed-off-by: Jeffery Miller <jmiller@xxxxxxxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 423a9480add9d9afba035d3c2617034d5f766065
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Aug 24 16:59:54 2015 +0800

      drm/amdgpu: re-work sync_resv

      sync_resv is to handle both amdgpu_fence and sched_fence.

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit e39daf2c63518a8ce92e3ad5caa04097524b3585
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Mon Aug 31 11:08:44 2015 -0400

      drm/amdgpu/atom: Send out the full AUX address

      AUX addresses are 20 bits long. Send out the entire address instead of
      just the low 16 bits.

      Port of:
      drm/radeon/atom: Send out the full AUX address
      to amdgpu

      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 8bdc69b764013a9b5ebeef7df8f314f1066c5d79
  Merge: 76ec51e 20f1f4b
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 08:04:23 2015 -0700

      Merge branch 'for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup

      Pull cgroup updates from Tejun Heo:

       - a new PIDs controller is added.  It turns out that PIDs are actually
         an independent resource from kmem due to the limited PID space.

       - more core preparations for the v2 interface.  Once cpu side interface
         is settled, it should be ready for lifting the devel mask.
         for-4.3-unified-base was temporarily branched so that other trees
         (block) can pull cgroup core changes that blkcg changes depend on.

       - a non-critical idr_preload usage bug fix.

      * 'for-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cgroup: pids: fix invalid get/put usage
        cgroup: introduce cgroup_subsys->legacy_name
        cgroup: don't print subsystems for the default hierarchy
        cgroup: make cftype->private a unsigned long
        cgroup: export cgrp_dfl_root
        cgroup: define controller file conventions
        cgroup: fix idr_preload usage
        cgroup: add documentation for the PIDs controller
        cgroup: implement the PIDs subsystem
        cgroup: allow a cgroup subsystem to reject a fork

  commit 76ec51ef5edfe540bbc3c61b860f88deb8e6a37b
  Merge: 7d3e2eb 292c24a
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 08:03:25 2015 -0700

      Merge branch 'for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu

      Pull percpu updates from Tejun Heo:
       "Minor cleanups"

      * 'for-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:
        percpu: clean up of schunk->map[] assignment in pcpu_setup_first_chunk
        percpu: update incorrect comment for this_cpu_*() operations

  commit 7d3e2eb1786fafa186eb8bc276edef75ba69e023
  Merge: 2dc7e55 355c066
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 08:02:20 2015 -0700

      Merge branch 'for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq

      Pull workqueue updates from Tejun Heo:
       "Only three trivial changes for workqueue this time - doc, MAINTAINERS
        and EXPORT_SYMBOL updates"

      * 'for-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue: fix some docbook warnings
        workqueue: Make flush_workqueue() available again to non GPL modules
        workqueue: add myself as a dedicated reviwer

  commit 2dc7e555e33e645df70a8aa89c529de1902f0064
  Merge: ae98207 d6e9b70
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Sep 2 08:00:54 2015 -0700

      Merge branch 'for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata

      Pull libata updates from Tejun Heo:
       "Nothing interesting.  A couple device specific minor updates and a
        kernel doc change"

      * 'for-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
        ata: pata_arasam_cf: Use devm_clk_get
        libata: fix libata-core.c kernel-doc warning
        ata: sata_rcar: Remove obsolete sata-r8a779* platform_device_id entries

  commit c3058579a2882bb4bb6bf1ab0fe65f5ed070e530
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Sep 1 16:22:55 2015 +0900

      drm/exynos: remove buf_cnt from struct exynos_drm_fb

      Looking other drm drivers, there is no the restriction that framebuffer
      has only one buffer in .create_handle() callback. They use just first
      buffer.

      If this limitation is removed, there is no reason keeping buffer count
      for framebuffer, so we can remove buf_cnt from struct exynos_drm_fb.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Reviewed-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit faec262b14f3d92601c06b5c73b45ea71d0d164b
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Sep 1 16:22:54 2015 +0900

      drm/exynos: remove exynos_drm_fb_get_buf_cnt()

      We can get buffer count of framebuffer using drm_format_num_planes(), so
      keeping exynos_drm_fb_get_buf_cnt() is unnecessary.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Reviewed-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 8d31758ecfe156fa4775017858613a5087eb57bf
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Sep 1 16:22:53 2015 +0900

      drm/exynos: cleanup exynos_user_fb_create()

      Using exynos_drm_framebuffer_init(), redundant codes can be removed.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Reviewed-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit d56125afcbdfde09bcb05d3e07e1d063989b5f74
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Sep 1 16:22:52 2015 +0900

      drm/exynos: update exynos_drm_framebuffer_init() for multiple buffers

      This modifies exynos_drm_framebuffer_init() to be possible to support
      multiple buffers. Then it can be used by exynos_user_fb_create().

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit dcbb85a1641771547d83ee3a43230ea76703ed68
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Sep 1 16:22:51 2015 +0900

      drm/exynos: cleanup to get gem object for fb

      Current codes get first gem object and then again get remain gem
      objects. They can be unified to one routine.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Reviewed-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit ee885ca5c0a34d5212eae9293ee8359e65c73715
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Sep 1 16:22:50 2015 +0900

      drm/exynos: update fb_info via only one function

      This patch moves codes to update fb_info into exynos_drm_fbdev_update(),
      so fb_info is updated via only one function.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Reviewed-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit d76199609823ef0c5ab20ccdc8785df283241fd1
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Sep 1 16:22:49 2015 +0900

      drm/exynos: cleanup exynos_drm_fbdev_update()

      It can get exynos_gem object via function argument, so no need to call
      exynos_drm_fb_gem_obj() in exynos_drm_fbdev_update.

      It also can get struct drm_framebuffer *fb via helper->fb, so can remove
      a function argument for it.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Reviewed-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 39a839f2e65185bcde80f99b5ee5ccd649ba07a2
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Sep 1 16:22:48 2015 +0900

      drm/exynos: s/exynos_gem_obj/obj in exynos_drm_fbdev.c

      The variable name "exynos_gem_obj" is too long, so some lines exceed 80
      characters. It's simple to use "obj" instead of "exynos_gem_obj".

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Reviewed-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 94e30d93f9360051b76e8e2a4b61753cde5e16c8
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Sep 1 16:22:47 2015 +0900

      drm/exynos: remove exynos_drm_fb_set_buf_cnt()

      The exynos_drm_fb_set_buf_cnt() is used to set buffer count only in
      exynos_drm_fbdev_update(). This patch sets directly buffer count in
      exynos_drm_framebuffer_init() without using exynos_drm_fb_set_buf_cnt(),
      so there is no any reason to keep exynos_drm_fb_set_buf_cnt().

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Reviewed-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 7de5c36c2aa9fc7ae1443d144f895ffd044c6b36
  Author: Tobias Jakobi <tjakobi@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 00:51:23 2015 +0200

      drm/exynos: remove superfluous checks in g2d_check_reg_offset()

      The cases of the switch statement ensure that reg_type
      can never be REG_TYPE_NONE here.

      Signed-off-by: Tobias Jakobi <tjakobi@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 179239a7ae805f7695167c62a97eac3efe52d7af
  Author: Tobias Jakobi <tjakobi@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 00:51:24 2015 +0200

      drm/exynos: fix size check in g2d_check_buf_desc_is_valid()

      The size check was incomplete. It only computed the
      size of area of the drawing rectangle and checked if
      the size still fit inside the buffer.

      The correct check is to compute the position of the
      last byte that the G2D engine is going to access and
      then check if that position is still contained in the
      buffer. In particular we need the stride information
      to determine this.

      Signed-off-by: Tobias Jakobi <tjakobi@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit a457974f1b9524a6e7d0a0be10df760e7802d32f
  Author: Andrew Elble <aweits@xxxxxxx>
  Date:   Mon Aug 31 12:06:41 2015 -0400

      nfsd: deal with DELEGRETURN racing with CB_RECALL

      We have observed the server sending recalls for delegation stateids
      that have already been successfully returned. Change
      nfsd4_cb_recall_done() to return success if the client has returned
      the delegation. While this does not completely eliminate the sending
      of recalls for delegations that have already been returned, this
      does prevent unnecessarily declaring the callback path to be down.

      Reported-by: Eric Meddaugh <etmsys@xxxxxxx>
      Signed-off-by: Andrew Elble <aweits@xxxxxxx>
      Acked-by: Jeff Layton <jlayton@xxxxxxxxxxxxxxx>
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit 4e3d1e26c2b2c40ebff69f2825fa862bfcf082d1
  Author: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 23:56:12 2015 +0300

      drm/i915: Pass hpd_status_i915[] to intel_get_hpd_pins() in pre-g4x

      Pass the correct hpd[] array to intel_get_hpd_pins() on pre-g4x
      platforms.

      This got broken in the following commit:
      commit fd63e2a972c670887e5e8a08440111d3812c0996
      Author: Imre Deak <imre.deak@xxxxxxxxx>
      Date:   Tue Jul 21 15:32:44 2015 -0700

          drm/i915: combine i9xx_get_hpd_pins and pch_get_hpd_pins

      Cc: Imre Deak <imre.deak@xxxxxxxxx>
      Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Reviewed-by: Paulo Zanoni <paulo.r.zanoni@xxxxxxxxx>
      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Reviewed-by: Egbert Eich <eich@xxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 16f7249ddf831f5ec0e1358222ce5db300446b84
  Author: Artem Savkov <asavkov@xxxxxxxxxx>
  Date:   Wed Sep 2 13:41:18 2015 +0200

      uapi/drm/i915_drm.h: fix userspace compilation.

      commit 346add7834557b5b9628b9bf2387106d42e631d4
      Author: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Date:   Tue Jul 14 18:07:30 2015 +0200

          drm/i915: Use expcitly fixed type in compat32 structs

      changed the type of param field in drm_i915_getparam from int to
      s32. This header is exported to userspace and needs to use userspace
      type __s32 instead.

      This fixes userspace compilation errors like the following:
      include/drm/i915_drm.h:361:2: error: unknown type name 's32'
        s32 param;

      Signed-off-by: Artem Savkov <asavkov@xxxxxxxxxx>
      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 51bc140431e233284660b1d22c47dec9ecdb521e
  Author: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 15:10:39 2015 +0100

      drm/i915: Always mark the object as dirty when used by the GPU

      There have been many hard to track down bugs whereby userspace forgot to
      flag a write buffer and then cause graphics corruption or a hung GPU
      when that buffer was later purged under memory pressure (as the buffer
      appeared clean, its pages would have been evicted rather than preserved
      and any changes more recent than in the backing storage would be lost).
      In retrospect this is a rare optimisation against memory pressure,
      already the slow path. If we always mark the buffer as dirty when
      accessed by the GPU, anything not used can still be evicted cheaply
      (ideal behaviour for mark-and-sweep eviction) but we do not run the risk
      of corruption. For correct read serialisation, userspace still has to
      notify when the GPU writes to an object. However, there are certain
      situations under which userspace may wish to tell white lies to the
      kernel...

      Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
      Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: Kristian Høgsberg <krh@xxxxxxxxxxxxx>
      Cc: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
      Cc: "Goel, Akash" <akash.goel@xxxxxxxx>
      Cc: MichaÅ? Winiarski <michal.winiarski@xxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit f36203be608a38a5b5523a7aa52cc72f757b9679
  Author: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 26 22:55:07 2015 +0300

      drm/dp: Add dp_aux_i2c_speed_khz module param to set the assume i2c bus 
speed

      To help with debugging i2c-over-aux issues, add a module parameter than
      can be used to tweak the assumed i2c bus speed, and thus the maximum
      number of retries we will do for each aux message.

      Cc: Simon Farnsworth <simon.farnsworth@xxxxxxxxxx>
      Cc: moosotc@xxxxxxxxx
      Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Reviewed-by: Simon Farnsworth <simon.farnsworth@xxxxxxxxxx>
      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 4efa83c8c786ab7ec7982e3dd348cb7e7ecbeb04
  Author: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 20:12:54 2015 +0300

      drm/dp: Adjust i2c-over-aux retry count based on message size and i2c bus 
speed

      Calculate the number of retries we should do for each i2c-over-aux
      message based on the time it takes to perform the i2c transfer vs. the
      aux transfer. We assume the shortest possible length for the aux
      transfer, and the longest possible (exluding clock stretching) for the
      i2c transfer.

      The DP spec has some examples on how to calculate this, but we don't
      calculate things quite the same way. The spec doesn't account for the
      retry interval (assumes immediate retry on defer), and doesn't assume
      the best/worst case behaviour as we do.

      Note that currently we assume 10 kHz speed for the i2c bus. Some real
      world devices (eg. some Apple DP->VGA dongle) fails with less than 16
      retries. and that would correspond to something close to 15 kHz (with
      our method of calculating things) But let's just go for 10 kHz to be
      on the safe side. Ideally we should query/set the i2c bus speed via
      DPCD but for now this should at leaast remove the regression from the
      1->16 byte trasnfer size change. And of course if the sink completes
      the transfer quicker this shouldn't slow things down since we don't
      change the interval between retries.

      I did a few experiments with a DP->DVI dongle I have that allows you
      to change the i2c bus speed. Here are the results of me changing the
      actual bus speed and the assumed bus speed and seeing when we start
      to fail the operation:

      actual i2c khz          assumed i2c khz         max retries
      1                       1 ok -> 2 fail          211 ok -> 106 fail
      5                       8 ok -> 9 fail          27 ok -> 24 fail
      10                      17 ok -> 18 fail        13 ok -> 12 fail
      100                     210 ok -> 211 fail      2 ok -> 1 fail

      So based on that we have a fairly decent safety margin baked into
      the formula to calculate the max number of retries.

      Fixes a regression with some DP dongles from:
      commit 1d002fa720738bcd0bddb9178e9ea0773288e1dd
      Author: Simon Farnsworth <simon.farnsworth@xxxxxxxxxxxx>
      Date:   Tue Feb 10 18:38:08 2015 +0000

          drm/dp: Use large transactions for I2C over AUX

      v2: Use best case for AUX and worst case for i2c (Simon Farnsworth)
          Add a define our AUX retry interval and account for it
      v3: Make everything usecs to avoid confusion about units (Daniel)
          Add a comment reminding people about the AUX bitrate (Daniel)
          Use DIV_ROUND_UP() since we're after the "worst" case for i2c

      Cc: Simon Farnsworth <simon.farnsworth@xxxxxxxxxx>
      Cc: moosotc@xxxxxxxxx
      Tested-by: moosotc@xxxxxxxxx
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91451
      Reviewed-by: Simon Farnsworth <simon.farnsworth@xxxxxxxxxx>
      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 5ad4da4302712fba10624d28cb6c269fee592b69
  Author: Jiri Olsa <jolsa@xxxxxxxxxx>
  Date:   Wed Sep 2 09:56:31 2015 +0200

      perf tools: Fix parse_events_add_pmu caller

      Following commit changed parse_events_add_pmu interface:
        36adec85a86f perf tools: Change parse_events_add_pmu interface

      but forgot to change one caller. Because of lessen compilation rules for
      the bison parser, the compiler did not warn on that.

      Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Raphael Beamonte <raphael.beamonte@xxxxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Matt Fleming <matt@xxxxxxxxxxxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Fixes: 36adec85a86f ("perf tools: Change parse_events_add_pmu interface")
      Link: 
http://lkml.kernel.org/r/1441180605-24737-2-git-send-email-jolsa@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 79a2b161c12a1b751f53a7698494cb722530bca5
  Author: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 26 22:55:05 2015 +0300

      drm/dp: Define AUX_RETRY_INTERVAL as 500 us

      Currently we react to native and i2c defers by waiting either 400-500 us
      or 500-600 us, depending on which code path we take. Consolidate them
      all to one define AUX_RETRY_INTERVAL which defines the minimum interval.
      Since we've been using two different intervals pick the longer of them
      and define AUX_RETRY_INTERVAL as 500 us. For the maximum just use
      AUX_RETRY_INTERVAL+100 us.

      I want to have a define for this so that I can use it when calculating
      the estimated duration of i2c-over-aux transfers. Without a define it
      would be very easy to change the sleep duration and neglect to update
      the i2c-over-aux estimates.

      Cc: Simon Farnsworth <simon.farnsworth@xxxxxxxxxx>
      Cc: moosotc@xxxxxxxxx
      Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Reviewed-by: Simon Farnsworth <simon.farnsworth@xxxxxxxxxx>
      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 9f8df6adf6c53abfa10e243cb289c34eb18ec581
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Wed Sep 2 16:14:06 2015 +0530

      regulator: core: fix possible NULL dereference

      We were checking rdev->supply for NULL after dereferencing it. Lets
      check for rdev->supply along with _regulator_is_enabled() and call
      regulator_enable() only if rdev->supply is not NULL.

      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 57817e619a215588739f3f644986c78b586b541b
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 16:31:54 2015 +0200

      video: fbdev: atmel_lcdfb: remove useless include

      Definitions from linux/platform_data/atmel.h are not used, remove the
      include.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>

  commit 6869de380e8c11c31b608bb2502dcacd634eda13
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Wed Sep 2 12:24:55 2015 +0200

      ALSA: hda - Fix missing inline for dummy snd_hdac_set_codec_wakeup()

      This seems overlooked.

      Fixes: 98d8fc6c5d36 ('ALSA: hda - Move hda_i915.c from sound/pci/hda to 
sound/hda')
      Cc: <stable@xxxxxxxxxxxxxxx> # v4.2+
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 25adc137c546ce297b4d76820913dda11cad3891
  Author: David Henningsson <david.henningsson@xxxxxxxxxxxxx>
  Date:   Wed Aug 19 10:48:58 2015 +0200

      ALSA: hda - Wake the codec up on pin/ELD notify events

      Whenever there is an event from the i915 driver, wake the codec
      and recheck plug/unplug + ELD status.

      This fixes the issue with lost unsol events in power save mode,
      the codec and controller can now sleep in D3 and still know when
      the HDMI monitor has been connected.

      Signed-off-by: David Henningsson <david.henningsson@xxxxxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 45c053df5bdc4843cf19b920db6ab819ddc27ff7
  Author: David Henningsson <david.henningsson@xxxxxxxxxxxxx>
  Date:   Wed Aug 19 10:48:57 2015 +0200

      ALSA: hda - allow codecs to access the i915 pin/ELD callback

      This lets the interested codec be notified when an i915 pin/ELD
      event happens.

      [tiwai: Fixed a trivial build error for CONFIG_SND_HDA_I915=n]

      Signed-off-by: David Henningsson <david.henningsson@xxxxxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 51e1d83cab9988716ae68801a721f4df0aaa374b
  Author: David Henningsson <david.henningsson@xxxxxxxxxxxxx>
  Date:   Wed Aug 19 10:48:56 2015 +0200

      drm/i915: Call audio pin/ELD notify function

      When the audio codec is enabled or disabled, notify the audio driver.
      This will enable the audio driver to get the notification at all times
      (even when audio is in different powersave states).

      Signed-off-by: David Henningsson <david.henningsson@xxxxxxxxxxxxx>
      Reviewed-by: Jani Nikula <jani.nikula@xxxxxxxxx>
      Acked-by: Daniel Vetter <daniel@xxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 2a8ceedf787167e6b1670b89d44e8dffca14d19c
  Author: David Henningsson <david.henningsson@xxxxxxxxxxxxx>
  Date:   Wed Aug 19 10:48:55 2015 +0200

      drm/i915: Add audio pin sense / ELD callback

      This callback will be called by the i915 driver to notify the hda
      driver that its HDMI information needs to be refreshed, i e,
      that audio output is now available (or unavailable) - usually as a
      result of a monitor being plugged in (or unplugged).

      Signed-off-by: David Henningsson <david.henningsson@xxxxxxxxxxxxx>
      Reviewed-by: Jani Nikula <jani.nikula@xxxxxxxxx>
      Acked-by: Daniel Vetter <daniel@xxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 02bc933ebb59208f42c2e6305b2c17fd306f695d
  Author: Tan, Jui Nee <jui.nee.tan@xxxxxxxxx>
  Date:   Tue Sep 1 10:22:51 2015 +0800

      spi: spi-pxa2xx: Check status register to determine if SSSR_TINT is 
disabled

      On Intel Baytrail, there is case when interrupt handler get called, no SPI
      message is captured. The RX FIFO is indeed empty when RX timeout pending
      interrupt (SSSR_TINT) happens.

      Use the BIOS version where both HSUART and SPI are on the same IRQ. Both
      drivers are using IRQF_SHARED when calling the request_irq function. When
      running two separate and independent SPI and HSUART application that
      generate data traffic on both components, user will see messages like
      below on the console:

        pxa2xx-spi pxa2xx-spi.0: bad message state in interrupt handler

      This commit will fix this by first checking Receiver Time-out Interrupt,
      if it is disabled, ignore the request and return without servicing.

      Signed-off-by: Tan, Jui Nee <jui.nee.tan@xxxxxxxxx>
      Acked-by: Jarkko Nikula <jarkko.nikula@xxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 7c8bb6cb95061b3143759459ed6c6b0c73bcfecb
  Author: Frederic Weisbecker <fweisbec@xxxxxxxxx>
  Date:   Tue Sep 1 16:51:00 2015 +0200

      nohz: Assert existing housekeepers when nohz full enabled

      The code ensures that when nohz full is running, at least the
      boot CPU serves as a housekeeper and it can't be later offlined.

      Let's assert this assumption to make sure that we have CPUs to
      handle unbound jobs like workqueues and timers while nohz full
      CPUs run undisturbed.

      Also improve the comments on housekeeper offlining prevention.

      Signed-off-by: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Acked-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Preeti U Murthy <preeti@xxxxxxxxxxxxxxxxxx>
      Cc: Vatika Harlalka <vatikaharlalka@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441119060-2230-3-git-send-email-fweisbec@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 9642d18eee2cd169b60c6ac0f20bda745b5a3d1e
  Author: Vatika Harlalka <vatikaharlalka@xxxxxxxxx>
  Date:   Tue Sep 1 16:50:59 2015 +0200

      nohz: Affine unpinned timers to housekeepers

      The problem addressed in this patch is about affining unpinned
      timers. Adaptive or Full Dynticks CPUs are currently disturbed
      by unnecessary jitter due to firing of such timers on them.

      This patch will affine timers to online CPUs which are not full
      dynticks in NOHZ_FULL configured systems. It should not
      introduce overhead in nohz full off case due to static keys.

      Signed-off-by: Vatika Harlalka <vatikaharlalka@xxxxxxxxx>
      Signed-off-by: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Reviewed-by: Preeti U Murthy <preeti@xxxxxxxxxxxxxxxxxx>
      Acked-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Chris Metcalf <cmetcalf@xxxxxxxxxx>
      Cc: Christoph Lameter <cl@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441119060-2230-2-git-send-email-fweisbec@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 31e09b18c863718939e3e9c30eee55f9011d85ee
  Author: Linda Knippers <linda.knippers@xxxxxx>
  Date:   Tue Sep 1 15:41:55 2015 -0400

      x86/mm/srat: Print non-volatile flag in SRAT

      With the addition of NVDIMM support, a question came up as to
      whether NVDIMM ranges should be in the SRAT with this bit set.
      I think the consensus was no because the ranges are in the NFIT
      with proximity domain information there.

      ACPI is not clear on the meaning of this bit in the SRAT.
      If someone is setting it, we might want to ask them what they
      expect to happen with it.

      Right now this bit is only printed if all the ACPI debug
      information is turned on.

      Signed-off-by: Linda Knippers <linda.knippers@xxxxxx>
      Acked-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Link: http://lkml.kernel.org/r/20150901194154.GA4939@ljkz400
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 5b923564ccf43f92969c9e0fd199c8c5db657039
  Merge: 5320266 af4aead
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Wed Sep 2 09:22:53 2015 +0200

      Merge tag 'perf-urgent-for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent

      Pull perf/urgent fixes from Arnaldo Carvalho de Melo:

        - Fix link time error with sample_reg_masks on non-x86. (Stephane 
Eranian)

        - Fix potential array out of bounds access. (Wang Nan)

        - Fix Intel PT instruction decoder dependency problem. (Wang Nan)

      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 20a17bf6c04e3eca8824c930ecc55ab832558e3b
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Sep 1 21:19:17 2015 -0700

      flow_dissector: Use 'const' where possible.

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit de4c1f8ba302ccf4f2b3b17dc614b0a0b14d351a
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 18:11:04 2015 -0700

      flow_dissector: Fix function argument ordering dependency

      Commit c6cc1ca7f4d70c ("flowi: Abstract out functions to get flow hash
      based on flowi") introduced a bug in __skb_set_sw_hash where we
      require a dependency on evaluating arguments in a function in order.
      There is no such ordering enforced in C, so this incorrect. This
      patch fixes that by splitting out the arguments. This bug was
      found via a compiler warning that keys may be uninitialized.

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1bd40543534578f20889d5e999a0f184fd7ea88f
  Merge: a17ace9 990a2d6
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Sep 1 20:17:17 2015 -0700

      Merge branch 'master' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue

      Jeff Kirsher says:

      ====================
      Intel Wired LAN Driver Updates 2015-09-01

      This series contains updates to i40e, ixgbe and ixgbevf.

      Anjali fixes a bug in i40e where the port is not receiving multicast or 
VLAN
      tagged packets in promiscuous mode.  Which can occur when a software 
bridge
      is created on top of the device.

      Don adds support in ixgbe that indicates the presence of management 
firmware.
      Added support for entering low power link up state on devices that support
      it when the device is closing or suspending.  Updated the driver to report
      unknown bus speed and width since IOSF does not report a PCIe bus speed or
      width for X550 devices.  Also added the new bus type for integrated I/O
      interface (IOSF).  Cleaned up of redundant code in ixgbe.

      Mark adds support for UDP-encapsulation transmit checksum and for VXLAN
      receive offloads.  Introduces a helper function to do the register access
      and processing to avoid needless PHY access on copper PHYs.  Added support
      for reporting 2.5G link speed.  Fixed warnings resulting from redundant
      initializations of the get_bus_info field.

      Maninder Singh updates the ixgbe driver to use kzalloc instead of kcalloc
      for allocation of one thing.

      Tom Barbette adds support for ethtool to change the rxfh indirection table
      and/or key using ethtool interface.

      Emil resolves an issue where users were not able to dynamically set number
      of queues for 82598 via ethtool -L.

      Alex Williamson removes bimodal SR-IOV disabling behavior since it is
      confusing to users and results in a state where the PF is broken for other
      uses unless the user sets sriov_numvfs to zero prior to unbinding the
      device.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ae982073095a44f004d7ffb9f271077abef9dbcf
  Merge: f1a3c0b e625ccec
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 19:45:46 2015 -0700

      Merge tag 'pm+acpi-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

      Pull power management and ACPI updates from Rafael Wysocki:
       "From the number of commits perspective, the biggest items are ACPICA
        and cpufreq changes with the latter taking the lead (over 50 commits).

        On the cpufreq front, there are many cleanups and minor fixes in the
        core and governors, driver updates etc.  We also have a new cpufreq
        driver for Mediatek MT8173 chips.

        ACPICA mostly updates its debug infrastructure and adds a number of
        fixes and cleanups for a good measure.

        The Operating Performance Points (OPP) framework is updated with new
        DT bindings and support for them among other things.

        We have a few updates of the generic power domains framework and a
        reorganization of the ACPI device enumeration code and bus type
        operations.

        And a lot of fixes and cleanups all over.

        Included is one branch from the MFD tree as it contains some
        PM-related driver core and ACPI PM changes a few other commits are
        based on.

        Specifics:

         - ACPICA update to upstream revision 20150818 including method
           tracing extensions to allow more in-depth AML debugging in the
           kernel and a number of assorted fixes and cleanups (Bob Moore, Lv
           Zheng, Markus Elfring).

         - ACPI sysfs code updates and a documentation update related to AML
           method tracing (Lv Zheng).

         - ACPI EC driver fix related to serialized evaluations of _Qxx
           methods and ACPI tools updates allowing the EC userspace tool to be
           built from the kernel source (Lv Zheng).

         - ACPI processor driver updates preparing it for future introduction
           of CPPC support and ACPI PCC mailbox driver updates (Ashwin
           Chaugule).

         - ACPI interrupts enumeration fix for a regression related to the
           handling of IRQ attribute conflicts between MADT and the ACPI
           namespace (Jiang Liu).

         - Fixes related to ACPI device PM (Mika Westerberg, Srinidhi
           Kasagar).

         - ACPI device registration code reorganization to separate the
           sysfs-related code and bus type operations from the rest (Rafael J
           Wysocki).

         - Assorted cleanups in the ACPI core (Jarkko Nikula, Mathias Krause,
           Andy Shevchenko, Rafael J Wysocki, Nicolas Iooss).

         - ACPI cpufreq driver and ia64 cpufreq driver fixes and cleanups (Pan
           Xinhui, Rafael J Wysocki).

         - cpufreq core cleanups on top of the previous changes allowing it to
           preseve its sysfs directories over system suspend/resume (Viresh
           Kumar, Rafael J Wysocki, Sebastian Andrzej Siewior).

         - cpufreq fixes and cleanups related to governors (Viresh Kumar).

         - cpufreq updates (core and the cpufreq-dt driver) related to the
           turbo/boost mode support (Viresh Kumar, Bartlomiej Zolnierkiewicz).

         - New DT bindings for Operating Performance Points (OPP), support for
           them in the OPP framework and in the cpufreq-dt driver plus related
           OPP framework fixes and cleanups (Viresh Kumar).

         - cpufreq powernv driver updates (Shilpasri G Bhat).

         - New cpufreq driver for Mediatek MT8173 (Pi-Cheng Chen).

         - Assorted cpufreq driver (speedstep-lib, sfi, integrator) cleanups
           and fixes (Abhilash Jindal, Andrzej Hajda, Cristian Ardelean).

         - intel_pstate driver updates including Skylake-S support, support
           for enabling HW P-states per CPU and an additional vendor bypass
           list entry (Kristen Carlson Accardi, Chen Yu, Ethan Zhao).

         - cpuidle core fixes related to the handling of coupled idle states
           (Xunlei Pang).

         - intel_idle driver updates including Skylake Client support and
           support for freeze-mode-specific idle states (Len Brown).

         - Driver core updates related to power management (Andy Shevchenko,
           Rafael J Wysocki).

         - Generic power domains framework fixes and cleanups (Jon Hunter,
           Geert Uytterhoeven, Rajendra Nayak, Ulf Hansson).

         - Device PM QoS framework update to allow the latency tolerance
           setting to be exposed to user space via sysfs (Mika Westerberg).

         - devfreq support for PPMUv2 in Exynos5433 and a fix for an incorrect
           exynos-ppmu DT binding (Chanwoo Choi, Javier Martinez Canillas).

         - System sleep support updates (Alan Stern, Len Brown, SungEun Kim).

         - rockchip-io AVS support updates (Heiko Stuebner).

         - PM core clocks support fixup (Colin Ian King).

         - Power capping RAPL driver update including support for Skylake H/S
           and Broadwell-H (Radivoje Jovanovic, Seiichi Ikarashi).

         - Generic device properties framework fixes related to the handling
           of static (driver-provided) property sets (Andy Shevchenko).

         - turbostat and cpupower updates (Len Brown, Shilpasri G Bhat,
           Shreyas B Prabhu)"

      * tag 'pm+acpi-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (180 commits)
        cpufreq: speedstep-lib: Use monotonic clock
        cpufreq: powernv: Increase the verbosity of OCC console messages
        cpufreq: sfi: use kmemdup rather than duplicating its implementation
        cpufreq: drop !cpufreq_driver check from cpufreq_parse_governor()
        cpufreq: rename cpufreq_real_policy as cpufreq_user_policy
        cpufreq: remove redundant 'policy' field from user_policy
        cpufreq: remove redundant 'governor' field from user_policy
        cpufreq: update user_policy.* on success
        cpufreq: use memcpy() to copy policy
        cpufreq: remove redundant CPUFREQ_INCOMPATIBLE notifier event
        cpufreq: mediatek: Add MT8173 cpufreq driver
        dt-bindings: mediatek: Add MT8173 CPU DVFS clock bindings
        PM / Domains: Fix typo in description of genpd_dev_pm_detach()
        PM / Domains: Remove unusable governor dummies
        PM / Domains: Make pm_genpd_init() available to modules
        PM / domains: Align column headers and data in pm_genpd_summary output
        powercap / RAPL: disable the 2nd power limit properly
        tools: cpupower: Fix error when running cpupower monitor
        PM / OPP: Drop unlikely before IS_ERR(_OR_NULL)
        PM / OPP: Fix static checker warning (broken 64bit big endian systems)
        ...

  commit f1a3c0b933e7ff856223d6fcd7456d403e54e4e5
  Merge: 089b669 c8fb70a
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 19:37:56 2015 -0700

      Merge tag 'devicetree-for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux

      Pull devicetree updates from Rob Herring:
       - added Frank Rowand as DT maintainer in preparation for Grant's
         retirement.
       - generic MSI binding documentation and a few other minor doc updates
       - fix long standing issue with DT platorm device unregistration
       - fix loop forever bug in of_find_matching_node_by_address()

      * tag 'devicetree-for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
        MAINTAINERS: Add Frank Rowand as DT maintainer
        mtd: nand: pxa3xx: add optional dma for pxa architecture
        Documentation: DT: cpsw: document missing compatible
        Docs: dt: add generic MSI bindings
        drivercore: Fix unregistration path of platform devices
        of/address: Don't loop forever in of_find_matching_node_by_address().
        of: Add vendor prefix for JEDEC Solid State Technology Association
        of/platform: add function to populate default bus
        of: Add vendor prefix for Sharp Corporation

  commit 5a924a07f882e866f2337bf65048be357956691a
  Merge: 64291f7 934c93b d0a1262
  Author: Zhang Rui <rui.zhang@xxxxxxxxx>
  Date:   Wed Sep 2 10:08:02 2015 +0800

      Merge branches 'thermal-core' and 'thermal-intel' of .git into next

  commit 089b669506ef28fae2c24a0ec21e06c02a38556b
  Merge: 45c680b e5f6450
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 18:46:42 2015 -0700

      Merge branch 'for-next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial

      Pull trivial tree updates from Jiri Kosina:
       "The usual stuff from trivial tree for 4.3 (kerneldoc updates, printk()
        fixes, Documentation and MAINTAINERS updates)"

      * 'for-next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (28 commits)
        MAINTAINERS: update my e-mail address
        mod_devicetable: add space before */
        scsi: a100u2w: trivial typo in printk
        i2c: Fix typo in i2c-bfin-twi.c
        treewide: fix typos in comment blocks
        Doc: fix trivial typo in SubmittingPatches
        proportions: Spelling s/consitent/consistent/
        dm: Spelling s/consitent/consistent/
        aic7xxx: Fix typo in error message
        pcmcia: Fix typo in locking documentation
        scsi/arcmsr: Fix typos in error log
        drm/nouveau/gr: Fix typo in nv10.c
        [SCSI] Fix printk typos in drivers/scsi
        staging: comedi: Grammar s/Enable support a/Enable support for a/
        Btrfs: Spelling s/consitent/consistent/
        README: GTK+ is a acronym
        ASoC: omap: Fix typo in config option description
        mm: tlb.c: Fix error message
        ntfs: super.c: Fix error log
        fix typo in Documentation/SubmittingPatches
        ...

  commit 45c680b9949ecdb829a331100ae49926bf82899c
  Merge: 851328f 225f58f
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 18:44:28 2015 -0700

      Merge branch 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livepatching

      Pull livepatching fix from Jiri Kosina:
       "Livepatching error handling fix"

      * 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livepatching:
        livepatch: Improve error handling in klp_disable_func()

  commit 851328feb8c1d4130d3a0acb004e474168702d6d
  Merge: 2d678b6 f212bd9
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 18:39:09 2015 -0700

      Merge branch 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid

      Pull HID updates from Jiri Kosina:
       "to receive patches queued for 4.3 merge window in HID tree. Highlights:

         - a lot of improvements (regarding supported features and devices) to
           Wacom driver, from Aaron Skomra and Jason Gerecke
         - a lot of functional fixes and support for large I2C transfer to
           cp2112 driver, from Ellen Wang
         - HW support improvements to RMI driver, from Andrew Duggan
         - quite some small fixes and device ID additions all over the place"

      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: 
(44 commits)
        HID: wacom: wacom_setup_numbered_buttons is local to wacom_wac
        HID: wacom: Add support for Express Key Remote.
        HID: wacom: Set button bits based on a new numbered_buttons
        HID: quirks: add QUIRK_NOGET for an other TPV touchscreen
        HID: usbhid: Fix the check for HID_RESET_PENDING in hid_io_error
        HID: i2c-hid: Only disable irq wake if it was successfully enabled 
during suspend
        HID: wacom: Use tablet-provided touch height/width values for INTUOSHT
        HID: gembird: add new driver to fix Gembird JPD-DualForce 2
        HID: lenovo: Hide middle-button press until release
        HID: lenovo: Add missing return-value check
        HID: lenovo: Use constants for axes names
        HID: wacom: Simplify 'wacom_pl_irq'
        HID: wacom: Do not repeatedly attempt to set device mode on error
        HID: wacom: Do not repeatedly attempt to set device mode on error
        HID: wacom: Remove WACOM_QUIRK_NO_INPUT
        HID: wacom: Replace WACOM_QUIRK_MONITOR with WACOM_DEVICETYPE_WL_MONITOR
        HID: wacom: Use calculated pkglen for wireless touch interface
        HID: sony: Fix DS4 controller reporting rate issues
        HID: chicony: Add support for Acer Aspire Switch 12
        HID: hid-lg: Add USBID for Logitech G29 Wheel
        ...

  commit 2d678b68e842e5b6fc46fc6914f7b7144bb2c23d
  Merge: 73b6fa8 99e1dfb
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 18:34:22 2015 -0700

      Merge tag 'edac_for_4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp

      Pull EDAC fixes from Borislav Petkov:
       "Two minor fixlets this time: AMD MCE decoding correction and
        xgene_edac cleanup"

      * tag 'edac_for_4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        EDAC, mce_amd: Don't emit 'CE' for Deferred error
        EDAC, xgene: Drop owner assignment from platform_driver

  commit 990a2d6ed543bd18b864b8a11f7be3368c67ccea
  Author: Mark Rustad <mark.d.rustad@xxxxxxxxx>
  Date:   Wed Jul 29 16:00:38 2015 -0700

      ixgbe: Resolve "initialized field overwritten" warnings

      Resolve warnings resulting from redundant initialization of the
      get_bus_info field in the mac_ops_X550* structures.

      Signed-off-by: Mark Rustad <mark.d.rustad@xxxxxxxxx>
      Tested-by: Phil Schmitt <phillip.j.schmitt@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 7837e2867f56ec4435e75af54236732885303694
  Author: Alex Williamson <alex.williamson@xxxxxxxxxx>
  Date:   Fri Jul 10 15:31:34 2015 -0600

      ixgbe: Remove bimodal SR-IOV disabling

      When unbinding an SR-IOV device with VFs configured from ixgbe, the
      driver behaves in one of two ways.  If max_vfs was specified, the
      SR-IOV state is disabled, removing the VFs.  The occurs regardless of
      whether the VF count was later modified through sysfs.  If however
      max_vfs is zero, such as by not specifying the module parameter, the
      VFs persist after the PF is unbound from ixgbe.  If the PF is then
      bound to vfio-pci to be assigned to a VM, the PF is non-functional.

      >From the comment, commit da36b64736cf ("ixgbe: Implement PCI SR-IOV
      sysfs callback operation") clearly intended this alternate behavior,
      but probably didn't realize the PF doesn't work in this mode.

      This bimodal behavior is confusing to users and results in a state
      where the PF is broken for other uses unless the user sets
      sriov_numvfs to zero prior to unbinding the device.  Remove this
      behavior so that VFs are removed and the PF is functional for other
      uses after unbind, regardless of the way VFs are enabled.

      Signed-off-by: Alex Williamson <alex.williamson@xxxxxxxxxx>
      Acked-by: Greg Rose <gregory.v.rose@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 454adb008d78e4ecdfec3f2e5e9eb08ee5a60f1a
  Author: Mark Rustad <mark.d.rustad@xxxxxxxxx>
  Date:   Fri Jul 10 14:19:22 2015 -0700

      ixgbe: Add support for reporting 2.5G link speed

      Now that we can do 2.5G link speed, we need to be able to report it.
      Also change the nested triadic involved in creating the log message
      to instead use a simpler switch statement to set a string pointer.

      Signed-off-by: Mark Rustad <mark.d.rustad@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 7e3f5c8881ba45eba1c74344b00558920008e6e6
  Author: Emil Tantilov <emil.s.tantilov@xxxxxxxxx>
  Date:   Thu Jul 9 12:28:59 2015 -0700

      ixgbe: fix bounds checking in ixgbe_setup_tc for 82598

      This patch resolves an issue where users were not able to dynamically
      set number of queues for 82598 via ethtool -L

      Reported-by: Tal Abudi <talabudi@xxxxxxxxx>
      Signed-off-by: Emil Tantilov <emil.s.tantilov@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 1c7cf0784e4d448ed8a07c5fc1e3aac1528272f1
  Author: Tom Barbette <tom.barbette@xxxxxxxxx>
  Date:   Fri Jun 26 15:40:18 2015 +0200

      ixgbe: support for ethtool set_rxfh

      Allows to change the rxfh indirection table and/or key using
      ethtool interface.

      Signed-off-by: Tom Barbette <tom.barbette@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit ae8140aa6bf5c7aafc0d9c2f612c5b59bea1ce9f
  Author: Mark Rustad <mark.d.rustad@xxxxxxxxx>
  Date:   Thu Jun 25 17:49:57 2015 -0700

      ixgbe: Avoid needless PHY access on copper phys

      Avoid a needless PHY access on copper phys to save the 10ms wait
      time for each PHY access. A helper function is introduced to
      actually do the register access and process the contents.

      Signed-off-by: Mark Rustad <mark.d.rustad@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 897b9349f056d1c1cf5141ded4ec26766d845f8b
  Author: Don Skidmore <donald.c.skidmore@xxxxxxxxx>
  Date:   Fri Jun 19 19:14:57 2015 -0400

      ixgbe: cleanup to use cached mask value

      We already cache this FW/SW semaphore mask so might as well use it
      for consistency.

      Signed-off-by: Don Skidmore <donald.c.skidmore@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit d5702dea43fc517c389f2d9825213dabbfdaed5e
  Author: Don Skidmore <donald.c.skidmore@xxxxxxxxx>
  Date:   Fri Jun 19 12:23:36 2015 -0400

      ixgbe: Remove second instance of lan_id variable

      This patch removes the redundant lan_id in the phy struct and uses
      the bus version.  Both variables exist and intend to represent the
      STATUS register LAN_ID field.  However, phy.lan_id is not bit shifted
      so the phy.lan_id = 0x0 for LAN Id 0 and phy.lan_id = 0x4 for LAN Id 1.
      Where bus.lan_id is bit shifted so bus.lan_id = 0x0 for LAN Id 0 and
      bus.lan_id = 0x1 for LAN Id 1. There seems no need for the additional
      lan_id variable and this should make the code less confusing.

      Signed-off-by: Donald C Skidmore <donald.c.skidmore@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit bc52f951e344b2ec64388c71890d88c5fc154a41
  Author: Maninder Singh <maninder1.s@xxxxxxxxxxx>
  Date:   Fri Jun 19 09:37:55 2015 +0530

      ixgbe: use kzalloc for allocating one thing

      Use kzalloc rather than kcalloc(1..

      The semantic patch that makes this change is as follows:

      // <smpl>
      @@
      @@

      - kcalloc(1,
      + kzalloc(
                ...)
      // </smpl>

      and removing checkpatch below CHECK:
      CHECK: Prefer kzalloc(sizeof(*fwd_adapter)...) over
      kzalloc(sizeof(struct ixgbe_fwd_adapter)...)

      Signed-off-by: Maninder Singh <maninder1.s@xxxxxxxxxxx>
      Reviewed-by: Vaneet Narang <v.narang@xxxxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit a17ace95b0f08ccbcf24946db5673c4b5ee8fcae
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Sep 1 17:00:24 2015 -0700

      flow: Move __get_hash_from_flowi{4,6} into flow_dissector.c

      These cannot live in net/core/flow.c which only builds when XFRM is
      enabled.

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit fa888b891384ccbf18e70af2e02f5173e55e5e7f
  Author: Don Skidmore <donald.c.skidmore@xxxxxxxxx>
  Date:   Thu Jun 18 16:31:42 2015 -0400

      ixgbe: Remove unused PCI bus types

      The ixgbe never has as very doubtfully ever will support either
      PCI or PCI-X devices.  So remove the unused types from the
      ixgbe_bus_type.  Thanks to Alex Duyck for suggesting this.

      Signed-off-by: Donald C Skidmore <donald.c.skidmore@xxxxxxxxx>
      Tested-by: Phil Schmitt <phillip.j.schmitt@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit f9328bc6a7edc0fbaea836007b4261ca6233d96f
  Author: Don Skidmore <donald.c.skidmore@xxxxxxxxx>
  Date:   Thu Jun 18 13:24:06 2015 -0400

      ixgbe: add new bus type for intergrated I/O interface (IOSF)

      With this patch we add support for a new bus type ixgbe_bus_type_internal.
      X550em devices use IOSF and not PCIe bus so this new type is to 
accommodate
      them.

      Signed-off-by: Donald C Skidmore <donald.c.skidmore@xxxxxxxxx>
      Tested-by: Phil Schmitt <phillip.j.schmitt@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 454c65dd1a1e7fdaa5bbd3a34e14ab5560fbfad7
  Author: Don Skidmore <donald.c.skidmore@xxxxxxxxx>
  Date:   Wed Jun 17 20:59:59 2015 -0400

      ixgbe: add get_bus_info method for X550

      Added ixgbe_get_bus_info_X550em to X550 code. ixgbe_get_bus_info_X550em
      sets bus.width to ixgbe_bus_width_unknown and bus.speed to
      ixgbe_bus_speed_unknown, because IOSF does not report a PCIe bus
      width or speed.

      Signed-off-by: Don Skidmore <donald.c.skidmore@xxxxxxxxx>
      Tested-by: Phil Schmitt <phillip.j.schmitt@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 6ac7439459606a57265800e60b14d58365ab19eb
  Author: Don Skidmore <donald.c.skidmore@xxxxxxxxx>
  Date:   Wed Jun 17 17:34:31 2015 -0400

      ixgbe: Add support for entering low power link up state

      When the device is closing or suspending, call ixgbe_enter_lplu to
      enter low power link up state on devices that support it. When this
      is done, prevent the phy from being reset in the ixgbe_down path
      so that link is present when calling ixgbe_enter_lplu.

      Signed-off-by: Don Skidmore <donald.c.skidmore@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 67359c3c9fc8e9fbed991bbe0cfeda55c7e0a64c
  Author: Mark Rustad <mark.d.rustad@xxxxxxxxx>
  Date:   Mon Jun 15 11:33:25 2015 -0700

      ixgbe: Add support for VXLAN RX offloads

      Add support for VXLAN RX offloads for the X55x devices that support
      them.

      Signed-off-by: Mark Rustad <mark.d.rustad@xxxxxxxxx>
      Tested-by: Phil Schmitt <phillip.j.schmitt@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit f467bc06022d4d37de459f9498ff4fbc7e9b0fca
  Author: Mark Rustad <mark.d.rustad@xxxxxxxxx>
  Date:   Mon Jun 15 11:33:20 2015 -0700

      ixgbe: Add support for UDP-encapsulated tx checksum offload

      By using GSO for UDP-encapsulated packets, all ixgbe devices can
      be directed to generate checksums for the inner headers because
      the outer UDP checksum can be zero. So point the machinery at the
      inner headers and have the hardware generate the checksum.

      Signed-off-by: Mark Rustad <mark.d.rustad@xxxxxxxxx>
      Tested-by: Phil Schmitt <phillip.j.schmitt@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 4b36993d3df0834eff3b4172962de0343a4d9123
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Sep 1 16:46:08 2015 -0700

      flow_dissector: Don't use bit fields.

      Just have a flags member instead.

         In file included from include/linux/linkage.h:4:0,
                          from include/linux/kernel.h:6,
                          from net/core/flow_dissector.c:1:
         In function 'flow_keys_hash_start',
             inlined from 'flow_hash_from_keys' at 
net/core/flow_dissector.c:553:34:
      >> include/linux/compiler.h:447:38: error: call to 
'__compiletime_assert_459' declared with attribute error: BUILD_BUG_ON failed: 
FLOW_KEYS_HASH_OFFSET % sizeof(u32)

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d490d15877b2e6fc2d800ea232a0eca54cf4592c
  Author: Mark Rustad <mark.d.rustad@xxxxxxxxx>
  Date:   Thu Jun 11 11:02:20 2015 -0700

      ixgbe: Check whether FDIRCMD writes actually complete

      Wait up to about 100 us for FDIRCMD writes to complete and return
      failure indications.

      Signed-off-by: Mark Rustad <mark.d.rustad@xxxxxxxxx>
      Tested-by: Phil Schmitt <phillip.j.schmitt@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit b5529ef5be1f0a0089988ec51541aa9573e94476
  Author: Don Skidmore <donald.c.skidmore@xxxxxxxxx>
  Date:   Wed Jun 10 20:42:30 2015 -0400

      ixgbe: Assign set_phy_power dynamically where needed

      There are various reasons why this method may or may not need to be
      defined and some of these we don't know until runtime.  So we will
      set the value in get_invariants.

      Signed-off-by: Donald C Skidmore <donald.c.skidmore@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit bd8069ace513dd2741bc7177eeebc9a392451db1
  Author: Don Skidmore <donald.c.skidmore@xxxxxxxxx>
  Date:   Wed Jun 10 20:05:02 2015 -0400

      ixgbe: add new function to check for management presence

      This patch adds a support function that will indicate for the
      existence of management FW.

      Signed-off-by: Donald C Skidmore <donald.c.skidmore@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 92faef85613d6d56803ad6130f6daf4a803deddc
  Author: Anjali Singhai Jain <anjali.singhai@xxxxxxxxx>
  Date:   Tue Jul 28 13:02:00 2015 -0400

      i40e: Set defport behavior for the Main VSI when in promiscuous mode

      This fixes bugs where the port is not receiving multicast or VLAN tagged
      packets when in promiscuous mode. This can occur when a SW bridge is
      created on top of the device.

      This also fixes issues where the promiscuous behavior setting was not
      being preserved across a reset caused by features being enabled or
      disabled.

      We are using defport instead of doing a true promiscuous mode because we 
do
      not need to receive the SRIOV or VMDq VSI directed traffic which would 
suck
      up bandwidth and is really not intended for the SW bridge.

      In addition, with defport we get VLAN promiscuous behavior which is not
      possible from the VSI level promiscuous setting.

      Change-ID: Ie21985eac32d5af1c02e9d71c6430a90d5bab40f
      Signed-off-by: Anjali Singhai Jain <anjali.singhai@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 73b6fa8e49c2d13e04d20186261e5f7855c6d0bf
  Merge: e713c80 4b75de86
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 16:13:25 2015 -0700

      Merge branch 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace

      Pull user namespace updates from Eric Biederman:
       "This finishes up the changes to ensure proc and sysfs do not start
        implementing executable files, as the there are application today that
        are only secure because such files do not exist.

        It akso fixes a long standing misfeature of /proc/<pid>/mountinfo that
        did not show the proper source for files bind mounted from
        /proc/<pid>/ns/*.

        It also straightens out the handling of clone flags related to user
        namespaces, fixing an unnecessary failure of unshare(CLONE_NEWUSER)
        when files such as /proc/<pid>/environ are read while <pid> is calling
        unshare.  This winds up fixing a minor bug in unshare flag handling
        that dates back to the first version of unshare in the kernel.

        Finally, this fixes a minor regression caused by the introduction of
        sysfs_create_mount_point, which broke someone's in house application,
        by restoring the size of /sys/fs/cgroup to 0 bytes.  Apparently that
        application uses the directory size to determine if a tmpfs is mounted
        on /sys/fs/cgroup.

        The bind mount escape fixes are present in Al Viros for-next branch.
        and I expect them to come from there.  The bind mount escape is the
        last of the user namespace related security bugs that I am aware of"

      * 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
        fs: Set the size of empty dirs to 0.
        userns,pidns: Force thread group sharing, not signal handler sharing.
        unshare: Unsharing a thread does not require unsharing a vm
        nsfs: Add a show_path method to fix mountinfo
        mnt: fs_fully_visible enforce noexec and nosuid  if !SB_I_NOEXEC
        vfs: Commit to never having exectuables on proc and sysfs.

  commit e713c80a4e49d4bed5324d24755e42bf01c87556
  Merge: 43af987 c8b5db7
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 15:42:28 2015 -0700

      Merge branch 'x86-core-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull x86 clockevent update from Thomas Gleixner:
       "A single commit, which converts HPET clockevents driver to the new
        callbacks"

      * 'x86-core-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/hpet: Migrate to new set_state interface

  commit 43af9872f52abfed5523b8346d98a5e283b38163
  Merge: 17e6b00 a47d457
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 15:20:51 2015 -0700

      Merge branch 'x86-apic-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull x86 apic updates from Thomas Gleixner:
       "This udpate contains:

         - rework the irq vector array to store a pointer to the irq
           descriptor instead of the irq number to avoid a lookup of the irq
           descriptor in the irq entry path

         - lguest interrupt handling cleanups

         - conversion of the local apic timer to the new clockevent callbacks

         - preparatory changes for the irq argument removal of interrupt flow
           handlers"

      * 'x86-apic-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/irq: Do not dereference irq descriptor before checking it
        tools/lguest: Clean up include dir
        tools/lguest: Fix redefinition of struct virtio_pci_cfg_cap
        x86/irq: Store irq descriptor in vector array
        genirq: Provide irq_desc_has_action
        x86/irq: Get rid of an indentation level
        x86/irq: Rename VECTOR_UNDEFINED to VECTOR_UNUSED
        x86/irq: Replace numeric constant
        x86/irq: Protect smp_cleanup_move
        x86/lguest: Do not setup unused irq vectors
        x86/lguest: Clean up lguest_setup_irq
        x86/apic: Drop local_irq_save/restore in timer callbacks
        x86/apic: Migrate apic timer to new set_state interface
        x86/irq: Use access helper irq_data_get_affinity_mask()
        x86/irq: Use accessor irq_data_get_irq_handler_data()
        x86/irq: Use accessor irq_data_get_node()

  commit 4a3e5779cf6c6d557682b499c2190ad04c80c6fd
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Mon Aug 31 10:53:43 2015 +0800

      nfs: Remove unneeded checking of the return value from scnprintf

      The return value from scnprintf always less than the buffer length.
      So, result >= len always false. This patch removes those checking.

      int vscnprintf(char *buf, size_t size, const char *fmt, va_list args)
      {
              int i;

        i = vsnprintf(buf, size, fmt, args);

        if (likely(i < size))
                return i;
        if (size != 0)
                return size - 1;
        return 0;
      }

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 4a70316caef7d158445e672e146eb9f1b8c1aeee
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Mon Aug 31 10:53:33 2015 +0800

      nfs: Fix truncated client owner id without proto type

      The length of "Linux NFSv4.0 " is 14, not 10.

      Without this patch, I get a truncated client owner id as,
      "Linux NFSv4.0 ::1/::1"

      With this patch,
      "Linux NFSv4.0 ::1/::1 tcp"

      Fixes: a319268891 ("nfs: make nfs4_init_nonuniform_client_string use a 
dynamically allocated buffer")
      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 889d94d49a3cbcbc8c8d07208549fa614d33da76
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 00:58:24 2015 -0700

      NFSv4.1/flexfiles: Mark layout for return if the mirrors are invalid

      If a read-write layout has an invalid mirror, then we should
      mark it as invalid, and return it.
      If a read-only layout has an invalid mirror, then mark it as invalid
      and check if there is still at least one valid mirror before we return
      it.

      Note: Also fix incorrect use of pnfs_generic_mark_devid_invalid().
      We really want nfs4_mark_deviceid_unavailable().

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 81d6dc8b3431d298abaef11d8bc64646fc691618
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 02:49:44 2015 -0700

      NFSv4.1/flexfiles: RW layouts are valid only if all mirrors are valid

      Unlike read layouts, the writeable layout cannot fall back to using only
      one of the mirrors. It need to write to all of them.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 388ef16640cefd202daa723fba02e7c0266f8454
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 03:31:33 2015 -0700

      NFSv4.1/flexfiles: Fix incorrect usage of 
pnfs_generic_mark_devid_invalid()

      Unlike the files layout, flexfiles does not test for the 
NFS_DEVICEID_INVALID
      flag. Instead it relies on NFS_DEVICEID_UNAVAILABLE.
      Fix is to replace with nfs4_mark_deviceid_unavailable().

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 41ecc3d390266acc1aa911d2ec477928a5248f75
  Merge: d3d11fe 6db61d7
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Sep 1 15:06:24 2015 -0700

      Merge branch 'flow-dissector-features'

      Tom Herbert says:

      ====================
      flow_dissector: Paramterize dissection and other features

      This patch set adds some new capabilities to flow_dissector:

      - Add flags to flow dissector functions to control dissection
        - Flag to stop dissection when L3 header is seen (don't
          dissect L4)
        - Flag to stop dissection when encapsulation is detected
        - Flag to parse first fragment of fragmented packet. This
          may provide L4 ports
      - Added new reporting in key_control
        - Packet is a fragment
        - Packet is a first fragment
        - Packet has encapsulation

      Also:
        - Make __skb_set_sw_hash a general function
        - Create functions to get a flow hash based on flowi4 or flowi6
          structures without an reference to an skbuff
        - Ignore flow dissector return value from ___skb_get_hash. Just
          use whatever key fields are found to make a hash

      Tested:

      Ran 200 netperf TCP_RR instances for IPv6 and IPv4. Did not see any
      regression. Ran UDP_RR with 10000 byte request and response size
      for IPv4 and IPv6, no regression observed however I did see better
      performance with IPv6 flow labels due to use of flow labels for L4
      hash.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6db61d79c1e1b2346e2142d6c950a8d2e8380b82
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 09:24:33 2015 -0700

      flow_dissector: Ignore flow dissector return value from ___skb_get_hash

      In ___skb_get_hash ignore return value from skb_flow_dissect_flow_keys.
      A failure in that function likely means that there was a parse error,
      so we may as well use whatever fields were found before the error was
      hit.  This is also good because it means we won't keep trying to derive
      the hash on subsequent calls to skb_get_hash for the same packet.

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 823b96939578eae67b9d6c0e33a39d6a7b6401e7
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 09:24:32 2015 -0700

      flow_dissector: Add control/reporting of encapsulation

      Add an input flag to flow dissector on rather dissection should stop
      when encapsulation is detected (IP/IP or GRE). Also, add a key_control
      flag that indicates encapsulation was encountered during the
      dissection.

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 872b1abb1ed47a691f465fb3d285f6cf6bcd8663
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 09:24:31 2015 -0700

      flow_dissector: Add flag to stop parsing when an IPv6 flow label is seen

      Add an input flag to flow dissector on rather dissection should be
      stopped when a flow label is encountered. Presumably, the flow label
      is derived from a sufficient hash of an inner transport packet so
      further dissection is not needed (that is ports are not included in
      the flow hash). Using the flow label instead of ports has the additional
      benefit that packet fragments should hash to same value as non-fragments
      for a flow (assuming that the same flow label is used).

      We set this flag by default in for skb_get_hash.

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8306b688f1a6621b9efe3b0d827e26750528b12a
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 09:24:30 2015 -0700

      flow_dissector: Add flag to stop parsing at L3

      Add an input flag to flow dissector on rather dissection should be
      stopped when an L3 packet is encountered. This would be useful if a
      caller just wanted to get IP addresses of the outermost header (e.g.
      to do an L3 hash).

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b840f28b908da0239c8c5d9c8cae362ad21cda97
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 09:24:29 2015 -0700

      flow_dissector: Support IPv6 fragment header

      Parse NEXTHDR_FRAGMENT. When seen account for it in the fragment bits of
      key_control. Also, check if first fragment should be parsed.

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 807e165dc44fd93f9d378f861f0540a158d7343a
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 09:24:28 2015 -0700

      flow_dissector: Add control/reporting of fragmentation

      Add an input flag to flow dissector on rather dissection should be
      attempted on a first fragment. Also add key_control flags to indicate
      that a packet is a fragment or first fragment.

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit cd79a2382aa5dcefa6e21a7c59bb1bb19e53b74d
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 09:24:27 2015 -0700

      flow_dissector: Add flags argument to skb_flow_dissector functions

      The flags argument will allow control of the dissection process (for
      instance whether to parse beyond L3).

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a6e544b0a88b53114bfa5a57e21b7be7a8dfc9d0
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 09:24:26 2015 -0700

      flow_dissector: Jump to exit code in __skb_flow_dissect

      Instead of returning immediately (on a parsing failure for instance) we
      jump to cleanup code. This always sets protocol values in key_control
      (even on a failure there is still valid information in the key_tags that
      was set before the problem was hit).

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c6cc1ca7f4d70cbb3ea3a5ca163c5dabaf155cdb
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 09:24:25 2015 -0700

      flowi: Abstract out functions to get flow hash based on flowi

      Create __get_hash_from_flowi6 and __get_hash_from_flowi4 to get the
      flow keys and hash based on flowi structures. These are called by
      __skb_get_hash_flowi6 and __skb_get_hash_flowi4. Also, created
      get_hash_from_flowi6 and get_hash_from_flowi4 which can be called
      when just the hash value for a flowi is needed.

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit bcc83839ffdb063dd2b0370cd85c4f825761fc59
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 09:24:24 2015 -0700

      skbuff: Make __skb_set_sw_hash a general function

      Move __skb_set_sw_hash to skbuff.h and add __skb_set_hash which is
      a common method (between __skb_set_sw_hash and skb_set_hash) to set
      the hash in an skbuff.

      Also, move skb_clear_hash to be closer to __skb_set_hash.

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e5276937ae6e654a811345f0716266f12e77bede
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 09:24:23 2015 -0700

      flow_dissector: Move skb related functions to skbuff.h

      Move the flow dissector functions that are specific to skbuffs into
      skbuff.h out of flow_dissector.h. This makes flow_dissector.h have
      no dependencies on skbuff.h.

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d3d11fe08ccc9bff174fc958722b5661f0932486
  Author: Jean Delvare <jdelvare@xxxxxxx>
  Date:   Tue Sep 1 18:07:41 2015 +0200

      tg3: Fix temperature reporting

      The temperature registers appear to report values in degrees Celsius
      while the hwmon API mandates values to be exposed in millidegrees
      Celsius. Do the conversion so that the values reported by "sensors"
      are correct.

      Fixes: aed93e0bf493 ("tg3: Add hwmon support for temperature")
      Signed-off-by: Jean Delvare <jdelvare@xxxxxxx>
      Cc: Prashant Sreedharan <prashant@xxxxxxxxxxxx>
      Cc: Michael Chan <mchan@xxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx [v3.6+]
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b6c6aedcbcbacd7b0cb4b64ed5ac835bc1c60a03
  Author: Mark Salter <msalter@xxxxxxxxxx>
  Date:   Tue Sep 1 09:36:05 2015 -0400

      phylib: fix device deletion order in mdiobus_unregister()

      commit 8b63ec1837fa ("phylib: Make PHYs children of their MDIO bus, not
      the bus' parent.") uncovered a problem in mdiobus_unregister() which
      leads to this warning when I reboot an APM Mustang (arm64) platform:

        WARNING: CPU: 7 PID: 4239 at fs/sysfs/group.c:224 
sysfs_remove_group+0xa0/0xa4()
        sysfs group fffffe0000e07a10 not found for kobject 'xgene-mii-eth0:03'
        ...
        CPU: 7 PID: 4239 Comm: reboot Tainted: G            E   
4.2.0-0.18.el7.test15.aarch64 #1
        Hardware name: AppliedMicro Mustang/Mustang, BIOS 1.1.0 Aug 26 2015
        Call Trace:
        [<fffffe000009739c>] dump_backtrace+0x0/0x170
        [<fffffe000009752c>] show_stack+0x20/0x2c
        [<fffffe00007436f0>] dump_stack+0x78/0x9c
        [<fffffe00000c2cb4>] warn_slowpath_common+0xa0/0xd8
        [<fffffe00000c2d60>] warn_slowpath_fmt+0x74/0x88
        [<fffffe0000293d3c>] sysfs_remove_group+0x9c/0xa4
        [<fffffe00004a8bac>] dpm_sysfs_remove+0x5c/0x70
        [<fffffe000049b388>] device_del+0x44/0x208
        [<fffffe000049b578>] device_unregister+0x2c/0x7c
        [<fffffe000050dc68>] mdiobus_unregister+0x48/0x94
        [<fffffe000052afd0>] xgene_enet_mdio_remove+0x28/0x44
        [<fffffe000052d3f0>] xgene_enet_remove+0xd0/0xd8
        [<fffffe000052d424>] xgene_enet_shutdown+0x2c/0x3c
        [<fffffe00004a204c>] platform_drv_shutdown+0x24/0x40
        [<fffffe000049d4f4>] device_shutdown+0xf0/0x1b4
        [<fffffe00000e31ec>] kernel_restart_prepare+0x40/0x4c
        [<fffffe00000e32f8>] kernel_restart+0x1c/0x80
        [<fffffe00000e3670>] SyS_reboot+0x17c/0x250

      The problem is that mdiobus_unregister() deletes the bus device before
      unregistering the phy devices on the bus. This wasn't a problem before
      because the phys were not children of the bus:

        /sys/devices/platform/APMC0D05:00/net/eth0/xgene-mii-eth0:03
        /sys/devices/platform/APMC0D05:00/net/eth0/xgene-mii-eth0

      But now that they are:

        
/sys/devices/platform/APMC0D05:00/net/eth0/xgene-mii-eth0/xgene-mii-eth0:03

      when mdiobus_unregister deletes the bus device, the phy subdirs are
      removed from sysfs also. So when the phys are unregistered afterward,
      we get the warning. This patch changes the order so that phys are
      unregistered before the bus device is deleted.

      Fixes: 8b63ec1837fa ("phylib: Make PHYs children of their MDIO bus, not 
the bus' parent.")
      Signed-off-by: Mark Salter <msalter@xxxxxxxxxx>
      Reviewed-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Tested-by: Mark Langsdorf <mlangsdo@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 01a5ad827a36e36f45e1fdb96903ea115f759865
  Author: Yunlei He <heyunlei@xxxxxxxxxx>
  Date:   Mon Aug 31 17:15:10 2015 +0800

      f2fs: upset segment_info repair

      upset segment_info like this:

      276000|161 0|0   4|70  3|0   3|0   0|0   0|91  4|0   4|232 4|39
      276104|0   4|0   4|1   4|0   4|0   4|280 4|0   4|42  4|262 4|38
      276204|179 4|89  4|39  4|24  4|0   4|96  4|3   4|428 4|0   4|118
      276304|112 4|97  4|0   4|0   4|0   4|68  4|0   4|0   4|86  4|138
      276404|0   4|0   0|166 5|39  4|101 0|111

      Signed-off-by: Yunlei He <heyunlei@xxxxxxxxxx>
      Reviewed-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 17e6b00ac422b49d44a0b8d98402a211f726282d
  Merge: 5e359bf e324c4d
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 14:33:35 2015 -0700

      Merge branch 'irq-core-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull irq updates from Thomas Gleixner:
       "This updated pull request does not contain the last few GIC related
        patches which were reported to cause a regression.  There is a fix
        available, but I let it breed for a couple of days first.

        The irq departement provides:

         - new infrastructure to support non PCI based MSI interrupts
         - a couple of new irq chip drivers
         - the usual pile of fixlets and updates to irq chip drivers
         - preparatory changes for removal of the irq argument from interrupt
           flow handlers
         - preparatory changes to remove IRQF_VALID"

      * 'irq-core-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (129 commits)
        irqchip/imx-gpcv2: IMX GPCv2 driver for wakeup sources
        irqchip: Add bcm2836 interrupt controller for Raspberry Pi 2
        irqchip: Add documentation for the bcm2836 interrupt controller
        irqchip/bcm2835: Add support for being used as a second level controller
        irqchip/bcm2835: Refactor handle_IRQ() calls out of MAKE_HWIRQ
        PCI: xilinx: Fix typo in function name
        irqchip/gic: Ensure gic_cpu_if_up/down() programs correct GIC instance
        irqchip/gic: Only allow the primary GIC to set the CPU map
        PCI/MSI: pci-xgene-msi: Consolidate chained IRQ handler install/remove
        unicore32/irq: Prepare puv3_gpio_handler for irq argument removal
        tile/pci_gx: Prepare trio_handle_level_irq for irq argument removal
        m68k/irq: Prepare irq handlers for irq argument removal
        C6X/megamode-pic: Prepare megamod_irq_cascade for irq argument removal
        blackfin: Prepare irq handlers for irq argument removal
        arc/irq: Prepare idu_cascade_isr for irq argument removal
        sparc/irq: Use access helper irq_data_get_affinity_mask()
        sparc/irq: Use helper irq_data_get_irq_handler_data()
        parisc/irq: Use access helper irq_data_get_affinity_mask()
        mn10300/irq: Use access helper irq_data_get_affinity_mask()
        irqchip/i8259: Prepare i8259_irq_dispatch for irq argument removal
        ...

  commit 9b8ff51822893e743eee09350c1928daa3ef503f
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 14:26:35 2015 -0600

      net: Make table id type u32

      A number of VRF patches used 'int' for table id. It should be u32 to be
      consistent with the rest of the stack.

      Fixes:
      4e3c89920cd3a ("net: Introduce VRF related flags and helpers")
      15be405eb2ea9 ("net: Add inet_addr lookup by table")
      30bbaa1950055 ("net: Fix up inet_addr_type checks")
      021dd3b8a142d ("net: Add routes to the table associated with the device")
      dc028da54ed35 ("inet: Move VRF table lookup to inlined function")
      f6d3c19274c74 ("net: FIB tracepoints")

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 5e359bf2219d8622eb0931701e45af55db323228
  Merge: 8d01b66 85e1cd6
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 14:04:50 2015 -0700

      Merge branch 'timers-core-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull timer updates from Thomas Gleixner:
       "Rather large, but nothing exiting:

         - new range check for settimeofday() to prevent that boot time
           becomes negative.
         - fix for file time rounding
         - a few simplifications of the hrtimer code
         - fix for the proc/timerlist code so the output of clock realtime
           timers is accurate
         - more y2038 work
         - tree wide conversion of clockevent drivers to the new callbacks"

      * 'timers-core-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (88 commits)
        hrtimer: Handle failure of tick_init_highres() gracefully
        hrtimer: Unconfuse switch_hrtimer_base() a bit
        hrtimer: Simplify get_target_base() by returning current base
        hrtimer: Drop return code of hrtimer_switch_to_hres()
        time: Introduce timespec64_to_jiffies()/jiffies_to_timespec64()
        time: Introduce current_kernel_time64()
        time: Introduce struct itimerspec64
        time: Add the common weak version of update_persistent_clock()
        time: Always make sure wall_to_monotonic isn't positive
        time: Fix nanosecond file time rounding in timespec_trunc()
        timer_list: Add the base offset so remaining nsecs are accurate for non 
monotonic timers
        cris/time: Migrate to new 'set-state' interface
        kernel: broadcast-hrtimer: Migrate to new 'set-state' interface
        xtensa/time: Migrate to new 'set-state' interface
        unicore/time: Migrate to new 'set-state' interface
        um/time: Migrate to new 'set-state' interface
        sparc/time: Migrate to new 'set-state' interface
        sh/localtimer: Migrate to new 'set-state' interface
        score/time: Migrate to new 'set-state' interface
        s390/time: Migrate to new 'set-state' interface
        ...

  commit 21b430d23d233c67e6589ea5054d18392e15a28e
  Author: Tony Lindgren <tony@xxxxxxxxxxx>
  Date:   Tue Sep 1 13:59:25 2015 -0700

      ARM: omap2plus_defconfig: Enable MUSB DMA support

      With recent MUSB changes we can now build in support for multiple
      DMA implementations. So let's enable DMA by default to make life
      easier for distro use.

      Acked-by: Felipe Balbi <balbi@xxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 81032e34e184a8d63598d215a6d4a3352018ffea
  Author: Vishal Mahaveer <vishalm@xxxxxx>
  Date:   Tue Sep 1 13:59:25 2015 -0700

      ARM: DRA752: Add ID detect for ES2.0

      ES2.0 is a minor variant of ES1.1. ES2.0 is an incremental revision
      with various fixes including the following:
        - reset logic fixes
        - few assymetric aging logic fixes
        - MMC clock rate fixes
        - Ethernet speed fixes
        - edma fixes for mcasp

      NOTE: even though we use a compatible of dra742 and dra752, the usage in
      the Linux kernel is more or less interchangable - we use dra752 more
      often in the linux kernel compared to dra742 and 4.2-rc6

      Signed-off-by: Vishal Mahaveer <vishalm@xxxxxx>
      Signed-off-by: Nishanth Menon <nm@xxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 05f4f1abc274ac7e8e83424d0cef2d842db91815
  Author: Frans Klaver <fransklaver@xxxxxxxxx>
  Date:   Tue Sep 1 13:59:25 2015 -0700

      ARM: OMAP3: vc: fix 'or' always true warning

      Fix the warning:
      arch/arm/mach-omap2/vc.c:302:47: warning: logical â??orâ?? of 
collectively exhaustive tests is always true [-Wlogical-op]

      As we're toggling both CLKREQ and OFFMODE, we should also be checking
      OFFMODE.

      Signed-off-by: Frans Klaver <fransklaver@xxxxxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 874b300a6a0bfe97225ed1f8648fa92238e4d9e9
  Author: Tony Lindgren <tony@xxxxxxxxxxx>
  Date:   Tue Sep 1 13:59:25 2015 -0700

      ARM: OMAP2+: Fix booting if no timer parent clock is available

      When bringing up a new SoC we needlessly prevent booting at timer
      init if timer clock_set_parent fails. This can fail if the system
      is booting on bootloader configured PLL values until the clock
      framework driver for the PLL is implemented.

      Let's just WARN instead, this will provide helpful information
      for anybody bringing up a new SoC what needs to be fixed.

      This allows to boot dm814x that's still missing the PLL driver.

      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit fe8291e82b5d0b79b743683e5c0fb7e273f7a99a
  Author: Grygorii Strashko <grygorii.strashko@xxxxxx>
  Date:   Tue Sep 1 13:59:24 2015 -0700

      ARM: OMAP2+: omap-device: fix race deferred probe of omap_hsmmc vs 
omap_device_late_init

      Kernel fails to boot 50% of times (form build to build) with
      RT-patchset applied due to the following race - on late boot
      stages deferred_probe_work_func->omap_hsmmc_probe races with 
omap_device_late_ini.

      The same issue has been reported now on linux-next (4.3) by Keerthy [1]

      late_initcall
       - deferred_probe_initcal() tries to re-probe all pending driver's probe.

      - later on, some driver is probing in this case It's cpsw.c
        (but could be any other drivers)
        cpsw_init
        - platform_driver_register
          - really_probe
             - driver_bound
               - driver_deferred_probe_trigger
        and boot proceed.
        So, at this moment we have deferred_probe_work_func scheduled.

      late_initcall_sync
        - omap_device_late_init
          - omap_device_idle

      CPU1                                      CPU2
        - deferred_probe_work_func
          - really_probe
            - omap_hsmmc_probe
        - pm_runtime_get_sync
                                        late_initcall_sync
                                        - omap_device_late_init
                                                if (od->_driver_status != 
BUS_NOTIFY_BOUND_DRIVER) {
                                                        if (od->_state == 
OMAP_DEVICE_STATE_ENABLED) {
                                                                - 
omap_device_idle [ops - IP is disabled]
        - [fail]
        - pm_runtime_put_sync
                - omap_hsmmc_runtime_suspend [ooops!]

      == log ==
       omap_hsmmc 480b4000.mmc: unable to get vmmc regulator -517
       davinci_mdio 48485000.mdio: davinci mdio revision 1.6
       davinci_mdio 48485000.mdio: detected phy mask fffffff3
       libphy: 48485000.mdio: probed
       davinci_mdio 48485000.mdio: phy[2]: device 48485000.mdio:02, driver 
unknown
       davinci_mdio 48485000.mdio: phy[3]: device 48485000.mdio:03, driver 
unknown
       omap_hsmmc 480b4000.mmc: unable to get vmmc regulator -517
       cpsw 48484000.ethernet: Detected MACID = b4:99:4c:c7:d2:48
       cpsw 48484000.ethernet: cpsw: Detected MACID = b4:99:4c:c7:d2:49
       hctosys: unable to open rtc device (rtc0)
       omap_hsmmc 480b4000.mmc: omap_device_late_idle: enabled but no driver.  
Idling
       ldousb: disabling
       Unhandled fault: imprecise external abort (0x1406) at 0x00000000
       [00000000] *pgd=00000000
       Internal error: : 1406 [#1] PREEMPT SMP ARM
       Modules linked in:
       CPU: 1 PID: 58 Comm: kworker/u4:1 Not tainted 
4.1.2-rt1-00467-g6da3c0a-dirty #5
       Hardware name: Generic DRA74X (Flattened Device Tree)
       Workqueue: deferwq deferred_probe_work_func
       task: ee6ddb00 ti: edd3c000 task.ti: edd3c000
       PC is at omap_hsmmc_runtime_suspend+0x1c/0x12c
       LR is at _od_runtime_suspend+0xc/0x24
       pc : [<c0471998>]    lr : [<c0029590>]    psr: a0000013
       sp : edd3dda0  ip : ee6ddb00  fp : c07be540
       r10: 00000000  r9 : c07be540  r8 : 00000008
       r7 : 00000000  r6 : ee646c10  r5 : ee646c10  r4 : edd79380
       r3 : fa0b4100  r2 : 00000000  r1 : 00000000  r0 : ee646c10
       Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
       Control: 10c5387d  Table: 8000406a  DAC: 00000015
       Process kworker/u4:1 (pid: 58, stack limit = 0xedd3c218)
       Stack: (0xedd3dda0 to 0xedd3e000)
       dda0: ee646c70 ee646c10 c0029584 00000000 00000008 c0029590 ee646c70 
ee646c10
       ddc0: c0029584 c03adfb8 ee646c10 00000004 0000000c c03adff0 ee646c10 
00000004
       dde0: 0000000c c03ae4ec 00000000 edd3c000 ee646c10 00000004 ee646c70 
00000004
       de00: fa0b4000 c03aec20 ee6ddb00 ee646c10 00000004 ee646c70 ee646c10 
fffffdfb
       de20: edd79380 00000000 fa0b4000 c03aee90 fffffdfb edd79000 ee646c00 
c0474290
       de40: 00000000 edda24c0 edd79380 edc81f00 00000000 00000200 00000001 
c06dd488
       de60: edda3960 ee646c10 ee646c10 c0824cc4 fffffdfb c0880c94 00000002 
edc92600
       de80: c0836378 c03a7f84 ee646c10 c0824cc4 00000000 c0880c80 c0880c94 
c03a6568
       dea0: 00000000 ee646c10 c03a66ac ee4f8000 00000000 00000001 edc92600 
c03a4b40
       dec0: ee404c94 edc83c4c ee646c10 ee646c10 ee646c44 c03a63c4 ee646c10 
ee646c10
       dee0: c0814448 c03a5aa8 ee646c10 c0814220 edd3c000 c03a5ec0 c0814250 
ee6be400
       df00: edd3c000 c004e5bc ee6ddb01 00000078 ee6ddb00 ee4f8000 ee6be418 
edd3c000
       df20: ee4f8028 00000088 c0836045 ee4f8000 ee6be400 c004e928 ee4f8028 
00000000
       df40: c004e8ec 00000000 ee6bf1c0 ee6be400 c004e8ec 00000000 00000000 
00000000
       df60: 00000000 c0053450 2e56fa97 00000000 afdffbd7 ee6be400 00000000 
00000000
       df80: edd3df80 edd3df80 00000000 00000000 edd3df90 edd3df90 edd3dfac 
ee6bf1c0
       dfa0: c0053384 00000000 00000000 c000f668 00000000 00000000 00000000 
00000000
       dfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 
00000000
       dfe0: 00000000 00000000 00000000 00000000 00000013 00000000 f1fc9d7e 
febfbdff
       [<c0471998>] (omap_hsmmc_runtime_suspend) from [<c0029590>] 
(_od_runtime_suspend+0xc/0x24)
       [<c0029590>] (_od_runtime_suspend) from [<c03adfb8>] 
(__rpm_callback+0x24/0x3c)
       [<c03adfb8>] (__rpm_callback) from [<c03adff0>] (rpm_callback+0x20/0x80)
       [<c03adff0>] (rpm_callback) from [<c03ae4ec>] (rpm_suspend+0xe4/0x618)
       [<c03ae4ec>] (rpm_suspend) from [<c03aee90>] 
(__pm_runtime_idle+0x60/0x80)
       [<c03aee90>] (__pm_runtime_idle) from [<c0474290>] 
(omap_hsmmc_probe+0x6bc/0xa7c)
       [<c0474290>] (omap_hsmmc_probe) from [<c03a7f84>] 
(platform_drv_probe+0x44/0xa4)
       [<c03a7f84>] (platform_drv_probe) from [<c03a6568>] 
(driver_probe_device+0x170/0x2b4)
       [<c03a6568>] (driver_probe_device) from [<c03a4b40>] 
(bus_for_each_drv+0x64/0x98)
       [<c03a4b40>] (bus_for_each_drv) from [<c03a63c4>] 
(device_attach+0x70/0x88)
       [<c03a63c4>] (device_attach) from [<c03a5aa8>] 
(bus_probe_device+0x84/0xac)
       [<c03a5aa8>] (bus_probe_device) from [<c03a5ec0>] 
(deferred_probe_work_func+0x58/0x88)
       [<c03a5ec0>] (deferred_probe_work_func) from [<c004e5bc>] 
(process_one_work+0x134/0x464)
       [<c004e5bc>] (process_one_work) from [<c004e928>] 
(worker_thread+0x3c/0x4fc)
       [<c004e928>] (worker_thread) from [<c0053450>] (kthread+0xcc/0xe4)
       [<c0053450>] (kthread) from [<c000f668>] (ret_from_fork+0x14/0x2c)
       Code: e594302c e593202c e584205c e594302c (e5932128)
       ---[ end trace 0000000000000002 ]---

      The issue happens because omap_device_late_init() do not take into
      account that some drivers are present, but their probes were not
      finished successfully and where deferred instead. This is the valid
      case, and omap_device_late_init() should not idle such devices.

      To fix this issue, the value of omap_device->_driver_status field
      should be checked not only for BUS_NOTIFY_BOUND_DRIVER (driver is
      present and has been bound to device successfully), but also checked
      for BUS_NOTIFY_BIND_DRIVER (driver about to be bound) - which means
      driver is present and there was try to bind it to device.

      [1] http://www.spinics.net/lists/arm-kernel/msg441880.html
      Cc: Tero Kristo <t-kristo@xxxxxx>
      Cc: Keerthy <j-keerthy@xxxxxx>
      Tested-by: Keerthy <j-keerthy@xxxxxx>
      Signed-off-by: Grygorii Strashko <grygorii.strashko@xxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 8d01b66b4f23a9fcf5c6787b27f0be5f8cbae98c
  Merge: 2faf962 341a670
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 13:29:48 2015 -0700

      Merge tag 'armsoc-arm64' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

      Pull ARM SoC 64-bit changes from Olof Johansson:
       "Here's our branch of ARM64 contents for this merge window.

        Most of this is DT contents for new SoCs (or those who have seen new
        device support added).  Maybe we should stop separating out the arm64
        contents here to avoid the kind of internal conflicts as we got this
        time around, where 32- and 64-bit contents conflicted.

        Anyhow, on the actual contents:

        New SoCs:

         - Broadcom North Star 2 (ns2)
         - Marvell Berlin4CT
         - Mediatek MT6795
         - Rockchip RK3368

        In addition, there are enhancements for the following platforms:

         - Mediatek MT8173: cpuidle-dt updates, misc other additions
         - ZyncMP: A bunch of devices added to the existing DTSI
         - Qualcomm MSM8916 and APQ8016 updates for USB, etc.

        + a handful of other updates for various platforms"

      * tag 'armsoc-arm64' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (47 commits)
        ARM64: dts: vexpress: Use assigned-clock-parents for sp810
        ARM64: dts: mt6795: enable basic SMP bringup for MT6795
        arm64: Enable Marvell Berlin SoC family in defconfig
        arm64: Enable Marvell Berlin SoC family in Kconfig
        arm64: dts: Add dts files for Marvell Berlin4CT SoC
        ARM64: zynqmp: Move SPI nodes to the right location
        ARM64: zynqmp: Move uart and ttcs to the right location
        ARM64: zynqmp: Enable spi flashes on ep108
        ARM64: zynqmp: Add eeprom memories on i2c bus
        ARM64: zynqmp: Enable sdhci on ep108
        ARM64: zynqmp: Enable watchdog on ep108
        ARM64: zynqmp: Add DWC3 usb support
        ARM64: zynqmp: Add SMMU support
        ARM64: zynqmp: Add CANs node for platform
        ARM64: zynqmp: Use zynqmp specific compatible string for gpio
        devicetree: xilinx: zynqmp: add sata node
        PCI: iproc: Fix BCMA dependency in Kconfig
        arm64: dts: Add Broadcom North Star 2 support
        arm64: Add Broadcom iProc family support
        PCI: iproc: Fix ARM64 dependency in Kconfig
        ...

  commit 2faf962d90ca4c5ee7ba026b7351b1f74500bcdf
  Merge: b3a5af4 ba5d183
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 13:17:43 2015 -0700

      Merge tag 'armsoc-defconfig' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

      Pull ARM SoC defconfig updates from Olof Johansson:
       "We mostly keep defconfigs updates on a separate branch due to their
        tendency to conflict between platforms and this encourages more
        careful separation of code changes and config changes.

        Most updates here are minor tweaks, enabling new drivers for various
        platforms, and so on.  Renesas also removed one defconfig
        (marzen_defconfig)"

      * tag 'armsoc-defconfig' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (44 commits)
        ARM: add TC2 PM support to multi_v7_defconfig
        ARM: tegra: Update multi_v7_defconfig
        ARM: tegra: Update default configuration
        ARM: at91/defconfig: at91_dt: remove ARM_AT91_ETHER
        ARM: at91/defconfig: at91_dt: enable DRM hlcdc support
        ARM: at91: at91_dt_defconfig: enable ISI and ov2640 support
        ARM: multi_v7_defconfig: Enable Allwinner P2WI, PWM, DMA_SUN6I, 
cryptodev
        ARM: sunxi_defconfig: Enable DMA_SUN6I, P2WI, PWM, cryptodev, EXTCON, 
FHANDLE
        ARM: shmobile: Enable fixed voltage regulator in shmobile_defconfig
        ARM: multi_v7_defconfig: Select MX6UL and MX7D
        ARM: prima2_defconfig: enable build for hwspinlock
        ARM: prima2_defconfig: enable build for RTC
        ARM: prima2_defconfig: enable build for misc input
        ARM: prima2_defconfig: enable build for SiRFSoC SDHC host
        ARM: prima2_defconfig: fix the outdated defconfig
        ARM: imx_v6_v7_defconfig: Select CONFIG_IKCONFIG_PROC
        ARM: defconfig: orion5x: add DT support
        ARM: qcom_defconfig: Enable options for KS8851 ethernet
        ARM: multi_v7_defconfig: Enable support for PWM Regulators
        ARM: multi_v7_defconfig: Enable ST's PWM driver
        ...

  commit b3a5af435ab4b860714b2f56c65fd506aa677e71
  Merge: 1021781 4c80a00
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 13:09:20 2015 -0700

      Merge tag 'armsoc-dt' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

      Pull ARM DT updates from Olof Johansson:
       "Ladies and gentlemen, we proudly announce to you the latest branch of
        ARM device tree contents for the mainline kernel.  Come and see, come
        and see!

        No less than twentythree thousand lines of additions! Just imagine the
        joy you will have of using your mainline kernel on newly supported
        hardware such as Rockchip Chromebooks, Freescale i.MX6UL boards or
        UniPhier hardware!

        For those of you feeling less adventurous, added hardware support on
        platforms such as TI DM814x and Gumstix Overo platforms might be more
        of your liking.

        We've got something for everyone here!

        Ahem.  Cough.  So, anyway...

        This is the usual large batch of DT updates.  Lots and lots of smaller
        changes, some of the larger ones to point out are:

         - Rockchip veyron (Chromebook) support, as well as several other new 
boards
         - DRM support on Atmel AT91SAM9N12EK
         - USB additions on some Allwinner platforms
         - Mediatek MT6580 support
         - Freescale i.MX6UL support
         - cleanups for Renesas shmobile platforms
         - lots of added devices on LPC18xx
         - lots of added devices and boards on UniPhier

        There's also some dependent code added here, in particular some
        branches that are primarily merged through the clock tree"

      * tag 'armsoc-dt' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (389 commits)
        ARM: tegra: Add gpio-ranges property
        ARM: tegra: Fix AHB base address on Tegra20, Tegra30 and Tegra114
        ARM: tegra: Add Tegra124 PMU support
        ARM: tegra: jetson-tk1: Add GK20A GPU DT node
        ARM: tegra: venice2: Add GK20A GPU DT node
        ARM: tegra: Add IOMMU node to GK20A
        ARM: tegra: Add CPU regulator to the Jetson TK1 device tree
        ARM: tegra: Add entries for cpufreq on Tegra124
        ARM: tegra: Enable the DFLL on the Jetson TK1
        ARM: tegra: Add the DFLL to Tegra124 device tree
        ARM: dts: zynq: Add devicetree entry for Xilinx Zynq reset controller.
        ARM: dts: UniPhier: fix PPI interrupt CPU mask of timer nodes
        ARM: dts: rockchip: correct regulator power states for suspend
        ARM: dts: rockchip: correct regulator PM properties
        ARM: dts: vexpress: Use assigned-clock-parents for sp810
        pinctrl: tegra: Only set the gpio range if needed
        arm: boot: dts: am4372: add ARM timers and SCU nodes
        ARM: dts: AM4372: Add the am4372-rtc compatible string
        ARM: shmobile: r8a7794 dtsi: Add CPG/MSTP Clock Domain
        ARM: shmobile: r8a7793 dtsi: Add CPG/MSTP Clock Domain
        ...

  commit 102178108e2246cb4b329d3fb7872cd3d7120205
  Merge: 50686e8 21815b9
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 13:00:04 2015 -0700

      Merge tag 'armsoc-drivers' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

      Pull ARM SoC driver updates from Olof Johansson:
       "Some releases this branch is nearly empty, others we have more stuff.
        It tends to gather drivers that need SoC modification or dependencies
        such that they have to (also) go in through our tree.

        For this release, we have merged in part of the reset controller tree
        (with handshake that the parts we have merged in will remain stable),
        as well as dependencies on a few clock branches.

        In general, new items here are:

         - Qualcomm driver for SMM/SMD, which is how they communicate with the
           coprocessors on (some) of their platforms

         - memory controller work for ARM's PL172 memory controller

         - reset drivers for various platforms

         - PMU power domain support for Marvell platforms

         - Tegra support for T132/T210 SoCs: PMC, fuse, memory controller
           per-SoC support"

      * tag 'armsoc-drivers' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (49 commits)
        ARM: tegra: cpuidle: implement cpuidle_state.enter_freeze()
        ARM: tegra: Disable cpuidle if PSCI is available
        soc/tegra: pmc: Use existing pclk reference
        soc/tegra: pmc: Remove unnecessary return statement
        soc: tegra: Remove redundant $(CONFIG_ARCH_TEGRA) in Makefile
        memory: tegra: Add Tegra210 support
        memory: tegra: Add support for a variable-size client ID bitfield
        clk: shmobile: rz: Add CPG/MSTP Clock Domain support
        clk: shmobile: rcar-gen2: Add CPG/MSTP Clock Domain support
        clk: shmobile: r8a7779: Add CPG/MSTP Clock Domain support
        clk: shmobile: r8a7778: Add CPG/MSTP Clock Domain support
        clk: shmobile: Add CPG/MSTP Clock Domain support
        ARM: dove: create a proper PMU driver for power domains, PMU IRQs and 
resets
        reset: reset-zynq: Adding support for Xilinx Zynq reset controller.
        docs: dts: Added documentation for Xilinx Zynq Reset Controller 
bindings.
        MIPS: ath79: Add the reset controller to the AR9132 dtsi
        reset: Add a driver for the reset controller on the AR71XX/AR9XXX
        devicetree: Add bindings for the ATH79 reset controller
        reset: socfpga: Update reset-socfpga to read the altr,modrst-offset 
property
        doc: dt: add documentation for lpc1850-rgu reset driver
        ...

  commit 972398fa0a5f47c6ee0bde4d6d24b29f90ec888d
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 12:03:56 2015 -0700

      NFSv4.1/flexfiles: Fix freeing of mirrors

      Mirrors are now shared objects, so we should not be freeing them directly
      inside ff_layout_free_lseg(). We should already be doing the right thing
      in _ff_layout_free_lseg(), so just let it handle things.

      Also ensure that ff_layout_free_mirror() frees the RPC credential if it
      is set.

      Fixes: 28a0d72c6867 ("Add refcounting to struct nfs4_ff_layout_mirror")
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 50686e8a3aed2f5d295e9d2e79ff43df461c7b76
  Merge: c5fc249 1ec6f70
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 12:18:40 2015 -0700

      Merge tag 'armsoc-soc' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

      Pull ARM SoC platform updates from Olof Johansson:
       "New or improved SoC support:

         - add support for Atmel's SAMA5D2 SoC
         - add support for Freescale i.MX6UL
         - improved support for TI's DM814x platform
         - misc fixes and improvements for RockChip platforms
         - Marvell MVEBU suspend/resume support

        A few driver changes that ideally would belong in the drivers branch
        are also here (acked by appropriate maintainers):

         - power key input driver for Freescale platforms (svns)
         - RTC driver updates for Freescale platforms (svns/mxc)
         - clk fixes for TI DM814/816X

        + a bunch of other changes for various platforms"

      * tag 'armsoc-soc' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (83 commits)
        ARM: rockchip: pm: Fix PTR_ERR() argument
        ARM: imx: mach-imx6ul: Fix allmodconfig build
        clk: ti: fix for definition movement
        ARM: uniphier: drop v7_invalidate_l1 call at secondary entry
        memory: kill off set_irq_flags usage
        rtc: snvs: select option REGMAP_MMIO
        ARM: brcmstb: select ARCH_DMA_ADDR_T_64BIT for LPAE
        ARM: BCM: Enable ARM erratum 798181 for BRCMSTB
        ARM: OMAP2+: Fix power domain operations regression caused by 81xx
        ARM: rockchip: enable PMU_GPIOINT_WAKEUP_EN when entering shallow 
suspend
        ARM: rockchip: set correct stabilization thresholds in suspend
        ARM: rockchip: rename osc_switch_to_32k variable
        ARM: imx6ul: add fec MAC refrence clock and phy fixup init
        ARM: imx6ul: add fec bits to GPR syscon definition
        rtc: mxc: add support of device tree
        dt-binding: document the binding for mxc rtc
        rtc: mxc: use a second rtc clock
        ARM: davinci: cp_intc: use IRQCHIP_SKIP_SET_WAKE instead of 
irq_set_wake callback
        soc: mediatek: Fix SCPSYS compilation
        ARM: at91/soc: add basic support for new sama5d2 SoC
        ...

  commit c5fc249862af862df027030188cc083e072ecd19
  Merge: 00e3fcc 97a2482
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 12:10:20 2015 -0700

      Merge tag 'armsoc-cleanup' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

      Pull ARM SoC cleanups from Olof Johansson:
       "A large cleanup branch this release, with a healthy 10k negative line
        delta.

        Most of this is removal of legacy (non-DT) support of shmobile
        platforms.  There is also removal of two non-DT platforms on OMAP, and
        the plat-samsung directory is cleaned out by moving most of the
        previously shared-location-but-not-actually-shared files from there to
        the appropriate mach directories instead.

        There are other sets of changes in here as well:

         - Rob Herring removed use of set_irq_flags under all platforms and
           moved to genirq alternatives

         - a series of timer API conversions to set-state interface

         - ep93xx, nomadik and ux500 cleanups from Linus Walleij

         - __init annotation fixes from Nicolas Pitre

         + a bunch of other changes that all add up to a nice set of cleanups"

      * tag 'armsoc-cleanup' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (108 commits)
        ARM/fb: ep93xx: switch framebuffer to use modedb only
        ARM: gemini: Setup timer3 as free running timer
        ARM: gemini: Use timer1 for clockevent
        ARM: gemini: Add missing register definitions for gemini timer
        ARM: ep93xx/timer: Migrate to new 'set-state' interface
        ARM: nomadik: push accelerometer down to boards
        ARM: nomadik: move l2x0 setup to device tree
        ARM: nomadik: selectively enable UART0 on boards
        ARM: nomadik: move hog code to use DT hogs
        ARM: shmobile: Fix mismerges
        ARM: ux500: simplify secondary CPU boot
        ARM: SAMSUNG: remove keypad-core header in plat-samsung
        ARM: SAMSUNG: local watchdog-reset header in mach-s3c64xx
        ARM: SAMSUNG: local onenand-core header in mach-s3c64xx
        ARM: SAMSUNG: local irq-uart header in mach-s3c64xx
        ARM: SAMSUNG: local backlight header in mach-s3c64xx
        ARM: SAMSUNG: local ata-core header in mach-s3c64xx
        ARM: SAMSUNG: local regs-usb-hsotg-phy header in mach-s3c64xx
        ARM: SAMSUNG: local spi-core header in mach-s3c24xx
        ARM: SAMSUNG: local nand-core header in mach-s3c24xx
        ...

  commit 00e3fcc221f6fe6a890bf3e0e71c6b9944e58233
  Merge: 28dce7c 330349f
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 12:01:40 2015 -0700

      Merge tag 'armsoc-fixes-nc' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

      Pull ARM SoC non-urgent fixes from Olof Johansson:
       "We normally collect non-urgent fixes during the release cycle and
        queue them for the merge window.

        This time around the list is short (in part because some have gone in
        other branches).

         - Maintainers addition for bcm2835
         - IRQ number fix for orion5x (been present since 3.18)
         - DT fix for display on exynos3250
         - Exynos fix to use of IOMEM_ERR_PTR properly"

      * tag 'armsoc-fixes-nc' of 
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        ARM: orion5x: fix legacy orion5x IRQ numbers
        MAINTAINERS: Explicitly add linux-arm-kernel for bcm2835
        MAINTAINERS: Add myself as a bcm2835 co-maintainer.
        ARM: EXYNOS: Use IOMEM_ERR_PTR when function returns iomem
        ARM: dts: fix clock-frequency of display timing0 for exynos3250-rinato

  commit 28dce7c7703fd6ec922fa63b1187cf9f43d1d1c4
  Merge: 361f7d1 3d59265
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 11:55:57 2015 -0700

      Merge tag 'arc-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc

      Pull ARC architecture updates from Vineet Gupta:
       "ARC updates for 4.3:

         - perf support for ARCv2 based cores (sampling interrupt, SMP)
         - leftovers for ARCv2 support
         - futex fixes"

      * tag 'arc-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
        ARCv2: entry: Fix reserved handler
        ARCv2: perf: Finally introduce HS perf unit
        ARCv2: perf: SMP support
        ARCv2: perf: implement exclusion of event counting in user or kernel 
mode
        ARCv2: perf: Support sampling events using overflow interrupts
        ARCv2: perf: implement "event_set_period"
        ARC: perf: cap the number of counters to hardware max of 32
        ARC: Eliminate some ARCv2 specific code for ARCompact build
        ARC: add/fix some comments in code - no functional change
        ARC: change some branchs to jumps to resolve linkage errors
        ARC: ensure futex ops are atomic in !LLSC config
        ARC: Enable HAVE_FUTEX_CMPXCHG
        ARC: make futex_atomic_cmpxchg_inatomic() return bimodal
        ARC: futex cosmetics
        ARC: add barriers to futex code
        ARCv2: IOC: Allow boot time disable
        ARCv2: SLC: Allow boot time disable
        ARCv2: Support IO Coherency and permutations involving L1 and L2 caches
        ARC: Enable optimistic spinning for LLSC config
        MAINTAINERS: add git tree for the arc architecture

  commit f984a7ce58ea9a12eca7f960bdf68124c8589b60
  Author: J. Bruce Fields <bfields@xxxxxxxxxx>
  Date:   Tue Sep 1 13:40:53 2015 -0400

      nfsd: return CLID_INUSE for unexpected SETCLIENTID_CONFIRM case

      Somebody with a Solaris client was hitting this case.  We haven't
      figured out why yet, and don't have a reproducer.  Meanwhile Frank
      noticed that RFC 7530 actually recommends CLID_INUSE for this case.
      Unlikely to help the original reporter, but may as well fix it.

      Reported-by: Frank Filz <ffilzlnx@xxxxxxxxxxxxxx>
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit 361f7d175734a8e21bcd0585eca9be195c12c5c5
  Merge: 25525be e971aa2
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 10:33:31 2015 -0700

      Merge branch 'x86-platform-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull x86 core platform updates from Ingo Molnar:
       "The main changes are:

         - Intel Atom platform updates.  (Andy Shevchenko)

         - modularity fixlets.  (Paul Gortmaker)

         - x86 platform clockevents driver updates for lguest, uv and Xen.
           (Viresh Kumar)

         - Microsoft Hyper-V TSC fixlet.  (Vitaly Kuznetsov)"

      * 'x86-platform-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/platform: Make atom/pmc_atom.c explicitly non-modular
        x86/hyperv: Mark the Hyper-V TSC as unstable
        x86/xen/time: Migrate to new set-state interface
        x86/uv/time: Migrate to new set-state interface
        x86/lguest/timer: Migrate to new set-state interface
        x86/pci/intel_mid_pci: Use proper constants for irq polarity
        x86/pci/intel_mid_pci: Make intel_mid_pci_ops static
        x86/pci/intel_mid_pci: Propagate actual return code
        x86/pci/intel_mid_pci: Work around for IRQ0 assignment
        x86/platform/iosf_mbi: Add Intel Tangier PCI id
        x86/platform/iosf_mbi: Source cleanup
        x86/platform/iosf_mbi: Remove NULL pointer checks for pci_dev_put()
        x86/platform/iosf_mbi: Check return value of debugfs_create properly
        x86/platform/iosf_mbi: Move to dedicated folder
        x86/platform/intel/pmc_atom: Move the PMC-Atom code to 
arch/x86/platform/atom
        x86/platform/intel/pmc_atom: Add Cherrytrail PMC interface
        x86/platform/intel/pmc_atom: Supply register mappings via PMC object
        x86/platform/intel/pmc_atom: Print index of device in loop
        x86/platform/intel/pmc_atom: Export accessors to PMC registers

  commit 25525bea46e7d5bc1f82cbc12de2f27b9c346a92
  Merge: 2962156 2baa891
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 10:07:40 2015 -0700

      Merge branch 'x86-mm-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull x86 mm updates from Ingo Molnar:
       "The dominant change in this cycle was the continued work to isolate
        kernel drivers from MTRR legacies: this tree gets rid of all kernel
        internal driver interfaces to MTRRs (mostly by rewriting it to proper
        PAT interfaces), the only access left is the /proc/mtrr ABI.

        This work was done by Luis R Rodriguez.

        There's also some related PCI interface additions for which I've
        Cc:-ed Bjorn"

      * 'x86-mm-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (21 commits)
        x86/mm/mtrr: Remove kernel internal MTRR interfaces: unexport 
mtrr_add() and mtrr_del()
        s390/io: Add pci_iomap_wc() and pci_iomap_wc_range()
        drivers/dma/iop-adma: Use dma_alloc_writecombine() kernel-style
        drivers/video/fbdev/vt8623fb: Use arch_phys_wc_add() and pci_iomap_wc()
        drivers/video/fbdev/s3fb: Use arch_phys_wc_add() and pci_iomap_wc()
        drivers/video/fbdev/arkfb.c: Use arch_phys_wc_add() and pci_iomap_wc()
        PCI: Add pci_iomap_wc() variants
        drivers/video/fbdev/gxt4500: Use pci_ioremap_wc_bar() to map framebuffer
        drivers/video/fbdev/kyrofb: Use arch_phys_wc_add() and 
pci_ioremap_wc_bar()
        drivers/video/fbdev/i740fb: Use arch_phys_wc_add() and 
pci_ioremap_wc_bar()
        PCI: Add pci_ioremap_wc_bar()
        x86/mm: Make kernel/check.c explicitly non-modular
        x86/mm/pat: Make mm/pageattr[-test].c explicitly non-modular
        x86/mm/pat: Add comments to cachemode translation tables
        arch/*/io.h: Add ioremap_uc() to all architectures
        drivers/video/fbdev/atyfb: Use arch_phys_wc_add() and ioremap_wc()
        drivers/video/fbdev/atyfb: Replace MTRR UC hole with strong UC
        drivers/video/fbdev/atyfb: Clarify ioremap() base and length used
        drivers/video/fbdev/atyfb: Carve out framebuffer length fudging into a 
helper
        x86/mm, asm-generic: Add IOMMU ioremap_uc() variant default
        ...

  commit 2962156d5cc0e7f959353d3f5275da7cc3765f06
  Merge: 6b2282a 9d87cd6
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 10:05:44 2015 -0700

      Merge branch 'x86-irq-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull x86 irq fixlet from Ingo Molnar:
       "A single change that hides the 'HYP:' line in /proc/interrupts when
        it's unused"

      * 'x86-irq-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/irq: Hide 'HYP:' line in /proc/interrupts when not on Xen/Hyper-V

  commit 2ca495ac27d245513c11fed70591b1838250e240
  Author: Keith Busch <keith.busch@xxxxxxxxx>
  Date:   Tue Sep 1 10:46:44 2015 -0600

      blk: Fix bio_io_vec index when checking bvec gaps

      Corrects a coding error from earlier patch.

      Reported by: Sagi Grimberg <sagig@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Keith Busch <keith.busch@xxxxxxxxx>
      Fixes: 03100aada96f ("block: Replace SG_GAPS with new queue limits mask")
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 4a6ac3044f1504fe4521efa7334095c9c9ceecfd
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Tue Sep 1 10:08:53 2015 +0100

      irqchip/GIC: Fix EOImode setting for non-DT/ACPI systems

      Non-DT/ACPI systems call directly into the GIC driver at init time.
      Turns out 0b996fd35957 ("irqchip/GIC: Convert to EOImode == 1")
      breaks old non firmware-driven platforms, as the driver only
      works out the capability of the platform on the DT/ACPI paths.

      Fix this thinko by forcing EOImode==0 on non-DT platforms,
      which are not capable of supporting a hypervisor anyway.

      Reported-and-tested-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441098533-31523-1-git-send-email-marc.zyngier@xxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 7eba7d90d48217a97afc171a311b386bde965f39
  Author: Naresh Kamboju <naresh.kamboju@xxxxxxxxxx>
  Date:   Mon Aug 31 17:11:56 2015 +0530

      selftests/zram: Makefile fix

      Do not override run_tests, The default rule will just run TEST_PROGS

      Signed-off-by: Naresh Kamboju <naresh.kamboju@xxxxxxxxxx>
      Acked-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Signed-off-by: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>

  commit 2dfb28e3410d775a687d429f5cadf88e795e7eb6
  Author: Naresh Kamboju <naresh.kamboju@xxxxxxxxxx>
  Date:   Mon Aug 31 17:11:55 2015 +0530

      selftests/zram: must be run as root

      Adding new functionality check_prereqs() to check test must be run as root

      Signed-off-by: Naresh Kamboju <naresh.kamboju@xxxxxxxxxx>
      Signed-off-by: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>

  commit 6b2282aa372665c14ea1100b63ac0703051407e9
  Merge: 0c0fee0 b1c599b
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 09:41:03 2015 -0700

      Merge branch 'x86-cpu-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull x86 cpu updates from Ingo Molnar:
       "Two changes: a suspend/resume quirk and a new CPUID bit definition"

      * 'x86-cpu-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/cpufeature: Add feature bit for Intel's Silicon Debug CPUID bit
        x86/cpu: Restore MSR_IA32_ENERGY_PERF_BIAS after resume

  commit 0c0fee018d14b585461b146bdeda8bab9a61c211
  Merge: a0c0d985 4daa832
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 09:33:26 2015 -0700

      Merge branch 'x86-cleanups-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull x86 init code fixlet from Ingo Molnar:
       "A single change: fix obsolete init code annotations"

      * 'x86-cleanups-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: Drop bogus __ref / __refdata annotations

  commit a0c0d985ded583e52399b5158791bedc2815eefa
  Merge: 11e612d 16eefbd
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 09:32:37 2015 -0700

      Merge branch 'x86-build-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull x86 build fixlet from Ingo Molnar:
       "A single change propagating CONFIG_JUMP_LABEL into the x86 defconfigs"

      * 'x86-build-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/kconfig: Enable CONFIG_JUMP_LABEL in the defconfigs

  commit af4aeadd8c04303c0aa2d112145c3627e2ebd026
  Author: Stephane Eranian <eranian@xxxxxxxxxx>
  Date:   Tue Sep 1 11:30:14 2015 +0200

      perf tools: Fix link time error with sample_reg_masks on non x86

      This patch makes perf compile on non x86 platforms by defining a weak
      symbol for sample_reg_masks[] in util/perf_regs.c.

      The patch also moves the REG() and REG_END() macros into the
      util/per_regs.h header file. The macros are renamed to
      SMPL_REG/SMPL_REG_END to avoid clashes with other header files.

      Signed-off-by: Stephane Eranian <eranian@xxxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441099814-26783-1-git-send-email-eranian@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 11e612ddb4bc667d0b830bfaab3acdf8b86da845
  Merge: 5778077 656bba3
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 09:04:31 2015 -0700

      Merge branch 'x86-boot-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull x86 boot updates from Ingo Molnar:
       "The main x86 bootup related changes in this cycle were:

         - more boot time optimizations.  (Len Brown)

         - implement hex output to allow the debugging of early bootup
           parameters.  (Kees Cook)

         - remove obsolete MCA leftovers.  (Paolo Pisati)"

      * 'x86-boot-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/smpboot: Remove APIC.wait_for_init_deassert and atomic 
init_deasserted
        x86/smpboot: Remove SIPI delays from cpu_up()
        x86/smpboot: Remove udelay(100) when polling cpu_callin_map
        x86/smpboot: Remove udelay(100) when polling cpu_initialized_map
        x86/boot: Obsolete the MCA sys_desc_table
        x86/boot: Add hex output for debugging

  commit 04aa90b529ee45c5ee88997bc214202e07b26979
  Author: Wang Nan <wangnan0@xxxxxxxxxx>
  Date:   Tue Sep 1 05:56:45 2015 +0000

      perf build: Fix Intel PT instruction decoder dependency problem

      I hit following building error randomly:

          ...
        /bin/sh: /path/to/kernel/buildperf/util/intel-pt-decoder/inat-tables.c: 
No such file or directory
          ...
          LINK     /path/to/kernel/buildperf/plugin_mac80211.so
          LINK     /path/to/kernel/buildperf/plugin_kmem.so
          LINK     /path/to/kernel/buildperf/plugin_xen.so
          LINK     /path/to/kernel/buildperf/plugin_hrtimer.so
        In file included from 
util/intel-pt-decoder/intel-pt-insn-decoder.c:25:0:
        util/intel-pt-decoder/inat.c:24:25: fatal error: inat-tables.c: No such 
file or directory
         #include "inat-tables.c"
                                 ^
        compilation terminated.
        make[4]: *** 
[/path/to/kernel/buildperf/util/intel-pt-decoder/intel-pt-insn-decoder.o] Error 
1
        make[4]: *** Waiting for unfinished jobs....
          LINK     /path/to/kernel/buildperf/plugin_function.so

      This is caused by tools/perf/util/intel-pt-decoder/Build that, it tries
      to generate $(OUTPUT)util/intel-pt-decoder/inat-tables.c atomatically
      but forget to ensure the existance of $(OUTPUT)util/intel-pt-decoder
      directory.

      This patch fixes it by adding $(call rule_mkdir) like other similar rules.

      Signed-off-by: Wang Nan <wangnan0@xxxxxxxxxx>
      Acked-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Zefan Li <lizefan@xxxxxxxxxx>
      Cc: pi3orama@xxxxxxx
      Link: 
http://lkml.kernel.org/r/1441087005-107540-1-git-send-email-wangnan0@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 5778077d03cb25aac9b6a428e18970642fc019e3
  Merge: 65a9959 7e01ebf
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Sep 1 08:40:25 2015 -0700

      Merge branch 'x86-asm-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull x86 asm changes from Ingo Molnar:
       "The biggest changes in this cycle were:

         - Revamp, simplify (and in some cases fix) Time Stamp Counter (TSC)
           primitives.  (Andy Lutomirski)

         - Add new, comprehensible entry and exit handlers written in C.
           (Andy Lutomirski)

         - vm86 mode cleanups and fixes.  (Brian Gerst)

         - 32-bit compat code cleanups.  (Brian Gerst)

        The amount of simplification in low level assembly code is already
        palpable:

           arch/x86/entry/entry_32.S                          | 130 +----
           arch/x86/entry/entry_64.S                          | 197 ++-----

        but more simplifications are planned.

        There's also the usual laudry mix of low level changes - see the
        changelog for details"

      * 'x86-asm-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (83 commits)
        x86/asm: Drop repeated macro of X86_EFLAGS_AC definition
        x86/asm/msr: Make wrmsrl() a function
        x86/asm/delay: Introduce an MWAITX-based delay with a configurable timer
        x86/asm: Add MONITORX/MWAITX instruction support
        x86/traps: Weaken context tracking entry assertions
        x86/asm/tsc: Add rdtscll() merge helper
        selftests/x86: Add syscall_nt selftest
        selftests/x86: Disable sigreturn_64
        x86/vdso: Emit a GNU hash
        x86/entry: Remove do_notify_resume(), syscall_trace_leave(), and their 
TIF masks
        x86/entry/32: Migrate to C exit path
        x86/entry/32: Remove 32-bit syscall audit optimizations
        x86/vm86: Rename vm86->v86flags and v86mask
        x86/vm86: Rename vm86->vm86_info to user_vm86
        x86/vm86: Clean up vm86.h includes
        x86/vm86: Move the vm86 IRQ definitions to vm86.h
        x86/vm86: Use the normal pt_regs area for vm86
        x86/vm86: Eliminate 'struct kernel_vm86_struct'
        x86/vm86: Move fields from 'struct kernel_vm86_struct' to 'struct vm86'
        x86/vm86: Move vm86 fields out of 'thread_struct'
        ...

  commit 3b27d13940c3710a1128527c43719cb0bb05d73b
  Author: Wang Nan <wangnan0@xxxxxxxxxx>
  Date:   Tue Sep 1 03:29:44 2015 +0000

      perf dwarf: Fix potential array out of bounds access

      There is a problem in the dwarf-regs.c files for sh, sparc and x86 where
      it is possible to make an out-of-bounds array access when searching for
      register names.

      This patch fixes it by replacing '<=' to '<', so when register (number
      == XXX_MAX_REGS), get_arch_regstr() will return NULL.

      Signed-off-by: Wang Nan <wangnan0@xxxxxxxxxx>
      Reviewed-by: Matt Fleming <matt@xxxxxxxxxxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
      Cc: David S. Miller <davem@xxxxxxxxxxxxx>
      Cc: Zefan Li <lizefan@xxxxxxxxxx>
      Cc: pi3orama@xxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1441078184-105038-1-git-send-email-wangnan0@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit e625ccec1fa6c24620f38fd72d5b2fd62230ad2b
  Merge: 56963d9 404c2db 5021282
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Tue Sep 1 15:54:30 2015 +0200

      Merge branches 'pm-tools' and 'powercap'

      * pm-tools:
        tools: cpupower: Fix error when running cpupower monitor
        tools/power turbostat: fix typo on DRAM column in Joules-mode
        cpupower: Do not change the frequency of offline cpu
        tools/power turbostat: fix parameter passing for forked command
        tools/power turbostat: dump CONFIG_TDP
        tools/power turbostat: cpu0 is no longer hard-coded, so  update output
        tools/power turbostat: update turbostat(8)

      * powercap:
        powercap / RAPL: disable the 2nd power limit properly
        powercap / RAPL: Add support for Broadwell-H
        powercap / RAPL: Add support for Skylake H/S

  commit 56963d99b72ac52bb3185be7fe9832c1715c655a
  Merge: 5cf896b 2fd77ff 8bb6944 3fc147e
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Tue Sep 1 15:54:20 2015 +0200

      Merge branches 'pm-sleep', 'pm-domains' and 'pm-avs'

      * pm-sleep:
        PM / suspend: make sync() on suspend-to-RAM build-time optional
        PM / sleep: Allow devices without runtime PM to do direct-complete
        PM / autosleep: Use workqueue for user space wakeup sources garbage 
collector

      * pm-domains:
        PM / Domains: Fix typo in description of genpd_dev_pm_detach()
        PM / Domains: Remove unusable governor dummies
        PM / Domains: Make pm_genpd_init() available to modules
        PM / domains: Align column headers and data in pm_genpd_summary output
        PM / Domains: Return -EPROBE_DEFER if we fail to init or turn-on domain
        PM / Domains: Correct unit address in power-controller example
        PM / Domains: Remove intermediate states from the power off sequence

      * pm-avs:
        PM / AVS: rockchip-io: add io selectors and supplies for rk3368
        PM / AVS: rockchip-io: depend on CONFIG_POWER_AVS

  commit 5cf896b3c7842036ba37cc7057d74d5a2af159a7
  Merge: ac2a29c 4c1ed5a 00dabd5 f4745a9
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Tue Sep 1 15:53:37 2015 +0200

      Merge branches 'pm-cpuidle', 'pm-devfreq' and 'pm-clk'

      * pm-cpuidle:
        cpuidle/coupled: Remove redundant 'dev' argument of 
cpuidle_state_is_coupled()
        cpuidle/coupled: Remove cpuidle_device::safe_state_index
        intel_idle: Skylake Client Support
        intel_idle: allow idle states to be freeze-mode specific

      * pm-devfreq:
        PM / devfreq: exynos-ppmu: Update documentation to support PPMUv2
        PM / devfreq: exynos-ppmu: Add the support of PPMUv2 for Exynos5433
        PM / devfreq: event: Remove incorrect property in exynos-ppmu DT binding

      * pm-clk:
        PM / clk: don't return int on __pm_clk_enable()

  commit ac2a29c8a4a641574febccd10169b26138a5d656
  Merge: 4ffe18c 50a3cb0
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Tue Sep 1 15:52:41 2015 +0200

      Merge branch 'pm-opp'

      * pm-opp:
        PM / OPP: Drop unlikely before IS_ERR(_OR_NULL)
        PM / OPP: Fix static checker warning (broken 64bit big endian systems)
        PM / OPP: Free resources and properly return error on failure
        cpufreq-dt: make scaling_boost_freqs sysfs attr available when boost is 
enabled
        cpufreq: dt: Add support for turbo/boost mode
        cpufreq: dt: Add support for operating-points-v2 bindings
        cpufreq: Allow drivers to enable boost support after registering driver
        cpufreq: Update boost flag while initializing freq table from OPPs
        PM / OPP: add dev_pm_opp_is_turbo() helper
        PM / OPP: Add helpers for initializing CPU OPPs
        PM / OPP: Add support for opp-suspend
        PM / OPP: Add OPP sharing information to OPP library
        PM / OPP: Add clock-latency-ns support
        PM / OPP: Add support to parse "operating-points-v2" bindings
        PM / OPP: Break _opp_add_dynamic() into smaller functions
        PM / OPP: Allocate dev_opp from _add_device_opp()
        PM / OPP: Create _remove_device_opp() for freeing dev_opp
        PM / OPP: Relocate few routines
        PM / OPP: Create a directory for opp bindings
        PM / OPP: Update bindings to make opp-hz a 64 bit value

  commit 4ffe18c2556f2848c4e57457915b08a63dc00fd5
  Merge: 4980125 72e624d
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Tue Sep 1 15:52:35 2015 +0200

      Merge branch 'pm-cpufreq'

      * pm-cpufreq: (53 commits)
        cpufreq: speedstep-lib: Use monotonic clock
        cpufreq: powernv: Increase the verbosity of OCC console messages
        cpufreq: sfi: use kmemdup rather than duplicating its implementation
        cpufreq: drop !cpufreq_driver check from cpufreq_parse_governor()
        cpufreq: rename cpufreq_real_policy as cpufreq_user_policy
        cpufreq: remove redundant 'policy' field from user_policy
        cpufreq: remove redundant 'governor' field from user_policy
        cpufreq: update user_policy.* on success
        cpufreq: use memcpy() to copy policy
        cpufreq: remove redundant CPUFREQ_INCOMPATIBLE notifier event
        cpufreq: mediatek: Add MT8173 cpufreq driver
        dt-bindings: mediatek: Add MT8173 CPU DVFS clock bindings
        intel_pstate: append more Oracle OEM table id to vendor bypass list
        intel_pstate: Add SKY-S support
        intel_pstate: Fix possible overflow complained by Coverity
        cpufreq: Correct a freq check in cpufreq_set_policy()
        cpufreq: Lock CPU online/offline in cpufreq_register_driver()
        cpufreq: Replace recover_policy with new_policy in cpufreq_online()
        cpufreq: Separate CPU device registration from CPU online
        cpufreq: powernv: Restore cpu frequency to policy->cur on unthrottling
        ...

  commit 72e624de6e6f0d5a638fbc23842aa76ae048e9e7
  Author: Abhilash Jindal <klock.android@xxxxxxxxx>
  Date:   Tue Aug 11 12:01:22 2015 -0400

      cpufreq: speedstep-lib: Use monotonic clock

      Wall time obtained from do_gettimeofday is susceptible to sudden jumps 
due to
      user setting the time or due to NTP.

      Monotonic time is constantly increasing time better suited for comparing 
two
      timestamps.

      Signed-off-by: Abhilash Jindal <klock.android@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 309d0631cc329ca1051c631c89e0acc9b752cb4d
  Author: Shilpasri G Bhat <shilpa.bhat@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 14:41:44 2015 +0530

      cpufreq: powernv: Increase the verbosity of OCC console messages

      Modify the OCC reset/load/active event message to make it clearer for
      the user to understand the event and effect of the event.

      Suggested-by: Stewart Smith <stewart@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Shilpasri G Bhat <shilpa.bhat@xxxxxxxxxxxxxxxxxx>
      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit a482e5562e48d89ea50f41f9fc6ed3a9768de2ff
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Fri Aug 7 09:59:17 2015 +0200

      cpufreq: sfi: use kmemdup rather than duplicating its implementation

      The patch was generated using fixed coccinelle semantic patch
      scripts/coccinelle/api/memdup.cocci [1].

      [1]: http://permalink.gmane.org/gmane.linux.kernel/2014320

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 36dfef23cd26a6d3b71dd86509e34d311f1cd906
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Aug 3 08:36:20 2015 +0530

      cpufreq: drop !cpufreq_driver check from cpufreq_parse_governor()

      Driver is guaranteed to be present on a call to cpufreq_parse_governor()
      and there is no need to check for !cpufreq_driver. Drop it.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit c7a7b418dd1991079dd7ef03fec7d1863ef96154
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Aug 3 08:36:19 2015 +0530

      cpufreq: rename cpufreq_real_policy as cpufreq_user_policy

      Its all about caching min/max freq requested by userspace, and
      the name 'cpufreq_real_policy' doesn't fit that well. Rename it to
      cpufreq_user_policy.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 88dc4384958759510db248bf9158434ac783d407
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Aug 3 08:36:18 2015 +0530

      cpufreq: remove redundant 'policy' field from user_policy

      Its always same as policy->policy, and there is no need to keep another
      copy of it. Remove it.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit e27f8bd248756310a6df8b67f96d41d5a693642c
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Aug 3 08:36:17 2015 +0530

      cpufreq: remove redundant 'governor' field from user_policy

      Its always same as policy->governor, and there is no need to keep
      another copy of it. Remove it.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 14ca0bdfdd6b422027b9b733abb0bf151811eaa7
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Aug 3 08:36:16 2015 +0530

      cpufreq: update user_policy.* on success

      'user_policy' caches properties of a policy that are set by userspace.
      And these must be updated only if cpufreq core was successful in
      updating them based on request from user space.

      In store_scaling_governor(), we are updating user_policy.policy and
      user_policy.governor even if cpufreq_set_policy() failed. That's
      incorrect.

      Fix this by updating user_policy.* only if we were successful in
      updating the properties.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 8fa5b631f32238a16ae3db0db5b354f7b9eb20cb
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Aug 3 08:36:15 2015 +0530

      cpufreq: use memcpy() to copy policy

      cpufreq_get_policy() is useful if the pointer to policy isn't available
      in advance. But if it is available, then there is no need to call
      cpufreq_get_policy(). Directly use memcpy() to copy the policy.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 6bfb7c7434f75d29241413dc7e784295ba56de98
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Aug 3 08:36:14 2015 +0530

      cpufreq: remove redundant CPUFREQ_INCOMPATIBLE notifier event

      What's being done from CPUFREQ_INCOMPATIBLE, can also be done with
      CPUFREQ_ADJUST. There is nothing special with CPUFREQ_INCOMPATIBLE
      notifier.

      Kill CPUFREQ_INCOMPATIBLE and fix its usage sites.

      This also updates the numbering of notifier events to remove holes.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 1453863fb02a18900c9079fa2e4f02710bf46507
  Author: Pi-Cheng Chen <pi-cheng.chen@xxxxxxxxxx>
  Date:   Wed Aug 19 10:05:06 2015 +0800

      cpufreq: mediatek: Add MT8173 cpufreq driver

      Mediatek MT8173 is an ARMv8 based quad-core (2*Cortex-A53 and
      2*Cortex-A72) SoC with duall clusters. For each cluster, two voltage
      inputs, Vproc and Vsram are supplied by two regulators. For the big
      cluster, two regulators come from different PMICs. In this case, when
      scaling voltage inputs of the cluster, the voltages of two regulator
      inputs need to be controlled by software explicitly under the SoC
      specific limitation:

        100mV < Vsram - Vproc < 200mV

      which is called 'voltage tracking' mechanism. And when scaling the
      frequency of cluster clock input, the input MUX need to be parented to
      another "intermediate" stable PLL first and reparented to the original
      PLL once the original PLL is stable at the target frequency. This patch
      implements those mechanisms to enable CPU DVFS support for Mediatek
      MT8173 SoC.

      Signed-off-by: Pi-Cheng Chen <pi-cheng.chen@xxxxxxxxxx>
      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit c9c96ae2c57d91ea2b73ef447fdd44c760a96d97
  Author: Pi-Cheng Chen <pi-cheng.chen@xxxxxxxxxx>
  Date:   Mon Aug 17 17:24:23 2015 +0800

      dt-bindings: mediatek: Add MT8173 CPU DVFS clock bindings

      This patch adds the clock and regulator consumer properties part of
      document for CPU DVFS clocks on Mediatek MT8173 SoC.

      Signed-off-by: Pi-Cheng Chen <pi-cheng.chen@xxxxxxxxxx>
      Acked-by: Michael Turquette <mturquette@xxxxxxxxxxxx>
      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit f212bd95a9f62b7929c59b16e1d3bbde2fb4081d
  Merge: 8c4de9b 0439de7
  Author: Jiri Kosina <jkosina@xxxxxxx>
  Date:   Tue Sep 1 15:38:33 2015 +0200

      Merge branch 'for-4.3/microsoft' into for-linus

      Conflicts:
        drivers/hid/usbhid/hid-quirks.c

  commit 8c4de9bc2041229fb778e0c47e32585b6f6b1d09
  Merge: 067e260 9a1d78a 29e2d6d d1c4803 3cb5ff0 c873d9a 070f63b 4b8a826 
9a98b33 21589eb 824deff 5397df1
  Author: Jiri Kosina <jkosina@xxxxxxx>
  Date:   Tue Sep 1 15:37:30 2015 +0200

      Merge branches 'for-4.3/chicony', 'for-4.3/cp2112', 'for-4.3/i2c-hid', 
'for-4.3/lenovo', 'for-4.3/logitech', 'for-4.3/multitouch', 'for-4.3/picolcd', 
'for-4.3/rmi', 'for-4.3/sensor-hub', 'for-4.3/sony' and 'for-4.3/wacom' into 
for-linus

  commit 067e2601d3c076abbf45db91261f9065eaa879b2
  Merge: 3e097d1 931830a
  Author: Jiri Kosina <jkosina@xxxxxxx>
  Date:   Tue Sep 1 15:35:24 2015 +0200

      Merge branch 'for-4.3/gembird' into for-linus

  commit 3e097d1271ecdff2f251a54ddfc5eaa1f9821e96
  Merge: 0be0171 c9b5772
  Author: Jiri Kosina <jkosina@xxxxxxx>
  Date:   Tue Sep 1 15:23:13 2015 +0200

      Merge branches 'for-4.2/upstream-fixes-devm-fixed' and 'for-4.3/upstream' 
into for-linus

  commit c8fb70a3e8dd60e31c4422bae85783cf1733f038
  Author: Grant Likely <grant.likely@xxxxxxxxxx>
  Date:   Sun Aug 23 13:34:08 2015 -0700

      MAINTAINERS: Add Frank Rowand as DT maintainer

      Frank has agreed to step up and help with DT core code maintainership.
      At the same time, Grant is taking a step back from active maintainership
      responsibilities. Add Frank to the device tree core code entry and
      shuffle Grant to the end of the list. In a few releases time Grant will
      be removed entirely.

      Signed-off-by: Grant Likely <grant.likely@xxxxxxxxxx>
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit 9d6f85d9fe422aa42f3f337872050fb2a30cd430
  Author: Robert Jarzmik <robert.jarzmik@xxxxxxx>
  Date:   Sun Aug 30 21:44:12 2015 +0200

      mtd: nand: pxa3xx: add optional dma for pxa architecture

      The PXA architecture provides a DMA to pump data from the nand
      controller to memory and the other way around. Add it to the binding
      description.

      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit 472204fe37083aa8f31aaf183b4072d432e7c5ea
  Author: Mugunthan V N <mugunthanvnm@xxxxxx>
  Date:   Mon Aug 31 11:51:29 2015 +0530

      Documentation: DT: cpsw: document missing compatible

      CPSW driver has multiple compatibles for errata implementations but not
      documented, add necessary documentation.

      Signed-off-by: Mugunthan V N <mugunthanvnm@xxxxxx>
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit 51d2eeef1d958ef6834b24f548194f5acea0f499
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Tue Sep 1 11:14:05 2015 +0530

      ASoC: wm0010: fix memory leak

      We were aborting if the kzalloc of img_swap fails but without freeing the
      already allocated out. Similarly we were aborting if spi_sync fails
      without releasing out and img_swap.

      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Acked-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit cc7da0ba9c96699592d0a69d7d146ac6adcc18e7
  Author: Joe Thornber <ejt@xxxxxxxxxx>
  Date:   Tue Sep 1 11:38:19 2015 +0100

      dm cache: fix use after freeing migrations

      Both free_io_migration() and issue_discard() dereference a migration
      that was just freed.  Fix those by saving off the migrations's cache
      object before freeing the migration.  Also cleanup needless mg->cache
      dereferences now that the cache object is available directly.

      Fixes: e44b6a5a3c ("dm cache: move wake_waker() from free_migrations() to 
where it is needed")
      Signed-off-by: Joe Thornber <ejt@xxxxxxxxxx>
      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>

  commit f319cb8491e1b4cc44e7baeeb3ae7817dedf57fc
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Tue Sep 1 20:15:10 2015 +0800

      reset: ath79: Fix missing spin_lock_init

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Acked-by: Alban Bedel <albeu@xxxxxxx>
      Signed-off-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>

  commit 092b6dbe8a4a24c17f2ebfe86995dc994e61f420
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Mon Aug 17 10:09:26 2015 +0200

      mmc: android-goldfish: remove incorrect __iomem annotation

      Make sparse happy:

      drivers/mmc/host/android-goldfish.c:535:56: sparse: incorrect type in
      argument 3 (different address spaces)

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 7b554088d56e9df3ee5dff8989b44903965bad95
  Author: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
  Date:   Tue Aug 18 08:58:40 2015 +0530

      video: fbdev: pxa168fb: Use devm_clk_get

      This patch introduces the use of managed resource function
      devm_clk_get instead of clk_get and removes corresponding calls
      to clk_put in the probe and remove functions.

      To be compatible with the change various gotos are replaced with
      direct returns, and unneeded label failed_put_clk is dropped.

      Signed-off-by: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
      Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>

  commit c4e6774de19f4638bb887a47a58ee21d6809360b
  Author: Julia Lawall <Julia.Lawall@xxxxxxx>
  Date:   Sun Aug 23 02:11:15 2015 +0200

      fbdev: ssd1307fb: fix error return code

      Propagate error code on failure.  Also changed %ld to %d in dev_err to use
      ret variable rather than putting two calls to PTR_ERR.

      A simplified version of the semantic match that finds the first problem 
is as
      follows: (http://coccinelle.lip6.fr/)

      // <smpl>
      @@
      identifier ret; expression e1,e2;
      @@
      (
      if (\(ret < 0\|ret != 0\))
       { ... return ret; }
      |
      ret = 0
      )
      ... when != ret = e1
          when != &ret
      *if(...)
      {
        ... when != ret = e2
            when forall
       return ret;
      }
      // </smpl>

      Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>

  commit b4df20474ff76b4dbab7d991de271820383995b8
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Mon Aug 24 22:54:21 2015 +0300

      fbdev: fix snprintf() limit in show_bl_curve()

      The limit should be "PAGE_SIZE - len" instead of PAGE_SIZE.  Also let's
      use scnprintf() because snprintf() returns the number of bytes which
      would have been printed if there were space and scnprintf() returns the
      number of bytes actually printed.

      I don't think we are ever going to actually hit this limit in real life.

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>

  commit 9cf94eab8b309e8bcc78b41dd1561c75b537dd0b
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Mon Aug 31 19:11:02 2015 +0200

      netfilter: conntrack: use nf_ct_tmpl_free in CT/synproxy error paths

      Commit 0838aa7fcfcd ("netfilter: fix netns dependencies with conntrack
      templates") migrated templates to the new allocator api, but forgot to
      update error paths for them in CT and synproxy to use nf_ct_tmpl_free()
      instead of nf_conntrack_free().

      Due to that, memory is being freed into the wrong kmemcache, but also
      we drop the per net reference count of ct objects causing an imbalance.

      In Brad's case, this leads to a wrap-around of net->ct.count and thus
      lets __nf_conntrack_alloc() refuse to create a new ct object:

        [   10.340913] xt_addrtype: ipv6 does not support BROADCAST matching
        [   10.810168] nf_conntrack: table full, dropping packet
        [   11.917416] r8169 0000:07:00.0 eth0: link up
        [   11.917438] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
        [   12.815902] nf_conntrack: table full, dropping packet
        [   15.688561] nf_conntrack: table full, dropping packet
        [   15.689365] nf_conntrack: table full, dropping packet
        [   15.690169] nf_conntrack: table full, dropping packet
        [   15.690967] nf_conntrack: table full, dropping packet
        [...]

      With slab debugging, it also reports the wrong kmemcache (kmalloc-512 vs.
      nf_conntrack_ffffffff81ce75c0) and reports poison overwrites, etc. Thus,
      to fix the problem, export and use nf_ct_tmpl_free() instead.

      Fixes: 0838aa7fcfcd ("netfilter: fix netns dependencies with conntrack 
templates")
      Reported-by: Brad Jackson <bjackson0971@xxxxxxxxx>
      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit 6fa2d197936ba0b8936e813d0adecefac160062b
  Author: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@xxxxxxxxx>
  Date:   Mon Aug 31 11:23:28 2015 +0300

      i915: Set ddi_pll_sel in DP MST path

      The DP MST encoder config function never sets ddi_pll_sel, even though
      its value is programmed in its ->pre_enable() hook. That used to work
      because a new pipe_config was kzalloc'ed at every modeset, and the value
      of zero selects the highest clock for the PLL. Starting with the commit
      below, the value of ddi_pll_sel is preserved through modesets, and since
      the correct value wasn't properly setup by the MST code, it could lead
      to warnings and blank screens.

      commit 8504c74c7ae48b4b8ed1f1c0acf67482a7f45c93
      Author: Ander Conselvan de Oliveira 
<ander.conselvan.de.oliveira@xxxxxxxxx>
      Date:   Fri May 15 11:51:50 2015 +0300

          drm/i915: Preserve ddi_pll_sel when allocating new pipe_config

      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91628
      Cc: stable@xxxxxxxxxxxxxxx # 7e6313a2516d drm/i915: Don't use link_bw for 
PLL setup
      Cc: stable@xxxxxxxxxxxxxxx
      Cc: Timo Aaltonen <tjaalton@xxxxxxxxxx>
      Cc: Luciano Coelho <luciano.coelho@xxxxxxxxx>
      Signed-off-by: Ander Conselvan de Oliveira 
<ander.conselvan.de.oliveira@xxxxxxxxx>
      Reviewed-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 7e6313a2516dbcd168f4ae36f0abe1a9227106b5
  Author: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 11 20:21:46 2015 +0300

      drm/i915: Don't use link_bw for PLL setup

      Use port_clock instead of link_bw when picking the PLL parameters for
      DP. link_bw may be zero with an eDP 1.4 sink that supports
      DP_LINK_RATE_SET so we shouldn't use it for anything other than feed it
      to the sink appropriately.

      v2: Fix typo in commit message (Sivakumar)

      Reviewed-by: Sivakumar Thulasimani <sivakumar.thulasimani@xxxxxxxxx>
      Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      [Jani: cherry-picked from future.]
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit aa3469ce7afd86a670d22375a64f1b5a06707725
  Author: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
  Date:   Thu Aug 27 10:06:24 2015 -0700

      drm/vmwgfx: Allow dropped masters render-node like access on legacy nodes 
v2

      Applications like gnome-shell may try to render after dropping master
      privileges. Since the driver should now be safe against this scenario,
      allow those applications to use their legacy node like a render node.

      v2: Add missing return statement.

      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
      Reviewed-by: Sinclair Yeh <syeh@xxxxxxxxxx>

  commit c4749c9a4a9ddc16200ce46a19078357727bf4b1
  Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 12:25:04 2015 +0200

      drm/atomic: Fix bookkeeping with TEST_ONLY, v3.

      Commit ec9f932ed41622d120de52a5b525e4d77b9ef17e
      "drm/atomic: Cleanup on error properly in the atomic ioctl."
      cleaned up some error paths, but didn't fix the TEST_ONLY path.
      In the check only case plane->fb shouldn't be updated, and
      the vblank events should be cleared as on failure.

      Changes since v1:
      - Fix -EDEADLK handling of vblank events too.
      - Free state last with CHECK_ONLY.
      Changes since v2:
      - Add comment about freeing crtc_state->event with TEST_ONLY.
        (Daniel Stone)

      Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
      Reviewed-by: Daniel Stone <daniels@xxxxxxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 532026612455a4a6fd27c1b2e7111263f63218a2
  Merge: 65a9959 bcc84ec
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Tue Sep 1 10:24:54 2015 +0200

      Merge tag 'perf-core-for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent

      Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:

      User visible changes:

        - Add ability to specify to select which registers to record,
          to reduce the size of perf.data files, and also allow printing
          the registers in 'perf script': (Stephane Eranian)

            # perf record --intr-regs=AX,SP usleep 1
            [ perf record: Woken up 1 times to write data ]
            [ perf record: Captured and wrote 0.016 MB perf.data (8 samples) ]
            # perf script -F ip,sym,iregs | tail -5
             ffffffff8105f42a native_write_msr_safe   AX:0xf    
SP:0xffff8802629c3c00
             ffffffff8105f42a native_write_msr_safe   AX:0xf    
SP:0xffff8802629c3c00
             ffffffff81761ac0 _raw_spin_lock   AX:0xffff8801bfcf8020    
SP:0xffff8802629c3ce8
             ffffffff81202bf8 __vma_adjust_trans_huge   AX:0x7ffc75200000    
SP:0xffff8802629c3b30
             ffffffff8122b089 dput   AX:0x101    SP:0xffff8802629c3c78
            #

      Infrastructure changes:

        - Open event on evsel cpus and threads. (Kan Liang)

        - Add new bpf API to get name from a BPF object. (Wang Nan)

      Build fixes:

        - Fix build on powerpc broken by pt/bts. (Adrian Hunter)

      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 5bcd0b7f3c56c616abffd89e11c841834dd1528c
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Tue Sep 1 07:56:38 2015 +0800

      reset: Add (devm_)reset_control_get stub functions

      So the drivers can be compiled with CONFIG_RESET_CONTROLLER disabled.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>

  commit 69f92f67b68ab7028ffe15f0eea76b59f8859383
  Author: Lukas Wunner <lukas@xxxxxxxxx>
  Date:   Wed Jul 15 13:57:35 2015 +0200

      drm/i915: Preserve SSC earlier

      Commit 92122789b2d6 ("drm/i915: preserve SSC if previously set v3")
      added code to intel_modeset_gem_init to override the SSC status read
      from VBT with the SSC status set by BIOS.

      However, intel_modeset_gem_init is invoked *after* intel_modeset_init,
      which calls intel_setup_outputs, which *modifies* SSC status by way of
      intel_init_pch_refclk. So unlike advertised, intel_modeset_gem_init
      doesn't preserve the SSC status set by BIOS but whatever
      intel_init_pch_refclk decided on.

      This is a problem on dual gpu laptops such as the MacBook Pro which
      require either a handler to switch DDC lines, or the discrete gpu
      to proxy DDC/AUX communication: Both the handler and the discrete
      gpu may initialize after the i915 driver, and consequently, an LVDS
      connector may initially seem disconnected and the SSC therefore
      is disabled by intel_init_pch_refclk, but on reprobe the connector
      may turn out to be connected and the SSC must then be enabled.

      Due to 92122789b2d6 however, the SSC is not enabled on reprobe since
      it is assumed BIOS disabled it while in fact it was disabled by
      intel_init_pch_refclk.

      Also, because the SSC status is preserved so late, the preserved value
      only ever gets used on resume but not on panel initialization:
      intel_modeset_init calls intel_init_display which indirectly calls
      intel_panel_use_ssc via multiple subroutines, *before* the BIOS value
      overrides the VBT value in intel_modeset_gem_init (intel_panel_use_ssc
      is the sole user of dev_priv->vbt.lvds_use_ssc).

      Fix this by moving the code introduced by 92122789b2d6 from
      intel_modeset_gem_init to intel_modeset_init before the invocation
      of intel_setup_outputs and intel_init_display.

      Add a DRM_DEBUG_KMS as suggested way back by Jani:
      http://lists.freedesktop.org/archives/intel-gfx/2014-June/046666.html

      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=88861
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=61115
      Tested-by: Paul Hordiienko <pvt.gord@xxxxxxxxx>
          [MBP  6,2 2010  intel ILK + nvidia GT216  pre-retina]
      Tested-by: William Brown <william@xxxxxxxxxxxxxxxx>
          [MBP  8,2 2011  intel SNB + amd turks     pre-retina]
      Tested-by: Lukas Wunner <lukas@xxxxxxxxx>
          [MBP  9,1 2012  intel IVB + nvidia GK107  pre-retina]
      Tested-by: Bruno Bierbaumer <bruno@xxxxxxxxxxxxxx>
          [MBP 11,3 2013  intel HSW + nvidia GK107  retina -- work in progress]
      Fixes: 92122789b2d6 ("drm/i915: preserve SSC if previously set v3")
      Signed-off-by: Lukas Wunner <lukas@xxxxxxxxx>
      Reviewed-by: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 63b6c13dbb7d3e36f031629f7e4e86dacfcab8cf
  Author: Pravin B Shelar <pshelar@xxxxxxxxxx>
  Date:   Mon Aug 31 20:05:57 2015 -0700

      tun_dst: Remove opts_size

      opts_size is only written and never read. Following patch
      removes this unused variable.

      Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2053aeb69a53224717296db31b13d5b45b4f1a0e
  Author: Marius Tomaschewski <mt@xxxxxxx>
  Date:   Tue Sep 1 01:57:30 2015 +0200

      ipv6: send only one NEWLINK when RA causes changes

      Signed-off-by: Marius Tomaschewski <mt@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 65a99597f044c083983f4274ab049c9ec3b9d764
  Merge: 418c2e1 555ee95
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 21:04:24 2015 -0700

      Merge branch 'timers-nohz-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull NOHZ updates from Ingo Molnar:
       "The main changes, mostly written by Frederic Weisbecker, include:

         - Fix some jiffies based cputime assumptions.  (No real harm because
           the concerned code isn't used by full dynticks.)

         - Simplify jiffies <-> usecs conversions.  Remove dead code.

         - Remove early hacks on nohz full code that avoided messing up idle
           nohz internals.  Now nohz integrates well full and idle and such
           hack have become needless.

         - Restart nohz full tick from irq exit.  (A simplification and a
           preparation for future optimization on scheduler kick to nohz
           full)

         - Code cleanups.

         - Tile driver isolation enhancement on top of nohz.  (Chris Metcalf)"

      * 'timers-nohz-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        nohz: Remove useless argument on tick_nohz_task_switch()
        nohz: Move tick_nohz_restart_sched_tick() above its users
        nohz: Restart nohz full tick from irq exit
        nohz: Remove idle task special case
        nohz: Prevent tilegx network driver interrupts
        alpha: Fix jiffies based cputime assumption
        apm32: Fix cputime == jiffies assumption
        jiffies: Remove HZ > USEC_PER_SEC special case

  commit 418c2e1f67658460533e4aaa7a0bcc64290ec951
  Merge: a1d8561 dd9d384
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 20:55:23 2015 -0700

      Merge branch 'sched-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull scheduler fix from Ingo Molnar:
       "This is a leftover scheduler fix from the v4.2 cycle"

      * 'sched-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched: Fix cpu_active_mask/cpu_online_mask race

  commit a1d8561172f369ba56d636df49a6b4d6d77e2123
  Merge: 3959df1d ff277d4
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 20:26:22 2015 -0700

      Merge branch 'sched-core-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull scheduler updates from Ingo Molnar:
       "The biggest change in this cycle is the rewrite of the main SMP load
        balancing metric: the CPU load/utilization.  The main goal was to make
        the metric more precise and more representative - see the changelog of
        this commit for the gory details:

          9d89c257dfb9 ("sched/fair: Rewrite runnable load and utilization 
average tracking")

        It is done in a way that significantly reduces complexity of the code:

          5 files changed, 249 insertions(+), 494 deletions(-)

        and the performance testing results are encouraging.  Nevertheless we
        need to keep an eye on potential regressions, since this potentially
        affects every SMP workload in existence.

        This work comes from Yuyang Du.

        Other changes:

         - SCHED_DL updates.  (Andrea Parri)

         - Simplify architecture callbacks by removing finish_arch_switch().
           (Peter Zijlstra et al)

         - cputime accounting: guarantee stime + utime == rtime.  (Peter
           Zijlstra)

         - optimize idle CPU wakeups some more - inspired by Facebook server
           loads.  (Mike Galbraith)

         - stop_machine fixes and updates.  (Oleg Nesterov)

         - Introduce the 'trace_sched_waking' tracepoint.  (Peter Zijlstra)

         - sched/numa tweaks.  (Srikar Dronamraju)

         - misc fixes and small cleanups"

      * 'sched-core-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (44 commits)
        sched/deadline: Fix comment in enqueue_task_dl()
        sched/deadline: Fix comment in push_dl_tasks()
        sched: Change the sched_class::set_cpus_allowed() calling context
        sched: Make sched_class::set_cpus_allowed() unconditional
        sched: Fix a race between __kthread_bind() and sched_setaffinity()
        sched: Ensure a task has a non-normalized vruntime when returning back 
to CFS
        sched/numa: Fix NUMA_DIRECT topology identification
        tile: Reorganize _switch_to()
        sched, sparc32: Update scheduler comments in copy_thread()
        sched: Remove finish_arch_switch()
        sched, tile: Remove finish_arch_switch
        sched, sh: Fold finish_arch_switch() into switch_to()
        sched, score: Remove finish_arch_switch()
        sched, avr32: Remove finish_arch_switch()
        sched, MIPS: Get rid of finish_arch_switch()
        sched, arm: Remove finish_arch_switch()
        sched/fair: Clean up load average references
        sched/fair: Provide runnable_load_avg back to cfs_rq
        sched/fair: Remove task and group entity load when they are dead
        sched/fair: Init cfs_rq's sched_entity load average
        ...

  commit 3959df1dfb9538498ec3372a2d390bc7fbdbfac2
  Merge: 41d859a 6c36dfe
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 20:20:30 2015 -0700

      Merge branch 'ras-core-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull RAS updates from Ingo Molnar:
       "MCE handling updates, but also some generic drivers/edac/ changes to
        better organize the Kconfig space"

      * 'ras-core-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/ras: Move AMD MCE injector to arch/x86/ras/
        x86/mce: Add a wrapper around mce_log() for injection
        x86/mce: Rename rcu_dereference_check_mce() to mce_log_get_idx_check()
        RAS: Add a menuconfig option with descriptive text
        x86/mce: Reenable CMCI banks when swiching back to interrupt mode
        x86/mce: Clear Local MCE opt-in before kexec
        x86/mce: Remove unused function declarations
        x86/mce: Kill drain_mcelog_buffer()
        x86/mce: Avoid potential deadlock due to printk() in MCE context
        x86/mce: Remove the MCE ring for Action Optional errors
        x86/mce: Don't use percpu workqueues
        x86/mce: Provide a lockless memory pool to save error records
        x86/mce: Reuse one of the u16 padding fields in 'struct mce'

  commit 41d859a83c567a9c9f50a34082cc64aab0abb0cd
  Merge: 4658000 bac2e4a
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 19:49:05 2015 -0700

      Merge branch 'perf-core-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull perf updates from Ingo Molnar:
       "Main perf kernel side changes:

         - uprobes updates/fixes.  (Oleg Nesterov)

         - Add PERF_RECORD_SWITCH to indicate context switches and use it in
           tooling.  (Adrian Hunter)

         - Support BPF programs attached to uprobes and first steps for BPF
           tooling support.  (Wang Nan)

         - x86 generic x86 MSR-to-perf PMU driver.  (Andy Lutomirski)

         - x86 Intel PT, LBR and BTS updates.  (Alexander Shishkin)

         - x86 Intel Skylake support.  (Andi Kleen)

         - x86 Intel Knights Landing (KNL) RAPL support.  (Dasaratharaman
           Chandramouli)

         - x86 Intel Broadwell-DE uncore support.  (Kan Liang)

         - x86 hw breakpoints robustization (Andy Lutomirski)

        Main perf tooling side changes:

         - Support Intel PT in several tools, enabling the use of the
           processor trace feature introduced in Intel Broadwell processors:
           (Adrian Hunter)

             # dmesg | grep Performance
             # [0.188477] Performance Events: PEBS fmt2+, 16-deep LBR, 
Broadwell events, full-width counters, Intel PMU driver.
             # perf record -e intel_pt//u -a sleep 1
             [ perf record: Woken up 1 times to write data ]
             [ perf record: Captured and wrote 0.216 MB perf.data ]
             # perf script # then navigate in the tool output to some area, 
like this one:
             184 1030 dl_main (/usr/lib64/ld-2.17.so) => 7f21ba661440 dl_main 
(/usr/lib64/ld-2.17.so)
             185 1457 dl_main (/usr/lib64/ld-2.17.so) => 7f21ba669f10 
_dl_new_object (/usr/lib64/ld-2.17.so)
             186 9f37 _dl_new_object (/usr/lib64/ld-2.17.so) => 7f21ba677b90 
strlen (/usr/lib64/ld-2.17.so)
             187 7ba3 strlen (/usr/lib64/ld-2.17.so) => 7f21ba677c75 strlen 
(/usr/lib64/ld-2.17.so)
             188 7c78 strlen (/usr/lib64/ld-2.17.so) => 7f21ba669f3c 
_dl_new_object (/usr/lib64/ld-2.17.so)
             189 9f8a _dl_new_object (/usr/lib64/ld-2.17.so) => 7f21ba65fab0 
calloc@plt (/usr/lib64/ld-2.17.so)
             190 fab0 calloc@plt (/usr/lib64/ld-2.17.so) => 7f21ba675e70 calloc 
(/usr/lib64/ld-2.17.so)
             191 5e87 calloc (/usr/lib64/ld-2.17.so) => 7f21ba65fa90 malloc@plt 
(/usr/lib64/ld-2.17.so)
             192 fa90 malloc@plt (/usr/lib64/ld-2.17.so) => 7f21ba675e60 malloc 
(/usr/lib64/ld-2.17.so)
             193 5e68 malloc (/usr/lib64/ld-2.17.so) => 7f21ba65fa80 
__libc_memalign@plt (/usr/lib64/ld-2.17.so)
             194 fa80 __libc_memalign@plt (/usr/lib64/ld-2.17.so) => 
7f21ba675d50 __libc_memalign (/usr/lib64/ld-2.17.so)
             195 5d63 __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba675e20 
__libc_memalign (/usr/lib64/ld-2.17.so)
             196 5e40 __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba675d73 
__libc_memalign (/usr/lib64/ld-2.17.so)
             197 5d97 __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba675e18 
__libc_memalign (/usr/lib64/ld-2.17.so)
             198 5e1e __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba675df9 
__libc_memalign (/usr/lib64/ld-2.17.so)
             199 5e10 __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba669f8f 
_dl_new_object (/usr/lib64/ld-2.17.so)
             200 9fc2 _dl_new_object (/usr/lib64/ld-2.17.so) =>  7f21ba678e70 
memcpy (/usr/lib64/ld-2.17.so)
             201 8e8c memcpy (/usr/lib64/ld-2.17.so) => 7f21ba678ea0 memcpy 
(/usr/lib64/ld-2.17.so)

         - Add support for using several Intel PT features (CYC, MTC packets),
           the relevant documentation was updated in:
               tools/perf/Documentation/intel-pt.txt
           briefly describing those packets, its purposes, how to configure
           them in the event config terms and relevant external documentation
           for further reading.  (Adrian Hunter)

         - Introduce support for probing at an absolute address, for user and
           kernel 'perf probe's, useful when one have the symbol maps on a
           developer machine but not on an embedded system.  (Wang Nan)

         - Add Intel BTS support, with a call-graph script to show it and PT
           in use in a GUI using 'perf script' python scripting with
           postgresql and Qt.  (Adrian Hunter)

         - Allow selecting the type of callchains per event, including
           disabling callchains in all but one entry in an event list, to save
           space, and also to ask for the callchains collected in one event to
           be used in other events.  (Kan Liang)

         - Beautify more syscall arguments in 'perf trace': (Arnaldo Carvalho
           de Melo)
             * A bunch more translate file/pathnames from pointers to strings.
             * Convert numbers to strings for the 'keyctl' syscall 'option'
               arg.
             * Add missing 'clockid' entries.

         - Introduce 'srcfile' sort key: (Andi Kleen)

             # perf record -F 10000 usleep 1
             # perf report --stdio --dsos '[kernel.vmlinux]' -s srcfile
             <SNIP>
             # Overhead  Source File
                26.49%  copy_page_64.S
                 5.49%  signal.c
                 0.51%  msr.h
             #

           It can be combined with other fields, for instance, experiment with
           '-s srcfile,symbol'.

           There are some oddities in some distros and with some specific
           DSOs, being investigated, so your mileage may vary.

         - Support per-event 'freq' term: (Namhyung Kim)

             $ perf record -e 'cpu/instructions,freq=1234/',cycles -c 1000 
sleep 1
             $ perf evlist -F
             cpu/instructions,freq=1234/: sample_freq=1234
             cycles: sample_period=1000
             $

         - Deref sys_enter pointer args with contents from probe:vfs_getname,
           showing pathnames instead of pointers in many syscalls in 'perf
           trace'.  (Arnaldo Carvalho de Melo)

         - Stop collecting /proc/kallsyms in perf.data files, saving about
           4.5MB on a typical x86-64 system, use the the symbol resolution
           routines used in all the other tools (report, top, etc) now that we
           can ask libtraceevent to use perf's symbol resolution code.
           (Arnaldo Carvalho de Melo)

         - Allow filtering out of perf's PID via 'perf record --exclude-perf'.
           (Wang Nan)

         - 'perf trace' now supports syscall groups, like strace, i.e:

             $ trace -e file touch file

           Will expand 'file' into multiple, file related, syscalls.  More
           work needed to add extra groups for other syscall groups, and also
           to complement what was added for the 'file' group, included as a
           proof of concept.  (Arnaldo Carvalho de Melo)

         - Add lock_pi stresser to 'perf bench futex', to test the kernel code
           related to FUTEX_(UN)LOCK_PI.  (Davidlohr Bueso)

         - Let user have timestamps with per-thread recording in 'perf record'
           (Adrian Hunter)

         - ... and tons of other changes, see the shortlog and the Git log for
           details"

      * 'perf-core-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (240 commits)
        perf evlist: Add backpointer for perf_env to evlist
        perf tools: Rename perf_session_env to perf_env
        perf tools: Do not change lib/api/fs/debugfs directly
        perf tools: Add tracing_path and remove unneeded functions
        perf buildid: Introduce sysfs/filename__sprintf_build_id
        perf evsel: Add a backpointer to the evlist a evsel is in
        perf trace: Add header with copyright and background info
        perf scripts python: Add new compaction-times script
        perf stat: Get correct cpu id for print_aggr
        tools lib traceeveent: Allow for negative numbers in print format
        perf script: Add --[no-]-demangle/--[no-]-demangle-kernel
        tracing/uprobes: Do not print '0x (null)' when offset is 0
        perf probe: Support probing at absolute address
        perf probe: Fix error reported when offset without function
        perf probe: Fix list result when address is zero
        perf probe: Fix list result when symbol can't be found
        tools build: Allow duplicate objects in the object list
        perf tools: Remove export.h from MANIFEST
        perf probe: Prevent segfault when reading probe point with absolute 
address
        perf tools: Update Intel PT documentation
        ...

  commit 4658000955d1864b54890214434e171949c7f1c5
  Merge: e10994f 69786cdb
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 19:16:36 2015 -0700

      Merge branch 'mm-kasan-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull x86/kasan changes from Ingo Molnar:
       "These are two KASAN changes that factor out (and generalize) x86
        specific KASAN code from x86 to mm"

      * 'mm-kasan-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/kasan, mm: Introduce generic kasan_populate_zero_shadow()
        x86/kasan: Define KASAN_SHADOW_OFFSET per architecture

  commit e10994ff38ded64e4cd2267a6e404a4c8632bcf5
  Merge: 5757bd6 33fef66
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 19:11:50 2015 -0700

      Merge branch 'locking-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull liblockdep fixes from Ingo Molnar:
       "Three liblockdep fixes left over from the v4.2 cycle"

      * 'locking-urgent-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        tools/liblockdep: Use the rbtree header provided by common tools headers
        tools/liblockdep: Correct macro for WARN
        tools: Restore export.h

  commit 498012511a060575a56551d28a10bb392aa361b5
  Merge: 5d2a1a9 4bf0118
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Tue Sep 1 03:45:05 2015 +0200

      Merge branch 'device-properties'

      * device-properties:
        device property: check fwnode type in to_of_node()
        device property: attach 'else if' to the proper 'if'
        device property: fallback to pset when gettng one string
        device property: fix potential NULL pointer dereference

  commit 5d2a1a927d487d6bb60c87b837d82702d8ebcaad
  Merge: ef5f5de 5d0ddfe b00855a 02b771b 3277b4e
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Tue Sep 1 03:41:19 2015 +0200

      Merge branches 'acpi-pci', 'acpi-soc', 'acpi-ec' and 'acpi-osl'

      * acpi-pci:
        ACPI, PCI: Penalize legacy IRQ used by ACPI SCI

      * acpi-soc:
        ACPI / LPSS: Ignore 10ms delay for Braswell

      * acpi-ec:
        ACPI / EC: Fix an issue caused by the serialized _Qxx evaluations

      * acpi-osl:
        ACPI / osl: replace custom implementation of readq / writeq

  commit ef5f5de069bd9081a7ddf6998269b58fc65e27ef
  Merge: 73990fc e91a398
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Tue Sep 1 03:38:43 2015 +0200

      Merge branch 'acpi-pm'

      * acpi-pm:
        ACPI / bus: Move duplicate code to a separate new function
        mfd: Add support for Intel Sunrisepoint LPSS devices
        dmaengine: add a driver for Intel integrated DMA 64-bit
        mfd: make mfd_remove_devices() iterate in reverse order
        driver core: implement device_for_each_child_reverse()
        klist: implement klist_prev()
        Driver core: wakeup the parent device before trying probe
        ACPI / PM: Attach ACPI power domain only once
        PM / QoS: Make it possible to expose device latency tolerance to 
userspace
        ACPI / PM: Update the copyright notice and description of power.c

  commit 73990fc810bf84c5338d9596f8af8d70fe90ac72
  Merge: 94f2bb9 1dcc3d3 b6fc607 1074261
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Tue Sep 1 03:38:22 2015 +0200

      Merge branches 'acpi-scan', 'acpi-processor' and 'acpi-assorted'

      * acpi-scan:
        ACPI / bus: Move ACPI bus type registration
        ACPI / scan: Move bus operations and notification routines to bus.c
        ACPI / scan: Move device matching code to bus.c
        ACPI / scan: Move sysfs-related device code to a separate file

      * acpi-processor:
        PCC: Disable compilation by default
        ACPI: Decouple ACPI idle and ACPI processor drivers
        ACPI: Split out ACPI PSS from ACPI Processor driver
        PCC: Initialize PCC Mailbox earlier at boot
        ACPI / processor: remove leftover __refdata annotations

      * acpi-assorted:
        ACPI: fix acpi_debugfs_init prototype
        ACPI: Remove FSF mailing addresses

  commit 94f2bb9b599f8d6a3a1309d39b3b219da314470c
  Merge: 20a2000 cb4ff76
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Tue Sep 1 03:37:59 2015 +0200

      Merge branch 'acpi-trace'

      * acpi-trace:
        ACPI / Documentation: Update method tracing documentation.
        ACPI / sysfs: Add support to allow leading "\" missing in 
trace_method_name.
        ACPI / sysfs: Update method tracing facility.
        ACPI / sysfs: Add ACPI_LV_REPAIR debug level.

  commit 20a200085f64cce4f33ab33ae262ff291dc5d6d0
  Merge: c91c5b2 4305cd0
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Tue Sep 1 03:37:51 2015 +0200

      Merge branch 'acpi-tools'

      * acpi-tools:
        tools/power/acpi: Enable build for EC userspace tool
        tools/power/acpi: Add descend support in ACPI tools Makefile

  commit 5757bd6157f523ff0d448a4ec93938523ca441a9
  Merge: 7073bc6 accd0b9
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 18:37:33 2015 -0700

      Merge branch 'core-types-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull inlining tuning from Ingo Molnar:
       "A handful of inlining optimizations inspired by x86 work but
        applicable in general"

      * 'core-types-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        jiffies: Force inlining of {m,u}msecs_to_jiffies()
        x86/hweight: Force inlining of __arch_hweight{32,64}()
        linux/bitmap: Force inlining of bitmap weight functions

  commit c91c5b276bc1e60c0d65ff69e29b6edc5948430d
  Merge: 64291f7 b7a4f7f
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Tue Sep 1 03:37:30 2015 +0200

      Merge branch 'acpica'

      * acpica: (42 commits)
        ACPICA: Update version to 20150818
        ACPICA: Debugger: Cleanup debugging outputs to dump name path without 
trailing underscores
        ACPICA: Disassembler: Cleanup acpi_gbl_db_opt_verbose acpiexec usage
        ACPICA: Disassembler: Cleanup acpi_gbl_db_opt_disasm
        ACPICA: Debugger: Split debugger initialization/termination APIs
        ACPICA: Header support to improve compatibility with MSVC
        ACPICA: Make the max-number-of-loops runtime configurable
        ACPICA: Debugger: Add option to display namespace summary/counts
        ACPICA: Add additional debug info/statements
        ACPICA: Table handling: Cleanup and update debug output for tools
        ACPICA: acpiexec/acpinames: Support very large number of ACPI tables
        ACPICA: acpinames: Add new options and wildcard support
        ACPICA: Headers: Fix some comments, no functional change
        ACPICA: Tables: Cleanup to reduce FACS globals
        ACPICA: Tables: Fix global table list issues by removing fixed table 
indexes
        ACPICA: Update info messages during ACPICA init
        ACPICA: Disassembler: Update for new listing mode
        ACPICA: Update parameter validation for data_table_region and load_table
        ACPICA: Disassembler: Remove duplicate code in _PLD processing.
        ACPICA: Correctly cleanup after a ACPI table load failure
        ...

  commit 7073bc66126e3ab742cce9416ad6b4be8b03c4f7
  Merge: d4c9039 f612a7b
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 18:12:07 2015 -0700

      Merge branch 'core-rcu-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

      Pull RCU updates from Ingo Molnar:
       "The main RCU changes in this cycle are:

         - the combination of tree geometry-initialization simplifications and
           OS-jitter-reduction changes to expedited grace periods.  These two
           are stacked due to the large number of conflicts that would
           otherwise result.

         - privatize smp_mb__after_unlock_lock().

           This commit moves the definition of smp_mb__after_unlock_lock() to
           kernel/rcu/tree.h, in recognition of the fact that RCU is the only
           thing using this, that nothing else is likely to use it, and that
           it is likely to go away completely.

         - documentation updates.

         - torture-test updates.

         - misc fixes"

      * 'core-rcu-for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (60 commits)
        rcu,locking: Privatize smp_mb__after_unlock_lock()
        rcu: Silence lockdep false positive for expedited grace periods
        rcu: Don't disable CPU hotplug during OOM notifiers
        scripts: Make checkpatch.pl warn on expedited RCU grace periods
        rcu: Update MAINTAINERS entry
        rcu: Clarify CONFIG_RCU_EQS_DEBUG help text
        rcu: Fix backwards RCU_LOCKDEP_WARN() in synchronize_rcu_tasks()
        rcu: Rename rcu_lockdep_assert() to RCU_LOCKDEP_WARN()
        rcu: Make rcu_is_watching() really notrace
        cpu: Wait for RCU grace periods concurrently
        rcu: Create a synchronize_rcu_mult()
        rcu: Fix obsolete priority-boosting comment
        rcu: Use WRITE_ONCE in RCU_INIT_POINTER
        rcu: Hide RCU_NOCB_CPU behind RCU_EXPERT
        rcu: Add RCU-sched flavors of get-state and cond-sync
        rcu: Add fastpath bypassing funnel locking
        rcu: Rename RCU_GP_DONE_FQS to RCU_GP_DOING_FQS
        rcu: Pull out wait_event*() condition into helper function
        documentation: Describe new expedited stall warnings
        rcu: Add stall warnings to synchronize_sched_expedited()
        ...

  commit d4c90396ed7ef9b4e4d221e008e54be8bea8307f
  Merge: f36fc04 bf43341
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 17:38:39 2015 -0700

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6

      Pull crypto updates from Herbert Xu:
       "Here is the crypto update for 4.3:

        API:

         - the AEAD interface transition is now complete.
         - add top-level skcipher interface.

        Drivers:

         - x86-64 acceleration for chacha20/poly1305.
         - add sunxi-ss Allwinner Security System crypto accelerator.
         - add RSA algorithm to qat driver.
         - add SRIOV support to qat driver.
         - add LS1021A support to caam.
         - add i.MX6 support to caam"

      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (163 
commits)
        crypto: algif_aead - fix for multiple operations on AF_ALG sockets
        crypto: qat - enable legacy VFs
        MPI: Fix mpi_read_buffer
        crypto: qat - silence a static checker warning
        crypto: vmx - Fixing opcode issue
        crypto: caam - Use the preferred style for memory allocations
        crypto: caam - Propagate the real error code in caam_probe
        crypto: caam - Fix the error handling in caam_probe
        crypto: caam - fix writing to JQCR_MS when using service interface
        crypto: hash - Add AHASH_REQUEST_ON_STACK
        crypto: testmgr - Use new skcipher interface
        crypto: skcipher - Add top-level skcipher interface
        crypto: cmac - allow usage in FIPS mode
        crypto: sahara - Use dmam_alloc_coherent
        crypto: caam - Add support for LS1021A
        crypto: qat - Don't move data inside output buffer
        crypto: vmx - Fixing GHASH Key issue on little endian
        crypto: vmx - Fixing AES-CTR counter bug
        crypto: null - Add missing Kconfig tristate for NULL2
        crypto: nx - Add forward declaration for struct crypto_aead
        ...

  commit 5d54b8cdeaf4679c51a510dea3f8921992d0b064
  Merge: 70b33a7 1a7ccad
  Author: Dave Chinner <david@xxxxxxxxxxxxx>
  Date:   Tue Sep 1 10:30:11 2015 +1000

      Merge branch 'xfs-misc-fixes-for-4.3-4' into for-next

  commit f36fc04e4cdda9e4c72ee504e7dc638f9a168863
  Merge: 26f8b7e ba30011
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 17:26:48 2015 -0700

      Merge tag 'clk-for-linus-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux

      Pull clk updates from Michael Turquette:
       "The clk framework changes for 4.3 are mostly updates to existing
        drivers and the addition of new clock drivers.  Stephen Boyd has also
        done a lot of subsystem-wide driver clean-ups (thanks!).  There are
        also fixes to the framework core and changes to better split clock
        provider drivers from clock consumer drivers"

      * tag 'clk-for-linus-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (227 commits)
        clk: s5pv210: add missing call to samsung_clk_of_add_provider()
        clk: pistachio: correct critical clock list
        clk: pistachio: Fix PLL rate calculation in integer mode
        clk: pistachio: Fix override of clk-pll settings from boot loader
        clk: pistachio: Fix 32bit integer overflows
        clk: tegra: Fix some static checker problems
        clk: qcom: Fix MSM8916 prng clock enable bit
        clk: Add missing header for 'bool' definition to clk-conf.h
        drivers/clk: appropriate __init annotation for const data
        clk: rockchip: register pll mux before pll itself
        clk: add bindings for the Ux500 clocks
        clk/ARM: move Ux500 PRCC bases to the device tree
        clk: remove duplicated code with __clk_set_parent_after
        clk: Convert __clk_get_name(hw->clk) to clk_hw_get_name(hw)
        clk: Constify clk_hw argument to provider APIs
        clk: Hi6220: add stub clock driver
        dt-bindings: clk: Hi6220: Document stub clock driver
        dt-bindings: arm: Hi6220: add doc for SRAM controller
        clk: atlas7: fix pll missed divide NR in fraction mode
        clk: atlas7: fix bit field and its root clk for coresight_tpiu
        ...

  commit 26f8b7edc9eab56638274f5db90848a6df602081
  Merge: edc837d 9ca678d
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 17:14:39 2015 -0700

      Merge tag 'pci-v4.3-changes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci

      Pull PCI updates from Bjorn Helgaas:
       "PCI changes for the v4.3 merge window:

        Enumeration:
         - Allocate ATS struct during enumeration (Bjorn Helgaas)
         - Embed ATS info directly into struct pci_dev (Bjorn Helgaas)
         - Reduce size of ATS structure elements (Bjorn Helgaas)
         - Stop caching ATS Invalidate Queue Depth (Bjorn Helgaas)
         - iommu/vt-d: Cache PCI ATS state and Invalidate Queue Depth (Bjorn 
Helgaas)
         - Move MPS configuration check to pci_configure_device() (Bjorn 
Helgaas)
         - Set MPS to match upstream bridge (Keith Busch)
         - ARM/PCI: Set MPS before pci_bus_add_devices() (Murali Karicheri)
         - Add pci_scan_root_bus_msi() (Lorenzo Pieralisi)
         - ARM/PCI, designware, xilinx: Use pci_scan_root_bus_msi() (Lorenzo 
Pieralisi)

        Resource management:
         - Call pci_read_bridge_bases() from core instead of arch code (Lorenzo 
Pieralisi)

        PCI device hotplug:
         - pciehp: Remove unused interrupt events (Bjorn Helgaas)
         - pciehp: Remove ignored MRL sensor interrupt events (Bjorn Helgaas)
         - pciehp: Handle invalid data when reading from non-existent devices 
(Jarod Wilson)
         - pciehp: Simplify pcie_poll_cmd() (Yijing Wang)
         - Use "slot" and "pci_slot" for struct hotplug_slot and struct 
pci_slot (Yijing Wang)
         - Protect pci_bus->slots with pci_slot_mutex, not pci_bus_sem (Yijing 
Wang)
         - Hold pci_slot_mutex while searching bus->slots list (Yijing Wang)

        Power management:
         - Disable async suspend/resume for JMicron multi-function SATA/AHCI 
(Zhang Rui)

        Virtualization:
         - Add ACS quirks for Intel I219-LM/V (Alex Williamson)
         - Restore ACS configuration as part of pci_restore_state() (Alexander 
Duyck)

        MSI:
         - Add pcibios_alloc_irq() and pcibios_free_irq() (Jiang Liu)
         - x86: Implement pcibios_alloc_irq() and pcibios_free_irq() (Jiang Liu)
         - Add helpers to manage pci_dev->irq and pci_dev->irq_managed (Jiang 
Liu)
         - Free legacy IRQ when enabling MSI/MSI-X (Jiang Liu)
         - ARM/PCI: Remove msi_controller from struct pci_sys_data (Lorenzo 
Pieralisi)
         - Remove unused pcibios_msi_controller() hook (Lorenzo Pieralisi)

        Generic host bridge driver:
         - Remove dependency on ARM-specific struct hw_pci (Jayachandran C)
         - Build setup-irq.o for arm64 (Jayachandran C)
         - Add arm64 support (Jayachandran C)

        APM X-Gene host bridge driver:
         - Add APM X-Gene PCIe 64-bit prefetchable window (Duc Dang)
         - Add support for a 64-bit prefetchable memory window (Duc Dang)
         - Drop owner assignment from platform_driver (Krzysztof Kozlowski)

        Broadcom iProc host bridge driver:
         - Allow BCMA bus driver to be built as module (Hauke Mehrtens)
         - Delete unnecessary checks before phy calls (Markus Elfring)
         - Add arm64 support (Ray Jui)

        Synopsys DesignWare host bridge driver:
         - Don't complain missing *config* reg space if va_cfg0 is set (Murali 
Karicheri)

        TI DRA7xx host bridge driver:
         - Disable pm_runtime on get_sync failure (Kishon Vijay Abraham I)
         - Add PM support (Kishon Vijay Abraham I)
         - Clear MSE bit during suspend so clocks will idle (Kishon Vijay 
Abraham I)
         - Add support to make GPIO drive PERST# line (Kishon Vijay Abraham I)

        Xilinx AXI host bridge driver:
         - Check for MSI interrupt flag before handling as INTx (Russell Joyce)

        Miscellaneous:
         - Fix Intersil/Techwell TW686[4589] AV capture class code (Krzysztof 
HaÅ?asa)
         - Use PCI_CLASS_SERIAL_USB instead of bare number (Bjorn Helgaas)
         - Fix generic NCR 53c810 class code quirk (Bjorn Helgaas)
         - Fix TI816X class code quirk (Bjorn Helgaas)
         - Remove unused "pci_probe" flags (Bjorn Helgaas)
         - Host bridge driver code simplifications (Fabio Estevam)
         - Add dev_flags bit to access VPD through function 0 (Mark Rustad)
         - Add VPD function 0 quirk for Intel Ethernet devices (Mark Rustad)
         - Kill off set_irq_flags() usage (Rob Herring)
         - Remove Intel Cherrytrail D3 delays (Srinidhi Kasagar)
         - Clean up pci_find_capability() (Wei Yang)"

      * tag 'pci-v4.3-changes' of 
git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (72 commits)
        PCI: Disable async suspend/resume for JMicron multi-function SATA/AHCI
        PCI: Set MPS to match upstream bridge
        PCI: Move MPS configuration check to pci_configure_device()
        PCI: Drop references acquired by of_parse_phandle()
        PCI/MSI: Remove unused pcibios_msi_controller() hook
        ARM/PCI: Remove msi_controller from struct pci_sys_data
        ARM/PCI, designware, xilinx: Use pci_scan_root_bus_msi()
        PCI: Add pci_scan_root_bus_msi()
        ARM/PCI: Replace panic with WARN messages on failures
        PCI: generic: Add arm64 support
        PCI: Build setup-irq.o for arm64
        PCI: generic: Remove dependency on ARM-specific struct hw_pci
        PCI: imx6: Simplify a trivial if-return sequence
        PCI: spear: Use BUG_ON() instead of condition followed by BUG()
        PCI: dra7xx: Remove unneeded use of IS_ERR_VALUE()
        PCI: Remove pci_ats_enabled()
        PCI: Stop caching ATS Invalidate Queue Depth
        PCI: Move ATS declarations to linux/pci.h so they're all together
        PCI: Clean up ATS error handling
        PCI: Use pci_physfn() rather than looking up physfn by hand
        ...

  commit edc837da4b54a01ba6fa3c29b411e35d1a8430ca
  Merge: e5aeced 4d59ed8
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 17:08:05 2015 -0700

      Merge tag 'leds_for_4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds

      Pull LED updates from Jacek Anaszewski:
       "In this merge window we'd like to announce a change on the list of LED
        subsystem maintainers - Bryan Wu decided to step back and handed over
        the maintainership to me (Jacek Anaszewski), which entailed an update
        of LED subsystem git tree URL.

        Besides the changes in MAINTAINERS we have:

         - optimizations and improvements to existing LED class drivers

         - improvements to the common LEDs DT documentation

         - modifications of kirkwood-* dts files, to be in sync with patches
           for leds-ns2 driver, that move LEDs mode mapping outside of the
           driver"

      * tag 'leds_for_4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds:
        leds: Export OF module alias information in missing drivers
        leds:lp55xx: use the private data instead of updating I2C device 
platform data
        leds: syscon: Correct check for syscon_node_to_regmap() errors
        leds: leds-fsg: Use devm_led_classdev_register
        MAINTAINERS: Change LED subsystem git tree URL
        leds/led-class: Add missing put_device()
        ARM: Kirkwood: add modes-map property to ns2-leds nodes
        leds: tlc591xx: Remove redundant I2C_FUNC_SMBUS_BYTE_DATA functionality 
check
        leds: leds-ns2: depends on MACH_ARMADA_370
        leds: leds-ns2: handle can_sleep GPIOs
        leds: leds-ns2: move LED modes mapping outside of the driver
        leds: lp8860: Constify reg_default tables
        leds: Drop owner assignment from i2c_driver
        leds: Allow compile test of LEDS_AAT1290 and LEDS_KTD2692 if !GPIOLIB
        leds: Allow compile test of GPIO consumers if !GPIOLIB
        DT: leds: Improve description of flash LEDs related properties

  commit 07f081fb5057b2ea98baeca3a47bf0eb33e94aa1
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Sun Aug 30 16:59:57 2015 +0100

      PKCS#7: Add OIDs for sha224, sha284 and sha512 hash algos and use them

      Add OIDs for sha224, sha284 and sha512 hash algos and use them to select
      the hashing algorithm.  Without this, something like the following error
      might get written to dmesg:

      [   31.829322] PKCS7: Unknown OID: [32] 2.16.840.1.101.3.4.2.3
      [   31.829328] PKCS7: Unknown OID: [180] 2.16.840.1.101.3.4.2.3
      [   31.829330] Unsupported digest algo: 55

      Where the 55 on the third line is OID__NR indicating an unknown OID.

      Reported-by: Valdis Kletnieks <Valdis.Kletnieks@xxxxxx>
      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
      Tested-By: Valdis Kletnieks <valdis.kletnieks@xxxxxx>
      Signed-off-by: James Morris <james.l.morris@xxxxxxxxxx>

  commit e5aeced6bcec5a110e6dfcb78acc203dbe895b59
  Merge: cf9d615 c5992f6
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 15:55:49 2015 -0700

      Merge tag 'spi-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi

      Pull spi updates from Mark Brown:
       "A few core tweaks this time together with the usual collection of
        driver specific updates and fixes plus a larger than average selection
        of new device support:

         - fix DMA mapping of unaligned vmalloc() buffers

         - statistics tracking transfer volumes exposed via sysfs

         - new drivers for Freescale MPC5125, Intel Sunrise Point, Mediatek
           SoCs, and Netlogic XLP SoCs"

      * tag 'spi-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (66 commits)
        spi: sh-msiof: Fix FIFO size to 64 word from 256 word
        spi: fsl-(e)spi: Fix checking return value of devm_ioremap_resource
        spi: Add DT bindings documentation for Netlogic XLP SPI controller
        spi/xlp: SPI controller driver for Netlogic XLP SoCs
        spi: fsl-espi: add runtime PM
        spi: fsl-(e)spi: simplify cleanup code
        spi: fsl-(e)spi: migrate to using devm_ functions to simplify cleanup
        spi: mediatek: fix SPI_CMD_PAUSE_IE macro error
        spi: check bits_per_word in spi_setup
        spi: mediatek: replace *_time name
        spi: mediatek: add PM clk_prepare_enable fail flow
        spi: mediatek: replace int with u32, delete TAB and define 
MTK_SPI_PAUSE_INT_STATUS marco
        spi: mediatek: add linux/io.h include file
        spi/bcm63xx-hsspi: add support for dual spi read/write
        spi: dw: Allow interface drivers to limit data I/O to word sizes
        dt: snps,dw-apb-ssi: Document new I/O data register width property
        spi: Fall back to master maximum speed if no slave speed specified
        spi: mediatek: use BIT() to instead of SPI_CMD_*_OFFSET
        spi: medaitek: revise quirks compatibility style
        spi: mediatek: fix spi incorrect endian usage
        ...

  commit cf9d615f7f5842ca1ef0f28ed9f67a97d20cf6fc
  Merge: e270160 f5164b8
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 15:49:19 2015 -0700

      Merge tag 'regulator-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator

      Pull regulator updates from Mark Brown:
       "The biggest changes in the core this time around have been some
        refactorings that move us towards being able to drop the list of
        regulators maintained by the core and instead just use the driver
        model list maintained for the class devices for regulators which will
        make the code smaller and avoid some potential bugs.

        Otherwise another fairly quiet release for the regulator API,
        highlights include:

         - a new API for setting voltages based on a minimum, target, maximum
           triplet

         - support for continuous voltage ranges rather than tables of
           explicit steps in the PWM regulator, requiring less explicit
           configuration

         - new driver support for Dialog DA9215, Maxim 77843, Mediatek MT6311
           and Qualcomm RPM"

      * tag 'regulator-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (70 commits)
        regulator: mt6311: fix platform_no_drv_owner.cocci warnings
        regulator: ltc3589: Remove unnecessary MODULE_ALIAS()
        regulator: ad5398: Remove unnecessary MODULE_ALIAS()
        regulator: pfuze100: Remove unnecessary MODULE_ALIAS()
        regulator: core: use debug level print in regulator_check_drms
        regulator: lp872x: handle error case
        regulator: lp872x: use the private data instead of updating I2C device 
platform data
        regulator: isl9305: Export OF module alias information
        regulators: max77693: register driver earlier to avoid deferred probe
        regulator: qcom_smd: Set n_voltages for pm8941_lnldo
        regulator: core: Use IS_ERR_OR_NULL()
        regulator: core: Define regulator_set_voltage_triplet()
        regulator: Regulator driver for the Qualcomm RPM
        regulator: pbias: Fix broken pbias disable functionality
        regulator: core: Spelling fix
        regulator: core: Use class device list for regulator_list in late init
        regulator: core: Move more deallocation into class unregister
        regulator: core: Reduce rdev locking region when releasing regulator
        Input: Remove the max77843 haptic driver
        Input: max77693: Add support for Maxim 77843
        ...

  commit e2701603f72cd38e99c6b1da13c8e99bc27b2f34
  Merge: 22629b6 ce14c58
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 15:40:05 2015 -0700

      Merge tag 'docs-for-linus' of git://git.lwn.net/linux-2.6

      Pull documentation updates from Jonathan Corbet:
       "There's been a fair amount going on in the docs tree this time around,
        including:

         - Support for reproducible document builds, from Ben Hutchings and
           company.

         - The ability to automatically generate cross-reference links within
           a single DocBook book and embedded descriptions for large
           structures.  From Danilo Cesar Lemes de Paula.

         - A new document on how to add a system call from David Drysdale.

         - Chameleon bus documentation from Johannes Thumshirn.

        ...plus the usual collection of improvements, typo fixes, and more"

      * tag 'docs-for-linus' of git://git.lwn.net/linux-2.6: (39 commits)
        Documentation, add kernel-parameters.txt entry for dis_ucode_ldr
        Documentation/x86: Rename IRQSTACKSIZE to IRQ_STACK_SIZE
        Documentation/Intel-IOMMU.txt: Modify definition of DRHD
        docs: update HOWTO for 3.x -> 4.x versioning
        kernel-doc: ignore unneeded attribute information
        scripts/kernel-doc: Adding cross-reference links to html documentation.
        DocBook: Fix non-determinstic installation of duplicate man pages
        Documentation: minor typo fix in mailbox.txt
        Documentation: describe how to add a system call
        doc: Add more workqueue functions to the documentation
        ARM: keystone: add documentation for SoCs and EVMs
        scripts/kernel-doc Allow struct arguments documentation in struct body
        SubmittingPatches: remove stray quote character
        Revert "DocBook: Avoid building man pages repeatedly and inconsistently"
        Documentation: Minor changes to men-chameleon-bus.txt
        Doc: fix trivial typo in SubmittingPatches
        MAINTAINERS: Direct Documentation/DocBook/media properly
        Documentation: installed man pages don't need to be executable
        fix Evolution submenu name in email-clients.txt
        Documentation: Add MCB documentation
        ...

  commit 22629b6d9072c4e86e900306d7020ad722ae6536
  Merge: c8192ba 1ed3216
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 15:31:12 2015 -0700

      Merge tag 'hwmon-for-linus-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging

      Pull hwmon updates from Guenter Roeck:
       "Notable changes:

         - added support for LTM4675, LTC3886, LTC2980, LTM2987, LTC2975,
           LTC3887, LTC3882, MAX20751, ADM1293, and ADM1294 to PMBus drivers
         - added support for IT8732F to it87 driver
         - added support for AMD Carrizo to fam15h_power driver
         - added support for various new attributes to nct7802 driver
         - added support for F81866 and F71868 to f71882fg driver"

      * tag 'hwmon-for-linus-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (45 commits)
        hwmon: (fam15h_power) Add ratio of Tsample to the PTSC period
        hwmon: (fam15h_power) Add documentation for new processors support
        hwmon: (fam15h_power) Update running_avg_capture bit field to 28
        hwmon: (fam15h_power) Rename fam15h_power_is_internal_node0 function
        hwmon: (fam15h_power) Add support for AMD Carrizo
        hwmon: (ltc2978) Add support for LTM4675
        hwmon: (ltc2978) Add polling for chips requiring it
        hwmon: (pmbus) Enable PEC if the controller supports it
        hwmon: (pmbus) Use BIT macro
        hwmon: (ltc2978) Add support for LTC3886
        hwmon: (ltc2978) Add support for LTC2980 and LTM2987
        hwmon: (ltc2978) Add missing chip IDs for LTC2978 and LTC3882
        hwmon: (ltc2978) Use correct ID mask to detect all chips
        hwmon: (ltc2978) Introduce helper functions for min and max values
        hwmon: (ltc2978) Introduce feature flags
        hwmon: (pmbus) Convert command register definitions to enum
        hwmon: (ltc2978) Add support for LTC2975
        hwmon: (ltc2978) Add support for LTC3887
        hwmon: (ltc2978) Add additional chip IDs for LTM4676 and LTM4676A
        hwmon: (ltc2978) Add support for LTC3882
        ...

  commit c8192ba416397ad6ce493f186da40767ce086c3b
  Merge: 9c6a019 b68c316
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 15:25:16 2015 -0700

      Merge tag 'for-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply

      Pull power supply and reset changes from Sebastian Reichel:
       - new reset driver for ZTE SoCs
       - add support for sama5d3 reset handling
       - overhaul of twl4030 charger driver
       - misc fixes and cleanups

      * tag 'for-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (35 
commits)
        bq2415x_charger: Allow to load and use driver even if notify device is 
not registered yet
        twl4030_charger: fix compile error when TWL4030_MADC not available.
        power: bq24190_charger: Fix charge type sysfs property
        power: Allow compile test of GPIO consumers if !GPIOLIB
        power: Export I2C module alias information in missing drivers
        twl4030_charger: Increase current carefully while watching voltage.
        twl4030_charger: add ac/mode to match usb/mode
        twl4030_charger: add software controlled linear charging mode.
        twl4030_charger: enable manual enable/disable of usb charging.
        twl4030_charger: allow max_current to be managed via sysfs.
        twl4030_charger: distinguish between USB current and 'AC' current
        twl4030_charger: allow fine control of charger current.
        twl4030_charger: split uA calculation into a function.
        twl4030_charger: trust phy to determine when USB power is available.
        twl4030_charger: correctly handle -EPROBE_DEFER from 
devm_usb_get_phy_by_node
        twl4030_charger: convert to module_platform_driver instead of ..._probe.
        twl4030_charger: use runtime_pm to keep usb phy active while charging.
        rx51-battery: Set name to rx51-battery
        MAINTAINERS: AVS is not maintained via power supply tree
        power: olpc_battery: clean up eeprom read function
        ...

  commit c42858eaf4926eb2f44f3e26731b276ab966ac28
  Author: Eric Dumazet <edumazet@xxxxxxxxxx>
  Date:   Mon Aug 31 13:57:34 2015 -0700

      gro_cells: remove spinlock protecting receive queues

      As David pointed out, spinlock are no longer needed
      to protect the per cpu queues used in gro cells infrastructure.

      Also use new napi_complete_done() API so that gro_flush_timeout
      tweaks have an effect.

      Signed-off-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e704059272aae2aaa5e5ce7a76e4c27c492e947e
  Author: David Ward <david.ward@xxxxxxxxxx>
  Date:   Mon Aug 31 14:15:14 2015 -0400

      net: qmi_wwan: Sierra Wireless MC73xx -> Sierra Wireless MC7304/MC7354

      Other Sierra Wireless MC73xx devices exist, with different USB IDs.

      Cc: Bjørn Mork <bjorn@xxxxxxx>
      Signed-off-by: David Ward <david.ward@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a394eef562d781f37a50d99cf1dfe596dc1ed96d
  Author: Marius Tomaschewski <mt@xxxxxxx>
  Date:   Mon Aug 31 15:59:22 2015 +0200

      ipv6: send NEWLINK on RA managed/otherconf changes

      The kernel is applying the RA managed/otherconf flags silently and
      forgets to send ifinfo notify to inform about their change when the
      router provides a zero reachable_time and retrans_timer as dnsmasq
      and many routers send it, which just means unspecified by this router
      and the host should continue using whatever value it is already using.
      Userspace may monitor the ifinfo notifications to activate dhcpv6.

      Signed-off-by: Marius Tomaschewski <mt@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9c6a019c6edf8591e34ae9da51bac7684131d905
  Merge: 7c01919 e4ec735
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 15:11:53 2015 -0700

      Merge branch 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux

      Pull s390 updates from Martin Schwidefsky:
       "The big one is support for fake NUMA, splitting a really large machine
        in more manageable piece improves performance in some cases, e.g. for
        a KVM host.

        The FICON Link Incident handling has been improved, this helps the
        operator to identify degraded or non-operational FICON connections.

        The save and restore of floating point and vector registers has been
        overhauled to allow the future use of vector registers in the kernel.

        A few small enhancement, magic sys-requests for the vt220 console via
        SCLP, some more assembler code has been converted to C, the PCI error
        handling is improved.

        And the usual cleanup and bug fixing"

      * 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (59 commits)
        s390/jump_label: Use %*ph to print small buffers
        s390/sclp_vt220: support magic sysrequests
        s390/ctrlchar: improve handling of magic sysrequests
        s390/numa: remove superfluous ARCH_WANT defines
        s390/3270: redraw screen on unsolicited device end
        s390/dcssblk: correct out of bounds array indexes
        s390/mm: simplify page table alloc/free code
        s390/pci: move debug messages to debugfs
        s390/nmi: initialize control register 0 earlier
        s390/zcrypt: use msleep() instead of mdelay()
        s390/hmcdrv: fix interrupt registration
        s390/setup: fix novx parameter
        s390/uaccess: remove uaccess_primary kernel parameter
        s390: remove unneeded sizeof(void *) comparisons
        s390/facilities: remove transactional-execution bits
        s390/numa: re-add DIE sched_domain_topology_level
        s390/dasd: enhance CUIR scope detection
        s390/dasd: fix failing path verification
        s390/vdso: emit a GNU hash
        s390/numa: make core to node mapping data dynamic
        ...

  commit 7c01919130ef8b27306ed1faf1f2cc079621923c
  Merge: 7b8067d 650c919
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 15:06:28 2015 -0700

      Merge tag 'xtensa-20150830' of git://github.com/czankel/xtensa-linux

      Pull xtensa updates from Chris Zankel:
       "Xtensa fixes and improvements for 4.3:

         - reimplement DMA API using common helpers
         - implement counting and sampling perf events using hardware perf
           counters
         - add fake NMI support for hardware perf counters
         - fix THREADPTR register reloading on return to userspace
         - keep exception/interrupt stack continuous for debugger
         - improve vmlinux.lds.S post-processing"

      * tag 'xtensa-20150830' of git://github.com/czankel/xtensa-linux:
        xtensa: improve vmlinux.lds.S sed post-processing
        xtensa: drop unused irq_err_count
        xtensa: implement fake NMI
        xtensa: don't touch EXC_TABLE_FIXUP in _switch_to
        xtensa: fix kernel register spilling
        xtensa: reorganize irq flags tracing
        perf tools: xtensa: add DWARF register names
        xtensa: implement counting and sampling perf events
        xtensa: count software page fault perf events
        xtensa: add profiling IRQ type to xtensa_irq_map
        xtensa: select PERF_USE_VMALLOC for cache-aliasing configurations
        xtensa: move oprofile stack tracing to stacktrace.c
        xtensa: keep exception/interrupt stack continuous
        xtensa: clean up Kconfig dependencies for custom cores
        xtensa: reimplement DMA API using common helpers
        xtensa: fix threadptr reload on return to userspace
        xtensa: ISS: add missing va_end into split_if_spec

  commit 7b8067d37058ec01889513e16033fb6de72a98ce
  Merge: 9551bf2 8f8dcb3
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 15:01:08 2015 -0700

      Merge branch 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha

      Pull alpha update from Matt Turner:
       "A single patch for alpha, one that enables ARCH_USE_CMPXCHG_LOCKREF
        and offers around an 8% performance improvement on a little benchmark
        that you wrote"

      * 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha:
        alpha: select CONFIG_ARCH_USE_CMPXCHG_LOCKREF.

  commit 9551bf292d67e9070409b59685cdb8fc5437ec3a
  Merge: 4ff1204 1ecb406
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 14:52:45 2015 -0700

      Merge branch 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k

      Pull m68k updates from Geert Uytterhoeven.

      * 'for-linus' of 
git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
        m68k/bootinfo: Use kmemdup rather than duplicating its implementation
        m68k/defconfig: Update defconfigs for v4.2-rc1
        m68k/defconfig: Disable experimental CONFIG_DM_CACHE

  commit 684511ac2eeb015b7a9a46c575543566e1b1fb7c
  Merge: 6ea3c9d5 bc0f4a8
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Aug 31 14:48:03 2015 -0700

      Merge branch 'dsa-port-config'

      Andrew Lunn says:

      ====================
      DSA port configuration and status

      This patchset allows various switch port settings to be configured and
      port status to be sampled. Some of these patches have been posted
      before.

      The first three patches provide infrastructure for configuring a
      switch ports link speed and duplex from a fixed_link phy.

      Patch four then uses this infrastructure to allow the CPU and DSA
      ports of a switch to be configured using a fixed-link property in the
      device tree.

      Patches five and six allow a phy-mode property to be specified in the
      device tree, and allow this to be used for configuring RGMII delays.

      Patches seven through nine allow link status, for example that of an
      SFP module, to be read from a gpio.

      Changes since v1:

      Rewrite 9/9 so that it hopefully does not regression on
      868a4215be9a6d80 ("net: phy: fixed_phy: handle link-down case")
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit bc0f4a87fc7e45642455682f281de2131cde9695
  Author: Andrew Lunn <andrew@xxxxxxx>
  Date:   Mon Aug 31 15:56:54 2015 +0200

      net: phy: fixed_phy: Set phy capabilities even when link down.

      What features a phy supports is masked in genphy_config_init() by
      looking at the PHYs BMSR register.

      If the link is down, fixed_phy_update_regs() will only set the auto-
      negotiation capable bit in BMSR. Thus genphy_config_init() comes to
      the conclusion the PHY can only perform 10/Half, and masks out the
      higher speed features. If however the link it up, BMSR is set to
      indicate the speed the PHY is capable of auto-negotiating, and
      genphy_config_init() does not mask out the high speed features.

      To fix this, when the link is down, have fixed_phy_update_regs() leave
      the link status, auto-negotiation complete, and link partner
      capabilities unset, but set all the local capabilities depending on
      the fixed phy speed.

      Signed-off-by: Andrew Lunn <andrew@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a5597008dbc230876db2d344561d634f4d52ea4a
  Author: Andrew Lunn <andrew@xxxxxxx>
  Date:   Mon Aug 31 15:56:53 2015 +0200

      phy: fixed_phy: Add gpio to determine link up/down.

      An SFP module may have a link up/down status pin which can be
      connection to a GPIO line of the host. Add support for reading such an
      GPIO in the fixed_phy driver.

      Signed-off-by: Andrew Lunn <andrew@xxxxxxx>
      Reviewed-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8b59d19e749b8cb454b7912396c2a6a1b91b9d30
  Author: Andrew Lunn <andrew@xxxxxxx>
  Date:   Mon Aug 31 15:56:52 2015 +0200

      dsa: mv88e6xxx: Don't poll forced interfaces for state changes

      When polling for link status, don't consider ports which have a forced
      link. Such ports don't monitor their phy or may not even have a phy.

      Signed-off-by: Andrew Lunn <andrew@xxxxxxx>
      Acked-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e7e72ac05acc357065a9448314dd14fff7c40d39
  Author: Andrew Lunn <andrew@xxxxxxx>
  Date:   Mon Aug 31 15:56:51 2015 +0200

      dsa: mv88e6xxx: Set the RGMII delay based on phy interface

      Some Marvell switches allow the RGMII Rx and Tx clock to be delayed
      when the port is using RGMII. Have the adjust_link function look at
      the phy interface type and enable this delay as requested.

      Signed-off-by: Andrew Lunn <andrew@xxxxxxx>
      Reviewed-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e44853466844c20d8b5b16de187f63ddc50710dd
  Author: Andrew Lunn <andrew@xxxxxxx>
  Date:   Mon Aug 31 15:56:50 2015 +0200

      net: dsa: Allow DSA and CPU ports to have a phy-mode property

      It can be useful for DSA and CPU ports to have a phy-mode property, in
      particular to specify RGMII delays. Parse the property and set it in
      the fixed-link phydev.

      Signed-off-by: Andrew Lunn <andrew@xxxxxxx>
      Acked-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 39b0c705195e9409dc8a40cc82b11d81405a4a4b
  Author: Andrew Lunn <andrew@xxxxxxx>
  Date:   Mon Aug 31 15:56:49 2015 +0200

      net: dsa: Allow configuration of CPU & DSA port speeds/duplex

      By default, DSA and CPU ports are configured to the maximum speed the
      switch supports. However there can be use cases where the peer devices
      port is slower. Allow a fixed-link property to be used with the DSA
      and CPU port in the device tree, and use this information to configure
      the port.

      Signed-off-by: Andrew Lunn <andrew@xxxxxxx>
      Reviewed-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 34b31da486a5e4eda9ff548ebf6dc3adc167bd0c
  Author: Andrew Lunn <andrew@xxxxxxx>
  Date:   Mon Aug 31 15:56:48 2015 +0200

      phy: fixed_phy: Set supported speed in phydev

      Set the supported field of the phydev to indicate the speed features
      of the phy. If the phy is never attached to a netdev, but used in an
      adjust_link() function, the speed will be incorrectly evaluated to
      10/half rather than the correct speed/duplex.

      Signed-off-by: Andrew Lunn <andrew@xxxxxxx>
      Acked-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit dea870242a9c4ea74b3ca0f2da3f864c47484cff
  Author: Andrew Lunn <andrew@xxxxxxx>
  Date:   Mon Aug 31 15:56:47 2015 +0200

      dsa: mv88e6xxx: Allow speed/duplex of port to be configured

      The current code sets user ports to perform auto negotiation using the
      phy. CPU and DSA ports are configured to full duplex and maximum speed
      the switch supports.

      There are however use cases where the CPU has a slower port, and when
      user ports have SFP modules with fixed speed. In these cases, port
      settings to be read from a fixed_phy devices. The switch driver then
      needs to implement the adjust_link op, so the port settings can be
      set.

      Signed-off-by: Andrew Lunn <andrew@xxxxxxx>
      Reviewed-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 5a11dd7d9649149f336ca72069d56ce52b21567f
  Author: Florian Fainelli <f.fainelli@xxxxxxxxx>
  Date:   Mon Aug 31 15:56:46 2015 +0200

      net: phy: Allow PHY devices to identify themselves as Ethernet switches, 
etc.

      Some Ethernet MAC drivers using the PHY library require the hardcoding
      of link parameters when interfaced to a switch device, SFP module,
      switch to switch port, etc. This has typically lead to various ad-hoc
      implementations looking like this:

      - using a "fixed PHY" emulated device, which will provide link
        indication towards the Ethernet MAC driver and hardware

      - pretend there is no PHY and hardcode link parameters, ala mv643x_eth

      Based on that, it is desireable to have the PHY drivers advertise the
      correct link parameters, just like regular Ethernet PHYs towards their
      CPU Ethernet MAC drivers, however, Ethernet MAC drivers should be able
      to tell whether this link should be monitored or not. In the context
      of an Ethernet switch, SFP module, switch to switch link, we do not
      need to monitor this link since it should be always up.

      Signed-off-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: Andrew Lunn <andrew@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4ff12049d6b6cc79ad8ee092ae226434687062ec
  Merge: c207840 44840de
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 14:38:07 2015 -0700

      Merge tag 'usb-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb

      Pull USB updates from Greg KH:
       "Here's the big USB and PHY patchset for 4.3-rc1.

        As usual, the majority of the changes are in the USB gadget portion of
        the tree, lots of little changes all over the place for bugs and new
        hardware.  Other than that, the normal mix of new hardware support and
        bugfixes.

        All have been in linux-next with no reported issues"

      * tag 'usb-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (261 commits)
        USB: qcserial: add HP lt4111 LTE/EV-DO/HSPA+ Gobi 4G Module
        USB: ftdi_sio: Added custom PID for CustomWare products
        USB: usb_wwan: silence read errors on disconnect
        USB: option: silence interrupt errors
        USB: symbolserial: Correct transferred data size
        USB: symbolserial: Use usb_get_serial_port_data
        usb: misc: usbtest: format max packet size for iso transfer
        usb: host: ehci-sys: delete useless bus_to_hcd conversion
        Revert "usb: interface authorization: Declare authorized attribute"
        Revert "usb: interface authorization: Introduces the default interface 
authorization"
        Revert "usb: interface authorization: Control interface probing and 
claiming"
        Revert "usb: interface authorization: Introduces the USB interface 
authorization"
        Revert "usb: interface authorization: SysFS part of USB interface 
authorization"
        Revert "usb: interface authorization: Documentation part"
        Revert "usb: interface authorization: Use a flag for the default device 
authorization"
        usb: core: hub: Removed some warnings generated by checkpatch.pl
        USB: host: ohci-at91: merge loops in ohci_hcd_at91_drv_probe
        USB: host: ohci-at91: merge ohci_at91_of_init in ohci_hcd_at91_drv_probe
        USB: host: ohci-at91: depend on OF
        USB: host: ohci-at91: move at91_usbh_data definition in c file
        ...

  commit c2078402e479f963168bfcf7a8de78ab63748a98
  Merge: 2f37d65 c868cbb
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 14:28:07 2015 -0700

      Merge tag 'tty-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty

      Pull tty/serial driver updates from Greg KH:
       "Here is the big tty/serial driver update for 4.3-rc1.

        Not many major things, a number of driver updates and changes, and the
        8250 driver got split up a bit to make it easier to work with by
        moving some functions to a new file.  Full details are in the
        shortlog.

        All have been in linux-next with no reported issues"

      * tag 'tty-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (90 commits)
        serial: imx: save and restore context in the suspend path
        serial: imx: allow waking up on RTSD
        serial: imx: introduce serial_imx_enable_wakeup()
        serial: imx: remove unbalanced clk_prepare
        serial: 8250: move rx_running out of the bitfield
        tty: serial: 8250_omap: do not use RX DMA if pause is not supported
        serial:8250_dw: do not alter CTS and DCTS since AFE is enabled
        tty: serial: men_z135_uart.c: Don't initialize port->lock
        tty: serial: men_z135_uart.c: Fix race between IRQ and set_termios()
        serial: 8250: bind to ALi Fast Infrared Controller (ALI5123)
        serial: 8250: don't bind to SMSC IrCC IR port
        serial: mxs-auart: fix baud rate range
        serial: mxs-auart: keep the AUART unit in reset state when not in use
        serial: mxs-auart: use a function name to reflect what it really does
        serial: 8250_pci: fix mode after S3/S4 resume for F81504/508/512
        sc16is7xx: constify devtype
        sc16is7xx: support multiple devices
        sc16is7xx: save and use per-chip line number
        uart: pl011: Add support to ZTE ZX296702 uart
        uart: pl011: Improve LCRH register access decision
        ...

  commit bcc84ec65ad1bd9f777a1fade6f8e5e0c5808fa5
  Author: Stephane Eranian <eranian@xxxxxxxxxx>
  Date:   Mon Aug 31 18:41:12 2015 +0200

      perf record: Add ability to name registers to record

      This patch modifies the -I/--int-regs option to enablepassing the name
      of the registers to sample on interrupt. Registers can be specified by
      their symbolic names. For instance on x86, --intr-regs=ax,si.

      The motivation is to reduce the size of the perf.data file and the
      overhead of sampling by only collecting the registers useful to a
      specific analysis. For instance, for value profiling, sampling only the
      registers used to passed arguements to functions.

      With no parameter, the --intr-regs still records all possible registers
      based on the architecture.

      To name registers, it is necessary to use the long form of the option,
      i.e., --intr-regs:

        $ perf record --intr-regs=si,di,r8,r9 .....

      To record any possible registers:

        $ perf record -I .....
        $ perf report --intr-regs ...

      To display the register, one can use perf report -D

      To list the available registers:

        $ perf record --intr-regs=\?
        available registers: AX BX CX DX SI DI BP SP IP FLAGS CS SS R8 R9 R10 
R11 R12 R13 R14 R15

      Signed-off-by: Stephane Eranian <eranian@xxxxxxxxxx>
      Tested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441039273-16260-4-git-send-email-eranian@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit c5e991ee9dff0f8136168ed2d0d1a8cc3620dac4
  Author: Stephane Eranian <eranian@xxxxxxxxxx>
  Date:   Mon Aug 31 18:41:11 2015 +0200

      perf/x86: Add list of register names

      This patch adds a way to locate a register identifier (PERF_X86_REG_*)
      based on its name, e.g., AX.

      This will be used by a subsequent patch to improved flexibility of perf
      record.

      Signed-off-by: Stephane Eranian <eranian@xxxxxxxxxx>
      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441039273-16260-3-git-send-email-eranian@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit fc36f9485aee3a62b22be1f561543a31bce6d48e
  Author: Stephane Eranian <eranian@xxxxxxxxxx>
  Date:   Mon Aug 31 18:41:10 2015 +0200

      perf script: Enable printing of interrupted machine state

      This patch adds the output of the interrupted machine state (iregs) to
      perf script. It presents them  as NAME:VALUE so this is easy to parse
      during post processing.

      To capture the interrupted machine state:
         $ perf record -I ....

      to display iregs, use the -F option:

         $ perf script -F ip,iregs
         40afc2   AX:0x6c5770    BX:0x1e    CX:0x5f4d80a    
DX:0x101010101010101    SI:0x1

      Signed-off-by: Stephane Eranian <eranian@xxxxxxxxxx>
      Tested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1441039273-16260-2-git-send-email-eranian@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit bdbf4a29ee5bbe5b6743ba47bc7b10ec2cba8b21
  Author: Vladimir Zapolskiy <vz@xxxxxxxxx>
  Date:   Wed Aug 26 23:59:33 2015 +0300

      i2c: muxes: fix leaked i2c adapter device node references

      Every call of of_parse_phandle() increments user count of found device
      node, if OF_DYNAMIC is enabled.

      The change fixes all similar addressed cases in drivers/i2c.

      Signed-off-by: Vladimir Zapolskiy <vz@xxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit 3fcbbd244ed1d20dc0eb7d48d729503992fa9b7d
  Author: Jeff Layton <jlayton@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 24 12:41:48 2015 -0400

      nfsd: ensure that delegation stateid hash references are only put once

      It's possible that a DELEGRETURN could race with (e.g.) client expiry,
      in which case we could end up putting the delegation hash reference more
      than once.

      Have unhash_delegation_locked return a bool that indicates whether it
      was already unhashed. In the case of destroy_delegation we only
      conditionally put the hash reference if that returns true.

      The other callers of unhash_delegation_locked call it while walking
      list_heads that shouldn't yet be detached. If we find that it doesn't
      return true in those cases, then throw a WARN_ON as that indicates that
      we have a partially hashed delegation, and that something is likely very
      wrong.

      Tested-by: Andrew W Elble <aweits@xxxxxxx>
      Tested-by: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
      Signed-off-by: Jeff Layton <jeff.layton@xxxxxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit e85687393f3ee0a77ccca016f903d1558bb69258
  Author: Jeff Layton <jlayton@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 24 12:41:47 2015 -0400

      nfsd: ensure that the ol stateid hash reference is only put once

      When an open or lock stateid is hashed, we take an extra reference to
      it. When we unhash it, we drop that reference. The code however does
      not properly account for the case where we have two callers concurrently
      trying to unhash the stateid. This can lead to list corruption and the
      hash reference being put more than once.

      Fix this by having unhash_ol_stateid use list_del_init on the st_perfile
      list_head, and then testing to see if that list_head is empty before
      releasing the hash reference. This means that some of the unhashing
      wrappers now become bool return functions so we can test to see whether
      the stateid was unhashed before we put the reference.

      Reported-by: Andrew W Elble <aweits@xxxxxxx>
      Tested-by: Andrew W Elble <aweits@xxxxxxx>
      Reported-by: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
      Tested-by: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
      Signed-off-by: Jeff Layton <jeff.layton@xxxxxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit 051ac3848a94f21cfdec899cc9c65ce7f9f116fa
  Author: Pratyush Anand <panand@xxxxxxxxxx>
  Date:   Thu Aug 27 10:01:33 2015 +0530

      net: sunrpc: fix tracepoint Warning: unknown op '->'

      `perf stat  -e sunrpc:svc_xprt_do_enqueue true` results in

      Warning: unknown op '->'
      Warning: [sunrpc:svc_xprt_do_enqueue] unknown op '->'

      Similar warning for svc_handle_xprt as well.

      Actually TP_printk() should never dereference an address saved in the ring
      buffer that points somewhere in the kernel. There's no guarantee that that
      object still exists (with the exception of static strings).

      Therefore change all the arguments for TP_printk(), so that it references
      values existing in the ring buffer only.

      While doing that, also fix another possible bug when argument xprt could 
be
      NULL and TP_fast_assign() tries to access it's elements.

      Signed-off-by: Pratyush Anand <panand@xxxxxxxxxx>
      Reviewed-by: Jeff Layton <jeff.layton@xxxxxxxxxxxxxxx>
      Acked-by: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Fixes: 83a712e0afef "sunrpc: add some tracepoints around ..."
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit 51a545685905c934237e640083bc3aa40b36dc14
  Author: Jeff Layton <jlayton@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 07:17:01 2015 -0400

      nfsd: allow more than one laundry job to run at a time

      We can potentially have several nfs4_laundromat jobs running if there
      are multiple namespaces running nfsd on the box. Those are effectively
      separated from one another though, so I don't see any reason to
      serialize them.

      Also, create_singlethread_workqueue automatically adds the
      WQ_MEM_RECLAIM flag. Since we run this job on a timer, it's not really
      involved in any reclaim paths. I see no need for a rescuer thread.

      Signed-off-by: Jeff Layton <jeff.layton@xxxxxxxxxxxxxxx>
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit 46cc8ba30445025f0ed3ed9f429aea573b301122
  Author: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
  Date:   Tue Aug 25 16:59:16 2015 -0400

      nfsd: don't WARN/backtrace for invalid container deployment.

      These messages, combined with the backtrace they trigger, makes it seem
      like a serious problem, though a quick search shows distros marking
      it as a "won't fix" non-issue when the problem is reported by users.

      The backtrace is overkill, and only really manages to show that if
      you follow the code path, you can't really avoid it with bootargs
      or configuration settings in the container.

      Given that, lets tone it down a bit and get rid of the WARN severity,
      and the associated backtrace, so people aren't needlessly alarmed.

      Also, lets drop the split printk line, since they are grep unfriendly.

      Signed-off-by: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit d988d5ee647861706bc7a391ddbc29429b50f00e
  Author: Kan Liang <kan.liang@xxxxxxxxx>
  Date:   Fri Aug 21 02:23:14 2015 -0400

      perf evlist: Open event on evsel cpus and threads

      An evsel may have different cpus and threads than the evlist it is in.

      Use it's own cpus and threads, when opening the evsel in 'perf record'.

      Signed-off-by: Kan Liang <kan.liang@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440138194-17001-1-git-send-email-kan.liang@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 7fadc59cc89f207ff6ca3d0951e11265fb4f806e
  Author: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
  Date:   Sun Aug 9 18:43:17 2015 -0700

      fs: fix fs/locks.c kernel-doc warning

      Fix kernel-doc warnings in fs/locks.c:

      Warning(..//fs/locks.c:1577): No description found for parameter 'flags'

      Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
      Signed-off-by: Jeff Layton <jeff.layton@xxxxxxxxxxxxxxx>

  commit 1f65c17e15992193f1c3f735696872cb75191517
  Author: J. Bruce Fields <bfields@xxxxxxxxxx>
  Date:   Tue Aug 18 15:34:44 2015 -0400

      nfsd: Add Jeff Layton as co-maintainer

      Jeff has been doing a lot of development (including much of the
      state-locking rewrite just as one example) plus lots of review and other
      miscellaneous nfsd work, so let's acknowledge the status quo.

      I'll continue to be the one to send regular pull requests but Jeff will
      should be available to cover there occasionally too.

      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit 75976de6556f593f6c2a18bbbcfb1e594cc7598a
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Thu Jul 30 21:55:30 2015 +0800

      NFSD: Return word2 bitmask if setting security label in OPEN/CREATE

      Security label can be set in OPEN/CREATE request, nfsd should set
      the bitmask in word2 if setting success.

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit ead8fb8c24411722b92198b3dccd102a76cdd050
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Thu Jul 30 21:55:02 2015 +0800

      NFSD: Set the attributes used to store the verifier for EXCLUSIVE4_1

      According to rfc5661 18.16.4,
      "If EXCLUSIVE4_1 was used, the client determines the attributes
       used for the verifier by comparing attrset with cva_attrs.attrmask;"

      So, EXCLUSIVE4_1 also needs those bitmask used to store the verifier.

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit 7d580722c9f353d19e255f929d341caa821060d6
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Thu Jul 30 21:54:26 2015 +0800

      nfsd: SUPPATTR_EXCLCREAT must be encoded before SECURITY_LABEL.

      The encode order should be as the bitmask defined order.

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit 6896f15aabde505b35888039af93d1d182a0108a
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Thu Jul 30 21:52:44 2015 +0800

      nfsd: Fix an FS_LAYOUT_TYPES/LAYOUT_TYPES encode bug

      Currently we'll respond correctly to a request for either
      FS_LAYOUT_TYPES or LAYOUT_TYPES, but not to a request for both
      attributes simultaneously.

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit acf860ae7c53cc8b0c5d372c218332aac3eeba4f
  Author: Wang Nan <wangnan0@xxxxxxxxxx>
  Date:   Thu Aug 27 02:30:55 2015 +0000

      bpf tools: New API to get name from a BPF object

      Before this patch there's no way to connect a loaded bpf object
      to its source file. However, during applying perf's '--filter' to BPF
      object, without this connection makes things harder, because perf loads
      all programs together, but '--filter' setting is for each object.

      The API of bpf_object__open_buffer() is changed to allow passing a name.
      Fortunately, at this time there's only one user of it (perf test LLVM),
      so we change it together.

      Signed-off-by: Wang Nan <wangnan0@xxxxxxxxxx>
      Cc: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Cc: Brendan Gregg <brendan.d.gregg@xxxxxxxxx>
      Cc: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: He Kuang <hekuang@xxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kaixu Xia <xiakaixu@xxxxxxxxxx>
      Cc: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Zefan Li <lizefan@xxxxxxxxxx>
      Cc: pi3orama@xxxxxxx
      Link: 
http://lkml.kernel.org/r/1440742821-44548-2-git-send-email-wangnan0@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit dc9cee5db50afaf38506bc12eb479fb8ea536dba
  Author: Mike Snitzer <snitzer@xxxxxxxxxx>
  Date:   Mon Aug 31 15:41:34 2015 -0400

      dm cache: small cleanups related to deferred prison cell cleanup

      Eliminate __cell_release() since it only had one caller that always
      released the cell holder.

      Switch cell_error_with_code() to using free_prison_cell() for the sake
      of consistency.

      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>

  commit 6ea3c9d5b042edf14eac1e21af21c41f81f3491e
  Author: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 10:44:19 2015 -0700

      mpls: fix mpls_net_init memory leak

      Fix a memory leak in the mpls netns init function in case of failure. If
      register_net_sysctl fails then we need to free the ctl_table.

      Fixes: 7720c01f3f59 ("mpls: Add a sysctl to control the size of the mpls 
label table")
      Signed-off-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f0fa6e529efbca3b97ab6286dbeb5910e33f6c53
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 09:57:12 2015 -0600

      net: Add tos to validate source tracepoint

      TOS is another key aspect of the lookup passed to fib_validate_source.
      Add it to the tracepoint.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit dbb7ee0e474cc8221de55583f516275693c5b552
  Author: Alexei Starovoitov <ast@xxxxxxxxxxxx>
  Date:   Mon Aug 31 08:57:10 2015 -0700

      lib: move strncpy_from_unsafe() into mm/maccess.c

      To fix build errors:
      kernel/built-in.o: In function `bpf_trace_printk':
      bpf_trace.c:(.text+0x11a254): undefined reference to `strncpy_from_unsafe'
      kernel/built-in.o: In function `fetch_memory_string':
      trace_kprobe.c:(.text+0x11acf8): undefined reference to 
`strncpy_from_unsafe'

      move strncpy_from_unsafe() next to probe_kernel_read/write()
      which use the same memory access style.

      Reported-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Reported-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Fixes: 1a6877b9c0c2 ("lib: introduce strncpy_from_unsafe()")
      Signed-off-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9dc30648f0708cf063e29470d83f63f8dc8fc430
  Merge: 87583eb c3a8d94
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Aug 31 12:34:00 2015 -0700

      Merge branch 'per-route-dctcp-receive-side'

      Daniel Borkmann says:

      ====================
      tcp: receive-side per route dctcp handling

      Original cover letter:

        Currently, the following case doesn't use DCTCP, even if it should:

          - responder has f.e. cubic as system wide default
          - 'ip route congctl dctcp $src' was set

        Then, DCTCP is NOT used if a DCTCP sender attempts to connect from a
        host in the $src range: ECT(0) is set, but listen_sk is not dctcp, so
        we fail the INET_ECN_is_not_ect sanity check.

        We also have to examine the dst used for the SYN/ACK reply to make
        this case work.

        In order to minimize additional cost, store the 'ecn is must have'
        information is the dst_features field.

        The set targets -next instead of -net since this doesn't seem to be a
        serious bug and to give the change more soak time until it hits linus
        tree.

      v1 -> v2:
       - Addressed Dave's feedback, not exposing any bits to user space
       - Added patch 3 to reject incorrect configurations
       - Rest as is, rebased and retested
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c3a8d9474684d391b0afc3970d9b249add15ec07
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Mon Aug 31 15:58:47 2015 +0200

      tcp: use dctcp if enabled on the route to the initiator

      Currently, the following case doesn't use DCTCP, even if it should:
      A responder has f.e. Cubic as system wide default, but for a specific
      route to the initiating host, DCTCP is being set in RTAX_CC_ALGO. The
      initiating host then uses DCTCP as congestion control, but since the
      initiator sets ECT(0), tcp_ecn_create_request() doesn't set ecn_ok,
      and we have to fall back to Reno after 3WHS completes.

      We were thinking on how to solve this in a minimal, non-intrusive
      way without bloating tcp_ecn_create_request() needlessly: lets cache
      the CA ecn option flag in RTAX_FEATURES. In other words, when ECT(0)
      is set on the SYN packet, set ecn_ok=1 iff route RTAX_FEATURES
      contains the unexposed (internal-only) DST_FEATURE_ECN_CA. This allows
      to only do a single metric feature lookup inside tcp_ecn_create_request().

      Joint work with Florian Westphal.

      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: Florian Westphal <fw@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b8d3e4163a3562d7cba486687904383e78e7dd6a
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Mon Aug 31 15:58:46 2015 +0200

      fib, fib6: reject invalid feature bits

      Feature bits that are invalid should not be accepted by the kernel,
      only the lower 4 bits may be configured, but not the remaining ones.
      Even from these 4, 2 of them are unused.

      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1bb14807bc761a88bb9d319e7bf519eebf4c82ec
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Mon Aug 31 15:58:45 2015 +0200

      net: fib6: reduce identation in ip6_convert_metrics

      Reduce the identation a bit, there's no need to artificically have
      it increased.

      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6cf9dfd3bd62edfff69f11c0f111bc261166e4c7
  Author: Florian Westphal <fw@xxxxxxxxx>
  Date:   Mon Aug 31 15:58:44 2015 +0200

      net: fib: move metrics parsing to a helper

      fib_create_info() is already quite large, so before adding more
      code to the metrics section move that to a helper, similar to
      ip6_convert_metrics.

      Suggested-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: Florian Westphal <fw@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 87583ebb9f6ea6dc7f8ef167b815656787e429fc
  Author: Philip Downey <pdowney@xxxxxxxxxxx>
  Date:   Mon Aug 31 11:30:38 2015 +0100

      IGMP: Document igmp_link_local_mcast_reports

      Document the addition of a new sysctl variable which controls the
      generation of IGMP reports for link local multicast groups in the
      224.0.0.X range.

      IGMP reports for local multicast groups can now be optionally
      inhibited by setting the value to zero e.g.:
      echo 0 > /proc/sys/net/ipv4/igmp_link_local_mcast_reports

      To retain backwards compatibility the previous behaviour is retained
      by default on system boot or reverted by setting the value back to
      non-zero.

      Signed-off-by: Philip Downey <pdowney@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4c22279848c531fc7f555d463daf3d0df963bd41
  Author: Pravin B Shelar <pshelar@xxxxxxxxxx>
  Date:   Sun Aug 30 18:09:38 2015 -0700

      ip-tunnel: Use API to access tunnel metadata options.

      Currently tun-info options pointer is used in few cases to
      pass options around. But tunnel options can be accessed using
      ip_tunnel_info_opts() API without using the pointer. Following
      patch removes the redundant pointer and consistently make use
      of API.

      Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Reviewed-by: Jesse Gross <jesse@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0a2050d744037158de773be5c6f1fc468a551bae
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Thu Jul 30 21:51:54 2015 +0800

      NFSD: Store parent's stat in a separate value

      After commit ae7095a7c4 (nfsd4: helper function for getting mounted_on
      ino) we ignore the return value from get_parent_attributes().

      Also, the following FATTR4_WORD2_LAYOUT_BLKSIZE uses stat.blksize, so to
      avoid overwriting that, use an independent value for the parent's
      attributes.

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit 9153df7405ae04c1b0466de720e0a685cfea1a3a
  Author: Joe Thornber <ejt@xxxxxxxxxx>
  Date:   Mon Aug 31 18:20:08 2015 +0100

      dm cache: fix leaking of deferred bio prison cells

      There were two cases where dm_cell_visit_release() was being called,
      which removes the cell from the prison's rbtree, but the callers didn't
      also return the cell to the mempool.  Fix this by having them call
      free_prison_cell().

      This leak manifested as the 'kmalloc-96' slab growing until OOM.

      Fixes: 651f5fa2a3 ("dm cache: defer whole cells")
      Signed-off-by: Joe Thornber <ejt@xxxxxxxxxx>
      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # 4.1+

  commit f15f4d720088c140cdf1fee6aeab3549dbdddc41
  Author: Heinz Mauelshagen <heinzm@xxxxxxxxxx>
  Date:   Tue Aug 25 17:15:41 2015 +0200

      dm raid: document RAID 4/5/6 discard support

      For RAID 4/5/6 data integrity reasons 'discard_zeroes_data' must work
      properly.

      Signed-off-by: Heinz Mauelshagen <heinzm@xxxxxxxxxx>
      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>

  commit 97db62062ac76e314c8bda4dc5b63f0ea906d15f
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Mon Aug 31 21:39:44 2015 +0300

      perf tools: Fix build on powerpc broken by pt/bts

      It is theoretically possible to process perf.data files created on x86
      and that contain Intel PT or Intel BTS data, on any other architecture,
      which is why it is possible for there to be build errors on powerpc
      caused by pt/bts.

      The errors were:

        util/intel-pt-decoder/intel-pt-insn-decoder.c: In function 
â??intel_pt_insn_decoderâ??:
        util/intel-pt-decoder/intel-pt-insn-decoder.c:138:3: error: switch 
missing default case [-Werror=switch-default]
           switch (insn->immediate.nbytes) {
           ^
        cc1: all warnings being treated as errors

        linux-acme.git/tools/perf/perf-obj/libperf.a(libperf-in.o): In function 
`intel_pt_synth_branch_sample':
        sources/linux-acme.git/tools/perf/util/intel-pt.c:871: undefined 
reference to `tsc_to_perf_time'
        linux-acme.git/tools/perf/perf-obj/libperf.a(libperf-in.o): In function 
`intel_pt_sample':
        sources/linux-acme.git/tools/perf/util/intel-pt.c:915: undefined 
reference to `tsc_to_perf_time'
        sources/linux-acme.git/tools/perf/util/intel-pt.c:962: undefined 
reference to `tsc_to_perf_time'
        linux-acme.git/tools/perf/perf-obj/libperf.a(libperf-in.o): In function 
`intel_pt_process_event':
        sources/linux-acme.git/tools/perf/util/intel-pt.c:1454: undefined 
reference to `perf_time_to_tsc'

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Sukadev Bhattiprolu <sukadev@xxxxxxxxxxxxxxxxxx>
      Cc: Wang Nan <wangnan0@xxxxxxxxxx>
      Cc: Zefan Li <lizefan@xxxxxxxxxx>
      Cc: pi3orama@xxxxxxx
      Link: 
http://lkml.kernel.org/r/1441046384-28663-1-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 527afb4493c2892ce89fb74648e72a30b68ba120
  Author: Tsutomu Itoh <t-itoh@xxxxxxxxxxxxxx>
  Date:   Wed Aug 19 14:55:00 2015 +0900

      Btrfs: cleanup: remove unnecessary check before btrfs_free_path is called

      We need not check path before btrfs_free_path() is called because
      path is checked in btrfs_free_path().

      Signed-off-by: Tsutomu Itoh <t-itoh@xxxxxxxxxxxxxx>
      Reviewed-by: Qu Wenruo <quwenruo@xxxxxxxxxxxxxx>
      Signed-off-by: Chris Mason <clm@xxxxxx>

  commit c6dd6ea55758cf403bdc07a51a06c2a1d474f906
  Author: Qu Wenruo <quwenruo@xxxxxxxxxxxxxx>
  Date:   Thu Aug 20 09:30:39 2015 +0800

      btrfs: async_thread: Fix workqueue 'max_active' value when initializing

      At initializing time, for threshold-able workqueue, it's max_active
      of kernel workqueue should be 1 and grow if it hits threshold.

      But due to the bad naming, there is both 'max_active' for kernel
      workqueue and btrfs workqueue.
      So wrong value is given at workqueue initialization.

      This patch fixes it, and to avoid further misunderstanding, change the
      member name of btrfs_workqueue to 'current_active' and 'limit_active'.

      Also corresponding comment is added for readability.

      Reported-by: Alex Lyakas <alex.btrfs@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Qu Wenruo <quwenruo@xxxxxxxxxxxxxx>
      Signed-off-by: Chris Mason <clm@xxxxxx>

  commit 943c6e9925d90dc80207322b5799d95fb90ffec0
  Author: Zhao Lei <zhaolei@xxxxxxxxxxxxxx>
  Date:   Wed Aug 19 15:54:15 2015 +0800

      btrfs: Add raid56 support for updating
       num_tolerated_disk_barrier_failures in btrfs_balance

      Code for updating fs_info->num_tolerated_disk_barrier_failures in
      btrfs_balance() lacks raid56 support.

      Reason:
       Above code was wroten in 2012-08-01, together with
       btrfs_calc_num_tolerated_disk_barrier_failures()'s first version.

       Then, btrfs_calc_num_tolerated_disk_barrier_failures() got updated
       later to support raid56, but code in btrfs_balance() was not
       updated together.

      Fix:
       Merge above similar code to a common function:
       btrfs_get_num_tolerated_disk_barrier_failures()
       and make it support both case.

       It can fix this bug with a bonus of cleanup, and make these code
       never in above no-sync state from now on.

      Suggested-by: Anand Jain <anand.jain@xxxxxxxxxx>
      Signed-off-by: Zhao Lei <zhaolei@xxxxxxxxxxxxxx>
      Signed-off-by: Chris Mason <clm@xxxxxx>

  commit 2c4580454fffbf184fdb9292aa19ab1ffc224add
  Author: Zhao Lei <zhaolei@xxxxxxxxxxxxxx>
  Date:   Thu Jul 16 15:00:46 2015 +0800

      btrfs: Cleanup for btrfs_calc_num_tolerated_disk_barrier_failures

      1: Use ARRAY_SIZE(types) to replace a static-value variant:
         int num_types = 4;

      2: Use 'continue' on condition to reduce one level tab
         if (!XXX) {
             code;
             ...
         }
         ->
         if (XXX)
             continue;
         code;
         ...

      3: Put setting 'num_tolerated_disk_barrier_failures = 2' to
         (num_tolerated_disk_barrier_failures > 2) condition to make
         make logic neat.
         if (num_tolerated_disk_barrier_failures > 0 && XXX)
             num_tolerated_disk_barrier_failures = 0;
         else if (num_tolerated_disk_barrier_failures > 1) {
             if (XXX)
                 num_tolerated_disk_barrier_failures = 1;
             else if (XXX)
                 num_tolerated_disk_barrier_failures = 2;
         ->
         if (num_tolerated_disk_barrier_failures > 0 && XXX)
             num_tolerated_disk_barrier_failures = 0;
         if (num_tolerated_disk_barrier_failures > 1 && XXX)
             num_tolerated_disk_barrier_failures = ;
         if (num_tolerated_disk_barrier_failures > 2 && XXX)
             num_tolerated_disk_barrier_failures = 2;

      4: Remove comment of:
         num_mirrors - 1: if RAID1 or RAID10 is configured and more
         than 2 mirrors are used.
         which is not fit with code.

      Signed-off-by: Zhao Lei <zhaolei@xxxxxxxxxxxxxx>
      Signed-off-by: Chris Mason <clm@xxxxxx>

  commit 8c204c9657c32ec5a259ebf852a767afe7efdafa
  Author: Zhao Lei <zhaolei@xxxxxxxxxxxxxx>
  Date:   Wed Aug 19 15:02:40 2015 +0800

      btrfs: Remove noused chunk_tree and chunk_objectid from 
scrub_enumerate_chunks and scrub_chunk

      These variables are not used from introduced version, remove them.

      Signed-off-by: Zhao Lei <zhaolei@xxxxxxxxxxxxxx>
      Signed-off-by: Chris Mason <clm@xxxxxx>

  commit 7955323bdcab307bd8b1d5ef7a031e4a3d059da3
  Author: Zhao Lei <zhaolei@xxxxxxxxxxxxxx>
  Date:   Tue Aug 18 17:54:30 2015 +0800

      btrfs: Update out-of-date "skip parity stripe" comment

      Because btrfs support scrub raid56 parity stripe now.

      Signed-off-by: Zhao Lei <zhaolei@xxxxxxxxxxxxxx>
      Signed-off-by: Chris Mason <clm@xxxxxx>

  commit d1bfc62591a0a5144dc380976e737fbbb4f40f4f
  Author: Madalin Bucur <madalin.bucur@xxxxxxxxxxxxx>
  Date:   Mon Aug 31 15:46:07 2015 +0300

      ipv4: fix 32b build

      Address remaining issue after 80ec192.

      Signed-off-by: Madalin Bucur <madalin.bucur@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0050ae57cd02dbd4f171622d0269e2fb7029a23e
  Merge: a57e456 488ca7d
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Mon Aug 31 19:47:03 2015 +0200

      Merge branch 'x86/cpufeature' into x86/urgent, because it's ready

      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit c3cce6cda162eb2b2960a85d9c8992f4f3be85d0
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Fri Aug 14 12:47:33 2015 +1000

      md/raid5: ensure device failure recorded before write request returns.

      When a write to one of the devices of a RAID5/6 fails, the failure is
      recorded in the metadata of the other devices so that after a restart
      the data on the failed drive wont be trusted even if that drive seems
      to be working again (maybe a cable was unplugged).

      Similarly when we record a bad-block in response to a write failure,
      we must not let the write complete until the bad-block update is safe.

      Currently there is no interlock between the write request completing
      and the metadata update.  So it is possible that the write will
      complete, the app will confirm success in some way, and then the
      machine will crash before the metadata update completes.

      This is an extremely small hole for a racy to fit in, but it is
      theoretically possible and so should be closed.

      So:
       - set MD_CHANGE_PENDING when requesting a metadata update for a
         failed device, so we can know with certainty when it completes
       - queue requests that completed when MD_CHANGE_PENDING is set to
         only be processed after the metadata update completes
       - call raid_end_bio_io() on bios in that queue when the time comes.


      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 34a6f80e1639b124f24b5fadc1d45d69417cbace
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Fri Aug 14 12:07:57 2015 +1000

      md/raid5: use bio_list for the list of bios to return.

      This will make it easier to splice two lists together which will
      be needed in future patch.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 95af587e95aacb9cfda4a9641069a5244a540dc8
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Fri Aug 14 11:26:17 2015 +1000

      md/raid10: ensure device failure recorded before write request returns.

      When a write to one of the legs of a RAID10 fails, the failure is
      recorded in the metadata of the other legs so that after a restart
      the data on the failed drive wont be trusted even if that drive seems
      to be working again (maybe a cable was unplugged).

      Currently there is no interlock between the write request completing
      and the metadata update.  So it is possible that the write will
      complete, the app will confirm success in some way, and then the
      machine will crash before the metadata update completes.

      This is an extremely small hole for a racy to fit in, but it is
      theoretically possible and so should be closed.

      So:
       - set MD_CHANGE_PENDING when requesting a metadata update for a
         failed device, so we can know with certainty when it completes
       - queue requests that experienced an error on a new queue which
         is only processed after the metadata update completes
       - call raid_end_bio_io() on bios in that queue when the time comes.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 55ce74d4bfe1b9444436264c637f39a152d1e5ac
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Fri Aug 14 11:11:10 2015 +1000

      md/raid1: ensure device failure recorded before write request returns.

      When a write to one of the legs of a RAID1 fails, the failure is
      recorded in the metadata of the other leg(s) so that after a restart
      the data on the failed drive wont be trusted even if that drive seems
      to be working again  (maybe a cable was unplugged).

      Similarly when we record a bad-block in response to a write failure,
      we must not let the write complete until the bad-block update is safe.

      Currently there is no interlock between the write request completing
      and the metadata update.  So it is possible that the write will
      complete, the app will confirm success in some way, and then the
      machine will crash before the metadata update completes.

      This is an extremely small hole for a racy to fit in, but it is
      theoretically possible and so should be closed.

      So:
       - set MD_CHANGE_PENDING when requesting a metadata update for a
         failed device, so we can know with certainty when it completes
       - queue requests that experienced an error on a new queue which
         is only processed after the metadata update completes
       - call raid_end_bio_io() on bios in that queue when the time comes.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 18b9f67962eb890da0c053e04c3cf0e91871d4fa
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Fri Aug 14 10:22:00 2015 +1000

      md-cluster: remove inappropriate try_module_get from join()

      md_setup_cluster already calls try_module_get(), so this
      try_module_get isn't needed.
      Also, there is no matching module_put (except in error patch),
      so this leaves an unbalanced module count.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 6022e75bf0686799a6ecca3c33a669e6c70e9d26
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Thu Aug 13 12:32:55 2015 +1000

      md: extend spinlock protection in register_md_cluster_operations

      This code looks racy.

      The only possible race is if two modules try to register at the same
      time and that won't happen.  But make the code look safe anyway.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit abb9b22ac948000ae156cd2d115c8632ec30a2ce
  Author: Guoqing Jiang <gqjiang@xxxxxxxx>
  Date:   Fri Jul 10 17:01:22 2015 +0800

      md-cluster: Read the disk bitmap sb and check if it needs recovery

      In gather_all_resync_info, we need to read the disk bitmap sb and
      check if it needs recovery.

      Reviewed-by: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>
      Signed-off-by: Guoqing Jiang <gqjiang@xxxxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit eece075cda38f55fc5829b5f9ec5fb919c561d81
  Author: Guoqing Jiang <gqjiang@xxxxxxxx>
  Date:   Fri Jul 10 17:01:21 2015 +0800

      md-cluster: only call complete(&cinfo->completion) when node join cluster

      Introduce MD_CLUSTER_BEGIN_JOIN_CLUSTER flag to make sure
      complete(&cinfo->completion) is only be invoked when node
      join cluster. Otherwise node failure could also call the
      complete, and it doesn't make sense to do it.

      Reviewed-by: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>
      Signed-off-by: Guoqing Jiang <gqjiang@xxxxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 6e6d9f2cda47745a3abcb6609b1dee0e831161d8
  Author: Guoqing Jiang <gqjiang@xxxxxxxx>
  Date:   Fri Jul 10 17:01:20 2015 +0800

      md-cluster: add missed lockres_free

      We also need to free the lock resource before goto out.

      Reviewed-by: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>
      Signed-off-by: Guoqing Jiang <gqjiang@xxxxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit b2b9bfff0aa721a04a3924ed451c417d2bd9ed15
  Author: Guoqing Jiang <gqjiang@xxxxxxxx>
  Date:   Fri Jul 10 17:01:19 2015 +0800

      md-cluster: remove the unused sb_lock

      The sb_lock is not used anywhere, so let's remove it.

      Reviewed-by: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>
      Signed-off-by: Guoqing Jiang <gqjiang@xxxxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 9e3072e373320b331512e24f6650efa0a09720af
  Author: Guoqing Jiang <gqjiang@xxxxxxxx>
  Date:   Fri Jul 10 17:01:18 2015 +0800

      md-cluster: init suspend_list and suspend_lock early in join

      If the node just join the cluster, and receive the msg from other nodes
      before init suspend_list, it will cause kernel crash due to NULL pointer
      dereference, so move the initializations early to fix the bug.

      md-cluster: Joined cluster 3578507b-e0cb-6d4f-6322-696cd7b1b10c slot 3
      BUG: unable to handle kernel NULL pointer dereference at           (null)
      ... ... ...
      Call Trace:
      [<ffffffffa0444924>] process_recvd_msg+0x2e4/0x330 [md_cluster]
      [<ffffffffa0444a06>] recv_daemon+0x96/0x170 [md_cluster]
      [<ffffffffa045189d>] md_thread+0x11d/0x170 [md_mod]
      [<ffffffff810768c4>] kthread+0xb4/0xc0
      [<ffffffff8151927c>] ret_from_fork+0x7c/0xb0
      ... ... ...
      RIP  [<ffffffffa0443581>] __remove_suspend_info+0x11/0xa0 [md_cluster]

      Reviewed-by: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>
      Signed-off-by: Guoqing Jiang <gqjiang@xxxxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit b5ef56789b808a57fcd07271ff509911662fd877
  Author: Guoqing Jiang <gqjiang@xxxxxxxx>
  Date:   Fri Jul 10 17:01:17 2015 +0800

      md-cluster: add the error check if failed to get dlm lock

      In complicated cluster environment, it is possible that the
      dlm lock couldn't be get/convert on purpose, the related err
      info is added for better debug potential issue.

      For lockres_free, if the lock is blocking by a lock request or
      conversion request, then dlm_unlock just put it back to grant
      queue, so need to ensure the lock is free finally.

      Signed-off-by: Guoqing Jiang <gqjiang@xxxxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit b83d51c0785c34d552111f38fbecbe00cd58b913
  Author: Guoqing Jiang <gqjiang@xxxxxxxx>
  Date:   Fri Jul 10 17:01:16 2015 +0800

      md-cluster: init completion within lockres_init

      We should init completion within lockres_init, otherwise
      completion could be initialized more than one time during
      it's life cycle.

      Reviewed-by: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>
      Signed-off-by: Guoqing Jiang <gqjiang@xxxxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 66099bb0ee6c20f91ace3fa5f82202fbceb67d8e
  Author: Guoqing Jiang <gqjiang@xxxxxxxx>
  Date:   Fri Jul 10 17:01:15 2015 +0800

      md-cluster: fix deadlock issue on message lock

      There is problem with previous communication mechanism, and we got below
      deadlock scenario with cluster which has 3 nodes.

        Sender                      Receiver                    Receiver

        token(EX)
             message(EX)
            writes message
         downconverts message(CR)
            requests ack(EX)
                                  get message(CR)            gets message(CR)
                                  reads message                reads message
                               requests EX on message    requests EX on message

      To fix this problem, we do the following changes:

      1. the sender downconverts MESSAGE to CW rather than CR.
      2. and the receiver request PR lock not EX lock on message.

      And in case we failed to down-convert EX to CW on message, it is better to
      unlock message otherthan still hold the lock.

      Reviewed-by: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>
      Signed-off-by: Lidong Zhong <ldzhong@xxxxxxxx>
      Signed-off-by: Guoqing Jiang <gqjiang@xxxxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit dc737d7c3d62d2cd2b62c7739aaa7604330c3dd8
  Author: Guoqing Jiang <gqjiang@xxxxxxxx>
  Date:   Fri Jul 10 16:54:04 2015 +0800

      md-cluster: transfer the resync ownership to another node

      When node A stops an array while the array is doing a resync, we need
      to let another node B take over the resync task.

      To achieve the goal, we need the A send an explicit BITMAP_NEEDS_SYNC
      message to the cluster. And the node B which received that message will
      invoke __recover_slot to do resync.

      Reviewed-by: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>
      Signed-off-by: Guoqing Jiang <gqjiang@xxxxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 05cd0e51769a51f53c68e83976c83653f6ab1595
  Author: Guoqing Jiang <gqjiang@xxxxxxxx>
  Date:   Fri Jul 10 16:54:03 2015 +0800

      md-cluster: split recover_slot for future code reuse

      Make recover_slot as a wraper to __recover_slot, since the
      logic of __recover_slot can be reused for the condition
      when other nodes need to take over the resync job.

      Signed-off-by: Guoqing Jiang <gqjiang@xxxxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit b89f704a8ddf7be1a66af9aad350226ae283292f
  Author: Guoqing Jiang <gqjiang@xxxxxxxx>
  Date:   Fri Jul 10 16:54:02 2015 +0800

      md-cluster: use %pU to print UUIDs

      Reviewed-by: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>
      Signed-off-by: Guoqing Jiang <gqjiang@xxxxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 25b2edfa3b6940b73180d2735cd19fdf58d0cf91
  Author: Sasha Levin <sasha.levin@xxxxxxxxxx>
  Date:   Fri Jul 24 18:19:58 2015 -0400

      md: setup safemode_timer before it's being used

      We used to set up the safemode_timer timer in md_run. If md_run
      would fail before the timer was set up we'd end up trying to modify
      a timer that doesn't have a callback function when we access 
safe_delay_store,
      which would trigger a BUG.

      neilb: delete init_timer() call as setup_timer() does that.

      Signed-off-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 6cbd81487f7cfa30e22537bf7cd07f48c4e7164d
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Fri Jul 24 13:30:32 2015 +1000

      md/raid5: handle possible race as reshape completes.

      It is possible (though unlikely) for a reshape to be
      interrupted between the time that end_reshape is called
      and the time when raid5_finish_reshape is called.

      This can leave conf->reshape_progress set to MaxSector,
      but mddev->reshape_position not.

      This combination confused reshape_request() when ->reshape_backwards.
      As conf->reshape_progress is so high, it seems the reshape hasn't
      really begun.  But assuming MaxSector is a valid address only
      leads to sorrow.

      So ensure reshape_position and reshape_progress both agree,
      and add an extra check in reshape_request() just in case they don't.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 5ed1df2eacc0ba92c8c7e2499c97594b5ef928a8
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Fri Jul 24 13:27:08 2015 +1000

      md: sync sync_completed has correct value as recovery finishes.

      There can be a small window between the moment that recovery
      actually writes the last block and the time when various sysfs
      and /proc/mdstat attributes report that it has finished.
      During this time, 'sync_completed' can have the wrong value.
      This can confuse monitoring software.

      So:
       - don't set curr_resync_completed beyond the end of the devices,
       - set it correctly when resync/recovery has completed.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit c5e19d906a658f27fa858b09a95d9551b1a69bd0
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Fri Jul 17 12:06:02 2015 +1000

      md: be careful when testing resync_max against curr_resync_completed.

      While it generally shouldn't happen, it is not impossible for
      curr_resync_completed to exceed resync_max.
      This can particularly happen when reshaping RAID5 - the current
      status isn't copied to curr_resync_completed promptly, so when it
      is, it can exceed resync_max.
      This happens when the reshape is 'frozen', resync_max is set low,
      and reshape is re-enabled.

      Taking a difference between two unsigned numbers is always dangerous
      anyway, so add a test to behave correctly if
         curr_resync_completed > resync_max

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit a4a3d26d8757a30ae21724d8b0d79e00e113c38d
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Fri Jul 17 11:57:30 2015 +1000

      md: set MD_RECOVERY_RECOVER when starting a degraded array.

      This ensures that 'sync_action' will show 'recover' immediately the
      array is started.  If there is no spare the status will change to
      'idle' once that is detected.

      Clear MD_RECOVERY_RECOVER for a read-only array to ensure this change
      happens.

      This allows scripts which monitor status not to get confused -
      particularly my test scripts.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit c74c0d760e30f56f9699dc180036ca37993d1c58
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Wed Jul 15 17:54:15 2015 +1000

      md/raid5: remove incorrect "min_t()" when calculating writepos.

      This code is calculating:
        writepos, which is the furthest along address (device-space) that we
           *will* be writing to
        readpos, which is the earliest address that we *could* possible read
           from, and
        safepos, which is the earliest address in the 'old' section that we
           might read from after a crash when the reshape position is
           recovered from metadata.

        The first is a precise calculation, so clipping at zero doesn't
        make sense.  As the reshape position is now guaranteed to always be
        a multiple of reshape_sectors and as we already BUG_ON when
        reshape_progress is zero, there is no point in this min_t() call.

        The readpos and safepos are worst case - actual value depends on
        precise geometry.  That worst case could be negative, which is only
        a problem because we are storing the value in an unsigned.
        So leave the min_t() for those.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 05256d9884d3276f61537d3d7f5605dc21bd3477
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Wed Jul 15 17:36:21 2015 +1000

      md/raid5: strengthen check on reshape_position at run.

      When reshaping, we work in units of the largest chunk size.
      If changing from a larger to a smaller chunk size, that means we
      reshape more than one stripe at a time.  So the required alignment
      of reshape_position needs to take into account both the old
      and new chunk size.

      This means that both 'here_new' and 'here_old' are calculated with
      respect to the same (maximum) chunk size, so testing if they are the
      same when delta_disks is zero becomes pointless.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 3cb5edf45457948347b5ae8cc9650c000cef4391
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Wed Jul 15 17:24:17 2015 +1000

      md/raid5: switch to use conf->chunk_sectors in place of 
mddev->chunk_sectors where possible

      The chunk_sectors and new_chunk_sectors fields of mddev can be changed
      any time (via sysfs) that the reconfig mutex can be taken.  So raid5
      keeps internal copies in 'conf' which are stable except for a short
      locked moment when reshape stops/starts.

      So any access that does not hold reconfig_mutex should use the 'conf'
      values, not the 'mddev' values.
      Several don't.

      This could result in corruption if new values were written at awkward
      times.

      Also use min() or max() rather than open-coding.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 5cac6bcb9312a18a5091976fc374b4c7b9c4ae2e
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Fri Jul 17 12:17:50 2015 +1000

      md/raid5: always set conf->prev_chunk_sectors and ->prev_algo

      These aren't really needed when no reshape is happening,
      but it is safer to have them always set to a meaningful value.
      The next patch will use ->prev_chunk_sectors without checking
      if a reshape is happening (because that makes the code simpler),
      and this patch makes that safe.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 02ec50265b16493e4a62228727e9f774068123d2
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Mon Jul 6 16:33:47 2015 +1000

      md/raid10: fix a few typos in comments

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 92140480ed59a006b245efd33a195fde62d1845f
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Mon Jul 6 12:28:45 2015 +1000

      md/raid5: consider updating reshape_position at start of reshape.

      md/raid5 only updates ->reshape_position (which is stored in
      metadata and is authoritative) occasionally, but particularly
      when getting closed to ->resync_max as it must be correct
      when ->resync_max is reached.

      When mdadm tries to stop an array which is reshaping it will:
       - freeze the reshape,
       - set resync_max to where the reshape has reached.
       - unfreeze the reshape.
      When this happens, the reshape is aborted and then restarted.

      The restart doesn't check that resync_max is close, and so doesn't
      update ->reshape_position like it should.
      This results in the reshape stopping, but ->reshape_position being
      incorrect.

      So on that first call to reshape_request, make sure ->reshape_position
      is updated if needed.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 985ca973b68cac0adfa83497db231da7f99c6ed9
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Mon Jul 6 12:26:57 2015 +1000

      md: close some races between setting and checking sync_action.

      When checking sync_action in a script, we want to be sure it is
      as accurate as possible.
      As resync/reshape etc doesn't always start immediately (a separate
      thread is scheduled to do it), it is best if 'action_show'
      checks if MD_RECOVER_NEEDED is set (which it does) and in that
      case reports what is likely to start soon (which it only sometimes
      does).

      So:
       - report 'reshape' if reshape_position suggests one might start.
       - set MD_RECOVERY_RECOVER in raid1_reshape(), because that is very
         likely to happen next.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit f7851be736d58e7270f05a4ca84b16ce72734a18
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Thu Jul 2 17:12:58 2015 +1000

      md: Keep /proc/mdstat reporting recovery until fully DONE.

      Currently when a recovery completes, mdstat shows that it has finished
      before the new device is marked as a full member.  Because of this it
      can appear to a script that the recovery finished but the array isn't
      in sync.

      So while MD_RECOVERY_DONE is still set, keep mdstat reporting "recovery".
      Once md_reap_sync_thread() completes, the spare will be active and then
      MD_RECOVERY_DONE will be cleared.

      To ensure this is race-free, set MD_RECOVERY_DONE before clearning
      curr_resync.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 0e833e697bcf4c2f3f7fb9fce39d08cd4439e5d7
  Author: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
  Date:   Wed Jul 1 12:19:56 2015 +1000

      md/raid6: delta syndrome for ARM NEON

      This implements XOR syndrome calculation using NEON intrinsics.
      As before, the module can be built for ARM and arm64 from the
      same source.

      Relative performance on a Cortex-A57 based system:

        raid6: int64x1  gen()   905 MB/s
        raid6: int64x1  xor()   881 MB/s
        raid6: int64x2  gen()  1343 MB/s
        raid6: int64x2  xor()  1286 MB/s
        raid6: int64x4  gen()  1896 MB/s
        raid6: int64x4  xor()  1321 MB/s
        raid6: int64x8  gen()  1773 MB/s
        raid6: int64x8  xor()  1165 MB/s
        raid6: neonx1   gen()  1834 MB/s
        raid6: neonx1   xor()  1278 MB/s
        raid6: neonx2   gen()  2528 MB/s
        raid6: neonx2   xor()  1942 MB/s
        raid6: neonx4   gen()  2888 MB/s
        raid6: neonx4   xor()  2334 MB/s
        raid6: neonx8   gen()  2957 MB/s
        raid6: neonx8   xor()  2232 MB/s
        raid6: using algorithm neonx8 gen() 2957 MB/s
        raid6: .... xor() 2232 MB/s, rmw enabled

      Cc: Markus Stockhausen <stockhausen@xxxxxxxxxxx>
      Cc: Neil Brown <neilb@xxxxxxx>
      Signed-off-by: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Signed-off-by: NeilBrown <neilb@xxxxxxxx>

  commit 2f37d65a6a5c360ba0c386a6aa0d2afcbda7060d
  Merge: 1af115d 415bcb5
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 09:24:06 2015 -0700

      Merge tag 'staging-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging

      Pull staging driver updates from Greg KH:
       "Here is the big staging driver updates for 4.3-rc1.

        Lots of things all over the place, almost all of them trivial fixups
        and changes.  The usual IIO updates and new drivers and we have added
        the MOST driver subsystem which is getting cleaned up in the tree.
        The ozwpan driver is finally being deleted as it is obviously
        abandoned and no one cares about it.

        Full details are in the shortlog, and all of these have been in
        linux-next with no reported issues"

      * tag 'staging-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (912 commits)
        staging/lustre/o2iblnd: remove references to ib_reg_phsy_mr()
        staging: wilc1000: fix build warning with setup_timer()
        staging: wilc1000: remove DECLARE_WILC_BUFFER()
        staging: wilc1000: remove void function return statements that are not 
useful
        staging: wilc1000: coreconfigurator.c: fix kmalloc error check
        staging: wilc1000: coreconfigurator.c: use kmalloc instead of 
WILC_MALLOC
        staging: wilc1000: remove unused codes of gps8ConfigPacket
        staging: wilc1000: remove unnecessary void pointer cast
        staging: wilc1000: remove WILC_NEW and WILC_NEW_EX
        staging: wilc1000: use kmalloc instead of WILC_NEW
        staging: wilc1000: Process WARN, INFO options of debug levels from user
        staging: wilc1000: remove unneeded tstrWILC_MsgQueueAttrs typedef
        staging: wilc1000: delete wilc_osconfig.h
        staging: wilc1000: delete wilc_log.h
        staging: wilc1000: delete wilc_timer.h
        staging: wilc1000: remove WILC_TimerStart()
        staging: wilc1000: remove WILC_TimerCreate()
        staging: wilc1000: remove WILC_TimerDestroy()
        staging: wilc1000: remove WILC_TimerStop()
        staging: wilc1000: remove tstrWILC_TimerAttrs typedef
        ...

  commit 1af115d675f323afee1e64650277a9b170845b81
  Merge: 1c00038 71db87b
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 08:47:40 2015 -0700

      Merge tag 'driver-core-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core

      Pull driver core updates from Greg KH:
       "Here is the new patches for the driver core / sysfs for 4.3-rc1.

        Very small number of changes here, all the details are in the
        shortlog, nothing major happening at all this kernel release, which is
        nice to see"

      * tag 'driver-core-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        bus: subsys: update return type of ->remove_dev() to void
        driver core: correct device's shutdown order
        driver core: fix docbook for device_private.device
        selftests: firmware: skip timeout checks for kernels without user mode 
helper
        kernel, cpu: Remove bogus __ref annotations
        cpu: Remove bogus __ref annotation of cpu_subsys_online()
        firmware: fix wrong memory deallocation in fw_add_devm_name()
        sysfs.txt: update show method notes about sprintf/snprintf/scnprintf 
usage
        devres: fix devres_get()

  commit d8e19f99d3483adb01c6269dd5775ba8ecf1870a
  Author: Xiong Zhang <xiong.y.zhang@xxxxxxxxx>
  Date:   Thu Aug 13 18:00:12 2015 +0800

      drm/i915/skl: Adding DDI_E power well domain

      From B spec, DDI_E port belong to PowerWell 2, but
      DDI_E share the powerwell_req/staus register bit with
      DDI_A which belong to DDI_A_E_POWER_WELL.

      In order to communicate with the connector on DDI-E, both
      DDI_A_E_POWER_WELL and POWER_WELL_2 must be enabled.

      Currently intel_dp_power_get(DDI_E) only enable
      DDI_A_E_POWER_WELL, this patch will not only enable
      DDI_a_E_POWER_WELL but also enable POWER_WELL_2.

      This patch also fix the DDI-E hotplug function.

      Signed-off-by: Xiong Zhang <xiong.y.zhang@xxxxxxxxx>
      Reviewed-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit d76f41982f2fc88492efd96c7c3178044f32e125
  Author: Anatol Pomozov <anatol.pomozov@xxxxxxxxx>
  Date:   Mon Aug 31 08:24:23 2015 -0700

      ASoC: Document snd-soc-dummy-dai purpose

      Signed-off-by: Anatol Pomozov <anatol.pomozov@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 7040c399aea2b0213a9aefd73e507369a6d641d6
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Mon Aug 31 11:15:05 2015 -0400

      drm/radeon/native: Send out the full AUX address

      AUX addresses are 20 bits long. Send out the entire address instead of
      just the low 16 bits.

      Port of:
      drm/radeon/atom: Send out the full AUX address
      to radeon non-atom aux path

      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 3f8340cc72c9a1a4b49bce7802afd7f248400ef5
  Author: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 17:23:31 2015 +0300

      drm/radeon/atom: Send out the full AUX address

      AUX addresses are 20 bits long. Send out the entire address instead of
      just the low 16 bits.

      Cc: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: "Christian König" <christian.koenig@xxxxxxx>
      Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 477ec3283c324d16e8da07a8d8a4a367e31b6eab
  Author: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
  Date:   Thu Aug 6 15:51:39 2015 +0800

      drm/i915: eDP can be present on DDI-E

      Enable eDP on DDI-E.

      Also let's remove duplicated definitions to avoid later confusion.

      Signed-off-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
      Reviewed-by: Xiong Zhang <xiong.y.zhang@xxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 1c00038c765561c08fd942d08579fa860e604f31
  Merge: 44e98ed 672cfee
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 08:34:13 2015 -0700

      Merge tag 'char-misc-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc

      Pull char/misc driver patches from Greg KH:
       "Here's the "big" char/misc driver update for 4.3-rc1.

        Not much really interesting here, just a number of little changes all
        over the place, and some nice consolidation of the nvmem drivers to a
        common framework.  As usual, the mei drivers stand out as the largest
        "churn" to handle new devices and features in their hardware.

        All have been in linux-next for a while with no issues"

      * tag 'char-misc-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (136 commits)
        auxdisplay: ks0108: initialize local parport variable
        extcon: palmas: Fix build break due to devm_gpiod_get_optional API 
change
        extcon: palmas: Support GPIO based USB ID detection
        extcon: Fix signedness bugs about break error handling
        extcon: Drop owner assignment from i2c_driver
        extcon: arizona: Simplify pdata symantics for micd_dbtime
        extcon: arizona: Declare 3-pole jack if we detect open circuit on mic
        extcon: Add exception handling to prevent the NULL pointer access
        extcon: arizona: Ensure variables are set for headphone detection
        extcon: arizona: Use gpiod inteface to handle micd_pol_gpio gpio
        extcon: arizona: Add basic microphone detection DT/ACPI bindings
        extcon: arizona: Update to use the new device properties API
        extcon: palmas: Remove the mutually_exclusive array
        extcon: Remove optional print_state() function pointer of struct 
extcon_dev
        extcon: Remove duplicate header file in extcon.h
        extcon: max77843: Clear IRQ bits state before request IRQ
        toshiba laptop: replace ioremap_cache with ioremap
        misc: eeprom: max6875: clean up max6875_read()
        misc: eeprom: clean up eeprom_read()
        misc: eeprom: 93xx46: clean up eeprom_93xx46_bin_read/write
        ...

  commit 2800e4c228b8961c4da1a4925cc20c16e623851b
  Author: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
  Date:   Fri Aug 7 17:35:21 2015 -0700

      drm/i915/skl: Enable DDI-E

      There are OEMs using DDI-E out there,
      so let's enable it.

      Unfortunately there is no detection bit for DDI-E
      So we need to rely on VBT for that.

      I also need to give credits to Xiong since before seing
      his approach to check info->support_* I was creating an ugly
      vbt->ddie_sfuse_strap in order to propagate the ddi presence info

      v2: Rebased as last patch in the series. since all other patches
      in this series are needed for anything working propperly on DDI-E.

      Credits-to: "Zhang, Xiong Y" <xiong.y.zhang@xxxxxxxxx>
      Cc: "Zhang, Xiong Y" <xiong.y.zhang@xxxxxxxxx>
      Reviewed-by: Xiong Zhang <xiong.y.zhang@xxxxxxxxx>
      Signed-off-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 44e98edcd11a48619b342d8f442d447b094ab2fc
  Merge: 64291f7 4d283ec
  Author: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 08:27:44 2015 -0700

      Merge tag 'kvm-4.3-1' of git://git.kernel.org/pub/scm/virt/kvm/kvm

      Pull kvm updates from Paolo Bonzini:
       "A very small release for x86 and s390 KVM.

         - s390: timekeeping changes, cleanups and fixes

         - x86: support for Hyper-V MSRs to report crashes, and a bunch of
           cleanups.

        One interesting feature that was planned for 4.3 (emulating the local
        APIC in kernel while keeping the IOAPIC and 8254 in userspace) had to
        be delayed because Intel complained about my reading of the manual"

      * tag 'kvm-4.3-1' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (42 
commits)
        x86/kvm: Rename VMX's segment access rights defines
        KVM: x86/vPMU: Fix unnecessary signed extension for AMD PERFCTRn
        kvm: x86: Fix error handling in the function kvm_lapic_sync_from_vapic
        KVM: s390: Fix assumption that kvm_set_irq_routing is always run 
successfully
        KVM: VMX: drop ept misconfig check
        KVM: MMU: fully check zero bits for sptes
        KVM: MMU: introduce is_shadow_zero_bits_set()
        KVM: MMU: introduce the framework to check zero bits on sptes
        KVM: MMU: split reset_rsvds_bits_mask_ept
        KVM: MMU: split reset_rsvds_bits_mask
        KVM: MMU: introduce rsvd_bits_validate
        KVM: MMU: move FNAME(is_rsvd_bits_set) to mmu.c
        KVM: MMU: fix validation of mmio page fault
        KVM: MTRR: Use default type for non-MTRR-covered gfn before WARN_ON
        KVM: s390: host STP toleration for VMs
        KVM: x86: clean/fix memory barriers in irqchip_in_kernel
        KVM: document memory barriers for kvm->vcpus/kvm->online_vcpus
        KVM: x86: remove unnecessary memory barriers for shared MSRs
        KVM: move code related to KVM_SET_BOOT_CPU_ID to x86
        KVM: s390: log capability enablement and vm attribute changes
        ...

  commit 11c1b657c42f65c43f866b611956ef0a10bedafc
  Author: Xiong Zhang <xiong.y.zhang@xxxxxxxxx>
  Date:   Mon Aug 17 16:04:04 2015 +0800

      drm/i915: Enable HDMI on DDI-E

      DDI-E doesn't have the correspondent GMBUS pin.

      We rely on VBT to tell us which one it being used instead.

      The DVI/HDMI on shared port couldn't exist.

      This patch isn't tested without hardware wchich has HDMI
      on DDI-E.

      v2: fix trailing whitespace
      v3: MISSING_CASE take place of BUG()

      Signed-off-by: Xiong Zhang <xiong.y.zhang@xxxxxxxxx>
      Reviewed-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 54875571bbfde00fc63741715c531cbb5246c3b2
  Author: Imre Deak <imre.deak@xxxxxxxxx>
  Date:   Tue Jun 30 17:06:47 2015 +0300

      drm/i915: apply the PCI_D0/D3 hibernation workaround everywhere on pre 
GEN6

      commit da2bc1b9db3351addd293e5b82757efe1f77ed1d
      Author: Imre Deak <imre.deak@xxxxxxxxx>
      Date:   Thu Oct 23 19:23:26 2014 +0300

          drm/i915: add poweroff_late handler

      introduced a regression on old platforms during hibernation. A workaround 
was
      added in

      commit ab3be73fa7b43f4c3648ce29b5fd649ea54d3adb
      Author: Imre Deak <imre.deak@xxxxxxxxx>
      Date:   Mon Mar 2 13:04:41 2015 +0200

          drm/i915: gen4: work around hang during hibernation

      using an explicit blacklist for the GENs/BIOS vendors where the issue was
      reported. Later there we had reports of the same failure on platforms not 
on
      this list.

      To my best knowledge the correct thing to do is still to put the device 
to PCI
      D3 state during hibernation, see [1] and [2] for the reasons. This also 
aligns
      with our future plans to unify more the runtime and system suspend/resume
      paths. Since an exact blacklist seems to be impractical (multiple GENs and
      BIOS vendors are affected) apply the workaround on everything pre GEN6.

      [1] 
http://lists.freedesktop.org/archives/intel-gfx/2015-February/060710.html
      [2] https://lkml.org/lkml/2015/6/22/274

      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=95061
      Reported-by: Ilya Tumaykin <itumaykin@xxxxxxxxx>
      Reported-by: Dirk Griesbach <spamthis@xxxxxxxxxx>
      Reported-by: Pavel Machek <pavel@xxxxxx>
      Reported-by: Mikko Rapeli <mikko.rapeli@xxxxxx>
      Tested-by: Mikko Rapeli <mikko.rapeli@xxxxxx>
      Reported-by: Paul Bolle <pebolle@xxxxxxxxxx>
      CC: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Imre Deak <imre.deak@xxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit d14e7b6d1d8747826cb900db852351c550e00fdd
  Author: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 19:37:29 2015 +0300

      drm/i915: Check DP link status on long hpd too

      We are no longer checkling the DP link status on long hpd. We used to do
      that from the .hot_plug() handler, but it was removed when MST got
      introduced.

      If there's no userspace we now fail to retrain the link if the sink
      power is toggled (or cable yanked and replugged), meaning the user is
      left staring at a blank screen. With the retraining put back that should
      be fixed.

      Also remove the leftover comment that referred to the old retraining
      from .hot_plug().

      Fixes a regression introduced in:
      commit 0e32b39ceed665bfa4a77a4bc307b6652b991632
      Author: Dave Airlie <airlied@xxxxxxxxxx>
      Date:   Fri May 2 14:02:48 2014 +1000

          drm/i915: add DP 1.2 MST support (v0.7)

      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89453
      Tested-by: Palmer Dabbelt <palmer@xxxxxxxxxxx>
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91407
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89461
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89594
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=85641
      Cc: Dave Airlie <airlied@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 6bd3c6f75e0f9baddbf1196a7e3fceabb50c7e3c
  Author: Maciej S. Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 17:07:12 2015 +0200

      ASoC: fsl-asoc-card: put ASRC OF node in case of unknown device

      In case of unknown DT compatible device the ASRC OF node
      possibly acquired earlier by of_parse_phandle() has
      to be put before returning from probe method.

      Signed-off-by: Maciej Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit f0a515780393dffbb363e6d1567da46af6f3c5f3
  Author: Sasha Levin <sasha.levin@xxxxxxxxxx>
  Date:   Fri Aug 28 07:06:58 2015 -0400

      tracing: Don't make assumptions about length of string on task rename

      While the dest comm string size is assured to be at least TASK_COMM_LEN 
long,
      doing a memcpy() also adds the assumption that the source is at least that
      long as well, which isn't assured, and isn't true in cases such as:

        set_task_comm(worker->task, "kworker/dying");

      This leads to accessing invalid memory.

      Link: 
http://lkml.kernel.org/r/1440760018-1557-1-git-send-email-sasha.levin@xxxxxxxxxx

      Signed-off-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Signed-off-by: Steven Rostedt <rostedt@xxxxxxxxxxx>

  commit 3d4fe182003bcde778e29e84c14c0c4bb70a452e
  Author: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
  Date:   Mon Aug 31 21:18:58 2015 +0800

      spi: Mediatek: Document devicetree bindings update for spi bus

      This patch updates spi bindings, fixs clock usage description.

      Signed-off-by: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit adcbcfea15d62fab5ba40ac28f9d2a590cc5e5e8
  Author: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
  Date:   Mon Aug 31 21:18:57 2015 +0800

      spi: mediatek: fix spi clock usage error

      spi clock manages flow:
        CLK_TOP_SYSPLL3_D2 ---> CLK_TOP_SPI_SEL ---> CLK_PERI_SPI0
           (source clock)           (clock mux)       (clock gate)
      spi driver should choose source clock by clock mux, then enable
      clock gate.

      Signed-off-by: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit ca9f26a27949ba3b295e4f0841c0bec9ef440141
  Author: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
  Date:   Mon Aug 31 21:18:56 2015 +0800

      spi: mediatek: remove clk_disable_unprepare()

      This patch removes clk_disable_unprepare() in mtk_spi_remove().
      clk_disable_prepare/unprepare must be balance, spi-clk is disabled
      in mtk_spi_probe, so not needs to disable again.

      Signed-off-by: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 08ceab9d875824f8b389530e830349d5d6c4e582
  Merge: 22c103c 9193132
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Mon Aug 31 16:25:22 2015 +0200

      Merge tag 'asoc-v4.2-rc8' of 
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus

      ASoC: Updates for v4.3

      Not many updates to the core here, but an awful lot of driver updates
      this time round:

       - Factoring out of AC'97 reset code into the core
       - New drivers for Cirrus CS4349, GTM601, InvenSense ICS43432, Realtek
         RT298 and ST STI controllers.
       - Machine drivers for Rockchip systems with MAX98090 and RT5645 and
         RT5650.
       - Initial driver support for Intel Skylake devices.
       - A large number of cleanups for Lars-Peter Clausen and Axel Lin.

  commit c5992f610f78e6c9d0a78e8fef1066ad640e17e8
  Merge: c92ec7c f682c4f 98c7863 bf96283
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Mon Aug 31 14:45:45 2015 +0100

      Merge remote-tracking branches 'spi/topic/ti-qspi', 'spi/topic/xcomm' and 
'spi/topic/xlp' into spi-next

  commit c92ec7c7ae99a371bbc69f0258888a0328ba4838
  Merge: 2ca0a9d ed425dc 65598c1 fe78d0b 89a6356 eca2ebc
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Mon Aug 31 14:45:41 2015 +0100

      Merge remote-tracking branches 'spi/topic/s3c64xx', 'spi/topic/sg', 
'spi/topic/sh-msiof', 'spi/topic/spidev' and 'spi/topic/stats' into spi-next

  commit 2ca0a9d80c3a2cd3917b768080cce7f59b9bc490
  Merge: 18c558e 1529332 757fe8d cb76b1c 99622f5 385a9c8
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Mon Aug 31 14:45:36 2015 +0100

      Merge remote-tracking branches 'spi/topic/mtk', 'spi/topic/pxa2xx', 
'spi/topic/qspi', 'spi/topic/rockchip' and 'spi/topic/s3c24xx' into spi-next

  commit 18c558ec748b13048ae51681f7da8248ddcb7d1c
  Merge: 9d05943 c4fe57f 37c5db7 93e3a9e 1f2112a
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Mon Aug 31 14:45:32 2015 +0100

      Merge remote-tracking branches 'spi/topic/dw', 'spi/topic/fsl-espi', 
'spi/topic/img-spfi' and 'spi/topic/mpc512x-psc' into spi-next

  commit 9d05943e79cc54a9d8ef8196900d7cca9e5ca039
  Merge: 8e42ac8 bdbbd38 ca861dd f4d8622 1b0838b
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Mon Aug 31 14:45:29 2015 +0100

      Merge remote-tracking branches 'spi/topic/atmel', 'spi/topic/bcm2835', 
'spi/topic/bcm63xx-hsspi' and 'spi/topic/davinci' into spi-next

  commit 8e42ac814c63dd5c5e39bbbfbc9c6578e19c765f
  Merge: bc64509 c37f45b
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Mon Aug 31 14:45:28 2015 +0100

      Merge remote-tracking branch 'spi/topic/dma' into spi-next

  commit bc6450994976f26bbde656b1994f95b955bdabfc
  Merge: af21121 63ab645
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Mon Aug 31 14:45:27 2015 +0100

      Merge remote-tracking branch 'spi/topic/core' into spi-next

  commit af211211e39f59575854d5976a4e301c8c21d4bc
  Merge: c13dcf9 43a0da2 26a67ec 9176c66 5f74db1 38d6211 7434684
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Mon Aug 31 14:45:23 2015 +0100

      Merge remote-tracking branches 'spi/fix/bcm2835', 'spi/fix/bitbang', 
'spi/fix/img-spfi', 'spi/fix/omap2-mcspi', 'spi/fix/orion' and 'spi/fix/xilinx' 
into spi-linus

  commit fe78d0b7691c02744004b15f6979b3f106464bc4
  Author: Koji Matsuoka <koji.matsuoka.xm@xxxxxxxxxxx>
  Date:   Mon Jun 15 02:25:05 2015 +0900

      spi: sh-msiof: Fix FIFO size to 64 word from 256 word

      The upper limit of Tx/Rx FIFO size is 64 word by the
      specification of H/W. This patch corrects to 64 word from 256 word.

      Signed-off-by: Koji Matsuoka <koji.matsuoka.xm@xxxxxxxxxxx>
      Signed-off-by: Yoshihiro Kaneko <ykaneko0929@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 17649c90ff4c5246bb4babf6260029968a6d119d
  Author: Sergey SENOZHATSKY <sergey.senozhatsky.work@xxxxxxxxx>
  Date:   Mon Aug 31 18:54:58 2015 +0900

      regmap: fix a NULL pointer dereference in __regmap_init

      __regmap_init() may receive a NULL `struct regmap_bus *bus' pointer,
      for example, from snd_hdac_regmap_init(), and it make sure that it
      does not NULL deference `bus`, except around ->max_raw_read and
      ->max_raw_write initialisation. Add missing check.

      Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit d5b98eb12420ce856caaf57dc5256eedc56a3747
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Fri Aug 28 20:04:53 2015 +0100

      regmap: Support bulk reads for devices without raw formatting

      When doing a bulk read from a device which lacks raw I/O support we fall
      back to doing register at a time reads but we still use the raw
      formatters in order to render the data into the word size used by the
      device (since bulk reads still operate on the device word size rather
      than unsigned ints).  This means that devices without raw formatting
      such as those that provide reg_read() are not supported.  Provide
      handling for them by copying the values read into native endian values
      of the appropriate size.

      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 2d89a1d3c9ff8ceb115f001e66cff9788338ca47
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 02:05:47 2015 -0700

      NFSv4.1/pNFS: Don't request a minimal read layout beyond the end of file

      If we have a read layout, then sanity check the minimal layout length
      so that it does not extend beyond the end of file.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 21b874c873b5019db8bb4b4f6aa929c4bac0a398
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 01:19:22 2015 -0700

      NFSv4.1/pnfs: Handle LAYOUTGET return values correctly

      According to RFC5661 section 18.43.3, if the server cannot satisfy
      the loga_minlength argument to LAYOUTGET, there are 2 cases:
      1) If loga_minlength == 0, it returns NFS4ERR_LAYOUTTRYLATER
      2) If loga_minlength != 0, it returns NFS4ERR_BADLAYOUT

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 4ae93560b11cb2b57ea5732d442458694ab0c168
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 01:25:11 2015 -0700

      NFSv4.1/pnfs: Don't ask for a read layout for an empty file.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit bac2e4a96d1c0bcce5e9654dcc902f75576b9b03
  Merge: 02b643b 2c07144
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Mon Aug 31 10:25:46 2015 +0200

      Merge tag 'perf-core-for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core

      Pull perf/core improvement and fixes from Arnaldo Carvalho de Melo:

      User visible changes:

        - Add new compaction-times python script. (Tony Jones)

        - Make the --[no-]-demangle/--[no-]-demangle-kernel command line
          options available in 'perf script' too. (Mark Drayton)

        - Allow for negative numbers in libtraceevent's print format,
          fixing up misformatting in some tracepoints. (Steven Rostedt)

      Infrastructure changes:

        - perf_env/perf_evlist changes to allow accessing the data
          structure with the environment where some perf data was
          collected in functions not necessarily related to perf.data
          file processing. (Kan Liang)

        - Cleanups for the tracepoint definition location paths routines. (Jiri 
Olsa)

        - Introduce sysfs/filename__sprintf_build_id, removing code
          duplication. (Masami Hiramatsu)

      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 02b643b643254ec79b5f9aaa143e10be68eabdab
  Merge: d1ee8bc 4c09e0d
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Mon Aug 31 10:25:26 2015 +0200

      Merge branch 'perf/urgent' into perf/core, to pick up fixes

      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 4c09e0d6ba65507a0ee0ca9abc5335e4f7bd7404
  Merge: 64291f7 601083c
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Mon Aug 31 10:24:24 2015 +0200

      Merge tag 'perf-urgent-for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent

      Pull perf/urgent fix from Arnaldo Carvalho de Melo:

        - Use index, not CPU id, to find core/pkg id in 'perf stat' (Kan Liang)

      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 71f8a4b81d040b3d094424197ca2f1bf811b1245
  Author: Jialing Fu <jlfu@xxxxxxxxxxx>
  Date:   Fri Aug 28 11:13:09 2015 +0800

      mmc: core: fix race condition in mmc_wait_data_done

      The following panic is captured in ker3.14, but the issue still exists
      in latest kernel.
      ---------------------------------------------------------------------
      [   20.738217] c0 3136 (Compiler) Unable to handle kernel NULL pointer 
dereference
      at virtual address 00000578
      ......
      [   20.738499] c0 3136 (Compiler) PC is at 
_raw_spin_lock_irqsave+0x24/0x60
      [   20.738527] c0 3136 (Compiler) LR is at 
_raw_spin_lock_irqsave+0x20/0x60
      [   20.740134] c0 3136 (Compiler) Call trace:
      [   20.740165] c0 3136 (Compiler) [<ffffffc0008ee900>] 
_raw_spin_lock_irqsave+0x24/0x60
      [   20.740200] c0 3136 (Compiler) [<ffffffc0000dd024>] __wake_up+0x1c/0x54
      [   20.740230] c0 3136 (Compiler) [<ffffffc000639414>] 
mmc_wait_data_done+0x28/0x34
      [   20.740262] c0 3136 (Compiler) [<ffffffc0006391a0>] 
mmc_request_done+0xa4/0x220
      [   20.740314] c0 3136 (Compiler) [<ffffffc000656894>] 
sdhci_tasklet_finish+0xac/0x264
      [   20.740352] c0 3136 (Compiler) [<ffffffc0000a2b58>] 
tasklet_action+0xa0/0x158
      [   20.740382] c0 3136 (Compiler) [<ffffffc0000a2078>] 
__do_softirq+0x10c/0x2e4
      [   20.740411] c0 3136 (Compiler) [<ffffffc0000a24bc>] irq_exit+0x8c/0xc0
      [   20.740439] c0 3136 (Compiler) [<ffffffc00008489c>] 
handle_IRQ+0x48/0xac
      [   20.740469] c0 3136 (Compiler) [<ffffffc000081428>] 
gic_handle_irq+0x38/0x7c
      ----------------------------------------------------------------------
      Because in SMP, "mrq" has race condition between below two paths:
      path1: CPU0: <tasklet context>
        static void mmc_wait_data_done(struct mmc_request *mrq)
        {
           mrq->host->context_info.is_done_rcv = true;
           //
           // If CPU0 has just finished "is_done_rcv = true" in path1, and at
           // this moment, IRQ or ICache line missing happens in CPU0.
           // What happens in CPU1 (path2)?
           //
           // If the mmcqd thread in CPU1(path2) hasn't entered to sleep mode:
           // path2 would have chance to break from wait_event_interruptible
           // in mmc_wait_for_data_req_done and continue to run for next
           // mmc_request (mmc_blk_rw_rq_prep).
           //
           // Within mmc_blk_rq_prep, mrq is cleared to 0.
           // If below line still gets host from "mrq" as the result of
           // compiler, the panic happens as we traced.
           wake_up_interruptible(&mrq->host->context_info.wait);
        }

      path2: CPU1: <The mmcqd thread runs mmc_queue_thread>
        static int mmc_wait_for_data_req_done(...
        {
           ...
           while (1) {
                 wait_event_interruptible(context_info->wait,
                         (context_info->is_done_rcv ||
                          context_info->is_new_req));
                   static void mmc_blk_rw_rq_prep(...
                 {
                 ...
                 memset(brq, 0, sizeof(struct mmc_blk_request));

      This issue happens very coincidentally; however adding mdelay(1) in
      mmc_wait_data_done as below could duplicate it easily.

         static void mmc_wait_data_done(struct mmc_request *mrq)
         {
           mrq->host->context_info.is_done_rcv = true;
      +    mdelay(1);
           wake_up_interruptible(&mrq->host->context_info.wait);
          }

      At runtime, IRQ or ICache line missing may just happen at the same place
      of the mdelay(1).

      This patch gets the mmc_context_info at the beginning of function, it can
      avoid this race condition.

      Signed-off-by: Jialing Fu <jlfu@xxxxxxxxxxx>
      Tested-by: Shawn Lin <shawn.lin@xxxxxxxxxxxxxx>
      Fixes: 2220eedfd7ae ("mmc: fix async request mechanism ....")
      Signed-off-by: Shawn Lin <shawn.lin@xxxxxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 01e2dae991771adb1257eb5cd3cecfda1aa09ba9
  Author: Linus Walleij <linus.walleij@xxxxxxxxxx>
  Date:   Mon Aug 31 08:56:04 2015 +0200

      Revert "gpio: extraxfs: fix returnvar.cocci warnings"

      This reverts commit 5e22ec019823b0204720e1ad9a5866c638332b3a.

  commit 80ec1927b102480f89436e7d7f961a263e916a44
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Sun Aug 30 22:40:44 2015 -0700

      ipv4: Fix 32-bit build.

         net/ipv4/af_inet.c: In function 'snmp_get_cpu_field64':
      >> net/ipv4/af_inet.c:1486:26: error: 'offt' undeclared (first use in 
this function)
            v = *(((u64 *)bhptr) + offt);
                                   ^
         net/ipv4/af_inet.c:1486:26: note: each undeclared identifier is 
reported only once for each function it appears in
         net/ipv4/af_inet.c: In function 'snmp_fold_field64':
      >> net/ipv4/af_inet.c:1499:39: error: 'offct' undeclared (first use in 
this function)
            res += snmp_get_cpu_field(mib, cpu, offct, syncp_offset);
                                                ^
      >> net/ipv4/af_inet.c:1499:10: error: too many arguments to function 
'snmp_get_cpu_field'
            res += snmp_get_cpu_field(mib, cpu, offct, syncp_offset);
                   ^
         net/ipv4/af_inet.c:1455:5: note: declared here
          u64 snmp_get_cpu_field(void __percpu *mib, int cpu, int offt)
              ^

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0ef707700f1cef2357ce655fc86a4de5e41fa4b5
  Author: Ken-ichirou MATSUZAWA <chamaken@xxxxxxxxx>
  Date:   Mon Aug 31 07:54:49 2015 +0900

      netlink: rx mmap: fix POLLIN condition

      Poll() returns immediately after setting the kernel current frame
      (ring->head) to SKIP from user space even though there is no new
      frame. And in a case of all frames is VALID, user space program
      unintensionally sets (only) kernel current frame to UNUSED, then
      calls poll(), it will not return immediately even though there are
      VALID frames.

      To avoid situations like above, I think we need to scan all frames
      to find VALID frames at poll() like netlink_alloc_skb(),
      netlink_forward_ring() finding an UNUSED frame at skb allocation.

      Signed-off-by: Ken-ichirou MATSUZAWA <chamas@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 793768f55c218a260015fe2029ae3d84676cae03
  Merge: ef34c0f d77a238
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Sun Aug 30 21:54:13 2015 -0700

      Merge branch 'thunderx-features-fixes'

      Aleksey Makarov says:

      ====================
      net: thunderx: New features and fixes

      v2:
        - The unused affinity_mask field of the structure cmp_queue
        has been deleted. (thanks to David Miller)
        - The unneeded initializers have been dropped. (thanks to Alexey Klimov)
        - The commit message "net: thunderx: Rework interrupt handling"
        has been fixed. (thanks to Alexey Klimov)
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d77a2384988fd397cf4f71417b9d971aa435758d
  Author: Sunil Goutham <sgoutham@xxxxxxxxxx>
  Date:   Sun Aug 30 12:29:16 2015 +0300

      net: thunderx: Support for internal loopback mode

      Support for setting VF's corresponding BGX LMAC in internal
      loopback mode. This mode can be used for verifying basic HW
      functionality such as packet I/O, RX checksum validation,
      CQ/RBDR interrupts, stats e.t.c. Useful when DUT has no external
      network connectivity.

      'loopback' mode can be enabled or disabled via ethtool.

      Note: This feature is not supported when no of VFs enabled are
      morethan no of physical interfaces i.e active BGX LMACs

      Signed-off-by: Sunil Goutham <sgoutham@xxxxxxxxxx>
      Signed-off-by: Aleksey Makarov <aleksey.makarov@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 92dc87697e6a71675a9e9eec04ebecd8cf4837a3
  Author: Sunil Goutham <sgoutham@xxxxxxxxxx>
  Date:   Sun Aug 30 12:29:15 2015 +0300

      net: thunderx: Support for upto 96 queues for a VF

      This patch adds support for handling multiple qsets assigned to a
      single VF. There by increasing no of queues from earlier 8 to max
      no of CPUs in the system i.e 48 queues on a single node and 96 on
      dual node system. User doesn't have option to assign which Qsets/VFs
       to be merged. Upon request from VF, PF assigns next free Qsets as
      secondary qsets. To maintain current behavior no of queues is kept
      to 8 by default which can be increased via ethtool.

      If user wants to unbind NICVF driver from a secondary Qset then it
      should be done after tearing down primary VF's interface.

      Signed-off-by: Sunil Goutham <sgoutham@xxxxxxxxxx>
      Signed-off-by: Aleksey Makarov <aleksey.makarov@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Robert Richter <rrichter@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 39ad6eea6c1a01b69abb1102a767697fb9349830
  Author: Sunil Goutham <sgoutham@xxxxxxxxxx>
  Date:   Sun Aug 30 12:29:14 2015 +0300

      net: thunderx: Rework interrupt handling

      Rework interrupt handler to avoid checking IRQ affinity of
      CQ interrupts. Now separate handlers are registered for each IRQ
      including RBDR. Register interrupt handlers for only those
      which are being used. Add nicvf_dump_intr_status() and use it
      in irq handlers.

      Signed-off-by: Sunil Goutham <sgoutham@xxxxxxxxxx>
      Signed-off-by: Aleksey Makarov <aleksey.makarov@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit aa2e259b474a4f52ecc9f6e0d444547de0aac4b2
  Author: Sunil Goutham <sgoutham@xxxxxxxxxx>
  Date:   Sun Aug 30 12:29:13 2015 +0300

      net: thunderx: Support for HW VLAN stripping

      This patch configures HW to strip 802.1Q header if found in a
      receiving packet. The stripped VLAN ID and TCI information is
      passed on to software via CQE_RX. Also sets netdev's 'vlan_features'
      so that other HW offload features can be used for tagged packets.

      This offload feature can be enabled or disabled via ethtool.

      Network stack normally ignores RPS for 802.1Q packets and hence low
      throughput. With this offload enabled throughput for tagged packets
      will be almost same as normal packets.

      Note: This patch doesn't enable HW VLAN insertion for transmit packets.

      Signed-off-by: Sunil Goutham <sgoutham@xxxxxxxxxx>
      Signed-off-by: Aleksey Makarov <aleksey.makarov@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 38bb5d4f4f988c98035fca003138dd84471432f2
  Author: Sunil Goutham <sgoutham@xxxxxxxxxx>
  Date:   Sun Aug 30 12:29:12 2015 +0300

      net: thunderx: Receive hashing HW offload support

      Adding support for receive hashing HW offload by using RSS_ALG
      and RSS_TAG fields of CQE_RX descriptor. Also removed dependency
      on minimum receive queue count to configure RSS so that hash is
      always generated.

      This hash is used by RPS logic to distribute flows across multiple
      CPUs. Offload can be disabled via ethtool.

      Signed-off-by: Robert Richter <rrichter@xxxxxxxxxx>
      Signed-off-by: Sunil Goutham <sgoutham@xxxxxxxxxx>
      Signed-off-by: Aleksey Makarov <aleksey.makarov@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6051cba77c1c768d954cf9e423c44bcb85b9adb8
  Author: Sunil Goutham <sgoutham@xxxxxxxxxx>
  Date:   Sun Aug 30 12:29:11 2015 +0300

      net: thunderx: mailboxes: remove code duplication

      Use the nicvf_send_msg_to_pf() function in the mailbox code.

      Signed-off-by: Sunil Goutham <sgoutham@xxxxxxxxxx>
      Signed-off-by: Robert Richter <rrichter@xxxxxxxxxx>
      Signed-off-by: Aleksey Makarov <aleksey.makarov@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a2dc5dedbbb32d082a9b6edf8793734dbfd59315
  Author: Sunil Goutham <sgoutham@xxxxxxxxxx>
  Date:   Sun Aug 30 12:29:10 2015 +0300

      net: thunderx: Add receive error stats reporting via ethtool

      Added ethtool support to dump receive packet error statistics reported
      in CQE. Also made some small fixes

      Signed-off-by: Sunil Goutham <sgoutham@xxxxxxxxxx>
      Signed-off-by: Aleksey Makarov <aleksey.makarov@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 322e5cc5c6c03584ff9362357fc1448b5e442e9e
  Author: Aleksey Makarov <aleksey.makarov@xxxxxxxxxxxxxxxxxx>
  Date:   Sun Aug 30 12:29:09 2015 +0300

      net: thunderx: fix MAINTAINERS

      The liquidio and thunder drivers have different maintainers.

      Signed-off-by: Aleksey Makarov <aleksey.makarov@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ef34c0f6c18b463e644929e300473c80d4157896
  Merge: 06fb4e7 a3a7737
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Sun Aug 30 21:48:59 2015 -0700

      Merge branch 'snmp-stat-aggregation'

      Raghavendra K T says:

      ====================
      Optimize the snmp stat aggregation for large cpus

      While creating 1000 containers, perf is showing lot of time spent in
      snmp_fold_field on a large cpu system.

      The current patch tries to improve by reordering the statistics gathering.

      Please note that similar overhead was also reported while creating
      veth pairs  https://lkml.org/lkml/2013/3/19/556

      Changes in V4:
       - remove 'item' variable and use IPSTATS_MIB_MAX to avoid sparse
         warning (Eric) also remove 'item' parameter (Joe)
       - add missing memset of padding.

      Changes in V3:
       - use memset to initialize temp buffer in leaf function. (David)
       - use memcpy to copy the buffer data to stat instead of unalign_pu (Joe)
       - Move buffer definition to leaf function __snmp6_fill_stats64() (Eric)
       -
      Changes in V2:
       - Allocate the stat calculation buffer in stack. (Eric)

      Setup:
      160 cpu (20 core) baremetal powerpc system with 1TB memory

      1000 docker containers was created with command
      docker run -itd  ubuntu:15.04  /bin/bash in loop

      observation:
      Docker container creation linearly increased from around 1.6 sec to 7.5 
sec
      (at 1000 containers) perf data showed, creating veth interfaces resulting 
in
      the below code path was taking more time.

      rtnl_fill_ifinfo
        -> inet6_fill_link_af
          -> inet6_fill_ifla6_attrs
            -> snmp_fold_field

      proposed idea:
       currently __snmp6_fill_stats64 calls snmp_fold_field that walks
      through per cpu data to of an item (iteratively for around 36 items).
       The patch tries to aggregate the statistics by going through
      all the items of each cpu sequentially which is reducing cache
      misses.

      Performance of docker creation improved by around more than 2x
      after the patch.

      before the patch:
      ================
      3f45ba571a42e925c4ec4aaee0e48d7610a9ed82a4c931f83324d41822cf6617
      real      0m6.836s
      user      0m0.095s
      sys       0m0.011s

      perf record -a docker run -itd  ubuntu:15.04  /bin/bash
      =======================================================
          50.73%  docker           [kernel.kallsyms]       [k] snmp_fold_field
           9.07%  swapper          [kernel.kallsyms]       [k] snooze_loop
           3.49%  docker           [kernel.kallsyms]       [k] veth_stats_one
           2.85%  swapper          [kernel.kallsyms]       [k] _raw_spin_lock
           1.37%  docker           docker                  [.] backtrace_qsort
           1.31%  docker           docker                  [.] 
strings.FieldsFunc

        cache-misses:  2.7%

      after the patch:
      =============
      9178273e9df399c8290b6c196e4aef9273be2876225f63b14a60cf97eacfafb5
      real      0m3.249s
      user      0m0.088s
      sys       0m0.020s

      perf record -a docker run -itd  ubuntu:15.04  /bin/bash
      =======================================================
          10.57%  docker           docker                [.] scanblock
           8.37%  swapper          [kernel.kallsyms]     [k] snooze_loop
           6.91%  docker           [kernel.kallsyms]     [k] snmp_get_cpu_field
           6.67%  docker           [kernel.kallsyms]     [k] veth_stats_one
           3.96%  docker           docker                [.] runtime_MSpan_Sweep
           2.47%  docker           docker                [.] strings.FieldsFunc

      cache-misses: 1.41 %

      Please let me know if you have suggestions/comments.
      Thanks Eric, Joe and David for the comments.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a3a773726c9f9ba2e87fd8ad8e36feff5f6ffd8e
  Author: Raghavendra K T <raghavendra.kt@xxxxxxxxxxxxxxxxxx>
  Date:   Sun Aug 30 11:29:42 2015 +0530

      net: Optimize snmp stat aggregation by walking all the percpu data at once

      Docker container creation linearly increased from around 1.6 sec to 7.5 
sec
      (at 1000 containers) and perf data showed 50% ovehead in snmp_fold_field.

      reason: currently __snmp6_fill_stats64 calls snmp_fold_field that walks
      through per cpu data of an item (iteratively for around 36 items).

      idea: This patch tries to aggregate the statistics by going through
      all the items of each cpu sequentially which is reducing cache
      misses.

      Docker creation got faster by more than 2x after the patch.

      Result:
                             Before           After
      Docker creation time   6.836s           3.25s
      cache miss             2.7%             1.41%

      perf before:
          50.73%  docker           [kernel.kallsyms]       [k] snmp_fold_field
           9.07%  swapper          [kernel.kallsyms]       [k] snooze_loop
           3.49%  docker           [kernel.kallsyms]       [k] veth_stats_one
           2.85%  swapper          [kernel.kallsyms]       [k] _raw_spin_lock

      perf after:
          10.57%  docker           docker                [.] scanblock
           8.37%  swapper          [kernel.kallsyms]     [k] snooze_loop
           6.91%  docker           [kernel.kallsyms]     [k] snmp_get_cpu_field
           6.67%  docker           [kernel.kallsyms]     [k] veth_stats_one

      changes/ideas suggested:
      Using buffer in stack (Eric), Usage of memset (David), Using memcpy in
      place of unaligned_put (Joe).

      Signed-off-by: Raghavendra K T <raghavendra.kt@xxxxxxxxxxxxxxxxxx>
      Acked-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c4c6bc314618f60ba69b0cbf93e506e4c38a11d2
  Author: Raghavendra K T <raghavendra.kt@xxxxxxxxxxxxxxxxxx>
  Date:   Sun Aug 30 11:29:41 2015 +0530

      net: Introduce helper functions to get the per cpu data

      Signed-off-by: Raghavendra K T <raghavendra.kt@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 06fb4e701b17e93366542e4cc57047e411136af7
  Merge: 2573d78 f892a84
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Sun Aug 30 21:45:01 2015 -0700

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

  commit 4a1e2feb9d246775dee0f78ed5b18826bae2b1c5
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Sun Aug 30 18:37:59 2015 -0700

      NFSv4.1: Fix a protocol issue with CLOSE stateids

      According to RFC5661 Section 18.2.4, CLOSE is supposed to return
      the zero stateid. This means that nfs_clear_open_stateid_locked()
      cannot assume that the result stateid will always match the 'other'
      field of the existing open stateid when trying to determine a race
      with a parallel OPEN.

      Instead, we look at the argument, and check for matches.

      Cc: stable@xxxxxxxxxxxxxxx # v4.0+
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 8f8dcb3f7fe4febbfa96e64d4ad47de958c5cc34
  Author: Matt Turner <mattst88@xxxxxxxxx>
  Date:   Tue Aug 4 14:35:05 2015 -0700

      alpha: select CONFIG_ARCH_USE_CMPXCHG_LOCKREF.

      On Alpha we have spinlocks that are 32b in size and an efficient
      cmpxchg64 implementation, so we qualify to make use of cmpxchg backed
      lockrefs. Select the ARCH_USE_CMPXCHG_LOCKREF Kconfig symbol and provide
      a trivial implementation of arch_spin_value_unlocked to satisfy the
      lockref code.

      Using Linus' simple testcase from
      http://article.gmane.org/gmane.linux.file-systems/77466 on a dual CPU
      ES47 system I see around an 8% gain:

          N       Min       Max    Median       Avg      Stddev
      x  30   6194580   6295654   6272504   6272514   17694.232
      +  30   6731164   6786334   6767982   6764274   13738.863
      Difference at 95.0% confidence
              491760 +/- 8188.17
              7.83992% +/- 0.130541%
              (Student's t, pooled s = 15840.5)

      Signed-off-by: Matt Turner <mattst88@xxxxxxxxx>

  commit 879a37d00f1882b1e56a66e626af4194d592d257
  Merge: 701078d 50002d4
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Mon Aug 31 10:25:45 2015 +1000

      Merge branch 'exynos-drm-next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos into drm-next

      This is a second pull-request which adds last part of
      atomic modeset/pageflip support, render node support,
      clean-up, and fix-up.

      * 'exynos-drm-next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos:
        drm/exynos: fix build warning to exynos_drm_gem.c
        drm/exynos: Properly report supported formats for each device
        drm/exynos: add render node support
        drm/exynos: implement atomic_{begin/flush} of DECON
        drm/exynos: remove legacy ->suspend()/resume()
        drm/exynos: Enable atomic modesetting feature
        drm/exynos: remove wait queue for pending page flip
        drm/exynos: wait all planes updates to finish
        drm/exynos: add atomic asynchronous commit
        drm/exynos: fimd: only finish update if START == START_S
        drm/exynos: add macro to get the address of START_S reg
        drm/exynos: check for pending fb before finish update
        drm/exynos: fimd: move window protect code to prepare/cleanup_plane
        drm/exynos: add prepare and cleanup phases for planes
        drm/exynos: fimd: unify call to exynos_drm_crtc_finish_pageflip()
        drm/exynos: don't track enabled state at exynos_crtc

  commit 701078d538e5b2bec95cbbc53cca71c120cd063f
  Merge: d3e8ea5 26951ca
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Mon Aug 31 10:06:22 2015 +1000

      Merge tag 'drm-intel-next-fixes-2015-08-28' of 
git://anongit.freedesktop.org/drm-intel into drm-next

      Some i915 fixes headed for v4.3. SKL DDI-E is a wip, but here's the
      first in a series.

      * tag 'drm-intel-next-fixes-2015-08-28' of 
git://anongit.freedesktop.org/drm-intel:
        drm/i915/skl: enable DDI-E hotplug
        drm/i915: Fix build warning on 32-bit
        drm/i915/skl: Update DDI buffer translation programming.
        drm/i915: Allow parsing of variable size child device entries from VBT
        drm/i915: fix link rates reported for SKL
        drm/i915: fix VBT parsing for SDVO child device mapping

  commit d3e8ea50922d90aea473474bdcede34ce743e1a5
  Merge: 92cffd5 2497ee7
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Mon Aug 31 10:05:37 2015 +1000

      Merge tag 'drm-amdkfd-next-fixes-2015-08-30' of 
git://people.freedesktop.org/~gabbayo/linux into drm-next

      Just one small fix before 4.3 merge window:

      - Use linux/mman.h instead of uapi's mman-common.h inside the driver.

      * tag 'drm-amdkfd-next-fixes-2015-08-30' of 
git://people.freedesktop.org/~gabbayo/linux:
        amdkfd: use <linux/mman.h> instead of <uapi/asm-generic/mman-common.h>

  commit e1c30298ccab87151a0c4241fc5985c591598361
  Author: Yishai Hadas <yishaih@xxxxxxxxxxxx>
  Date:   Thu Aug 13 18:32:07 2015 +0300

      IB/ucma: HW Device hot-removal support

      Currently, IB/cma remove_one flow blocks until all user descriptor 
managed by
      IB/ucma are released. This prevents hot-removal of IB devices. This patch
      allows IB/cma to remove devices regardless of user space activity. Upon 
getting
      the RDMA_CM_EVENT_DEVICE_REMOVAL event we close all the underlying HW 
resources
      for the given ucontext. The ucontext itself is still alive till its 
explicit
      destroying by its creator.

      Running applications at that time will have some zombie device, further
      operations may fail.

      Signed-off-by: Yishai Hadas <yishaih@xxxxxxxxxxxx>
      Signed-off-by: Shachar Raindel <raindel@xxxxxxxxxxxx>
      Reviewed-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit ae184ddeca5db6d60ba9067ba1c9e940fa01d400
  Author: Yishai Hadas <yishaih@xxxxxxxxxxxx>
  Date:   Thu Aug 13 18:32:06 2015 +0300

      IB/mlx4_ib: Disassociate support

      Implements the IB core disassociate_ucontext API. The driver detaches the 
HW
      resources for a given user context to prevent a dependency between 
application
      termination and device disconnecting. This is done by managing the VMAs 
that
      were mapped to the HW bars such as door bell and blueflame. When need to 
detach
      remap them to an arbitrary kernel page returned by the zap API.

      Signed-off-by: Yishai Hadas <yishaih@xxxxxxxxxxxx>
      Signed-off-by: Jack Morgenstein <jackm@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 036b10635739ffd030246eedde3d67f724800177
  Author: Yishai Hadas <yishaih@xxxxxxxxxxxx>
  Date:   Thu Aug 13 18:32:05 2015 +0300

      IB/uverbs: Enable device removal when there are active user space 
applications

      Enables the uverbs_remove_one to succeed despite the fact that there are
      running IB applications working with the given ib device.  This
      functionality enables a HW device to be unbind/reset despite the fact that
      there are running user space applications using it.

      It exposes a new IB kernel API named 'disassociate_ucontext' which lets
      a driver detaching its HW resources from a given user context without
      crashing/terminating the application. In case a driver implemented the
      above API and registered with ib_uverb there will be no dependency 
between its
      device to its uverbs_device. Upon calling remove_one of ib_uverbs the call
      should return after disassociating the open HW resources without waiting 
to
      clients disconnecting. In case driver didn't implement this API there 
will be no
      change to current behaviour and uverbs_remove_one will return only when 
last
      client has disconnected and reference count on uverbs device became 0.

      In case the lower driver device was removed any application will
      continue working over some zombie HCA, further calls will ended with an
      immediate error.

      Signed-off-by: Yishai Hadas <yishaih@xxxxxxxxxxxx>
      Signed-off-by: Shachar Raindel <raindel@xxxxxxxxxxxx>
      Reviewed-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 057aec0d23f750b27f0bb92d2606871f60417e0a
  Author: Yishai Hadas <yishaih@xxxxxxxxxxxx>
  Date:   Thu Aug 13 18:32:04 2015 +0300

      IB/uverbs: Explicitly pass ib_dev to uverbs commands

      Done in preparation for deploying RCU for the device removal
      flow. Allows isolating the RCU handling to the uverb_main layer and
      keeping the uverbs_cmd code as is.

      Signed-off-by: Yishai Hadas <yishaih@xxxxxxxxxxxx>
      Signed-off-by: Shachar Raindel <raindel@xxxxxxxxxxxx>
      Reviewed-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 35d4a0b63dc0c6d1177d4f532a9deae958f0662c
  Author: Yishai Hadas <yishaih@xxxxxxxxxxxx>
  Date:   Thu Aug 13 18:32:03 2015 +0300

      IB/uverbs: Fix race between ib_uverbs_open and remove_one

      Fixes: 2a72f212263701b927559f6850446421d5906c41 ("IB/uverbs: Remove 
dev_table")

      Before this commit there was a device look-up table that was protected
      by a spin_lock used by ib_uverbs_open and by ib_uverbs_remove_one. When
      it was dropped and container_of was used instead, it enabled the race
      with remove_one as dev might be freed just after:
      dev = container_of(inode->i_cdev, struct ib_uverbs_device, cdev) but
      before the kref_get.

      In addition, this buggy patch added some dead code as
      container_of(x,y,z) can never be NULL and so dev can never be NULL.
      As a result the comment above ib_uverbs_open saying "the open method
      will either immediately run -ENXIO" is wrong as it can never happen.

      The solution follows Jason Gunthorpe suggestion from below URL:
      https://www.mail-archive.com/linux-rdma@xxxxxxxxxxxxxxx/msg25692.html

      cdev will hold a kref on the parent (the containing structure,
      ib_uverbs_device) and only when that kref is released it is
      guaranteed that open will never be called again.

      In addition, fixes the active count scheme to use an atomic
      not a kref to prevent WARN_ON as pointed by above comment
      from Jason.

      Signed-off-by: Yishai Hadas <yishaih@xxxxxxxxxxxx>
      Signed-off-by: Shachar Raindel <raindel@xxxxxxxxxxxx>
      Reviewed-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 03c40442a0e66fa52aec6733ea88804fe7d12c77
  Author: Yishai Hadas <yishaih@xxxxxxxxxxxx>
  Date:   Thu Aug 13 18:32:02 2015 +0300

      IB/uverbs: Fix reference counting usage of event files

      Fix the reference counting usage to be handled in the event file
      creation/destruction function, instead of being done by the caller.
      This is done for both async/non-async event files.

      Based on Jason Gunthorpe report at https://www.mail-archive.com/
      linux-rdma@xxxxxxxxxxxxxxx/msg24680.html:
      "The existing code for this is broken, in ib_uverbs_get_context all
      the error paths between ib_uverbs_alloc_event_file and the
      kref_get(file->ref) are wrong - this will result in fput() which will
      call ib_uverbs_event_close, which will try to do kref_put and
      ib_unregister_event_handler - which are no longer paired."

      Signed-off-by: Yishai Hadas <yishaih@xxxxxxxxxxxx>
      Signed-off-by: Shachar Raindel <raindel@xxxxxxxxxxxx>
      Reviewed-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 7dd78647a2c2c224e376fc72797d411a3a0bb047
  Author: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 14:34:31 2015 -0600

      IB/core: Make ib_dealloc_pd return void

      The majority of callers never check the return value, and even if they
      did, they can't do anything about a failure.

      All possible failure cases represent a bug in the caller, so just
      WARN_ON inside the function instead.

      This fixes a few random errors:
       net/rd/iw.c infinite loops while it fails. (racing with EBUSY?)

      This also lays the ground work to get rid of error return from the
      drivers. Most drivers do not error, the few that do are broken since
      it cannot be handled.

      Since uverbs can legitimately make use of EBUSY, open code the
      check.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Chuck Lever <chuck.lever@xxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 03f6fb93fde24f01a940283bdf55024e576ee87d
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Mon Aug 10 17:09:36 2015 -0700

      IB/srp: Create an insecure all physical rkey only if needed

      The SRP initiator only needs this if the insecure register_always=N
      performance optimization is enabled, or if FRWR/FMR is not supported
      in the driver.

      Do not create an all physical MR unless it is needed to support
      either of those modes. Default register_always to true so the out of
      the box configuration does not create an insecure all physical MR.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      [bvanassche: reworked and rebased this patch]
      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 330179f2fa93c1c6c41a90c7deabc98e363018e5
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Mon Aug 10 17:09:05 2015 -0700

      IB/srp: Register the indirect data buffer descriptor

      Instead of always using the global rkey for the indirect data
      buffer descriptor, register that descriptor with the HCA if
      the kernel module parameter register_always has been set to Y.

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 002f15674c84fb4c38ed5237c1e7235e09c033f0
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Mon Aug 10 17:08:44 2015 -0700

      IB/srp: Introduce srp_device.use_fmr

      Introduce the variable srp_device.use_fmr. Leave out the dev->has_fr /
      dev->has_fmr and ch->fr_pool / ch->fmr_pool checks since these are
      redundant. This patch does not change any functionality but makes the
      source code easier to read.

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 3ae95da8831e7bcf7b6da2b31cb4b50b3058f14e
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Mon Aug 10 17:08:18 2015 -0700

      IB/srp: Remove use_mr argument from srp_map_sg_entry()

      Move the srp_map_desc() call from inside srp_map_sg_entry() to
      srp_map_sg() such that the use_mr argument can be removed from
      srp_map_sg_entry().

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 0e0d3a480090d03f29e58dfd717960776f3416d9
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Mon Aug 10 17:07:46 2015 -0700

      IB/srp: Remove the memory registration backtracking code

      Mapping a discontiguous sg-list requires multiple memory regions
      and hence can exhaust the memory region pool. The SRP initiator
      already handles this by temporarily reducing the queue depth. This
      means that it is safe to remove the memory registration backtracking
      code. This patch has been tested with direct I/O sizes up to 256 MB.

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit f731ed62934ace0d3f5aa9ec557349171711be05
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Mon Aug 10 17:07:27 2015 -0700

      IB/srp: Add memory descriptor array pointer range checking

      Although most paths through which a request is submitted check
      block layer parameters like the max_segments limit, these are
      not checked when an SG_IO or direct I/O request is submitted.
      Hence add a range check for the memory descriptor array pointer.

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 7e85c91970125cb16399c7d1cfedc943266eee49
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Mon Aug 10 17:06:57 2015 -0700

      IB/srp: Use multiple registrations for large memory regions

      Instead of using the global rkey for large memory regions, use
      multiple registrations. See also the while (dma_len) loop further
      down in srp_map_sg_entry().

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 186fbc6689a368364b7c9eb9d42d6f84b3079f65
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Mon Aug 10 17:06:29 2015 -0700

      IB/srp: Re-enable FMR for non-page aligned buffers

      During a discussion in 2011 nobody recalled why FMR was not used for
      non-page aligned buffers (see also
      http://thread.gmane.org/gmane.linux.drivers.rdma/7149). Re-enable FMR
      for such buffers. For the reason why the srp_map_fmr() function needs
      to be modified, see also patch "IB/srp: rework mapping engine to use
      multiple FMR entries" (commit ID 8f26c9ff9cd0; January 2011).

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit e5580242aa8fab292579a1661463f7479275f7ff
  Author: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:22:26 2015 -0600

      rds/ib: Remove ib_get_dma_mr calls

      The pd now has a local_dma_lkey member which completely replaces
      ib_get_dma_mr, use it instead.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 2f31fa881fbe70808b945a6d23cae1ca8eadf1b3
  Author: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:22:25 2015 -0600

      net/9p: Remove ib_get_dma_mr calls

      The pd now has a local_dma_lkey member which completely replaces
      ib_get_dma_mr, use it instead.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Tested-by: Dominique Martinet <dominique.martinet@xxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 5a783956c2b90179b852dd58a2ee668f16dfe980
  Author: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:22:24 2015 -0600

      ib_srpt: Remove ib_get_dma_mr calls

      The pd now has a local_dma_lkey member which completely replaces
      ib_get_dma_mr, use it instead.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit e6bf5f48d2adc443689c5e627bcd559b00201e5c
  Author: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:22:22 2015 -0600

      IB/srp: Use pd->local_dma_lkey

      Replace all leys with  pd->local_dma_lkey. This driver does not support
      iWarp, so this is safe.

      The insecure use of ib_get_dma_mr is thus isolated to an rkey, and will
      have to be fixed separately.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Reviewed-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 34efc7dfbd88e4a232b1efa31c5e900606c84fca
  Author: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:22:21 2015 -0600

      iser-target: Remove ib_get_dma_mr calls

      The pd now has a local_dma_lkey member which completely replaces
      ib_get_dma_mr, use it instead.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 256b7ad27316525711dfa98b67e7c40cb28b1711
  Author: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:22:20 2015 -0600

      IB/iser: Use pd->local_dma_lkey

      Replace all leys with  pd->local_dma_lkey. This driver does not support
      iWarp, so this is safe.

      The insecure use of ib_get_dma_mr is thus isolated to an rkey, and this
      looks trivially fixed by forcing the use of registration in a future
      patch.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit b37c788f595cd578524fb8f50d3bd2fff8b62bc3
  Author: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:22:19 2015 -0600

      IB/mlx5: Remove ib_get_dma_mr calls

      The pd now has a local_dma_lkey member which completely replaces
      ib_get_dma_mr, use it instead.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 7dd975762825e4c2b95df5e24759a9d6ad915c79
  Author: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:22:18 2015 -0600

      IB/mlx4: Remove ib_get_dma_mr calls

      The pd now has a local_dma_lkey member which completely replaces
      ib_get_dma_mr, use it instead.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 77b1f99660ed60694e1d0e3a63096c1f252debfd
  Author: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:22:17 2015 -0600

      IB/ipoib: Remove ib_get_dma_mr calls

      The pd now has a local_dma_lkey member which completely replaces
      ib_get_dma_mr, use it instead.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 4be90bc60df47f6268b594c4fb6c90f0ff2f519f
  Author: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:22:16 2015 -0600

      IB/mad: Remove ib_get_dma_mr calls

      The pd now has a local_dma_lkey member which completely replaces
      ib_get_dma_mr, use it instead.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 96249d70dd70496084c7ec1465ec449cd032955a
  Author: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 14:14:45 2015 -0600

      IB/core: Guarantee that a local_dma_lkey is available

      Every single ULP requires a local_dma_lkey to do anything with
      a QP, so let us ensure one exists for every PD created.

      If the driver can supply a global local_dma_lkey then use that, otherwise
      ask the driver to create a local use all physical memory MR associated
      with the new PD.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Sagi Grimberg <sagig@xxxxxxxxxxxxxxxxxx>
      Acked-by: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Reviewed-by: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ira Weiny <ira.weiny@xxxxxxxxx>
      Tested-by: Ira Weiny <ira.weiny@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 7332bed085c68fc76462583a1003c6dca2c31e11
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:33:06 2015 +0300

      IB/iser: Chain all iser transaction send work requests

      Chaning of send work requests benefits performance by
      reducing the send queue lock contention (acquired in
      ib_post_send) and saves us HW doorbells which is posted
      only once.

      Currently, in normal IO flows iser does not chain the CDB send
      work request with the registration work request. Also in PI
      flows, signature work requests are not chained as well.

      Lets chain those and post only once.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 1b16c9894b63c8dfbc578ecf1186be4508b2c49e
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:33:05 2015 +0300

      IB/iser: Add debug prints to the various memory registration methods

      Easier to debug when we have the registration details.

      This patch does not change any functionality.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Adir Lev <adirl@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit df749cdc45d9f97cb0a5e6ceab80e2e00ee9bf85
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:33:04 2015 +0300

      IB/iser: Support up to 8MB data transfer in a single command

      iser support up to 512KB data transfer in a single scsi command.
      This means that larger IOs will split to different request. While
      iser can easily saturate FDR/EDR wires, some arrays are fine tuned
      for 1MB (or larger) IO sizes, hence add an option to support larger
      transfers (up to 8MB) if the device allows it.

      Given that a few target implementations don't support data transfers
      of more than 512KB by default and the fact that larger IO sizes require
      more resources, we introduce a module parameter to determine the
      maximum number of 512B sectors in a single scsi command.
      Users that are interested in larger transfers can change this value given
      that the target supports larger transfers.

      At the moment, iser works in 4K pages granularity, In a later stage
      we will get it to work with system page size instead.

      IO operations that consists of N pages will need a page vector
      of size N+1 in case the first SG element contains an offset. Given
      that some devices allocates memory regions in powers of 2, this
      means that allocating a region with N+1 pages, will result in
      region resources allocation of the next power of 2. Since we don't
      want that to happen, in case we are in the limit of IO size supported
      and the first SG element has an offset, we align the SG list using a
      bounce buffer (which is OK given that this is not likely to happen a lot).

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit f8db651da29bcad213d43328ebf8ce8459f526a7
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:33:03 2015 +0300

      IB/iser: Pass registration pool a size parameter

      Hard coded for now. This will allow to allocate different
      sized MRs depending on the IO size needed (and device
      capabilities).

      This patch does not change any functionality.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 32467c420bb68776ebaa53ddf6712e1dba7bb5da
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:33:02 2015 +0300

      IB/iser: Unify fast memory registration flows

      iser_reg_rdma_mem_[fastreg|fmr] share a lot of code, and
      logically do the same thing other than the buffer registration
      method itself (iser_fast_reg_mr vs. iser_fast_reg_fmr).
      The DIF logic is not implemented in the FMR flow as there is no
      existing device that supports FMRs and Signature feature.

      This patch unifies the flow in a single routine iser_reg_rdma_mem
      and just split to fmr/frwr for the buffer registration itself.

      Also, for symmetry reasons, unify iser_unreg_rdma_mem (which will
      call the relevant device specific unreg routine).

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Adir Lev <adirl@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 81722909c8f78ee2db62373a74ec2ecb709c112e
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:33:01 2015 +0300

      IB/iser: Make reg_desc_get a per device routine

      As for fmrs we will hold a single registration descriptor
      as no need for multiple like in the frwr mode (descriptor
      for each task). This change helps unifying the duplicate
      registration code paths.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Adir Lev <adirl@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 7d0483c927f429c7aece47e730eaa91007577d99
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:33:00 2015 +0300

      IB/iser: Rename iser_reg_page_vec to iser_fast_reg_fmr

      Also, change a name of a local variable.

      This patch does not change any functionality.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Adir Lev <adirl@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 2b3bf958103899a96d230c9f2e0d87606f08a7be
  Author: Adir Lev <adirl@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:32:59 2015 +0300

      IB/iser: Maintain connection fmr_pool under a single registration 
descriptor

      This will allow us to unify the memory registration code path between
      the various methods which vary by the device capabilities. This change
      will make it easier and less intrusive to remove fmr_pools from the
      code when we'd want to.

      The reason we use a single descriptor is to avoid taking a
      redundant spinlock when working with FMRs.

      We also change the signature of iser_reg_page_vec to make it match
      iser_fast_reg_mr (and the future indirect registration method).

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Adir Lev <adirl@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 385ad87d4b637c1ebdb54bc93274fc2c267dfc16
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:32:58 2015 +0300

      IB/iser: Introduce iser registration pool struct

      Instead of having it a part of the connection structure,
      have it be under a dedicated (embedded) structure in the
      connection. A logical separation of the registration pool
      and the connection structure.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Adir Lev <adirl@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit eb6ea8c36c90f022dd9603530286e0707a9c467b
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:32:57 2015 +0300

      IB/iser: Move fastreg descriptor allocation to iser_create_fastreg_desc

      Don't have the caller allocate the structure and worry about
      freeing it in case the routine failed.

      This patch does not change any functionality.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Adir Lev <adirl@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 48afbff673d3d2ff6c52342574392db504dae301
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:32:56 2015 +0300

      IB/iser: Introduce iser_reg_ops

      Move all the per-device function pointers to an easy
      extensible iser_reg_ops structure that contains all
      the iser registration operations.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 8c18ed03a95cb6c3543b0a9e0df5e9366baea5df
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:32:55 2015 +0300

      IB/iser: Remove dead code in fmr_pool alloc/free

      In the past the we always tried to allocate an fmr_pool
      and if it failed on ENOSYS (not supported) then we continued
      with dma mr. This is not the case anymore and if we tried to
      allocate an fmr_pool then it is supported and we expect to succeed.

      Also, the check if fmr_pool is allocated when free is called is
      redundant as well as we are guaranteed it exists.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 5190cc2664972f2c51502e928fcb7a608dddab5f
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:32:54 2015 +0300

      IB/iser: Rename struct fast_reg_descriptor -> iser_fr_desc

      Avoid struct names without iser_ prefix.

      This patch does not change any functionality.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit d711d81d6463ecf566b93810e16949f2d159aa50
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:32:53 2015 +0300

      IB/iser: Introduce struct iser_reg_resources

      Have fast_reg_descriptor hold struct iser_reg_resources
      (mr, frpl, valid flag). This will be useful when the
      actual buffer registration routines will be passed with
      the needed registration resources (i.e. iser_reg_resources)
      without being aware of their nature (i.e. data or protection).

      In order to achieve this, we remove reg_indicators flags container
      and place specific flags (mr_valid) within iser_reg_resources struct.
      We also place the sig_mr_valid and sig_protcted flags in iser_pi_context.

      This patch also modifies iser_fast_reg_mr to receive the
      reg_resources instead of the fast_reg_descriptor and a data/protection
      indicator.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Adir Lev <adirl@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit ea18f5d7777dc4fa9c18c4919281301cf4fd921a
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:32:52 2015 +0300

      IB/iser: Remove an unneeded print for unaligned memory

      We can do it in iser_aligned_data_len instead and
      it will save us an argument that is passed to
      fall_to_counce_buf just for the print.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit b9abd8d21d3a04903aefcb7742efe3390f2fac57
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:32:51 2015 +0300

      IB/iser: Remove a redundant always-false condition

      We always call iser_initialize_task_headers() and set
      the header tx_sg.lkey to the device mr lkey, so no
      point in checking it in iser_create_send_desc().

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 8d5944d80359e645feb2ebd069a6f4caf7825e40
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:32:50 2015 +0300

      IB/iser: Fix possible bogus DMA unmapping

      If iser_initialize_task_headers() routine failed before
      dma mapping, we should not attempt to unmap in cleanup_task().

      Fixes: 7414dde0a6c3a958e (IB/iser: Fix race between iser connection ...)
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 02816a8b8881f9dea68883c9b72672e87cb91d36
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:32:49 2015 +0300

      IB/iser: Get rid of un-maintained counters

      We don't update those anywhere in the code and they
      seem pretty useless (no one seem to care about those).

      qp_tx_queue_full: We never should get this
      fmr_map_not_avail: We can never get to this
      eh_abort_cnt: We don't monitor aborts

      Go ahead and remove them.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit d16739055bd1f562ae4d83e69f7f7f1cefcfbe16
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:32:48 2015 +0300

      IB/iser: Fix missing return status check in iser_send_data_out

      Since commit "IB/iser: Fix race between iser connection teardown..."
      iser_initialize_task_headers() might fail, so we need to check that.

      Fixes: 7414dde0a6c3a958e (IB/iser: Fix race between iser connection ...)
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 1156cc80f8fc31f8c52740a9c8051afd8d70faf3
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:32:47 2015 +0300

      IB/iser: Remove '.' from log message

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 74ce897b7c9be9f5913bbffafcac10f0871c503b
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:32:46 2015 +0300

      IB/iser: Change minor assignments and logging prints

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit db0a6cbd21d6ece6587c157b3d183521bc8a2781
  Author: Jenny Falkovich <jennyf@xxxxxxxxxxxx>
  Date:   Thu Aug 6 18:32:45 2015 +0300

      IB/iser: Change some module parameters to be RO

      While we're at it, use permission defines instead
      of octal values and rearrange a little bit.

      Signed-off-by: Jenny Derzhavetz <jennyf@xxxxxxxxxxxx>
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 2ca546b92a024d07adedd15b4c262b1c2c0786ec
  Author: Kaike Wan <kaike.wan@xxxxxxxxx>
  Date:   Fri Aug 14 08:52:09 2015 -0400

      IB/sa: Route SA pathrecord query through netlink

      This patch routes a SA pathrecord query to netlink first and processes the
      response appropriately. If a failure is returned, the request will be sent
      through IB. The decision whether to route the request to netlink first is
      determined by the presence of a listener for the local service netlink
      multicast group. If the user-space local service netlink multicast group
      listener is not present, the request will be sent through IB, just like
      what is currently being done.

      Signed-off-by: Kaike Wan <kaike.wan@xxxxxxxxx>
      Signed-off-by: John Fleck <john.fleck@xxxxxxxxx>
      Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 5d2657708ec25b9fb3dd174443b1f647babcbe62
  Author: Kaike Wan <kaike.wan@xxxxxxxxx>
  Date:   Fri Aug 14 08:52:08 2015 -0400

      IB/sa: Allocate SA query with kzalloc

      Replace kmalloc with kzalloc so that all uninitialized fields in SA query
      will be zero-ed out to avoid unintentional consequence. This prepares the
      SA query structure to accept new fields in the future.

      Signed-off-by: Kaike Wan <kaike.wan@xxxxxxxxx>
      Signed-off-by: John Fleck <john.fleck@xxxxxxxxx>
      Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit bc10ed7d3d19ff61427007b4d7bf98d3e57bb333
  Author: Kaike Wan <kaike.wan@xxxxxxxxx>
  Date:   Fri Aug 14 08:52:07 2015 -0400

      IB/core: Add rdma netlink helper functions

      This patch adds a function to check if listeners for a netlink multicast
      group are present. It also adds a function to receive netlink response
      messages.

      Signed-off-by: Kaike Wan <kaike.wan@xxxxxxxxx>
      Signed-off-by: John Fleck <john.fleck@xxxxxxxxx>
      Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 6431eb87065ffd24dfc7c0b6954e80a4eb74e177
  Author: Kaike Wan <kaike.wan@xxxxxxxxx>
  Date:   Fri Aug 14 08:52:06 2015 -0400

      IB/netlink: Add defines for local service requests through netlink

      This patch adds netlink defines for local service client, local service
      group, local service operations, and related attributes.

      Signed-off-by: Kaike Wan <kaike.wan@xxxxxxxxx>
      Signed-off-by: John Fleck <john.fleck@xxxxxxxxx>
      Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit bc44bd1d864664f3658352c6aaaa02557d49165d
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Fri Aug 14 11:01:09 2015 -0700

      IB/srp: Stop the scsi_eh_<n> and scsi_tmf_<n> threads if login fails

      scsi_host_alloc() not only allocates memory for a SCSI host but also
      creates the scsi_eh_<n> kernel thread and the scsi_tmf_<n> workqueue.
      Stop these threads if login fails by calling scsi_host_put().

      Reported-by: Konstantin Krotov <kkv@xxxxxxxx>
      Fixes: fb49c8bbaae7 ("Remove an extraneous scsi_host_put() from an error 
path")
      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Cc: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Cc: Sebastian Parschauer <sebastian.riemer@xxxxxxxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> #v3.19
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 713ef24e41757561c7f0bfc9bf4436f7e4a5b527
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Fri Jul 31 14:13:52 2015 -0700

      IB/srp: Bump driver version and release date

      Since version 1.0 e.g. scsi-mq has been added. Since this is
      a significant change, bump the driver version and release date.

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Cc: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Cc: Sebastian Parschauer <sebastian.riemer@xxxxxxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit c257ea6f9f9aed0b173e0c2932bb8dac5612cdc6
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Fri Jul 31 14:13:22 2015 -0700

      IB/srp: Handle partial connection success correctly

      Avoid that the following kernel warning is reported if the SRP
      target system accepts fewer channels per connection than what
      was requested by the initiator system:

      WARNING: at drivers/infiniband/ulp/srp/ib_srp.c:617 
srp_destroy_qp+0xb1/0x120 [ib_srp]()
      Call Trace:
      [<ffffffff8105d67f>] warn_slowpath_common+0x7f/0xc0
      [<ffffffff8105d6da>] warn_slowpath_null+0x1a/0x20
      [<ffffffffa05419e1>] srp_destroy_qp+0xb1/0x120 [ib_srp]
      [<ffffffffa05445fb>] srp_create_ch_ib+0x19b/0x420 [ib_srp]
      [<ffffffffa0545257>] srp_create_target+0x7d7/0xa94 [ib_srp]
      [<ffffffff8138dac0>] dev_attr_store+0x20/0x30
      [<ffffffff812079ef>] sysfs_write_file+0xef/0x170
      [<ffffffff81191fc4>] vfs_write+0xb4/0x130
      [<ffffffff8119276f>] sys_write+0x5f/0xa0
      [<ffffffff815a0a59>] system_call_fastpath+0x16/0x1b

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Cc: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Cc: Sebastian Parschauer <sebastian.riemer@xxxxxxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit e6300cbd9b09e7bf12f5f7b79e77b58d62b9d990
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Fri Jul 31 14:12:48 2015 -0700

      IB/srp: Constify a function argument

      This patch does not change any functionality.

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Cc: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Cc: Sebastian Parschauer <sebastian.riemer@xxxxxxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 799cdaf8a98f13d4fba3162e21e1e63f21045010
  Author: Ariel Nahum <arieln@xxxxxxxxxxxx>
  Date:   Sun Aug 9 11:16:27 2015 +0300

      IB/mlx4: Fix incorrect cq flushing in error state

      When handling a device internal error, the driver is responsible to
      drain the completion queue with flush errors.

      In case a completion queue was assigned to multiple send queues, the
      driver iterates over the send queues and generates flush errors of
      inflight wqes. The driver must correctly pass the wc array with an
      offset as a result of the previous send queue iteration. Not doing so
      will overwrite previously set completions and return a wrong number
      of polled completions which includes ones which were not correctly set.

      Fixes: 35f05dabf95a (IB/mlx4: Reset flow support for IB kernel ULPs)
      Signed-off-by: Ariel Nahum <arieln@xxxxxxxxxxxx>
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Cc: Yishai Hadas <yishaih@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 5e99b139f1b68acd65e36515ca347b03856dfb5a
  Author: Noa Osherovich <noaos@xxxxxxxxxxxx>
  Date:   Thu Jul 30 17:34:24 2015 +0300

      IB/mlx4: Use correct SL on AH query under RoCE

      The mlx4 IB driver implementation for ib_query_ah used a wrong offset
      (28 instead of 29) when link type is Ethernet. Fixed to use the correct 
one.

      Fixes: fa417f7b520e ('IB/mlx4: Add support for IBoE')
      Signed-off-by: Shani Michaeli <shanim@xxxxxxxxxxxx>
      Signed-off-by: Noa Osherovich <noaos@xxxxxxxxxxxx>
      Signed-off-by: Or Gerlitz <ogerlitz@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 2b135db3e81301d0452e6aa107349abe67b097d6
  Author: Jack Morgenstein <jackm@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:34:23 2015 +0300

      IB/mlx4: Forbid using sysfs to change RoCE pkeys

      The pkey mapping for RoCE must remain the default mapping:
      VFs:
        virtual index 0 = mapped to real index 0 (0xFFFF)
        All others indices: mapped to a real pkey index containing an
                            invalid pkey.
      PF:
        virtual index i = real index i.

      Don't allow users to change these mappings using files found in
      sysfs.

      Fixes: c1e7e466120b ('IB/mlx4: Add iov directory in sysfs under the ib 
device')
      Signed-off-by: Jack Morgenstein <jackm@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Or Gerlitz <ogerlitz@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 2cb8e7f86e8cabd1e8aa608fc2a44e5bfa1d81ca
  Author: Jack Morgenstein <jackm@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:34:22 2015 +0300

      IB/mlx4: Demote mcg message from warning to debug

      The mcg "too many pending requests" warning message fills the log
      when OpenSM is downed. Demote the message from  warning level to
      debug level.

      Signed-off-by: Jack Morgenstein <jackm@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Or Gerlitz <ogerlitz@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 90c1d8b6350cca9d8a234f03c77a317a7613bcee
  Author: Jack Morgenstein <jackm@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:34:21 2015 +0300

      IB/mlx4: Fix potential deadlock when sending mad to wire

      send_mad_to_wire takes the same spinlock that is taken in
      the interrupt context.  Therefore, it needs irqsave/restore.

      Fixes: b9c5d6a64358 ('IB/mlx4: Add multicast group (MCG) 
paravirtualization for SR-IOV')
      Signed-off-by: Jack Morgenstein <jackm@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Or Gerlitz <ogerlitz@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit b8071ad893841aba967b7c54e712179864cdf5c3
  Author: Doug Ledford <dledford@xxxxxxxxxx>
  Date:   Sat Aug 15 10:16:14 2015 -0400

      IB/core: Remove needless bracketization

      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit cc36929e736a30a291ab543b633046eb57d67e68
  Author: Somnath Kotur <somnath.kotur@xxxxxxxxxxxxx>
  Date:   Thu Jul 30 18:33:31 2015 +0300

      RDMA/ocrdma: Incorporate the moving of GID Table mgmt to IB/Core

      1.Change query_gid hook to return value from IB/Core GID
        management APIs.
      2.Get rid of all the netdev notifier chain subscription code as well
        as maintenance of SGID Table in memory.
      3.Implement get_netdev hook in driver.

      Signed-off-by: Somnath Kotur <somnath.kotur@xxxxxxxxxxxxx>
      Signed-off-by: Devesh Sharma <devesh.sharma@xxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 5070cd2239bd4b382c55c212f10b845ec2de31fc
  Author: Moni Shoua <monis@xxxxxxxxxxxx>
  Date:   Thu Jul 30 18:33:30 2015 +0300

      IB/mlx4: Replace mechanism for RoCE GID management

      Manage RoCE gid table with logic in IB/core, which is common to all
      vendors, and remove the mechanism from the mlx4 IB driver.
      Since management of the GID cache may lead to index mismatch with the
      hardware GID table, a translation between indexes is required when
      modifying a QP or creating an address handle.

      Signed-off-by: Moni Shoua <monis@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit e26be1bfef81a2314a075f54dd8930cf5e8656df
  Author: Moni Shoua <monis@xxxxxxxxxxxx>
  Date:   Thu Jul 30 18:33:29 2015 +0300

      IB/mlx4: Implement ib_device callbacks

      get_netdev: get the net_device on the physical port of the IB transport 
port. In
      port aggregation mode it is required to return the netdev of the active 
port.

      modify_gid: note for a change in the RoCE gid cache. Handle this by 
writing to
      the harsware GID table. It is possible that indexes in cahce and hardware 
tables
      won't match so a translation is required when modifying a QP or creating 
an
      address handle.

      Signed-off-by: Moni Shoua <monis@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 79857cd31fe70145ff007d4e968557af342c8ccd
  Author: Moni Shoua <monis@xxxxxxxxxxxx>
  Date:   Thu Jul 30 18:33:28 2015 +0300

      net/mlx4: Postpone the registration of net_device

      The mlx4 network driver was registered in the context of the 'add'
      function of the core driver (called when HW should be registered).
      This makes the netdev event NETDEV_REGISTER to be sent in a context
      where the answer to get_protocol_dev() callback returns NULL. This may
      be confusing to listeners of netdev events.
      This patch is a preparation to the patch that implements the
      get_netdev() callback in the IB/mlx4 driver.

      Signed-off-by: Moni Shoua <monis@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 238fdf48f2b54a01cedb5774c3a1e81c94e1a3a0
  Author: Matan Barak <matanb@xxxxxxxxxxxx>
  Date:   Thu Jul 30 18:33:27 2015 +0300

      IB/core: Add RoCE table bonding support

      Handling bonding and other devices require us to all all GIDs of the
      net-devices which are upper-devices of the RoCE port related
      net-device.

      Active-backup configurations imposes even more challenges as the
      default GID should only be set on the active devices (this is
      necessary as otherwise the same MAC could be used for several
      slaves and thus several slaves will have identical GIDs).

      Managing these configurations are done by listening to:
      (a) NETDEV_CHANGEUPPER event
        (1) if a related net-device is linked, delete all inactive
            slaves default GIDs and add the upper device GIDs.
        (2) if a related net-device is unlinked, delete all upper GIDs
            and add the default GIDs.
      (b) NETDEV_BONDING_FAILOVER:
        (1) delete the bond GIDs from inactive slaves
        (2) delete the inactive slave's default GIDs
        (3) Add the bond GIDs to the active slave.

      Signed-off-by: Matan Barak <matanb@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 98d25afa970d134024d8652360569e3bd74782b3
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Tue Aug 18 12:22:10 2015 +0300

      IB/core: missing curly braces in ib_find_gid()

      Smatch says that, based on the indenting, we should probably add curly
      braces here.

      Fixes: 03db3a2d81e6 ('IB/core: Add RoCE GID table management')
      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Reviewed-by: Ira Weiny <ira.weiny@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 03db3a2d81e6e84f3ed3cb9e087cae17d762642b
  Author: Matan Barak <matanb@xxxxxxxxxxxx>
  Date:   Thu Jul 30 18:33:26 2015 +0300

      IB/core: Add RoCE GID table management

      RoCE GIDs are based on IP addresses configured on Ethernet net-devices
      which relate to the RDMA (RoCE) device port.

      Currently, each of the low-level drivers that support RoCE (ocrdma,
      mlx4) manages its own RoCE port GID table. As there's nothing which is
      essentially vendor specific, we generalize that, and enhance the RDMA
      core GID cache to do this job.

      In order to populate the GID table, we listen for events:

      (a) netdev up/down/change_addr events - if a netdev is built onto
          our RoCE device, we need to add/delete its IPs. This involves
          adding all GIDs related to this ndev, add default GIDs, etc.

      (b) inet events - add new GIDs (according to the IP addresses)
          to the table.

      For programming the port RoCE GID table, providers must implement
      the add_gid and del_gid callbacks.

      RoCE GID management requires us to state the associated net_device
      alongside the GID. This information is necessary in order to manage
      the GID table. For example, when a net_device is removed, its
      associated GIDs need to be removed as well.

      RoCE mandates generating a default GID for each port, based on the
      related net-device's IPv6 link local. In contrast to the GID based on
      the regular IPv6 link-local (as we generate GID per IP address),
      the default GID is also available when the net device is down (in
      order to support loopback).

      Locking is done as follows:
      The patch modify the GID table code both for new RoCE drivers
      implementing the add_gid/del_gid callbacks and for current RoCE and
      IB drivers that do not. The flows for updating the table are
      different, so the locking requirements are too.

      While updating RoCE GID table, protection against multiple writers is
      achieved via mutex_lock(&table->lock). Since writing to a table
      requires us to find an entry (possible a free entry) in the table and
      then modify it, this mutex protects both the find_gid and write_gid
      ensuring the atomicity of the action.
      Each entry in the GID cache is protected by rwlock. In RoCE, writing
      (usually results from netdev notifier) involves invoking the vendor's
      add_gid and del_gid callbacks, which could sleep.
      Therefore, an invalid flag is added for each entry. Updates for RoCE are
      done via a workqueue, thus sleeping is permitted.

      In IB, updates are done in write_lock_irq(&device->cache.lock), thus
      write_gid isn't allowed to sleep and add_gid/del_gid are not called.

      When passing net-device into/out-of the GID cache, the device
      is always passed held (dev_hold).

      The code uses a single work item for updating all RDMA devices,
      following a netdev or inet notifier.

      The patch moves the cache from being a client (which was incorrect,
      as the cache is part of the IB infrastructure) to being explicitly
      initialized/freed when a device is registered/removed.

      Signed-off-by: Matan Barak <matanb@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 55aeed06544f675f25aef06a8c47b0b6b8850f4f
  Author: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 15:23:34 2015 -0600

      IB/core: Make ib_alloc_device init the kobject

      This gets rid of the weird in-between state where struct ib_device
      was allocated but the kobject didn't work.

      Consequently ib_device_release is now guaranteed to be called in
      all situations and we needn't duplicate its kfrees on error paths.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit e999869548b9ab97b7dffa053ba2fee81c31d069
  Author: Matan Barak <matanb@xxxxxxxxxxxx>
  Date:   Thu Jul 30 18:33:24 2015 +0300

      net/bonding: Export bond_option_active_slave_get_rcu

      Some consumers of the netdev events API would like to know who is the
      active slave when a NETDEV_CHANGEUPPER or NETDEV_BONDING_FAILOVER
      events occur. For example, when managing RoCE GIDs, GIDs based on the
      bond's ips should only be set on the port which corresponds to active
      slave netdevice.

      Signed-off-by: Matan Barak <matanb@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 816dd19b3d191da88bc034fb85e21ed09a3ed320
  Author: Matan Barak <matanb@xxxxxxxxxxxx>
  Date:   Thu Jul 30 18:33:23 2015 +0300

      net: Add info for NETDEV_CHANGEUPPER event

      Some consumers of NETDEV_CHANGEUPPER event would like to know which
      upper device was linked/unlinked and what operation was carried.

      Add information in the notifier info block for that purpose.

      Signed-off-by: Matan Barak <matanb@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 399e6f95811bd36fb64b3d30cf8529d633884b4c
  Author: Matan Barak <matanb@xxxxxxxxxxxx>
  Date:   Thu Jul 30 18:33:22 2015 +0300

      net/ipv6: Export addrconf_ifid_eui48

      For loopback purposes, RoCE devices should have a default GID in the
      port GID table, even when the interface is down. In order to do so,
      we use the IPv6 link local address which would have been genenrated
      for the related Ethernet netdevice when it goes up as a default GID.

      addrconf_ifid_eui48 is used to gernerate this address, export it.

      Signed-off-by: Matan Barak <matanb@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit d9f272c523db47a56a64942eb6f25361c400de66
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Jul 30 10:32:48 2015 +0300

      IB/core: Drop ib_alloc_fast_reg_mr

      Fully replaced by a more generic and suitable
      ib_alloc_mr.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit d9fe6dd7afaff529124dd7f49c2da89ef789a56f
  Author: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx>
  Date:   Fri Aug 7 10:51:25 2015 -0400

      IB/hfi1: Support ib_alloc_mr verb

      Ported from upstream qib commit
      68c02e232b8a ("qib: Support ib_alloc_mr verb")

      Tested-by: Jubin John <jubin.john@xxxxxxxxx>
      Reviewed-by: Jubin John <jubin.john@xxxxxxxxx>
      Signed-off-by: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 1302f8452bfbede92c5e984afd64d91eb5459ee7
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Jul 30 10:32:47 2015 +0300

      qib: Support ib_alloc_mr verb

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit e02e4d554d2b0c20b1f191c5d98bbf5da500a285
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Jul 30 10:32:46 2015 +0300

      nes: Support ib_alloc_mr verb

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit f683d3bdbb37baa49510e32789164e5d33d76ba1
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Jul 30 10:32:45 2015 +0300

      cxgb3: Support ib_alloc_mr verb

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit a21640347a01ba2f96dfc887b8e33cce462780fd
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Jul 30 10:32:44 2015 +0300

      iw_cxgb4: Support ib_alloc_mr verb

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit cacb7d59bed3fd9f65d6ba1a4ea948ce8baa9126
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Jul 30 10:32:43 2015 +0300

      ocrdma: Support ib_alloc_mr verb

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 679e34d1d050fc67f2ab157ebf8553dddc216c55
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Jul 30 10:32:42 2015 +0300

      mlx4: Support ib_alloc_mr verb

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit b3778ba8ded0aafbd820b68be0686ff0c6026eff
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Jul 30 10:32:41 2015 +0300

      mlx5: Drop mlx5_ib_alloc_fast_reg_mr

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit fc27995942960c894bc4725435dce8750e44cd64
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Jul 30 10:32:40 2015 +0300

      RDS: Convert to ib_alloc_mr

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 9ac07501e1918b8d1140adcc360e8d8c7f5a2f7c
  Author: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 11:11:20 2015 -0500

      svcrdma: limit FRMR page list lengths to device max

      Svcrdma was incorrectly allocating fastreg MRs and page lists using
      RPCSVC_MAXPAGES, which can exceed the device capabilities.  So limit
      the depth to the minimum of RPCSVC_MAXPAGES and xprt->sc_frmr_pg_list_len.

      Signed-off-by: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 0410e38eca85e042f5d5a281dbcc792db701ed44
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Jul 30 10:32:39 2015 +0300

      xprtrdma, svcrdma: Convert to ib_alloc_mr

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 563b67c5f90abeae1038008e6c9c187fb36ad35c
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Jul 30 10:32:38 2015 +0300

      IB/srp: Convert to ib_alloc_mr

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit a89be2cc51f6602e803f2f9a9c8c4f59a0bd58b3
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Jul 30 10:32:37 2015 +0300

      iser-target: Convert to ib_alloc_mr

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 34780f012ceeb41ec6d44b3877396042e750862c
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Jul 30 10:32:36 2015 +0300

      IB/iser: Convert to ib_alloc_mr

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 9bee178b4f6b3e122ed8eda990450a638706e271
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Jul 30 10:32:35 2015 +0300

      IB: Modify ib_create_mr API

      Use ib_alloc_mr with specific parameters.
      Change the existing callers.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 8b91ffc1cf67d3f0834197c80c5182890c8d508d
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Thu Jul 30 10:32:34 2015 +0300

      IB/core: Get rid of redundant verb ib_destroy_mr

      This was added in a thought of uniting all mr allocation
      and deallocation routines but the fact is we have a single
      deallocation routine already, ib_dereg_mr.

      And, move mlx5_ib_destroy_mr specific logic into mlx5_ib_dereg_mr
      (includes only signature stuff for now).

      And, fixup the only callers (iser/isert) accordingly.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit be688195bd08b1c045f89d72c07c7e3ef6516f38
  Author: Haggai Eran <haggaie@xxxxxxxxxxxx>
  Date:   Thu Aug 27 15:55:15 2015 +0300

      IB/cma: Fix net_dev reference leak with failed requests

      When no matching listening ID is found for a given request, the net_dev
      that was used to find the request isn't released.

      Fixes: 0b3ca768fcb0 ("IB/cma: Use found net_dev for passive connections")
      Signed-off-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 90816d1ddacfb5a8b783f67e2c1a1bc77dc50ff4
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Sun Aug 30 09:53:06 2015 -0700

      NFSv4.1/flexfiles: Don't mark the entire deviceid as bad for file errors

      If the file was fenced and/or has been deleted on the DS, then we want
      to retry pNFS after a layoutreturn with error report. If the server
      cannot fix the problem, then we rely on it to tell us so in the
      response to the LAYOUTGET.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 1ab36387ea4face01aac3560b396b1e2ce07c4ff
  Author: David Dueck <davidcdueck@xxxxxxxxxxxxxx>
  Date:   Tue Jul 28 09:48:16 2015 +0200

      pinctrl: at91: fix null pointer dereference

      Not all gpio banks are necessarily enabled, in the current code this can
      lead to null pointer dereferences.

      [   51.130000] Unable to handle kernel NULL pointer dereference at 
virtual address 00000058
      [   51.130000] pgd = dee04000
      [   51.130000] [00000058] *pgd=3f66d831, *pte=00000000, *ppte=00000000
      [   51.140000] Internal error: Oops: 17 [#1] ARM
      [   51.140000] Modules linked in:
      [   51.140000] CPU: 0 PID: 1664 Comm: cat Not tainted 4.1.1+ #6
      [   51.140000] Hardware name: Atmel SAMA5
      [   51.140000] task: df6dd880 ti: dec60000 task.ti: dec60000
      [   51.140000] PC is at at91_pinconf_get+0xb4/0x200
      [   51.140000] LR is at at91_pinconf_get+0xb4/0x200
      [   51.140000] pc : [<c01e71a0>]    lr : [<c01e71a0>]    psr: 600f0013
      sp : dec61e48  ip : 600f0013  fp : df522538
      [   51.140000] r10: df52250c  r9 : 00000058  r8 : 00000068
      [   51.140000] r7 : 00000000  r6 : df53c910  r5 : 00000000  r4 : dec61e7c
      [   51.140000] r3 : 00000000  r2 : c06746d4  r1 : 00000000  r0 : 00000003
      [   51.140000] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  
Segment user
      [   51.140000] Control: 10c53c7d  Table: 3ee04059  DAC: 00000015
      [   51.140000] Process cat (pid: 1664, stack limit = 0xdec60208)
      [   51.140000] Stack: (0xdec61e48 to 0xdec62000)
      [   51.140000] 1e40:                   00000358 00000000 df522500 
ded15f80 c05a9d08 ded15f80
      [   51.140000] 1e60: 0000048c 00000061 df522500 ded15f80 c05a9d08 
c01e7304 ded15f80 00000000
      [   51.140000] 1e80: c01e6008 00000060 0000048c c01e6034 c01e5f6c 
ded15f80 dec61ec0 00000000
      [   51.140000] 1ea0: 00020000 ded6f280 dec61f80 00000001 00000001 
c00ae0b8 b6e80000 ded15fb0
      [   51.140000] 1ec0: 00000000 00000000 df4bc974 00000055 00000800 
ded6f280 b6e80000 ded6f280
      [   51.140000] 1ee0: ded6f280 00020000 b6e80000 00000000 00020000 
c0090dec c0671e1c dec61fb0
      [   51.140000] 1f00: b6f8b510 00000001 00004201 c000924c 00000000 
00000003 00000003 00000000
      [   51.140000] 1f20: df4bc940 00022000 00000022 c066e188 b6e7f000 
c00836f4 000b6e7f ded6f280
      [   51.140000] 1f40: ded6f280 b6e80000 dec61f80 ded6f280 00020000 
c0091508 00000000 00000003
      [   51.140000] 1f60: 00022000 00000000 00000000 ded6f280 ded6f280 
00020000 b6e80000 c0091d9c
      [   51.140000] 1f80: 00000000 00000000 ffffffff 00020000 00020000 
b6e80000 00000003 c000f124
      [   51.140000] 1fa0: dec60000 c000efa0 00020000 00020000 00000003 
b6e80000 00020000 000271c4
      [   51.140000] 1fc0: 00020000 00020000 b6e80000 00000003 7fffe000 
00000000 00000000 00020000
      [   51.140000] 1fe0: 00000000 bef50b64 00013835 b6f29c76 400f0030 
00000003 00000000 00000000
      [   51.140000] [<c01e71a0>] (at91_pinconf_get) from [<c01e7304>] 
(at91_pinconf_dbg_show+0x18/0x2c0)
      [   51.140000] [<c01e7304>] (at91_pinconf_dbg_show) from [<c01e6034>] 
(pinconf_pins_show+0xc8/0xf8)
      [   51.140000] [<c01e6034>] (pinconf_pins_show) from [<c00ae0b8>] 
(seq_read+0x1a0/0x464)
      [   51.140000] [<c00ae0b8>] (seq_read) from [<c0090dec>] 
(__vfs_read+0x20/0xd0)
      [   51.140000] [<c0090dec>] (__vfs_read) from [<c0091508>] 
(vfs_read+0x7c/0x108)
      [   51.140000] [<c0091508>] (vfs_read) from [<c0091d9c>] 
(SyS_read+0x40/0x94)
      [   51.140000] [<c0091d9c>] (SyS_read) from [<c000efa0>] 
(ret_fast_syscall+0x0/0x3c)
      [   51.140000] Code: eb010ec2 e30a0d08 e34c005a eb0ae5a7 (e5993000)
      [   51.150000] ---[ end trace fb3c370da3ea4794 ]---

      Fixes: a0b957f306fa ("pinctrl: at91: allow to have disabled gpio bank")
      Cc: stable@xxxxxxxxxxxxxxx # 3.18
      Signed-off-by: David Dueck <davidcdueck@xxxxxxxxxxxxxx>
      Acked-by: Ludovic Desroches <ludovic.desroches@xxxxxxxxx>
      Acked-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Acked-by: Nicolas Ferre <nicolas.ferre@xxxxxxxxx>
      Cc: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
      Cc: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@xxxxxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 73fec7fd04a2ad6c879c93881cba9a40d551b3fd
  Author: Haggai Eran <haggaie@xxxxxxxxxxxx>
  Date:   Thu Jul 30 17:50:26 2015 +0300

      IB/cm: Remove compare_data checks

      Now that there are no ib_cm clients using the compare_data feature for
      matching IB CM requests' private data, remove the compare_data parameter 
of
      ib_cm_listen and remove the code implementing the feature.

      Signed-off-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 51efe394bcab3a0c511634f7ae58bb88b1686983
  Author: Haggai Eran <haggaie@xxxxxxxxxxxx>
  Date:   Thu Jul 30 17:50:25 2015 +0300

      IB/cma: Share ib_cm_ids between rdma_cm_ids

      Use ib_cm_insert_listen to create listening IB CM IDs or share existing
      ones if needed. When given a request on a specific CM ID, the code now
      matches the request to the RDMA CM ID based on the request parameters, so
      it no longer needs to rely on the ib_cm's private data matching
      capabilities.

      Signed-off-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 0b3ca768fcb07338c99df5e3ccec99119435e321
  Author: Haggai Eran <haggaie@xxxxxxxxxxxx>
  Date:   Thu Jul 30 17:50:24 2015 +0300

      IB/cma: Use found net_dev for passive connections

      When receiving a new connection in cma_req_handler, we actually already
      know the net_dev that is used for the connection's creation. Instead of
      calling cma_translate_addr to resolve the new connection id's source
      address, just use the net_dev that was found.

      Signed-off-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit f887f2ac87c25124a90adf97d76b258eba6295cb
  Author: Haggai Eran <haggaie@xxxxxxxxxxxx>
  Date:   Thu Jul 30 17:50:23 2015 +0300

      IB/cma: Validate routing of incoming requests

      Pass incoming request parameters through the relevant IPv4/IPv6 routing
      tables and make sure the network stack is configured to handle such
      requests.

      Signed-off-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 4c21b5bcef73e6649429c1d9b39f5065e756d857
  Author: Haggai Eran <haggaie@xxxxxxxxxxxx>
  Date:   Thu Jul 30 17:50:22 2015 +0300

      IB/cma: Add net_dev and private data checks to RDMA CM

      Instead of relying on a the ib_cm module to check an incoming CM request's
      private data header, add these checks to the RDMA CM module. This allows a
      following patch to to clean up the ib_cm interface and remove the code 
that
      looks into the private headers. It will also allow supporting namespaces 
in
      RDMA CM by making these checks namespace aware later on.

      Signed-off-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 24cad9a7e8bfd4cf1ace7ac2a2b3f696a0e70420
  Author: Haggai Eran <haggaie@xxxxxxxxxxxx>
  Date:   Thu Jul 30 17:50:21 2015 +0300

      IB/cm: Expose BTH P_Key in CM and SIDR request events

      The rdma_cm module will later use the P_Key from the BTH to de-mux
      requests.

      See discussion at:
        http://www.spinics.net/lists/netdev/msg336067.html

      Cc: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Cc: Liran Liss <liranl@xxxxxxxxxxxx>
      Signed-off-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit aac978e15230fccb7a3e9190eb58732925019300
  Author: Haggai Eran <haggaie@xxxxxxxxxxxx>
  Date:   Thu Jul 30 17:50:20 2015 +0300

      IB/cma: Helper functions to access port space IDRs

      Add helper functions to access the IDRs by port-space and port number.

      Pass around the port-space enum in cma.c instead of using pointers to
      port-space IDRs.

      Signed-off-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Signed-off-by: Yotam Kenneth <yotamke@xxxxxxxxxxxx>
      Signed-off-by: Shachar Raindel <raindel@xxxxxxxxxxxx>
      Signed-off-by: Guy Shapiro <guysh@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 0c505f70a28d943e15a6702ca75bea4f332a03ed
  Author: Haggai Eran <haggaie@xxxxxxxxxxxx>
  Date:   Thu Jul 30 17:50:19 2015 +0300

      IB/cma: Refactor RDMA IP CM private-data parsing code

      When receiving a connection request, rdma_cm needs to associate the 
request
      with a network device, in order to disambiguate requests. To do this, it
      needs to know the request's destination IP. For this the module needs to
      allow getting this information from the private data in the request 
packet,
      instead of relying on the information already being in the listening RDMA
      CM ID.

      When creating a new incoming connection ID, the code in
      cma_save_ip{4,6}_info can no longer rely on the listener's private data to
      find the port number, so it reads it from the requested service ID.

      Signed-off-by: Guy Shapiro <guysh@xxxxxxxxxxxx>
      Signed-off-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Signed-off-by: Yotam Kenneth <yotamke@xxxxxxxxxxxx>
      Signed-off-by: Shachar Raindel <raindel@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 067b171b8679f99e170feae2e1d2eae319736420
  Author: Haggai Eran <haggaie@xxxxxxxxxxxx>
  Date:   Thu Jul 30 17:50:18 2015 +0300

      IB/cm: Share listening CM IDs

      Enabling network namespaces for RDMA CM will allow processes on different
      namespaces to listen on the same port. In order to leave namespace support
      out of the CM layer, this requires that multiple RDMA CM IDs will be able
      to share a single CM ID.

      This patch adds infrastructure to retrieve an existing listening ib_cm_id,
      based on its device and service ID, or create a new one if one does not
      already exist. It also adds a reference count for such instances
      (cm_id_private.listen_sharecount), and prevents cm_destroy_id from
      destroying a CM if it is still shared. See the relevant discussion [1].

      [1] Re: [PATCH v3 for-next 05/13] IB/cm: Reference count ib_cm_ids
          http://www.spinics.net/lists/netdev/msg328860.html

      Reviewed-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 15865e7dab62a58407f1b7decdafd89dd0a8b063
  Author: Haggai Eran <haggaie@xxxxxxxxxxxx>
  Date:   Thu Jul 30 17:50:17 2015 +0300

      IB/cm: Expose service ID in request events

      Expose the service ID on an incoming CM or SIDR request to the event
      handler. This will allow the RDMA CM module to de-multiplex connection
      requests based on the information encoded in the service ID.

      Acked-by: Sean Hefty <sean.hefty@xxxxxxxxx>
      Signed-off-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit ddde896e561a51ae5023e531d66dc6a140a95ec3
  Author: Guy Shapiro <guysh@xxxxxxxxxxxx>
  Date:   Thu Jul 30 17:50:16 2015 +0300

      IB/ipoib: Return IPoIB devices matching connection parameters

      Implement the get_net_device_by_port_pkey_ip callback that returns network
      device to ib_core according to connection parameters. Check the ipoib
      device and iterate over all child devices to look for a match.

      For each IPoIB device we iterate through all upper devices when searching
      for a matching IP, in order to support bonding.

      Signed-off-by: Guy Shapiro <guysh@xxxxxxxxxxxx>
      Signed-off-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Signed-off-by: Yotam Kenneth <yotamke@xxxxxxxxxxxx>
      Signed-off-by: Shachar Raindel <raindel@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 9268f72dcb24348c8b4cf9bcf8afeb24035157a5
  Author: Yotam Kenneth <yotamke@xxxxxxxxxxxx>
  Date:   Thu Jul 30 17:50:15 2015 +0300

      IB/core: Find the network device matching connection parameters

      In the case of IPoIB, and maybe in other cases, the network device is
      managed by an upper-layer protocol (ULP). In order to expose this
      network device to other users of the IB device, let ULPs implement
      a callback that returns network device according to connection parameters.

      The IB device and port, together with the P_Key and the GID should
      be enough to uniquely identify the ULP net device. However, in current
      kernels there can be multiple IPoIB interfaces created with the same GID.
      Furthermore, such configuration may be desireable to support ipvlan-like
      configurations for RDMA CM with IPoIB.  To resolve the device in these
      cases the code will also take the IP address as an additional input.

      Reviewed-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Signed-off-by: Yotam Kenneth <yotamke@xxxxxxxxxxxx>
      Signed-off-by: Shachar Raindel <raindel@xxxxxxxxxxxx>
      Signed-off-by: Guy Shapiro <guysh@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 7c1eb45a22d76bb99236e7485958f87ef7c449cf
  Author: Haggai Eran <haggaie@xxxxxxxxxxxx>
  Date:   Thu Jul 30 17:50:14 2015 +0300

      IB/core: lock client data with lists_rwsem

      An ib_client callback that is called with the lists_rwsem locked only for
      read is protected from changes to the IB client lists, but not from
      ib_unregister_device() freeing its client data. This is because
      ib_unregister_device() will remove the device from the device list with
      lists_rwsem locked for write, but perform the rest of the cleanup,
      including the call to remove() without that lock.

      Mark client data that is undergoing de-registration with a new going_down
      flag in the client data context. Lock the client data list with 
lists_rwsem
      for write in addition to using the spinlock, so that functions calling the
      callback would be able to lock only lists_rwsem for read and let callbacks
      sleep.

      Since ib_unregister_client() now marks the client data context, no need 
for
      remove() to search the context again, so pass the client data directly to
      remove() callbacks.

      Reviewed-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 5aa44bb90f047662c12c44be1b6de454658632d0
  Author: Haggai Eran <haggaie@xxxxxxxxxxxx>
  Date:   Thu Jul 30 17:50:13 2015 +0300

      IB/core: Add rwsem to allow reading device list or client list

      Currently the RDMA subsystem's device list and client list are protected 
by
      a single mutex. This prevents adding user-facing APIs that iterate these
      lists, since using them may cause a deadlock. The patch attempts to solve
      this problem by adding a read-write semaphore to protect the lists. 
Readers
      now don't need the mutex, and are safe just by read-locking the semaphore.

      The ib_register_device, ib_register_client, ib_unregister_device, and
      ib_unregister_client functions are modified to lock the semaphore for 
write
      during their respective list modification. Also, in order to make sure
      client callbacks are called only between add() and remove() calls, the 
code
      is changed to only add items to the lists after the add() calls and remove
      from the lists before the remove() calls.

      This patch attempts to solve a similar need [1] that was seen in the RoCE
      v2 patch series.

      [1] http://www.spinics.net/lists/linux-rdma/msg24733.html

      Reviewed-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Cc: Matan Barak <matanb@xxxxxxxxxxxx>
      Signed-off-by: Haggai Eran <haggaie@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 50002d4c2176da6b2ed5a2529a2367c05f0fd73b
  Author: Inki Dae <daeinki@xxxxxxxxx>
  Date:   Mon Aug 31 01:11:53 2015 +0900

      drm/exynos: fix build warning to exynos_drm_gem.c

      Signed-off-by: Inki Dae <daeinki@xxxxxxxxx>

  commit fbbb1e1a7f170cb560224d9694f1afd851bcf47f
  Author: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
  Date:   Mon Aug 31 00:53:57 2015 +0900

      drm/exynos: Properly report supported formats for each device

      Exynos DRM reported that all planes for all supported sub-devices supports
      only three pixel formats: XRGB24, ARGB24 and NV12. This patch lets each
      Exynos DRM sub-drivers to provide the list of supported pixel formats
      and registers this list to DRM core.

      Signed-off-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 74f230d2a7e36c27fde38db20ebfb7ddb9c4a116
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Mon Aug 31 00:45:56 2015 +0900

      drm/exynos: add render node support

      This patch allows clients who want to use render node to access
      rendering relevant ioctls - g2d, post processor and gem allocation.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit cc5a7b35799459ec1d0b0e538f4d810aef704217
  Author: Hyungwon Hwang <human.hwang@xxxxxxxxxxx>
  Date:   Thu Aug 27 18:21:14 2015 +0900

      drm/exynos: implement atomic_{begin/flush} of DECON

      Each CRTC's atomic_{begin/flush} must stop/start the update of shadow
      registers to active register in the functions. This patch achieves these
      purpose by moving the setting of protection bits to those functions from
      decon_update_plane.

      v2: rebased to the branch exynos-drm-next

      Signed-off-by: Hyungwon Hwang <human.hwang@xxxxxxxxxxx>
      Reviewed-by: Daniel Stone <daniels@xxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit e7fefb1d5af5d90baec5204d9096e8c4db8c93bd
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 31 00:33:57 2015 +0900

      drm/exynos: remove legacy ->suspend()/resume()

      These legacy helpers should only be used by shadow-attaching drivers.
      KMS drivers has its own way to handle suspend/resume and don't need to
      use these two helpers.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <daeinki@xxxxxxxxx>

  commit c8c38ccff9308a706b5314ca1cf157713a40f6b5
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 24 20:52:19 2015 +0900

      drm/exynos: Enable atomic modesetting feature

      From: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>

      Now that atomic modesetting is implemented for exynos enable the
      DRIVER_ATOMIC flag on the driver's features.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 7cf23eaf0d8e6f34f3bc89141efc96b2502b290c
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 15 13:26:19 2015 -0300

      drm/exynos: remove wait queue for pending page flip

      Exynos atomic commit procedures already does this job of waiting for
      pending updates to finish, that means using pending_flip_queue is
      pointless now because the disable CRTC procedure will never happen
      during a page_flip.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit c4533665d819271dad890440b887776ac3d5f265
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 15 13:26:18 2015 -0300

      drm/exynos: wait all planes updates to finish

      Add infrastructure to wait for all planes updates to finish by using
      an atomic_t variable to track how many pending updates we are waiting
      plus a wait_queue for the wait part.

      It also changes vblank behaviour and keeps it enabled for all types
      of updates

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit a379df19356de97afdca37c4e8f5e8729215d6ea
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 15 13:26:17 2015 -0300

      drm/exynos: add atomic asynchronous commit

      The atomic modesetting interfaces supports async commits that should be
      implemented by the drivers. If drm core requests an async commit
      exynos_atomic_commit() will now schedule a work task to run the update 
later.

      It also serializes commits that needs to run on the same crtc, putting the
      following commit to wait until the current one is finished.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit cb11b3f18957f90f8adeb95adf694f52581416b3
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 15 13:26:16 2015 -0300

      drm/exynos: fimd: only finish update if START == START_S

      fimd_update_plane() programs BUF_START[win] and during the update
      BUF_START[win] is copied to BUF_START_S[win] (its shadow register)
      and starts scanning out, then it raises a irq.

      The fimd_irq_handler, in the case we have a pending_fb, will check
      the fb value was copied to START_S register and finish the update
      in case of success.

      Based on patch from Daniel Kurtz <djkurtz@xxxxxxxxxxxx>

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 44205083751cdcfdbd3f8607694ee1a5a9b161c7
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 15 13:26:15 2015 -0300

      drm/exynos: add macro to get the address of START_S reg

      This macro is need to get the value of the START shadow register, that
      will tell if an framebuffer is currently displayed on the screen or not.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 822f6dfd714c961e3c5648b1d4a5ac10f807d592
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 15 13:26:14 2015 -0300

      drm/exynos: check for pending fb before finish update

      The current code was ignoring the end of update for all overlay planes,
      caring only for the primary plane update in case of pageflip.

      This change adds a change to start to check for pending updates for all
      planes through exynos_plane->pending_fb. At the start of plane update the
      pending_fb is set with the fb to be shown on the screen. Then only when to
      fb is already presented in the screen we set pending_fb to NULL to
      signal that the update was finished.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

      fixup! drm/exynos: check for pending fb before finish update

  commit ce3ff36be91a85d87f138794dbbd704fb99320c2
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 15 13:26:13 2015 -0300

      drm/exynos: fimd: move window protect code to prepare/cleanup_plane

      Only set/clear the update bit in the CRTC's .atomic_begin()/flush()
      so all planes are really committed at the same time.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit d9220d4733d1ea1ae375bd76dd2c961969a6795c
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 24 20:36:59 2015 +0900

      drm/exynos: add prepare and cleanup phases for planes

      From: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>

      .prepare_plane() and .cleanup_plane() allows to perform extra operations
      before and after the update of planes. For FIMD for example this will
      be used to enable disable the shadow protection bit.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit fc75f7107a8de47e135cf3b9fec62f99c184a2c8
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 15 13:26:11 2015 -0300

      drm/exynos: fimd: unify call to exynos_drm_crtc_finish_pageflip()

      Unify handling of finished plane update to prepare for a following patch
      that will check for the START and START_S regs to really make sure that
      the plane was updated.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit bb0fa93523b8d7f89b6ee61ab8e9b926ff7a9779
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 15 13:26:10 2015 -0300

      drm/exynos: don't track enabled state at exynos_crtc

      struct drm_crtc already stores the enabled state of the crtc
      thus we don't need to replicate enabled in exynos_drm_crtc.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 91931320cfbbcc1dd874c2d0aef62e7d90f07f70
  Merge: 02dc14d ca94085 d32e03f 534dcd7
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:59:18 2015 +0100

      Merge remote-tracking branches 'asoc/topic/wm8996', 'asoc/topic/xtensa' 
and 'asoc/topic/zx296702' into asoc-next

  commit 02dc14d66e2047ca2d1bc7ed8ebef7f3415cf476
  Merge: 384ea79 84eac61 b970499 779ea47 3176bf2 85e7118
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:58:56 2015 +0100

      Merge remote-tracking branches 'asoc/topic/wm8741', 'asoc/topic/wm8753', 
'asoc/topic/wm8904', 'asoc/topic/wm8960' and 'asoc/topic/wm8983' into asoc-next

  commit 384ea7936cc987ee771690f624593f6dd8ca15a2
  Merge: c009d37 030e6ee efc04ca dc606e05 c8a6b92 f611cdd
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:58:36 2015 +0100

      Merge remote-tracking branches 'asoc/topic/wm0010', 'asoc/topic/wm5100', 
'asoc/topic/wm5110', 'asoc/topic/wm8004' and 'asoc/topic/wm8731' into asoc-next

  commit c009d370dd35eb29a8c14f6eb50a4da4276db3f1
  Merge: 428157c 95e3c23 ef3355d 4313489 0a3dcb5
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:58:18 2015 +0100

      Merge remote-tracking branches 'asoc/topic/txx9', 'asoc/topic/uda134x', 
'asoc/topic/ux500' and 'asoc/topic/width' into asoc-next

  commit 428157c1e8c9eaf0029430ae82ec0df8578de46b
  Merge: 0a5ff07 82cf77a 9425e9d f57ddcd 2e45a25 1a3232d
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:57:34 2015 +0100

      Merge remote-tracking branches 'asoc/topic/tas2552', 
'asoc/topic/tas5086', 'asoc/topic/tegra', 'asoc/topic/tlv' and 
'asoc/topic/topology' into asoc-next

  commit 0a5ff077572d058d3023d243ba97a7e98d111f4c
  Merge: cfed47d 601e457 97a7471 e129091 601b9d9
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:57:13 2015 +0100

      Merge remote-tracking branches 'asoc/topic/ssm2518', 'asoc/topic/sta529', 
'asoc/topic/sti' and 'asoc/topic/sti-sas' into asoc-next

  commit cfed47d7b5abd5ce9c010169cce9c2754394a02d
  Merge: a8f1d97 7d4d443 e8de871 e225797 8e2175d 2c3f4b9
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:56:44 2015 +0100

      Merge remote-tracking branches 'asoc/topic/rt5677', 'asoc/topic/sh', 
'asoc/topic/simple', 'asoc/topic/sirf-codec' and 'asoc/topic/spear' into 
asoc-next

  commit a8f1d97bfa986f00835d2669a970e19f6dd9b9d8
  Merge: 532161e 5efe58c 818454d 469444f 387ad57
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:56:27 2015 +0100

      Merge remote-tracking branches 'asoc/topic/rt298', 'asoc/topic/rt5640', 
'asoc/topic/rt5651' and 'asoc/topic/rt5670' into asoc-next

  commit 532161e6ccbd1c5ac3a2ea9dc60c8e253cd22fa5
  Merge: d781c23 1af2cc6 41a5fefe ac1125d 1c0beb2 a5afdc5
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:55:54 2015 +0100

      Merge remote-tracking branches 'asoc/topic/rcar', 
'asoc/topic/reg-default', 'asoc/topic/rl6231', 'asoc/topic/rockchip' and 
'asoc/topic/rt286' into asoc-next

  commit d781c23e9b46f33c1c6c07febae36f37a11f9d4d
  Merge: acb47ad 42d1b8c 637c4497 618718d
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:55:41 2015 +0100

      Merge remote-tracking branches 'asoc/topic/pm-ops', 'asoc/topic/pxa' and 
'asoc/topic/qcom' into asoc-next

  commit acb47ad5023fbd29a2c9a681c28b33968c9dcc9e
  Merge: 1d1ed2c 775b07d 0643558 d5f1117 5e3cdaa 7d40acc
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:55:21 2015 +0100

      Merge remote-tracking branches 'asoc/topic/mediatek', 'asoc/topic/mtk', 
'asoc/topic/nuc900', 'asoc/topic/of-name' and 'asoc/topic/omap' into asoc-next

  commit 1d1ed2c23e6fac1c9a11df846536553754ac9780
  Merge: 373e515 62d6d47 5549ce8 4ab0c591 623436a 6eb1c2a
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:54:57 2015 +0100

      Merge remote-tracking branches 'asoc/topic/max98090', 
'asoc/topic/max98095', 'asoc/topic/max98357a', 'asoc/topic/max9877' and 
'asoc/topic/max98925' into asoc-next

  commit 373e515d655086d4c05aae3b098bd48fe1f0c382
  Merge: 246647e e1d46d3 c4a4291 6f43979 04b5cbd f102aa1
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:54:38 2015 +0100

      Merge remote-tracking branches 'asoc/topic/intel', 'asoc/topic/kirkwood', 
'asoc/topic/lm49453', 'asoc/topic/max9768' and 'asoc/topic/max98088' into 
asoc-next

  commit 246647ee3e7533362e2c291eebaa7409b8565376
  Merge: bb85d37 89e0e25 dce0332 2002e90 b37bfda bf08f39
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:54:15 2015 +0100

      Merge remote-tracking branches 'asoc/topic/fsl-spdif', 
'asoc/topic/fsl-ssi', 'asoc/topic/gtm601', 'asoc/topic/ics43432' and 
'asoc/topic/ids' into asoc-next

  commit bb85d37358bbca1bbd0fffda87bb38e7c9b69364
  Merge: 7c00313 be9ae23 dcfcf2c fa3be920 50e0ee0 9b7493d
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:53:56 2015 +0100

      Merge remote-tracking branches 'asoc/topic/fsi', 'asoc/topic/fsl', 
'asoc/topic/fsl-asrc', 'asoc/topic/fsl-card' and 'asoc/topic/fsl-sai' into 
asoc-next

  commit 7c0031360bd721254a52c56bd1c2e90b6d9df57b
  Merge: 3999622 508a43f 553de19 628536e c5b8540
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:53:39 2015 +0100

      Merge remote-tracking branches 'asoc/topic/davinci', 
'asoc/topic/davinci-vcif', 'asoc/topic/doc' and 'asoc/topic/dpcm' into asoc-next

  commit 399962239c07ab00adbfda72064b045c9c2c7b40
  Merge: b18fec9 7f325bf fbf917e f755d11 a01da00
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:53:22 2015 +0100

      Merge remote-tracking branches 'asoc/topic/cs42l56', 
'asoc/topic/cs42l73', 'asoc/topic/cs4349' and 'asoc/topic/da732x' into asoc-next

  commit b18fec9fe42846784e1744e6bd6c754751e1d172
  Merge: 48997b9 6479304 c176330 80deaf0 4caae95
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:52:59 2015 +0100

      Merge remote-tracking branches 'asoc/topic/const', 'asoc/topic/cs35l32', 
'asoc/topic/cs4265' and 'asoc/topic/cs42l52' into asoc-next

  commit 48997b9c03a80cadd14e0ed097f9594ff8454039
  Merge: 21af109 fd63542 054bc83 c4d2ab0 54d8697
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:52:41 2015 +0100

      Merge remote-tracking branches 'asoc/topic/au1x', 'asoc/topic/bcm2835', 
'asoc/topic/blackfin' and 'asoc/topic/card' into asoc-next

  commit 21af1094385186a078a044f886a312511dcca04f
  Merge: 28becbd 93ec3a1 310398f f8ea6ce d90c6cc 56113f6
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:52:21 2015 +0100

      Merge remote-tracking branches 'asoc/topic/88pm860x', 'asoc/topic/ac97', 
'asoc/topic/ak4542', 'asoc/topic/arizona' and 'asoc/topic/atmel' into asoc-next

  commit 28becbd59c89cccf26b7539684105437fa77210e
  Merge: cb42e0f dbe71b9
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:52:16 2015 +0100

      Merge remote-tracking branch 'asoc/topic/ssm4567' into asoc-next

  commit cb42e0f709a73caf4d631be32189bb1ca513ad25
  Merge: ca945cf f2988af
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:52:12 2015 +0100

      Merge remote-tracking branch 'asoc/topic/rt5645' into asoc-next

  commit ca945cf9fb887ff64e63f324a9098a1bd848c58f
  Merge: 4253f3a 48f403b
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:52:08 2015 +0100

      Merge remote-tracking branch 'asoc/topic/pcm1681' into asoc-next

  commit 4253f3a8f4c7835a95dbdef232ad81d0af88fab3
  Merge: 24ecc23 6e588a0
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:51:57 2015 +0100

      Merge remote-tracking branch 'asoc/topic/dapm' into asoc-next

  commit 24ecc23cf62a48ae47ccc40f0f226d45c962512e
  Merge: a178065 abd31b3
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:51:52 2015 +0100

      Merge remote-tracking branch 'asoc/topic/core' into asoc-next

  commit a1780653b906ca342f20812570e1f07edb35b907
  Merge: 1931553 9d83528 0e76597 e5b9408 9b850ca 14a500f e134cb2
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:51:20 2015 +0100

      Merge remote-tracking branches 'asoc/fix/adav80x', 'asoc/fix/arizona', 
'asoc/fix/max98090', 'asoc/fix/rt5640', 'asoc/fix/samsung' and 
'asoc/fix/wm8994' into asoc-linus

  commit 19315532b6d46142e401db4dce3cd52cd5c60577
  Merge: c13dcf9 c171348
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 15:51:15 2015 +0100

      Merge remote-tracking branch 'asoc/fix/rt5645' into asoc-linus

  commit 534dcd7ea60cebc41816eff0c290700acb2cc43e
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Sat Aug 29 23:09:30 2015 +0800

      ASoC: zx296702-i2s: Fix resource leak when unload module

      Use devm_* API to fix leaks in current code.
      1. Use devm_kzalloc to fix memory leak for zx_i2s when unload the module.
      2. Use devm_snd_soc_register_component to ensure component is unregistered
         when unload the module.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Reviewed-by: Jun Nie <jun.nie@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit f5164b8833498825b3197cb34150b142a9fc5bbf
  Merge: aaa9b64 a70f0d0
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 14:40:29 2015 +0100

      Merge remote-tracking branch 'regulator/topic/tps6586x' into 
regulator-next

  commit aaa9b649d0868725cd7536bc9017fe3956ad5393
  Merge: 3e68312 5a286aa e2adfac a13eaf0 5127e31 30f93ca
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 14:40:11 2015 +0100

      Merge remote-tracking branches 'regulator/topic/qcom-smd', 
'regulator/topic/qcom-spmi', 'regulator/topic/rk808', 'regulator/topic/stub' 
and 'regulator/topic/tol' into regulator-next

  commit 3e683126f4b42bd29ac5adff1eb178880aa7706a
  Merge: 176175b 6d73aef 3a003ba a807a6c a02daad 60cb65e
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 14:39:48 2015 +0100

      Merge remote-tracking branches 'regulator/topic/mt6311', 
'regulator/topic/ocp', 'regulator/topic/owner', 'regulator/topic/pfuze100' and 
'regulator/topic/pwm' into regulator-next

  commit 176175b613cb560a33839838c3baa817c9e218ca
  Merge: 11f2482 804486b 6cb6e6b ee3010d b10c7f3
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 14:39:34 2015 +0100

      Merge remote-tracking branches 'regulator/topic/lp872x', 
'regulator/topic/ltc3589', 'regulator/topic/max77693' and 
'regulator/topic/max8973' into regulator-next

  commit 11f24823667400983a05e6099d645f523d1989ef
  Merge: 08aad16 4245746 7bd3935 e80c47b 5b87af4 609ca5f
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 14:39:14 2015 +0100

      Merge remote-tracking branches 'regulator/topic/da9210', 
'regulator/topic/da9211', 'regulator/topic/fan53555', 'regulator/topic/isl9305' 
and 'regulator/topic/list' into regulator-next

  commit 08aad16c80f22d2c34407dc2f8cfe0eb57750db6
  Merge: eaf018e bf1fc23 ce31751 d4ea7d8 736050c
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 14:38:50 2015 +0100

      Merge remote-tracking branches 'regulator/topic/88pm800', 
'regulator/topic/ad5398', 'regulator/topic/axp20x' and 'regulator/topic/da9062' 
into regulator-next

  commit eaf018e170cef4a5a4378c984b70d768dd30048d
  Merge: e616e2f 099982f
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 14:38:46 2015 +0100

      Merge remote-tracking branch 'regulator/topic/core' into regulator-next

  commit e616e2f11b2776cbc24035fd14df4773a57b4b6a
  Merge: c13dcf9 c329061
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 14:38:37 2015 +0100

      Merge remote-tracking branch 'regulator/fix/pbias' into regulator-linus

  commit 6d73aef11760017c37e448d84595dcb44e1c3827
  Author: kbuild test robot <fengguang.wu@xxxxxxxxx>
  Date:   Sun Aug 30 20:20:42 2015 +0800

      regulator: mt6311: fix platform_no_drv_owner.cocci warnings

      drivers/regulator/mt6311-regulator.c:169:3-8: No need to set .owner here. 
The core will do it.

       Remove .owner field if calls are used which set it automatically

      Generated by: scripts/coccinelle/api/platform_no_drv_owner.cocci

      Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 6cb6e6be41b5b42370e9028d7b691803295b097e
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 29 13:56:11 2015 +0200

      regulator: ltc3589: Remove unnecessary MODULE_ALIAS()

      The driver has a I2C device id table that is used to create the modaliases
      and already contains a "ltc3589" device id. So the modalias is 
unnecessary.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit ce317515b43f3e0b789b41df9b54e1608c783c5d
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 29 13:56:10 2015 +0200

      regulator: ad5398: Remove unnecessary MODULE_ALIAS()

      The driver has a I2C device id table that is used to create the modaliases
      and also "ad5398-regulator" is not a supported I2C id, so it's never used.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit e12909107c30efccf570ac67802df5d2eec4cabd
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Sat Aug 29 23:06:32 2015 +0800

      ASoC: sti_uniperif: Ensure component is unregistered when unload module

      Use devm_snd_soc_register_component to ensure component is unregistered
      when unload the module.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 1cfa8de2880e5512f9037c7804ea47a79cc8232c
  Author: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
  Date:   Sun May 3 10:36:19 2015 +0100

      MIPS: pgtable-bits.h: Correct _PAGE_GLOBAL_SHIFT build failure

      Correct a build failure introduced by be0c37c9 [MIPS: Rearrange PTE bits
      into fixed positions.]:

      In file included from ./arch/mips/include/asm/io.h:27:0,
                       from ./arch/mips/include/asm/page.h:176,
                       from include/linux/mm_types.h:15,
                       from include/linux/sched.h:27,
                       from include/linux/ptrace.h:5,
                       from arch/mips/kernel/cpu-probe.c:16:
      ./arch/mips/include/asm/pgtable-bits.h:164:0: error: "_PAGE_GLOBAL_SHIFT" 
redefined [-Werror]
       #define _PAGE_GLOBAL_SHIFT (_PAGE_MODIFIED_SHIFT + 1)
       ^
      ./arch/mips/include/asm/pgtable-bits.h:141:0: note: this is the location 
of the previous definition
       #define _PAGE_GLOBAL_SHIFT (_PAGE_SPLITTING_SHIFT + 1)
       ^
      cc1: all warnings being treated as errors
      make[2]: *** [arch/mips/kernel/cpu-probe.o] Error 1

      for 64BIT/CPU_MIPSR1/MIPS_HUGE_TLB_SUPPORT configurations.  Remove the
      scattered double `_PAGE_NO_EXEC_SHIFT' and `_PAGE_GLOBAL_SHIFT' macro
      definitions and rearrange them so that the respective macros these
      definitions are based on are also those used for guarding conditionals.

      [ralf@xxxxxxxxxxxxxx: resolved conflicts and updated commments.]

      Signed-off-by: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>
      Cc: Steven J. Hill <Steven.Hill@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/9960/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit fd63542fc5492b86158dbd53ce5de764f171b1b6
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Sun Aug 30 11:09:49 2015 +0800

      ASoC: au1x: psc-i2s: Convert to use devm_ioremap_resource

      Use devm_ioremap_resource() instead of open code.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Acked-by: Manuel Lauss <manuel.lauss@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit e8de871e19668257972b167aabd56bb5faae784c
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Sun Aug 30 11:07:33 2015 +0800

      ASoC: sh: dma-sh7760: Convert to devm_snd_soc_register_platform

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Acked-by: Manuel Lauss <manuel.lauss@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 37c5db7938093cada165146ee99bd57c97baf6a3
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Sun Aug 30 18:35:51 2015 +0800

      spi: fsl-(e)spi: Fix checking return value of devm_ioremap_resource

      devm_ioremap_resource() returns ERR_PTR on error.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 2c3f4b97eea5ce405baf2591715445da6ed05851
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Sun Aug 30 08:08:15 2015 +0800

      ASoC: spear_pcm: Use devm_snd_dmaengine_pcm_register to fix resource leak

      All the callers assume devm_spear_pcm_platform_register is a devm_ API, so
      use devm_snd_dmaengine_pcm_register in devm_spear_pcm_platform_register.

      Fixes: e1771bcf99b0 ("ASoC: SPEAr: remove custom DMA alloc compat 
function")
      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 2497ee721524be80a7690dac0956d04c0ee954f0
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Fri Aug 28 09:27:16 2015 +0200

      amdkfd: use <linux/mman.h> instead of <uapi/asm-generic/mman-common.h>

      The latter is a default version of <asm/mman.h> and not for driver use.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Oded Gabbay <oded.gabbay@xxxxxxxxx>

  commit 29332534e2b68b5889a40ccb6606ba0d06750a69
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Sun Aug 30 09:33:56 2015 +0200

      regmap-i2c: Add smbus i2c block support

      This allows to read/write up to 32 bytes of data and is to be prefered
      if supported before the register read/write smbus support.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit c335931ed9d22c30017cf957518262c2fe6502ce
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Sun Aug 30 09:33:55 2015 +0200

      regmap: Add raw_write/read checks for max_raw_write/read sizes

      Check in regmap_raw_read() and regmap_raw_write() for correct maximum
      sizes of the operations. Return -E2BIG if this size is not supported
      because it is too big.

      Also this patch causes an uninitialized variable warning so it
      initializes ret (although not necessary).

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit f50c9eb4e9304cf555206c93152f580c0e7213b2
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Sun Aug 30 09:33:54 2015 +0200

      regmap: regmap max_raw_read/write getter functions

      Add functions to access the maximum size we can read/write using
      regmap_raw_read/write().

      This helps drivers that need to know how much they can write with the
      raw functions without problems. There are some devices (e.g. bmc150)
      that have fifos as registers which need to be read in specific chunks
      otherwise samples are dropped.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit adaac459759db4a1fd35baddbe47bac700095496
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Sun Aug 30 09:33:53 2015 +0200

      regmap: Introduce max_raw_read/write for regmap_bulk_read/write

      There are some buses which have a limit on the maximum number of bytes
      that can be send/received. An example for this is
      I2C_FUNC_SMBUS_I2C_BLOCK which does not support any reads/writes of more
      than 32 bytes. The regmap_bulk operations should still be able to
      utilize the full 32 bytes in this case.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 10524612e8aa98804190ec7d0b380cf99c3bdbd7
  Merge: c13dcf9 9a16ea9 9c9f7f6 07ea400 c5f58f2
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Sun Aug 30 10:19:11 2015 +0100

      Merge branches 'fix/raw', 'topic/core', 'topic/i2c', 'topic/raw' and 
'topic/doc' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap 
into regmap-smbus-block

  commit 390fd5929f52bdfb9dfcc03820041ba556780f4a
  Author: Philippe Bergheaud <felix@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 28 09:37:36 2015 +0200

      cxl: Set up and enable PSL Timebase

      This patch configures the PSL Timebase function and enables it,
      after the CAPP has been initialized by OPAL.

      Acked-by: Ian Munsie <imunsie@xxxxxxxxxxx>
      Signed-off-by: Philippe Bergheaud <felix@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 55e07668fbba9466e6a9ef7650718356cda38406
  Author: Ian Munsie <imunsie@xxxxxxxxxxx>
  Date:   Thu Aug 27 19:50:19 2015 +1000

      cxl: Fix force unmapping mmaps of contexts allocated through the kernel 
api

      The cxl user api uses the address_space associated with the file when we
      need to force unmap all cxl mmap regions (e.g. on eeh, driver detach,
      etc). Currently, contexts allocated through the kernel api do not do
      this and instead skip the mmap invalidation, potentially allowing them
      to poke at the hardware after such an event, which may cause all sorts
      of trouble.

      This patch allocates an address_space for cxl contexts allocated through
      the kernel api so that the same invalidate path will for these contexts
      as well. We don't use the anonymous inode's address_space, as doing so
      could invalidate any mmaps of completely unrelated drivers using
      anonymous file descriptors.

      This patch also introduces a kernelapi flag, so we know when freeing the
      context if the address_space was allocated by us and needs to be freed.

      Signed-off-by: Ian Munsie <imunsie@xxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit af2a50bb0ce1ca7a9c4784813419c922bf2285df
  Author: Ian Munsie <imunsie@xxxxxxxxxxx>
  Date:   Thu Aug 27 19:50:18 2015 +1000

      cxl: Fix + cleanup error paths in cxl_dev_context_init

      If the cxl_context_alloc() call fails, we return immediately without
      releasing the reference on the AFU device, allowing it to leak.

      This patch switches to using goto style error handling so that the
      device is released in common code for both error paths, and will also
      simplify things if we add additional initialisation in this function in
      the future.

      Signed-off-by: Ian Munsie <imunsie@xxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 099392048cd443349c50310f7fdc96070e40f4e7
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 29 19:11:21 2015 -0700

      SUNRPC: Prevent SYN+SYNACK+RST storms

      Add a shutdown() call before we release the socket in order to ensure the
      reset is sent before we try to reconnect.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 2573d78872f242a05b842e9c553da45a3d9924e5
  Merge: 8e816df a581b96
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Sat Aug 29 19:07:16 2015 -0700

      Merge branch 'ovs-vport-cleanup'

      Pravin B Shelar says:

      ====================
      openvswitch: Cleanup post vport conversion.

      After converting all vport to netdev implmentations there
      is no need for some of vport functionality.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a581b96dbfc52b6b498552525ec929aa635680ed
  Author: Pravin B Shelar <pshelar@xxxxxxxxxx>
  Date:   Sat Aug 29 17:44:08 2015 -0700

      openvswitch: Remove vport-net

      This structure is not used anymore.

      Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8c876639c98501b049269b554bf4ecbb8f9c012f
  Author: Pravin B Shelar <pshelar@xxxxxxxxxx>
  Date:   Sat Aug 29 17:44:07 2015 -0700

      openvswitch: Remove vport stats.

      Since all vport types are now backed by netdev, we can directly
      use netdev stats. Following patch removes redundant stat
      from vport.

      Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3eedb41fb43461b5fde3f72fd00a7706f0b90103
  Author: Pravin B Shelar <pshelar@xxxxxxxxxx>
  Date:   Sat Aug 29 17:44:06 2015 -0700

      openvswitch: Remove egress_tun_info.

      tun info is passed using skb-dst pointer. Now we have
      converted all vports to netdev based implementation so
      Now we can remove redundant pointer to tun-info from OVS_CB.

      Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 24d43f32d86026a0e318fee736380e164d85eefa
  Author: Pravin B Shelar <pshelar@xxxxxxxxxx>
  Date:   Sat Aug 29 17:44:05 2015 -0700

      openvswitch: Remove vport get_name()

      Remove unused get_name() function pointer from vport ops.

      Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 650c919798c71fb34b77a6f2ba03a06907f06a76
  Merge: 895fb31 64291f7
  Author: Chris Zankel <chris@xxxxxxxxxx>
  Date:   Sat Aug 29 23:55:58 2015 +0000

      Merge tag 'v4.2' into for_next

      Linux 4.2

  commit 8e816df87997bb0c40122d5df621423b445c4fe6
  Author: Jesse Gross <jesse@xxxxxxxxxx>
  Date:   Fri Aug 28 16:54:40 2015 -0700

      geneve: Use GRO cells infrastructure.

      Geneve can benefit from GRO at the device level in a manner similar
      to other tunnels, especially as hardware offloads are still emerging.

      After this patch, aggregated frames are seen on the tunnel interface.
      Single stream throughput nearly doubles in ideal circumstances (on
      old hardware).

      Signed-off-by: Jesse Gross <jesse@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0c78789e3a030615c6650fde89546cadf40ec2cc
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 29 13:36:30 2015 -0700

      SUNRPC: xs_reset_transport must mark the connection as disconnected

      In case the reconnection attempt fails.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit c30da497893718abc6cec4f1d34d35875200edee
  Author: Simon Horman <simon.horman@xxxxxxxxxxxxx>
  Date:   Sat Aug 29 09:02:21 2015 +0900

      openvswitch: retain parsed IPv6 header fields in flow on error skipping 
extension headers

      When an error occurs skipping IPv6 extension headers retain the already
      parsed IP protocol and IPv6 addresses in the flow. Also assume that the
      packet is not a fragment in the absence of information to the contrary;
      that is always use the frag_off value set by ipv6_skip_exthdr().

      This allows matching on the IP protocol and IPv6 addresses of packets
      with malformed extension headers.

      Signed-off-by: Simon Horman <simon.horman@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f5004a14fac0a71656340544c48a14c80a3afddf
  Merge: 6d74232 917522a
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Sat Aug 29 13:15:03 2015 -0700

      Merge branch 'for-upstream' of 
git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next

      Johan Hedberg says:

      ====================
      pull request: bluetooth-next 2015-08-28

      One more bunch of Bluetooth patches for 4.3:

       - Crash fix for hci_bcm driver
       - Enhancements to hci_intel driver (e.g. baudrate configuration)
       - Fix for SCO link type after multiple connect attempts
       - Cleanups & minor fixes in a few other places

      Please let me know if there are any issues pulling. Thanks.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f892a84cc890aaaba7bc42daf2e2ee86b0961884
  Author: Tony Lindgren <tony@xxxxxxxxxxx>
  Date:   Fri Aug 28 11:50:15 2015 -0700

      net/smsc911x: Fix deferred probe for interrupt

      The interrupt handler may not be available when smsc911x probes if the
      interrupt handler is a GPIO controller for example. Let's fix that
      by adding handling for -EPROBE_DEFER.

      Cc: Steve Glendinning <steve.glendinning@xxxxxxxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6d74232410a9f3ed0e1fc0f5e538598f21e93982
  Merge: f6d3c19 a43a9ef
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Sat Aug 29 13:07:55 2015 -0700

      Merge branch 'tnl-ipv4-ipv6'

      Jiri Benc says:

      ====================
      tunnels: fix incorrect IPv4/v6 headers interpretation

      With tunneling, it is currently possible to get an IPv6 header and 
interpret
      it as an IPv4 header, or to interpret an IPv6 address as an IPv4 address
      (and vice versa). This leads to things like sending packets to incorrect
      address, IPv6 flow label being interpreted as IP packet length, etc.

      Fix several places where this can happen.

      Most of this is net-next only. The third patch affects net, too, but it
      doesn't seem there's anything in user space that sets the attribute at all
      currently, thus net-next is fine.

      Changelog:
      v2: fixed geneve after incorrect rebase on top of Pravin's patches
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a43a9ef6a2e510fec61176ff2c34fab3e7d581da
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Fri Aug 28 20:48:22 2015 +0200

      vxlan: do not receive IPv4 packets on IPv6 socket

      By default (subject to the sysctl settings), IPv6 sockets listen also for
      IPv4 traffic. Vxlan is not prepared for that and expects IPv6 header in
      packets received through an IPv6 socket.

      In addition, it's currently not possible to have both IPv4 and IPv6 vxlan
      tunnel on the same port (unless bindv6only sysctl is enabled), as it's not
      possible to create and bind both IPv4 and IPv6 vxlan interfaces and 
there's
      no way to specify both IPv4 and IPv6 remote/group IP addresses.

      Set IPV6_V6ONLY on vxlan sockets to fix both of these issues. This is not
      done globally in udp_tunnel, as l2tp and tipc seems to work okay when
      receiving IPv4 packets on IPv6 socket and people may rely on this 
behavior.
      The other tunnels (geneve and fou) do not support IPv6.

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b9b6695cf0e1afebc207e28c7e9350c90547a426
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Fri Aug 28 20:48:21 2015 +0200

      fou: reject IPv6 config

      fou does not really support IPv6 encapsulation. After an UDP socket is
      created in fou_create, the encap_rcv callback is set either to 
fou_udp_recv
      or to gue_udp_recv. Both of those unconditionally assume that the received
      packet has an IPv4 header and access the data at network_header as it was 
an
      IPv4 header. This leads to IPv6 flow label being interpreted as IP packet
      length, etc.

      Disallow fou tunnel to be configured as IPv6 until real IPv6 support is
      added to fou.

      CC: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7f9562a1f405306eacb97f95d78cb996e33f27f5
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Fri Aug 28 20:48:20 2015 +0200

      ip_tunnels: record IP version in tunnel info

      There's currently nothing preventing directing packets with IPv6
      encapsulation data to IPv4 tunnels (and vice versa). If this happens,
      IPv6 addresses are incorrectly interpreted as IPv4 ones.

      Track whether the given ip_tunnel_key contains IPv4 or IPv6 data. Store 
this
      in ip_tunnel_info. Reject packets at appropriate places if they are 
supposed
      to be encapsulated into an incompatible protocol.

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Acked-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 46fa062ad63146dd138ec0f017e71224471e8ea5
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Fri Aug 28 20:48:19 2015 +0200

      ip_tunnels: convert the mode field of ip_tunnel_info to flags

      The mode field holds a single bit of information only (whether the
      ip_tunnel_info struct is for rx or tx). Change the mode field to bit 
flags.
      This allows more mode flags to be added.

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Acked-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f6d3c19274c74ff17174df8078e0a14df003667f
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 28 08:42:09 2015 -0700

      net: FIB tracepoints

      A few useful tracepoints developing VRF driver.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a02daad70214a820988c045494a15dea047c16d4
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 29 02:35:13 2015 +0200

      regulator: pfuze100: Remove unnecessary MODULE_ALIAS()

      The driver has a I2C device id table that is used to create the modaliases
      and also "pfuze100-regulator" is not a supported I2C id, so is never used.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 22c103cd3dfadff340b3b639e477a3c161cb2104
  Author: Takashi Sakamoto <o-takashi@xxxxxxxxxxxxx>
  Date:   Sat Aug 29 10:38:46 2015 +0900

      ALSA: fireworks/bebob/dice/oxfw: fix substreams counting at vmalloc 
failure

      In PCM core, when hw_params() in each driver returns error, the state of
      PCM substream is kept as 'open'. In this case, current drivers for sound
      units on IEEE 1394 bus doesn't decrement substream counter in hw_free()
      correctly. This causes these drivers to keep streams even if not
      required.

      This commit fixes this bug. When snd_pcm_lib_alloc_vmalloc_buffer()
      fails, hw_params function in each driver returns without incrementing the
      counter.

      Reported-by: Takashi Iwai <tiwai@xxxxxxx>
      Signed-off-by: Takashi Sakamoto <o-takashi@xxxxxxxxxxxxx>
      Acked-by: Clemens Ladisch <clemens@xxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 73e6742027f5cb5a7c747d9abab5351b01fd4c74
  Author: Vlad Yasevich <vyasevich@xxxxxxxxx>
  Date:   Fri Aug 28 21:23:39 2015 -0400

      sctp: Do not try to search for the transport twice

      When removing an non-primary transport during ASCONF
      processing, we end up traversing the transport list
      twice: once in sctp_cmd_del_non_primary, and once in
      sctp_assoc_del_peer.  We can avoid the second
      search and call sctp_assoc_rm_peer() instead.
      Found by code inspection during code reviews.

      Signed-off-by: Vladislav Yasevich <vyasevich@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b0d4943eec9a42c7ba2065f6cfa949894204dd4a
  Author: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 28 15:05:32 2015 -0700

      bonding: fix bond_poll_controller bh_enable warning

      The problem is rcu_read_unlock_bh() which triggers a warning when irqs are
      disabled. ndo_poll_controller should run with irqs disabled always so we
      can drop the rcu_read_lock_bh.

      [   98.502922] bond0: making interface eth1 the new active one
      [   98.503039] ------------[ cut here ]------------
      [   98.503039] WARNING: CPU: 0 PID: 1744 at kernel/softirq.c:150 
__local_bh_enable_ip+0x96/0xc0()
      [   98.503039] Modules linked in: bonding(OE) rpcsec_gss_krb5 nfsv4 
dns_resolver nfs fscache netconsole ppdev joydev parport_pc serio_raw parport 
i2c_piix4 video acpi_cpufreq nfsd auth_rpcgss nfs_acl lockd grace sunrpc 
virtio_net e1000 ata_generic pcnet32 mii virtio_pci virtio_ring virtio pata_acpi
      [   98.503039] CPU: 0 PID: 1744 Comm: ifenslave Tainted: G           OE   
4.2.0-rc7+ #56
      [   98.503039] Hardware name: innotek GmbH VirtualBox/VirtualBox, BIOS 
VirtualBox 12/01/2006
      [   98.503039]  0000000000000000 00000000e96ba230 ffff880020c236b8 
ffffffff8183f105
      [   98.503039]  0000000000000000 0000000000000000 ffff880020c236f8 
ffffffff810a9496
      [   98.503039]  ffff88002ea99e08 0000000000000200 ffffffffa02a8e06 
ffff88002ea99e08
      [   98.503039] Call Trace:
      [   98.503039]  [<ffffffff8183f105>] dump_stack+0x4c/0x65
      [   98.503039]  [<ffffffff810a9496>] warn_slowpath_common+0x86/0xc0
      [   98.503039]  [<ffffffffa02a8e06>] ? bond_poll_controller+0x146/0x250 
[bonding]
      [   98.503039]  [<ffffffff810a95ca>] warn_slowpath_null+0x1a/0x20
      [   98.503039]  [<ffffffff810ae376>] __local_bh_enable_ip+0x96/0xc0
      [   98.503039]  [<ffffffffa02a8e2f>] bond_poll_controller+0x16f/0x250 
[bonding]
      [   98.503039]  [<ffffffffa02a8cf3>] ? bond_poll_controller+0x33/0x250 
[bonding]
      [   98.503039]  [<ffffffff810feaed>] ? trace_hardirqs_off+0xd/0x10
      [   98.503039]  [<ffffffff81848afb>] ? 
_raw_spin_unlock_irqrestore+0x5b/0x60
      [   98.503039]  [<ffffffff816ec48e>] netpoll_poll_dev+0x6e/0x350
      [   98.503039]  [<ffffffff816eb977>] ? netpoll_start_xmit+0x137/0x1d0
      [   98.503039]  [<ffffffff816b2e8b>] ? __alloc_skb+0x5b/0x210
      [   98.503039]  [<ffffffff816ec89d>] netpoll_send_skb_on_dev+0x12d/0x2a0
      [   98.503039]  [<ffffffff816eccde>] netpoll_send_udp+0x2ce/0x430
      [   98.503039]  [<ffffffffa0190850>] write_msg+0xb0/0xf0 [netconsole]
      [   98.503039]  [<ffffffff81116b63>] 
call_console_drivers.constprop.25+0x133/0x260
      [   98.503039]  [<ffffffff81117934>] console_unlock+0x2f4/0x580
      [   98.503039]  [<ffffffff81117ea5>] ? vprintk_emit+0x2e5/0x630
      [   98.503039]  [<ffffffff81117ee5>] vprintk_emit+0x325/0x630
      [   98.503039]  [<ffffffff81118379>] vprintk_default+0x29/0x40
      [   98.503039]  [<ffffffff8183de4f>] printk+0x55/0x6b
      [   98.503039]  [<ffffffff816c754c>] __netdev_printk+0x16c/0x260
      [   98.503039]  [<ffffffff816c7a12>] netdev_info+0x62/0x80
      [   98.503039]  [<ffffffffa02ab464>] bond_change_active_slave+0x134/0x6a0 
[bonding]
      [   98.503039]  [<ffffffffa02aba95>] bond_select_active_slave+0xc5/0x310 
[bonding]
      [   98.503039]  [<ffffffffa02aeb78>] bond_enslave+0x1088/0x10c0 [bonding]
      [   98.503039]  [<ffffffffa02af46b>] bond_do_ioctl+0x37b/0x400 [bonding]
      [   98.503039]  [<ffffffff81101d8d>] ? trace_hardirqs_on+0xd/0x10
      [   98.503039]  [<ffffffff816dc437>] ? rtnl_lock+0x17/0x20
      [   98.503039]  [<ffffffff816e5fd1>] dev_ifsioc+0x331/0x3e0
      [   98.503039]  [<ffffffff816e62dc>] dev_ioctl+0xec/0x6c0
      [   98.503039]  [<ffffffff816a6c6a>] sock_do_ioctl+0x4a/0x60
      [   98.503039]  [<ffffffff816a7300>] sock_ioctl+0x1c0/0x250
      [   98.503039]  [<ffffffff81271bfe>] do_vfs_ioctl+0x2ee/0x540
      [   98.503039]  [<ffffffff810fd943>] ? up_read+0x23/0x40
      [   98.503039]  [<ffffffff81070993>] ? __do_page_fault+0x1d3/0x420
      [   98.503039]  [<ffffffff8127e246>] ? __fget_light+0x66/0x90
      [   98.503039]  [<ffffffff81271ec9>] SyS_ioctl+0x79/0x90
      [   98.503039]  [<ffffffff8184936e>] entry_SYSCALL_64_fastpath+0x12/0x76
      [   98.503039] ---[ end trace 00cfa804b0670051 ]---

      Fixes: 616f45416ca0 ("bonding: implement bond_poll_controller()")
      Signed-off-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Mahesh Bandewar <maheshb@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7a468ac624c80bda76957d8cbc28024f4f68e316
  Author: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 28 16:56:01 2015 +0300

      sh_eth: propagate platform_get_irq() error upstream

      The driver overrides the error returned by platform_get_irq() with -ENODEV
      which e.g. precludes the deferred  probing from working. Propagate the 
real
      error code to the driver core instead.

      Signed-off-by: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
      Acked-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f375339e497582ea0bc8806a0552add1cabb6d4e
  Author: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 28 16:55:10 2015 +0300

      ravb: propagate platform_get_irq() error upstream

      The driver overrides the error returned by platform_get_irq() with -ENODEV
      which e.g. precludes the deferred  probing from working. Propagate the 
real
      error code to the driver core instead.

      Signed-off-by: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
      Acked-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7c5a9461812b21e1a1b7a09a83e97530b8867459
  Author: lucien <lucien.xin@xxxxxxxxx>
  Date:   Fri Aug 28 17:45:58 2015 +0800

      sctp: ASCONF-ACK with Unresolvable Address should be sent

      RFC 5061:
          This is an opaque integer assigned by the sender to identify each
          request parameter.  The receiver of the ASCONF Chunk will copy this
          32-bit value into the ASCONF Response Correlation ID field of the
          ASCONF-ACK response parameter.  The sender of the ASCONF can use this
          same value in the ASCONF-ACK to find which request the response is
          for.  Note that the receiver MUST NOT change this 32-bit value.

          Address Parameter: TLV

          This field contains an IPv4 or IPv6 address parameter, as described
          in Section 3.3.2.1 of [RFC4960].

      ASCONF chunk with Error Cause Indication Parameter (Unresolvable Address)
      should be sent if the Delete IP Address is not part of the association.

        Endpoint A                           Endpoint B
        (ESTABLISHED)                        (ESTABLISHED)

        ASCONF        ----------------->
        (Delete IP Address)
                      <-----------------      ASCONF-ACK
                                              (Unresolvable Address)

      Signed-off-by: Xin Long <lucien.xin@xxxxxxxxx>
      Acked-by: Vlad Yasevich <vyasevich@xxxxxxxxx>
      Acked-by: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7084a315897715776d1764f5fd9250609e515beb
  Author: Ken-ichirou MATSUZAWA <chamaken@xxxxxxxxx>
  Date:   Fri Aug 28 16:05:20 2015 +0900

      netlink: mmap: fix lookup frame position

      __netlink_lookup_frame() was always called with the same "pos"
      value in netlink_forward_ring(). It will look at the same ring entry
      header over and over again, every time through this loop. Then cycle
      through the whole ring, advancing ring->head, not "pos" until it
      equals the "ring->head != head" loop test fails.

      Signed-off-by: Ken-ichirou MATSUZAWA <chamas@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0a6a3a23ea6efde079a5b77688541a98bf202721
  Author: Christophe Ricard <christophe.ricard@xxxxxxxxx>
  Date:   Fri Aug 28 07:07:48 2015 +0200

      netlink: add NETLINK_CAP_ACK socket option

      Since commit c05cdb1b864f ("netlink: allow large data transfers from
      user-space"), the kernel may fail to allocate the necessary room for the
      acknowledgment message back to userspace. This patch introduces a new
      socket option that trims off the payload of the original netlink message.

      The netlink message header is still included, so the user can guess from
      the sequence number what is the message that has triggered the
      acknowledgment.

      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>
      Signed-off-by: Christophe Ricard <christophe-h.ricard@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0d5cdef8d5dd0a6819fd85305adb448f5ba56f24
  Author: Joe Stringer <joestringer@xxxxxxxxxx>
  Date:   Fri Aug 28 19:22:11 2015 -0700

      openvswitch: Fix conntrack compilation without mark.

      Fix build with !CONFIG_NF_CONNTRACK_MARK && CONFIG_OPENVSWITCH_CONNTRACK

      Fixes: 182e304 ("openvswitch: Allow matching on conntrack mark")
      Reported-by: Simon Horman <simon.horman@xxxxxxxxxxxxx>
      Signed-off-by: Joe Stringer <joestringer@xxxxxxxxxx>
      Tested-by: Simon Horman <simon.horman@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 004f1afbe199e6ab20805b95aefd83ccd24bc5c7
  Author: Dan Williams <dan.j.williams@xxxxxxxxx>
  Date:   Mon Aug 24 19:20:23 2015 -0400

      libnvdimm, pmem: direct map legacy pmem by default

      The expectation is that the legacy / non-standard pmem discovery method
      (e820 type-12) will only ever be used to describe small quantities of
      persistent memory.  Larger capacities will be described via the ACPI
      NFIT.  When "allocate struct page from pmem" support is added this default
      policy can be overridden by assigning a legacy pmem namespace to a pfn
      device, however this would be only be necessary if a platform used the
      legacy mechanism to define a very large range.

      Cc: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 32ab0a3f51701cb37ab960635254d5f84ec3de0a
  Author: Dan Williams <dan.j.williams@xxxxxxxxx>
  Date:   Sat Aug 1 02:16:37 2015 -0400

      libnvdimm, pmem: 'struct page' for pmem

      Enable the pmem driver to handle PFN device instances.  Attaching a pmem
      namespace to a pfn device triggers the driver to allocate and initialize
      struct page entries for pmem.  Memory capacity for this allocation comes
      exclusively from RAM for now which is suitable for low PMEM to RAM
      ratios.  This mechanism will be expanded later for setting an "allocate
      from PMEM" policy.

      Cc: Boaz Harrosh <boaz@xxxxxxxxxxxxx>
      Cc: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit e1455744b27c9e6115c3508a7b2902157c2c4347
  Author: Dan Williams <dan.j.williams@xxxxxxxxx>
  Date:   Thu Jul 30 17:57:47 2015 -0400

      libnvdimm, pfn: 'struct page' provider infrastructure

      Implement the base infrastructure for libnvdimm PFN devices. Similar to
      BTT devices they take a namespace as a backing device and layer
      functionality on top. In this case the functionality is reserving space
      for an array of 'struct page' entries to be handed out through
      pfn_to_page(). For now this is just the basic libnvdimm-device-model for
      configuring the base PFN device.

      As the namespace claiming mechanism for PFN devices is mostly identical
      to BTT devices drivers/nvdimm/claim.c is created to house the common
      bits.

      Cc: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 3403051ebbd486a342272a404f16e7f1aca8758e
  Author: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 18:10:18 2015 -0500

      RDMA/Core: remove rdma_cap_read_multi_sge() helper

      This functionality already exists via the max_sge_rd
      device capability.

      Signed-off-by: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit bc3fe2e3769874dfa8674791e84c4a901ba9e48b
  Author: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 18:10:12 2015 -0500

      svcrdma: Use max_sge_rd for destination read depths

      Signed-off-by: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit aaae91f4f05c39f02e36e89b00ad84465f8eb02b
  Author: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 18:10:07 2015 -0500

      ipath,qib: Expose max_sge_rd correctly

      Applications must not assume that max_sge and max_sge_rd are the same,
      Hence expose max_sge_rd correctly as well.

      Signed-off-by: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
      Acked-by: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 18ebd40773bf500054a5e079e71cd13aafd1b6eb
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Mon Jul 27 18:10:01 2015 -0500

      mlx4, mlx5, mthca: Expose max_sge_rd correctly

      Applications must not assume that max_sge and max_sge_rd are the same,
      Hence expose max_sge_rd correctly as well.

      Reported-by: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit a724648e8a8f7ff874f0d58491b39517718c7237
  Author: Jeff Becker <jeffrey.c.becker@xxxxxxxx>
  Date:   Fri Aug 21 12:26:22 2015 -0700

      staging/hfi1: replace indent spaces with tabs

      Running checkpatch.pl on mad.c produces several
      "ERROR: code indent should use tabs where possible" messages.
      This patch fixes these.

      Signed-off-by: Jeff Becker <Jeffrey.C.Becker@xxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 7724105686e718ac476a6ad3304fea2fbcfcffde
  Author: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx>
  Date:   Thu Jul 30 15:17:43 2015 -0400

      IB/hfi1: add driver files

      Signed-off-by: Andrew Friedley <andrew.friedley@xxxxxxxxx>
      Signed-off-by: Arthur Kepner <arthur.kepner@xxxxxxxxx>
      Signed-off-by: Brendan Cunningham <brendan.cunningham@xxxxxxxxx>
      Signed-off-by: Brian Welty <brian.welty@xxxxxxxxx>
      Signed-off-by: Caz Yokoyama <caz.yokoyama@xxxxxxxxx>
      Signed-off-by: Dean Luick <dean.luick@xxxxxxxxx>
      Signed-off-by: Dennis Dalessandro <dennis.dalessandro@xxxxxxxxx>
      Signed-off-by: Easwar Hariharan <easwar.hariharan@xxxxxxxxx>
      Signed-off-by: Harish Chegondi <harish.chegondi@xxxxxxxxx>
      Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx>
      Signed-off-by: Jim Snow <jim.m.snow@xxxxxxxxx>
      Signed-off-by: John Gregor <john.a.gregor@xxxxxxxxx>
      Signed-off-by: Jubin John <jubin.john@xxxxxxxxx>
      Signed-off-by: Kaike Wan <kaike.wan@xxxxxxxxx>
      Signed-off-by: Kevin Pine <kevin.pine@xxxxxxxxx>
      Signed-off-by: Kyle Liddell <kyle.liddell@xxxxxxxxx>
      Signed-off-by: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx>
      Signed-off-by: Mitko Haralanov <mitko.haralanov@xxxxxxxxx>
      Signed-off-by: Ravi Krishnaswamy <ravi.krishnaswamy@xxxxxxxxx>
      Signed-off-by: Sadanand Warrier <sadanand.warrier@xxxxxxxxx>
      Signed-off-by: Sanath Kumar <sanath.s.kumar@xxxxxxxxx>
      Signed-off-by: Sudeep Dutt <sudeep.dutt@xxxxxxxxx>
      Signed-off-by: Vlad Danushevsky <vladimir.danusevsky@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit d4ab347005fb26f414b98b2c8d5ef6de5778c3dc
  Author: Dennis Dalessandro <dennis.dalessandro@xxxxxxxxx>
  Date:   Thu Jul 30 15:17:32 2015 -0400

      IB/core: Add core header changes needed for OPA

      This patch adds the value of the CNP opcode to the existing list of 
enumerated
      opcodes in ib_pack.h

      Add common OPA header definitions for driver
      build:
      - opa_port_info.h
      - opa_smi.h
      - hfi1_user.h

      Additionally, ib_mad.h, has additional definitions
      that are common to ib_drivers including:
      - trap support
      - cca support

      The qib driver has the duplication removed in favor
      those in ib_mad.h

      Reviewed-by: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx>
      Reviewed-by: John, Jubin <jubin.john@xxxxxxxxx>
      Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx>
      Signed-off-by: Dennis Dalessandro <dennis.dalessandro@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 072bf1f7e4b5963034df35460f5f311396347a36
  Author: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Jul 29 09:44:14 2015 -0500

      RDMA/amso1100: Deprecate the amso1100 driver and move to staging

      The HW hasn't been sold since 2005, and the SW has definite bit rot.
      Its time to remove it.  So move it to staging for a few releases and
      then remove it after that.

      Signed-off-by: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 6f9b38903c06c159d167344821cd7b4bae864380
  Author: Dennis Dalessandro <dennis.dalessandro@xxxxxxxxx>
  Date:   Thu Jul 30 09:25:42 2015 -0400

      IB/ipath: Deprecate ipath driver and move to staging.

      It is now time for the ipath driver to begin to be phased out of the 
kernel.
      This patch moves the ipath driver from the Infiniband sub tree to the 
staging
      area where it will remain until the code is removed from the kernel in a 
few
      releases.

      Reviewed-by: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx>
      Signed-off-by: Dennis Dalessandro <dennis.dalessandro@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 2dfcad3adea961916f013387889bc418c65421cd
  Author: Doug Ledford <dledford@xxxxxxxxxx>
  Date:   Thu Aug 27 14:18:57 2015 -0400

      Staging: Add staging/rdma directory and update MAINTAINERS

      Create the rdma directory in the staging area for use as we deprecate
      some older drivers and as we bring in some new drivers that are in
      need of work.  Update the MAINTAINERS file so that updates to these
      files go to linux-rdma@xxxxxxxxxxxxxxxx  Expected lifespan of this
      directory is three releases for any deprecated drivers moved here
      and an unknown, but theoretically bounded amount of time for the new
      drivers as a new core RDMA transfer library needs to be written and
      the drivers modified to use it in order for them to move out of this
      directory.

      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 84cc6ac62d4386f5b6d9ccf2900686b5648e230f
  Author: Hariprasad S <hariprasad@xxxxxxxxxxx>
  Date:   Tue Aug 25 14:08:23 2015 +0530

      iw_cxgb4: Add support for clip

      Add support for ipv6 address handling clip api provided by lld

      Signed-off-by: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
      Acked-by: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 6c26a77124ff94102ea59ac23a54cdad2c49e644
  Author: Spencer Baugh <sbaugh@xxxxxxxxxx>
  Date:   Thu Aug 13 12:19:10 2015 -0700

      RDMA/cma: fix IPv6 address resolution

      Resolving a link-local IPv6 address with an unspecified source address
      was broken by commit 5462eddd7a, which prevented the IPv6 stack from
      learning the scope id of the link-local IPv6 address, causing random
      failures as the IP stack chose a random link to resolve the address on.

      This commit 5462eddd7a made us bail out of cma_check_linklocal early if
      the address passed in was not an IPv6 link-local address. On the address
      resolution path, the address passed in is the source address; if the
      source address is the unspecified address, which is not link-local, we
      will bail out early.

      This is mostly correct, but if the destination address is a link-local
      address, then we will be following a link-local route, and we'll need to
      tell the IPv6 stack what the scope id of the destination address is.
      This used to be done by last line of cma_check_linklocal, which is
      skipped when bailing out early:

        dev_addr->bound_dev_if = sin6->sin6_scope_id;

      (In cma_bind_addr, the sin6_scope_id of the source address is set to the
      sin6_scope_id of the destination address, so this is correct)
      This line is required in turn for the following line, L279 of
      addr6_resolve, to actually inform the IPv6 stack of the scope id:

            fl6.flowi6_oif = addr->bound_dev_if;

      Since we can only know we are in this failure case when we have access
      to both the source IPv6 address and destination IPv6 address, we have to
      deal with this further up the stack. So detect this failure case in
      cma_bind_addr, and set bound_dev_if to the destination address scope id
      to correct it.

      Signed-off-by: Spencer Baugh <sbaugh@xxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 7e967fd0b84a843b2475acc67a5a8df138c5f5c0
  Author: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 17:13:32 2015 -0600

      IB/ucma: Fix theoretical user triggered use-after-free

      Something like this:

      CPU A                         CPU B
      Acked-by: Sean Hefty <sean.hefty@xxxxxxxxx>

      ========================      ================================
      ucma_destroy_id()
       wait_for_completion()
                                    .. anything
                                      ucma_put_ctx()
                                        complete()
       .. continues ...
                                    ucma_leave_multicast()
                                     mutex_lock(mut)
                                       atomic_inc(ctx->ref)
                                     mutex_unlock(mut)
       ucma_free_ctx()
        ucma_cleanup_multicast()
         mutex_lock(mut)
           kfree(mc)
                                     rdma_leave_multicast(mc->ctx->cm_id,..

      Fix it by latching the ref at 0. Once it goes to 0 mc and ctx cannot
      leave the mutex(mut) protection.

      The other atomic_inc in ucma_get_ctx is OK because mutex(mut) protects
      it from racing with ucma_destroy_id.

      Signed-off-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Acked-by: Sean Hefty <sean.hefty@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit b8ac3112462900a55a45df8e6098c67a139d8c2d
  Author: Hariprasad S <hariprasad@xxxxxxxxxxx>
  Date:   Mon Jul 27 14:08:52 2015 +0530

      iw_cxgb4: set the default MPA version to 2

      This enables ORD/IRD negotiation and its about time to enable it by
      default

      Signed-off-by: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit 7854550ae6d89bb90980b9885c7a71e471820bf2
  Author: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Jul 28 09:13:52 2015 -0500

      RDMA/iser: Limit sgs to the device fastreg depth

      Currently the sg tablesize, which dictates fast register page list
      depth to use, does not take into account the limits of the rdma device.
      So adjust it once we discover the device fastreg max depth limit.  Also
      adjust the max_sectors based on the resulting sg tablesize.

      Signed-off-by: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit d6c7276be180fbd0a30cda8fac5c82d483be47b6
  Author: Roland Dreier <roland@xxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 14:43:23 2015 -0700

      IB/mlx5: Remove dead code from alloc_cached_mr()

      The only place that assigns mr inside the loop already does a break.
      So "if (mr)" will never be true here since the function initializes mr
      to NULL at the top.  We can just drop the extra if and break here.

      Signed-off-by: Roland Dreier <roland@xxxxxxxxxxxxxxx>
      Acked-by: Eli Cohen  <eli@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit d6f1c17e162b2a11e708f28fa93f2f79c164b442
  Author: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx>
  Date:   Tue Jul 21 08:36:07 2015 -0400

      IB/qib: Change lkey table allocation to support more MRs

      The lkey table is allocated with with a get_user_pages() with an
      order based on a number of index bits from a module parameter.

      The underlying kernel code cannot allocate that many contiguous pages.

      There is no reason the underlying memory needs to be physically
      contiguous.

      This patch:
      - switches the allocation/deallocation to vmalloc/vfree
      - caps the number of bits to 23 to insure at least 1 generation bit
        o this matches the module parameter description

      Cc: stable@xxxxxxxxxxxxxxx
      Reviewed-by: Vinit Agnihotri <vinit.abhay.agnihotri@xxxxxxxxx>
      Signed-off-by: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit e0238a6a369eaa2e41b2c0321453272fb859f618
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Tue Jul 21 14:40:12 2015 +0300

      mlx5: Expose correct page_size_cap in device attributes

      Should be all the page sizes that are supported by the
      device.

      Reported-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Reviewed-by: Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit a3c874200cbcd95ed914ba84f33f571a0ef7adfa
  Author: Sagi Grimberg <sagig@xxxxxxxxxxxx>
  Date:   Mon Jul 20 19:54:36 2015 +0300

      mlx5: Fix missing device local_dma_lkey

      The mlx5 driver exposes device capability IB_DEVICE_LOCAL_DMA_LKEY
      but does not set the the device local_dma_lkey. This breaks
      rpcrdma drivers.

      Query and set this lkey when creating the device resources.

      Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx>
      Signed-off-by: Doug Ledford <dledford@xxxxxxxxxx>

  commit d6f5aef298b5e5bd12e5d3ef111a4d0fc727ca70
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Fri Aug 28 17:30:46 2015 -0700

      Input: max8997_haptic - fix module alias

      The driver is a platform driver and not a I2C driver so its modalias
      should be exported with MODULE_DEVICE_TABLE(platform,...) instead of
      MODULE_DEVICE_TABLE(i2c,...).

      Also, remove the unnecessary MODULE_ALIAS("platform:max8997-haptic")
      now that the correct module alias is created.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 742f452b9b60c228a33e8d35fd2c74cd15bdaa29
  Author: Benson Leung <bleung@xxxxxxxxxxxx>
  Date:   Fri Aug 28 17:30:16 2015 -0700

      Input: elan_i2c - fix typos for validpage_count

      Search for "vaildpage_count" and replace with "validpage_count".

      Signed-off-by: Benson Leung <bleung@xxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 8bb6944e5aabaf9b7977502667a6981733564f85
  Author: Jon Hunter <jonathanh@xxxxxxxxxx>
  Date:   Thu Aug 27 10:17:00 2015 +0100

      PM / Domains: Fix typo in description of genpd_dev_pm_detach()

      The function genpd_dev_pm_detach() detaches a device from a PM domain,
      however, in the description, the "dev" argument for the function is
      described as the device to "attach" instead of "detach". Correct this.

      Signed-off-by: Jon Hunter <jonathanh@xxxxxxxxxx>
      Acked-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Acked-by: Kevin Hilman <khilman@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit ad440bf40e2846966da44e885bb7d8a1f8384fa6
  Author: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
  Date:   Tue Aug 18 13:38:02 2015 +0200

      PM / Domains: Remove unusable governor dummies

      The governor dummies for the !CONFIG_PM_GENERIC_DOMAINS case are
      unusable, as a governors is always referred to by taking its address,
      which you can't do with a literal NULL pointer.

      I.e.

        pm_genpd_init(genpd, &simple_qos_governor, false);

      fails to compile with:

        error: lvalue required as unary '&' operand

      Hence just remove the governor dummies.

      Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Acked-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit be5ed55de011bddbb8ef7b3453edf07a26865beb
  Author: Rajendra Nayak <rnayak@xxxxxxxxxxxxxx>
  Date:   Thu Aug 13 11:51:57 2015 +0530

      PM / Domains: Make pm_genpd_init() available to modules

      Export symbol pm_genpd_init so it can be used in loadable
      kernel modules

      Signed-off-by: Rajendra Nayak <rnayak@xxxxxxxxxxxxxx>
      Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      Acked-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Acked-by: Kevin Hilman <khilman@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 15dec67ae3ddb222fe6907db299229906ede8143
  Author: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
  Date:   Tue Aug 11 14:50:49 2015 +0200

      PM / domains: Align column headers and data in pm_genpd_summary output

      "domain": header is indented by 4, data by 0 spaces => 0 spaces
      "/device": header is indented by 11, data by 4 spaces => 4 spaces
      "slaves": header is indented by 47, data by 49 spaces => 48 spaces

      Ruler:
          1234567890123456789012345678901234567890123456789012345678901234567890

      Before:

        domain                      status         slaves
               /device                                      runtime status
          ----------------------------------------------------------------------
          a3sp                            on               a2us
        /devices/platform/e60b0000.i2c                      suspended

      After:

          domain                          status          slaves
        /device                                             runtime status
          ----------------------------------------------------------------------
          a3sp                            on              a2us
        /devices/platform/e60b0000.i2c                      suspended

      Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Acked-by: Kevin Hilman <khilman@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 5021282cc483d4126c1704942adb74806f7d15d6
  Author: Seiichi Ikarashi <s.ikarashi@xxxxxxxxxxxxxx>
  Date:   Wed Aug 19 14:26:03 2015 +0900

      powercap / RAPL: disable the 2nd power limit properly

      Let rapl_unregister_powercap() disable the second power limit
      only if it exists.
      Intel64 SDM Vol.3 14.9 says that the package domain has it
      but neither the power plane domain nor the DRAM domain has it.

      Signed-off-by: Seiichi Ikarashi <s.ikarashi@xxxxxxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 404c2db635b0e41697eed165b045cb47fd729dd0
  Author: Shreyas B. Prabhu <shreyas@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 3 11:46:00 2015 +0530

      tools: cpupower: Fix error when running cpupower monitor

      get_cpu_topology() tries to get topology info from all cpus by reading
      files in the topology sysfs dir. If a cpu is offlined, since it doesn't
      have topology dir, this function fails and returns -1. This causes
      functions relying on get_cpu_topology() to fail. For example-

      $ cpupower monitor
      Cannot read number of available processors

      Fix this by skipping fetching topology info for offline cpus.

      Signed-off-by: Shreyas B. Prabhu <shreyas@xxxxxxxxxxxxxxxxxx>
      Reported-by: Pavaman Subramaniyam <pavsubra@xxxxxxxxxxxxxxxxxx>
      Acked-by: Thomas Renninger <trenn@xxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 581a5f2a6111e3d3b22f31a7d93b6bae2627e83a
  Merge: cc7acad 851345c
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Fri Aug 28 16:29:59 2015 -0700

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next

      Pablo Neira Ayuso says:

      ====================
      Netfilter updates for net-next

      The following patchset contains Netfilter/IPVS updates for your net-next 
tree.
      In sum, patches to address fallout from the previous round plus updates 
from
      the IPVS folks via Simon Horman, they are:

      1) Add a new scheduler to IPVS: The weighted overflow scheduling algorithm
         directs network connections to the server with the highest weight that 
is
         currently available and overflows to the next when active connections 
exceed
         the node's weight. From Raducu Deaconu.

      2) Fix locking ordering in IPVS, always take rtnl_lock in first place. 
Patch
         from Julian Anastasov.

      3) Allow to indicate the MTU to the IPVS in-kernel state sync daemon. From
         Julian Anastasov.

      4) Enhance multicast configuration for the IPVS state sync daemon. Also 
from
         Julian.

      5) Resolve sparse warnings in the nf_dup modules.

      6) Fix a linking problem when CONFIG_NF_DUP_IPV6 is not set.

      7) Add ICMP codes 5 and 6 to IPv6 REJECT target, they are more informative
         subsets of code 1. From Andreas Herz.

      8) Revert the jumpstack size calculation from mark_source_chains due to 
chain
         depth miscalculations, from Florian Westphal.

      9) Calm down more sparse warning around the Netfilter tree, again from 
Florian
         Westphal.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit cc7acad135b7228b56977867afb07d3d54f0cdd3
  Merge: c9fd56b 8d3b7dc
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Fri Aug 28 16:27:28 2015 -0700

      Merge branch 'bpf_trace_printk-percent-s'

      Alexei Starovoitov says:

      ====================
      support for '%s' in bpf_trace_printk

      v2->v3:
      fix the comment to mention that strncpy_from_unsafe() returns
      the length of the string including the trailing NUL.

      v1->v2:
      patch 1: generalize FETCH_FUNC_NAME(memory, string) into
      strncpy_from_unsafe()
      patch 2: use it in bpf_trace_printk
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8d3b7dce8622919da5c5822ef7338d6604c9fe6e
  Author: Alexei Starovoitov <ast@xxxxxxxxxxxx>
  Date:   Fri Aug 28 15:56:23 2015 -0700

      bpf: add support for %s specifier to bpf_trace_printk()

      %s specifier makes bpf program and kernel debugging easier.
      To make sure that trace_printk won't crash the unsafe string
      is copied into stack and unsafe pointer is substituted.

      The following C program:
       #include <linux/fs.h>
      int foo(struct pt_regs *ctx, struct filename *filename)
      {
        void *name = 0;

        bpf_probe_read(&name, sizeof(name), &filename->name);
        bpf_trace_printk("executed %s\n", name);
        return 0;
      }

      when attached to kprobe do_execve()
      will produce output in /sys/kernel/debug/tracing/trace_pipe :
          make-13492 [002] d..1  3250.997277: : executed /bin/sh
            sh-13493 [004] d..1  3250.998716: : executed /usr/bin/gcc
           gcc-13494 [002] d..1  3250.999822: : executed 
/usr/lib/gcc/x86_64-linux-gnu/4.7/cc1
           gcc-13495 [002] d..1  3251.006731: : executed /usr/bin/as
           gcc-13496 [002] d..1  3251.011831: : executed 
/usr/lib/gcc/x86_64-linux-gnu/4.7/collect2
      collect2-13497 [000] d..1  3251.012941: : executed /usr/bin/ld

      Suggested-by: Brendan Gregg <brendan.d.gregg@xxxxxxxxx>
      Signed-off-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1a6877b9c0c2ad901d4335d909432d3bb6d3a330
  Author: Alexei Starovoitov <ast@xxxxxxxxxxxx>
  Date:   Fri Aug 28 15:56:22 2015 -0700

      lib: introduce strncpy_from_unsafe()

      generalize FETCH_FUNC_NAME(memory, string) into
      strncpy_from_unsafe() and fix sparse warnings that were
      present in original implementation.

      Signed-off-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c9fd56b34efd06a031cbc918d288f09e38173ff9
  Author: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 28 15:44:25 2015 -0700

      netpoll: warn on netpoll_send_udp users who haven't disabled irqs

      Make sure we catch future netpoll_send_udp users who use it without
      disabling irqs and also as a hint for poll_controller users.

      Signed-off-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a9de9777d613500b089a7416f936bf3ae5f070d2
  Author: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>
  Date:   Fri Aug 28 21:01:43 2015 +0200

      netfilter: nfnetlink: work around wrong endianess in res_id field

      The convention in nfnetlink is to use network byte order in every header 
field
      as well as in the attribute payload. The initial version of the batching
      infrastructure assumes that res_id comes in host byte order though.

      The only client of the batching infrastructure is nf_tables, so let's add 
a
      workaround to address this inconsistency. We currently have 11 nfnetlink
      subsystems according to NFNL_SUBSYS_COUNT, so we can assume that the 
subsystem
      2560, ie. htons(10), will not be allocated anytime soon, so it can be an 
alias
      of nf_tables from the nfnetlink batching path when interpreting the res_id
      field.

      Based on original patch from Florian Westphal.

      Reported-by: Florian Westphal <fw@xxxxxxxxx>
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit 96be5f2806cd65a2ebced3bfcdf7df0116e6c4a6
  Author: Elad Raz <eladr@xxxxxxxxxxxx>
  Date:   Sat Aug 22 08:44:11 2015 +0300

      netfilter: ipset: Fixing unnamed union init

      In continue to proposed Vinson Lee's post [1], this patch fixes 
compilation
      issues founded at gcc 4.4.7. The initialization of .cidr field of unnamed
      unions causes compilation error in gcc 4.4.x.

      References

      Visible links
      [1] https://lkml.org/lkml/2015/7/5/74

      Signed-off-by: Elad Raz <eladr@xxxxxxxxxxxx>
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit 55cc051915fd066f46c56ebd60ba486ad11e0e29
  Merge: c1b3b19 ef899c0
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Fri Aug 28 14:15:25 2015 -0700

      Merge branch 'phylib-simplifications'

      Sergei Shtylyov says:

      ====================
      Some phylib simplifications

         Here's 2 patches against DaveM's 'net-next.git' repo. We simplify a 
bogus
      string of type casts in the 1st patch and make the code respect some 
coding
      standards of the networking code in the 2nd one. I may follow with fixing 
of
      checkpatch.pl's complaints. if I have time..
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ef899c0778a39063816e19d749a688c06a6ac78e
  Author: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 28 21:35:14 2015 +0300

      phylib: simplify NULL checks

      Fix scripts/checkpatch.pl's messages like:

      CHECK: Comparison to NULL could be written "!phydrv->read_mmd_indirect"

      BTW, it doesn't detect the reversed comparisons (which I've fixed as 
well).

      Signed-off-by: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d3765f08d6f32f17ac898ec1f19957b322d4157f
  Author: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 28 21:34:34 2015 +0300

      phylib: simplify bogus phy_device_create() result

      Get rid of the bogus string of type casts where ERR_PTR() is enough.

      Signed-off-by: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c1b3b19923a371c9e099c30372d376b02fe66088
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Fri Aug 28 18:46:39 2015 +0200

      net: sched: don't break line in tc_classify loop notification

      Just some minor noise follow-up to address some stylistic issues of
      commit 3b3ae880266d ("net: sched: consolidate tc_classify{,_compat}").
      Accidentally v1 instead of v2 of that commit got applied, so this
      patch adds the relative diff.

      Suggested-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Acked-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b0fbdae127a3968688ff7b474e9164dc4bf30dd5
  Author: Shradha Shah <sshah@xxxxxxxxxxxxxx>
  Date:   Fri Aug 28 10:55:42 2015 +0100

      sfc: Allow driver to cope with a lower number of VIs than it needs for RSS

      Previously, the driver would refuse to load if it couldn't secure
      enough VIs from the MC to fulfill its RSS requirements.
      This was causing probe to fail on later functions in
      configurations where we'd run out of VIs, such as having many
      VFs.

      This change allows the driver to load with fewer VIs, down to a
      minimum of 2. A warning will be printed saying that RSS
      requirements were not met, possibly affecting performance.

      efx->max_tx_channels needs to be set to avoid going down the
      failure path in efx_probe_nic() immediately in the loop after the
      probe() NIC-type function.
      Also, Set rc=ENOSPC when bombing out of efx_probe_nic due to lack
      of VIs.

      Signed-off-by: Shradha Shah <sshah@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9ca678d1dff610f7df6ac9b31fd9152c4426f815
  Merge: 2fc32c9 27d868b 91f15fb
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Fri Aug 28 15:53:08 2015 -0500

      Merge branches 'pci/enumeration' and 'pci/misc' into next

      * pci/enumeration:
        PCI: Set MPS to match upstream bridge
        PCI: Move MPS configuration check to pci_configure_device()
        PCI: Drop references acquired by of_parse_phandle()
        PCI/MSI: Remove unused pcibios_msi_controller() hook
        ARM/PCI: Remove msi_controller from struct pci_sys_data
        ARM/PCI, designware, xilinx: Use pci_scan_root_bus_msi()
        PCI: Add pci_scan_root_bus_msi()
        ARM/PCI: Replace panic with WARN messages on failures
        PCI: generic: Add arm64 support
        PCI: Build setup-irq.o for arm64
        PCI: generic: Remove dependency on ARM-specific struct hw_pci
        ARM/PCI: Set MPS before pci_bus_add_devices()

      * pci/misc:
        PCI: Disable async suspend/resume for JMicron multi-function SATA/AHCI

  commit a69265e9f65a6747c27b01b4030ad85d71aa11ba
  Author: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
  Date:   Fri Aug 28 11:17:12 2015 +0530

      cxgb4: Force uninitialized state if FW in adapter is unsupported

      Forcing uninitialized state allows us to upgrade and reinitialize
      the adapter.

          FW_VERSION_T4 = 1.4.0.0
          FW_VERSION_T5 = 0.0.0.0
          FW_VERSION_T6 = 0.0.0.0
      At this point driver supports above and greater than above version.

      If FW in adapter < min FW_VERSION driver supports tries to upgrade the FW
      If FW in adapter >= FW_VERSION driver supports then it follows normal path

      Signed-off-by: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8b72ca67fed39816b732b0cf53a1c7f2efc6400d
  Merge: 9723e6a ed29266
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Fri Aug 28 13:43:33 2015 -0700

      Merge tag 'batman-adv-for-davem' of git://git.open-mesh.org/linux-merge

      Antonio Quartulli says:

      ====================
      Included changes:
      - code beautification
      - remove obsolete 'deleted' attribute for bat-gw node
      - increase internal version number
      - prevent potential access to netdev object after deregistration
      - set needed_head/tail_room for batman virtual interface
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9723e6abc70a472c726d5d5ac6402a2d1bb10882
  Author: Valentin Rothberg <valentinrothberg@xxxxxxxxx>
  Date:   Fri Aug 28 10:39:56 2015 +0200

      openswitch: fix typo CONFIG_NF_CONNTRACK_LABEL

      Fix typo in conntrack.c
      s/CONFIG_NF_CONNTRACK_LABEL/CONFIG_NF_CONNTRACK_LABELS/

      Signed-off-by: Valentin Rothberg <valentinrothberg@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit fe55565ef251d486c2c97779512ad22faf57384c
  Merge: 8f58336 192132b
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Fri Aug 28 13:32:37 2015 -0700

      Merge branch 'vrf-inetpeer'

      David Ahern says:

      ====================
      net: Refactor inetpeer cache and add support for VRFs

      Per Dave's comment on the version 1 patch adding VRF support to inetpeer
      cache by explicitly making the address + index a key. Refactored the
      inetpeer code in the process; mostly impacts the use by tcp_metrics.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 192132b9a034d87566294be0fba5f8f75c2cf16b
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 16:07:03 2015 -0700

      net: Add support for VRFs to inetpeer cache

      inetpeer caches based on address only, so duplicate IP addresses within
      a namespace return the same cached entry. Enhance the ipv4 address key
      to contain both the IPv4 address and VRF device index.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 5345c2e12d41f815c1009c9dee72f3d5fcfd4282
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 16:07:02 2015 -0700

      net: Refactor inetpeer address struct

      Move the inetpeer_addr_base union to inetpeer_addr and drop
      inetpeer_addr_base.

      Both the a6 and in6_addr overlays are not needed; drop the __be32 version
      and rename in6 to a6 for consistency with ipv4. Add a new u32 array to
      the union which removes the need for the typecast in the compare function
      and the use of a consistent arg for both ipv4 and ipv6 addresses which
      makes the compare function more readable.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d39d14ffa24cca9f0e44aa4a63315f4c44c56a93
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 16:07:01 2015 -0700

      net: Add helper function to compare inetpeer addresses

      tcp_metrics and inetpeer both have functions to compare inetpeer
      addresses. Consolidate into 1 version.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3abef286cf2f138de353fb0b54453621de961043
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 16:07:00 2015 -0700

      net: Add set,get helpers for inetpeer addresses

      Use inetpeer set,get helpers in tcp_metrics rather than peeking into
      the inetpeer_addr struct.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 72afa352d6a3d4da7783b5ddee02b94be49e051a
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 16:06:59 2015 -0700

      net: Introduce ipv4_addr_hash and use it for tcp metrics

      Refactors a common line into helper function.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8f58336d3f78aef61c8023c18546155f5fdf3224
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 10:10:50 2015 -0700

      net: Add ethernet header for pass through VRF device

      The change to use a custom dst broke tcpdump captures on the VRF device:

      $ tcpdump -n -i vrf10
      ...
      05:32:29.009362 IP 10.2.1.254 > 10.2.1.2: ICMP echo request, id 21989, 
seq 1, length 64
      05:32:29.009855 00:00:40:01:8d:36 > 45:00:00:54:d6:6f, ethertype Unknown 
(0x0a02), length 84:
        0x0000:  0102 0a02 01fe 0000 9181 55e5 0001 bd11  ..........U.....
        0x0010:  da55 0000 0000 bb5d 0700 0000 0000 1011  .U.....]........
        0x0020:  1213 1415 1617 1819 1a1b 1c1d 1e1f 2021  ...............!
        0x0030:  2223 2425 2627 2829 2a2b 2c2d 2e2f 3031  "#$%&'()*+,-./01
        0x0040:  3233 3435 3637                           234567

      Local packets going through the VRF device are missing an ethernet header.
      Fix by adding one and then stripping it off before pushing back to the IP
      stack. With this patch you get the expected dumps:

      ...
      05:36:15.713944 IP 10.2.1.254 > 10.2.1.2: ICMP echo request, id 23795, 
seq 1, length 64
      05:36:15.714160 IP 10.2.1.2 > 10.2.1.254: ICMP echo reply, id 23795, seq 
1, length 64
      ...

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 274b045509175db0405c784be85e8cce116e6f7d
  Author: Chas Williams <3chas3@xxxxxxxxx>
  Date:   Thu Aug 27 12:28:46 2015 -0400

      net/xen-netfront: only napi_synchronize() if running

      If an interface isn't running napi_synchronize() will hang forever.

      [  392.248403] rmmod           R  running task        0   359    343 
0x00000000
      [  392.257671]  ffff88003760fc88 ffff880037193b40 ffff880037193160 
ffff88003760fc88
      [  392.267644]  ffff880037610000 ffff88003760fcd8 0000000100014c22 
ffffffff81f75c40
      [  392.277524]  0000000000bc7010 ffff88003760fca8 ffffffff81796927 
ffffffff81f75c40
      [  392.287323] Call Trace:
      [  392.291599]  [<ffffffff81796927>] schedule+0x37/0x90
      [  392.298553]  [<ffffffff8179985b>] schedule_timeout+0x14b/0x280
      [  392.306421]  [<ffffffff810f91b9>] ? irq_free_descs+0x69/0x80
      [  392.314006]  [<ffffffff811084d0>] ? internal_add_timer+0xb0/0xb0
      [  392.322125]  [<ffffffff81109d07>] msleep+0x37/0x50
      [  392.329037]  [<ffffffffa00ec79a>] 
xennet_disconnect_backend.isra.24+0xda/0x390 [xen_netfront]
      [  392.339658]  [<ffffffffa00ecadc>] xennet_remove+0x2c/0x80 
[xen_netfront]
      [  392.348516]  [<ffffffff81481c69>] xenbus_dev_remove+0x59/0xc0
      [  392.356257]  [<ffffffff814e7217>] __device_release_driver+0x87/0x120
      [  392.364645]  [<ffffffff814e7cf8>] driver_detach+0xb8/0xc0
      [  392.371989]  [<ffffffff814e6e69>] bus_remove_driver+0x59/0xe0
      [  392.379883]  [<ffffffff814e84f0>] driver_unregister+0x30/0x70
      [  392.387495]  [<ffffffff814814b2>] xenbus_unregister_driver+0x12/0x20
      [  392.395908]  [<ffffffffa00ed89b>] netif_exit+0x10/0x775 [xen_netfront]
      [  392.404877]  [<ffffffff81124e08>] SyS_delete_module+0x1d8/0x230
      [  392.412804]  [<ffffffff8179a8ee>] system_call_fastpath+0x12/0x71

      Signed-off-by: Chas Williams <3chas3@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit df2cf4a78e488d26728590cb3c6b4fe4c4862c77
  Author: Philip Downey <pdowney@xxxxxxxxxxx>
  Date:   Thu Aug 27 16:46:26 2015 +0100

      IGMP: Inhibit reports for local multicast groups

      The range of addresses between 224.0.0.0 and 224.0.0.255 inclusive, is
      reserved for the use of routing protocols and other low-level topology
      discovery or maintenance protocols, such as gateway discovery and
      group membership reporting.  Multicast routers should not forward any
      multicast datagram with destination addresses in this range,
      regardless of its TTL.

      Currently, IGMP reports are generated for this reserved range of
      addresses even though a router will ignore this information since it
      has no purpose.  However, the presence of reserved group addresses in
      an IGMP membership report uses up network bandwidth and can also
      obscure addresses of interest when inspecting membership reports using
      packet inspection or debug messages.

      Although the RFCs for the various version of IGMP (e.g.RFC 3376 for
      v3) do not specify that the reserved addresses be excluded from
      membership reports, it should do no harm in doing so.  In particular
      there should be no adverse effect in any IGMP snooping functionality
      since 224.0.0.x is specifically excluded as per RFC 4541 (IGMP and MLD
      Snooping Switches Considerations) section 2.1.2. Data Forwarding
      Rules:

          2) Packets with a destination IP (DIP) address in the 224.0.0.X
             range which are not IGMP must be forwarded on all ports.

      IGMP reports for local multicast groups can now be optionally
      inhibited by means of a system control variable (by setting the value
      to zero) e.g.:
          echo 0 > /proc/sys/net/ipv4/igmp_link_local_mcast_reports

      To retain backwards compatibility the previous behaviour is retained
      by default on system boot or reverted by setting the value back to
      non-zero e.g.:
          echo 1 >  /proc/sys/net/ipv4/igmp_link_local_mcast_reports

      Signed-off-by: Philip Downey <pdowney@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d7d2d89d4b0afa8f4c2b169475a0c6e43553c146
  Author: Corinna Vinschen <vinschen@xxxxxxxxxx>
  Date:   Thu Aug 27 17:11:48 2015 +0200

      r8169: Add software counter for multicast packages

      The multicast hardware counter on 8168/8111 chips is only 32 bit while the
      statistics in struct rtnl_link_stats64 are 64 bit.  Given that statistics
      are requested on an irregular basis, an overflow of the hardware counter
      can go unnoticed.  To count even very large numbers of multicast packets
      reliably, add a software counter and remove previously applied code to
      fill the multicast field requested by @rtl8169_get_stats64 with the values
      read from the rx_multicast hardware counter.

      Signed-off-by: Corinna Vinschen <vinschen@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 710105fda7a7f350c9fb22e7f61f74c3dc0fe514
  Author: Hannes Reinecke <hare@xxxxxxx>
  Date:   Thu Aug 27 14:17:02 2015 +0200

      scsi_dh: return SCSI_DH_NOTCONN in scsi_dh_activate()

      When calling scsi_dh_activate() we should be returning
      SCSI_DH_NOTCONN if the device handler couldn't be attached.

      Reviewed-by: Bart van Assche <bart.vanassche@xxxxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Hannes Reinecke <hare@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit d44227749500d8b88a1c079bc04f69187eaf8747
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Thu Aug 27 14:17:01 2015 +0200

      scsi_dh: don't allow to detach device handlers at runtime

      The I/O submission and completion paths call into the device handler
      without any synchronization agains detachment.  So disallow detaching
      device handlers at runtime.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit e959ed9a44c5239863ca6db42cb37130bee3c7a3
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Thu Aug 27 14:17:00 2015 +0200

      scsi_dh: add a common helper to get a scsi_device from a request_queue

      And cleanup the various messy opencoded versions of this.  Note that this
      moves the sdev_state checks outside the queue_lock coverage, but as
      we don't hold the lock over the activation they are only advisory anyway.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit ee14c674e8fc57251223054fb52dc0ecfe711028
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Thu Aug 27 14:16:59 2015 +0200

      scsi_dh: kill struct scsi_dh_data

      Add a ->handler and a ->handler_data field to struct scsi_device and kill
      this indirection.  Also move struct scsi_device_handler to scsi_dh.h so 
that
      changes to it don't require rebuilding every SCSI LLDD.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit d95dbff2a41e934cd8789734b34dc591e78ba11c
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Thu Aug 27 14:16:58 2015 +0200

      scsi_dh: move device matching to the core code

      Add a single list of devices that need non-ALUA device handlers to the 
core
      scsi_dh code so that we can autoload the modules for them at probe time.

      While this is a little ugly in terms of architecture it actually
      significantly simplifies the code in addition to the new autoloading
      functionality.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxx>
      Acked-by: Mike Snitzer <snitzer@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 086b91d052ebe4ead5d28021afe3bdfd70af15bf
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Thu Aug 27 14:16:57 2015 +0200

      scsi_dh: integrate into the core SCSI code

      Stop building scsi_dh as a separate module and integrate it fully into the
      core SCSI code with explicit callouts at bus scan time.  For now the
      callouts are placed at the same point as the old bus notifiers were 
called,
      but in the future we will be able to look at ALUA INQUIRY data earlier on.

      Note that this also means that the device handler modules need to be 
loaded
      by the time we scan the bus.  The next patches will add support for
      autoloading device handlers at bus scan time to make sure they are always
      loaded if they are enabled in the kernel config.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxx>
      Acked-by: Mike Snitzer <snitzer@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit daaa858b7a6bb497f11c2aae555053b9c047824b
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Thu Aug 27 14:16:56 2015 +0200

      scsi_dh: move to drivers/scsi

      Prepare for building scsi_dh.c into the core SCSI module by moving it to
      drivers/scsi.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Hannes Reinecke <hare@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 566079c849cfe538e908c44ac11a9c4638db8f91
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Thu Aug 27 14:16:55 2015 +0200

      dm-mpath, scsi_dh: request scsi_dh modules in scsi_dh, not dm-mpath

      This way we can reused the same code any attachment method, not just those
      requested from dm-mpath.

      [jejb: fixup checkpatch error]
      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxx>
      Acked-by: Mike Snitzer <snitzer@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 1bab0de0274fbe8c8ac92179e6705584c55ed169
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Thu Aug 27 14:16:54 2015 +0200

      dm-mpath, scsi_dh: don't let dm detach device handlers

      While allowing dm-mpath to attach device handlers is a functionality we 
need
      for backwards compatibility reason there is no reason to reference count
      them and detach them if dm-mpath stops using the device for some reason.

      If the device handler works for the given device it can just stay 
attached,
      and we can take the retain_hw_handler codepath.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Acked-by: Mike Snitzer <snitzer@xxxxxxxxxx>
      Acked-by: Hannes Reinecke <hare@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 36dd5acd196574d41de3e81d8264df475bbb7123
  Author: Hannes Reinecke <hare@xxxxxxx>
  Date:   Mon Jul 6 13:07:58 2015 +0200

      aic94xx: Skip reading user settings if flash is not found

      If no user settings are found it's pointless trying to
      read them from flash. So skip that step.
      This also fixes a compilation warning about uninitialized variables in
      aic94xx.

      Signed-off-by: Hannes Reinecke <hare@xxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit e35d7f27fbd51a09a41a5439e39f22a3d102c00b
  Author: Gabriel Krisman Bertazi <krisman@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 11:47:06 2015 -0300

      ipr: Enable SIS pipe commands for SIS-32 devices.

      Remove unnecessary check that disabled SIS pipe commands for SIS-32
      devices.  This change was sufficient to enable raw mode and send SIS
      pipe commands for a 57B3 device.

      Fixes: f8ee25d7d239 ("ipr: AF DASD raw mode implementation in ipr driver")
      Signed-off-by: Gabriel Krisman Bertazi <krisman@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Wen Xiong <wenxiong@xxxxxxxxxxxxxxxxxx>
      Acked-by: Brian King <brking@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 3cb4fc1fcae9647c594bc2b8fda1b818f4fb757f
  Author: Gabriel Krisman Bertazi <krisman@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 11:47:05 2015 -0300

      ipr: Inhibit underlength data check for AFDASD in raw mode.

      Disable underlength error verification based on count of bytes actually
      transferred for AF DASD devices when SIS pipe mode is enabled.

      This avoids unexpected underlength errors when issuing some commands in
      raw mode.

      Signed-off-by: Gabriel Krisman Bertazi <krisman@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Wen Xiong <wenxiong@xxxxxxxxxxxxxxxxxx>
      Acked-by: Brian King <brking@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 917522aae169ad02010dcee6ae42c16155bcd285
  Author: Frederic Danis <frederic.danis@xxxxxxxxxxxxxxx>
  Date:   Fri Aug 28 15:44:00 2015 +0200

      Bluetooth: hci_bcm: Fix crash on suspend

      If bcm_suspend is called whithout device opened there is a crash as
      it tries to use bdev->hu which is NULL.
      Rename bcm_device_list_lock to bcm_device_lock as it does not only apply
      to bcm_device_list.

      Signed-off-by: Frederic Danis <frederic.danis@xxxxxxxxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>

  commit 6e7a3840745c950c37d37cbb0af2e753a765d4ec
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Thu Aug 27 13:46:09 2015 +0800

      drm/amdgpu: use IB for fill_buffer instead of direct command

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 8f8202f771c182a7244caa5880f50def1bedd713
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu May 7 15:19:25 2015 +0200

      drm/amdgpu: stop trying to suspend UVD sessions v2

      Saving the current UVD state on suspend and restoring it on resume
      just doesn't work reliable. Just close cleanup all sessions on suspend.

      Ported from radeon commit "12e49feadff6d7b7ebbe852b36943a71524d8d34".

      v2: rebased

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx> (v1)

  commit e61235db62c5e68e56e59bea62b88f9f3d7a3cf5
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Aug 25 11:05:36 2015 +0200

      drm/amdgpu: add scheduler dependency callback v2

      This way the scheduler doesn't wait in it's work thread any more.

      v2: fix race conditions

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 69bd5bf13a8eccb4db5f26de608556416a56d973
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Wed Aug 26 11:31:23 2015 +0200

      drm/amdgpu: let the scheduler work more with jobs v2

      v2: fix another race condition

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 86b7709d48f0df8796bddd7e1ce45c6fb7a7c6ec
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Thu Aug 27 09:52:22 2015 -0400

      drm/radeon: fix HDMI quantization_range for pre-DCE5 asics

      Support for output_csc is only available on DCE5 and newer so
      don't mess with the HDMI quantization_range on pre-DCE5 asics.

      bug:
      https://bugs.freedesktop.org/show_bug.cgi?id=83226

      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 851345c5bbb4644911f7c351c042559a71f57d19
  Author: Florian Westphal <fw@xxxxxxxxx>
  Date:   Fri Aug 28 00:16:21 2015 +0200

      netfilter: reduce sparse warnings

      bridge/netfilter/ebtables.c:290:26: warning: incorrect type in assignment 
(different modifiers)
      -> remove __pure annotation.

      ipv6/netfilter/ip6t_SYNPROXY.c:240:27: warning: cast from restricted 
__be16
      -> switch ntohs to htons and vice versa.

      netfilter/core.c:391:30: warning: symbol 'nfq_ct_nat_hook' was not 
declared. Should it be static?
      -> delete it, got removed

      net/netfilter/nf_synproxy_core.c:221:48: warning: cast to restricted 
__be32
      -> Use __be32 instead of u32.

      Tested with objdiff that these changes do not affect generated code.

      Signed-off-by: Florian Westphal <fw@xxxxxxxxx>
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit 98dbbfc3f1a555194e784304d930d2aafde3e2a3
  Author: Florian Westphal <fw@xxxxxxxxx>
  Date:   Wed Aug 26 23:20:51 2015 +0200

      Revert "netfilter: xtables: compute exact size needed for jumpstack"

      This reverts commit 98d1bd802cdbc8f56868fae51edec13e86b59515.

      mark_source_chains will not re-visit chains, so

      *filter
      :INPUT ACCEPT [365:25776]
      :FORWARD ACCEPT [0:0]
      :OUTPUT ACCEPT [217:45832]
      :t1 - [0:0]
      :t2 - [0:0]
      :t3 - [0:0]
      :t4 - [0:0]
      -A t1 -i lo -j t2
      -A t2 -i lo -j t3
      -A t3 -i lo -j t4
      # -A INPUT -j t4
      # -A INPUT -j t3
      # -A INPUT -j t2
      -A INPUT -j t1
      COMMIT

      Will compute a chain depth of 2 if the comments are removed.
      Revert back to counting the number of chains for the time being.

      Reported-by: Cong Wang <cwang@xxxxxxxxxxxxxxxx>
      Reported-by: Hannes Frederic Sowa <hannes@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Florian Westphal <fw@xxxxxxxxx>
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit 618353b1f34947b3a399d6f51934f10df40e42ff
  Author: Kuba Pawlak <kubax.t.pawlak@xxxxxxxxx>
  Date:   Fri Aug 28 13:05:22 2015 +0100

      Bluetooth: Fix SCO link type handling on connection complete

      Synchronous connections are initially created with type eSCO.
      Link manager may reject proposed link parameters, which triggers
      connection setup retry with a different set. Link type embedded
      in responses should be disregarded until Synchronous Connect Complete
      returns Success (0x00). Current code updates link type every time
      which creates an issue when link type changes to SCO and back to eSCO
      on further attepts.

      Issue happens with BlackBerry 9100 and 9700 with Intel WilkinsPeak
      on third connection setup attept

      2015-05-18 01:27:57.332242 < HCI Command: Setup Synchronous Connection 
(0x01|0x0028) plen 17
          handle 256 voice setting 0x0060 ptype 0x0380
      2015-05-18 01:27:57.333604 > HCI Event: Command Status (0x0f) plen 4
          Setup Synchronous Connection (0x01|0x0028) status 0x00 ncmd 1
      2015-05-18 01:27:57.334614 > HCI Event: Synchronous Connect Complete 
(0x2c) plen 17
          status 0x1a handle 0 bdaddr 30:7C:30:B3:A8:86 type SCO
          Error: Unsupported Remote Feature / Unsupported LMP Feature
      2015-05-18 01:27:57.334895 < HCI Command: Setup Synchronous Connection 
(0x01|0x0028) plen 17
          handle 256 voice setting 0x0060 ptype 0x0380
      2015-05-18 01:27:57.335601 > HCI Event: Command Status (0x0f) plen 4
          Setup Synchronous Connection (0x01|0x0028) status 0x00 ncmd 1
      2015-05-18 01:27:57.336610 > HCI Event: Synchronous Connect Complete 
(0x2c) plen 17
          status 0x1a handle 0 bdaddr 30:7C:30:B3:A8:86 type SCO
          Error: Unsupported Remote Feature / Unsupported LMP Feature
      2015-05-18 01:27:57.336685 < HCI Command: Setup Synchronous Connection 
(0x01|0x0028) plen 17
          handle 256 voice setting 0x0060 ptype 0x03c8
      2015-05-18 01:27:57.337603 > HCI Event: Command Status (0x0f) plen 4
          Setup Synchronous Connection (0x01|0x0028) status 0x00 ncmd 1
      2015-05-18 01:27:57.342608 > HCI Event: Max Slots Change (0x1b) plen 3
          handle 256 slots 1
      2015-05-18 01:27:57.377631 > HCI Event: Synchronous Connect Complete 
(0x2c) plen 17
          status 0x00 handle 257 bdaddr 30:7C:30:B3:A8:86 type eSCO
          Air mode: CVSD

      Signed-off-by: Kuba Pawlak <kubax.t.pawlak@xxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>

  commit 1ab1f239bf17e91b183a0f18fbb22722ff16d164
  Author: Loic Poulain <loic.poulain@xxxxxxxxx>
  Date:   Thu Aug 27 07:21:51 2015 +0200

      Bluetooth: hci_intel: Add support for platform driver

      A platform device can be used to provide some specific resources in
      order to manage the controller. In this first patch we retrieve the
      reset gpio which is used to power on/off the controller.

      The main issue is to match the current tty with the correct pdev.
      In case of ACPI, we can easily find the right tty/pdev pair because
      they are both child of the same UART port.

      If controller is powered-on from the driver, we need to wait for a
      HCI boot event before being able to send any command.

      Signed-off-by: Loic Poulain <loic.poulain@xxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>

  commit 0ed97e829458496cc41ff8c39eb330d5a2247191
  Author: Marcel Holtmann <marcel@xxxxxxxxxxxx>
  Date:   Thu Aug 27 08:57:39 2015 +0200

      Bluetooth: btintel: Add MODULE_FIRMWARE entries for iBT 3.0 controllers

      The iBT 3.0 controllers need intel/ibt-11-5.sfi and intel/ibt-11-5.ddc
      firmware files from linux-firmware repository.

      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>
      Signed-off-by: Johan Hedberg <johan.hedberg@xxxxxxxxx>

  commit 5075edae086ff1c09e66699b7a27e1589ca75a3f
  Author: Minjune Kim <infinite.minjune.kim@xxxxxxxxx>
  Date:   Thu Aug 27 13:21:52 2015 +0900

      Bluetooth: btusb: Correct typos based on checkpatch.pl

      Signed-off-by: Minjune Kim <infinite.minjune.kim@xxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>

  commit ff2895592f0fccc59332d5c7d4917ccbecd7468e
  Author: Loic Poulain <loic.poulain@xxxxxxxxx>
  Date:   Tue Aug 25 17:55:44 2015 +0200

      Bluetooth: hci_intel: Add Intel baudrate configuration support

      Implement the set_baudrate callback for hci_intel.
       - Controller requires a read Intel version command before updating
         its baudrate.
       - The operation consists in an async cmd since the controller does
         not respond at the same speed.
       - Wait 100ms to let the controller change its baudrate.
       - Clear RTS until we change our own UART speed

      Manage speed change in the setup function, we need to restore the oper
      speed once chip has booted on patched firmware.

      Signed-off-by: Loic Poulain <loic.poulain@xxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>

  commit e54991677e1c8060ba5642472cbd9a0954298d01
  Author: Loic Poulain <loic.poulain@xxxxxxxxx>
  Date:   Mon Aug 24 18:57:57 2015 +0200

      Bluetooth: hci_uart: Fix zero len data packet reception issue

      Packets with a variable length value equal to zero were not received.

      Since no more data expected (and input buffer entirely consumed), we
      need to complete/forward the packet immediately instead of waiting for
      more data.

      Signed-off-by: Loic Poulain <loic.poulain@xxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>

  commit 4e1795de10903ae561872c54a72fa1bcf78f49cd
  Author: Stefan Schmidt <stefan@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 12:09:47 2015 +0200

      nl802154: stricter input checking for boolean inputs

      So far we handled boolean input by forcing them with !! and assigning
      them into a bool. This allowed userspace to send values > 1 which were
      used as 1. We should be stricter here and return -EINVAL for all but
      0 or 1.

      Signed-off-by: Stefan Schmidt <stefan@xxxxxxxxxxxxxxx>
      Acked-by: Alexander Aring <alex.aring@xxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>

  commit df945360ce07ca592464e44fdd2ce61ee1536e1e
  Author: Nicholas Krause <xerofoify@xxxxxxxxx>
  Date:   Tue Aug 18 21:23:01 2015 -0400

      Bluetooth: Make the function sco_conn_del have a return type of void

      This makes the function sco_conn_del have a return type of void now
      due to this function always running successfully and thus never
      needing to signal its caller when a non recoverable internal failure
      occurs by returning a error code to its respective caller.

      Signed-off-by: Nicholas Krause <xerofoify@xxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>

  commit d4902632ffe5d6958bd267a6712575e3a312a6e2
  Author: Shengzhen Li <szli@xxxxxxxxxxx>
  Date:   Wed Aug 19 03:12:19 2015 -0700

      Bluetooth: btmrvl: change device pointer passed to dev_coredumpv

      This change ensures we will get driver name as 'btmrvl_sdio'
      in udev event.

      Signed-off-by: Shengzhen Li <szli@xxxxxxxxxxx>
      Signed-off-by: Amitkumar Karwar <akarwar@xxxxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>

  commit 5397df15fd993acd23d9590dbb29d39219d80e3d
  Author: Jiri Kosina <jkosina@xxxxxxx>
  Date:   Fri Aug 28 20:46:42 2015 +0200

      HID: wacom: wacom_setup_numbered_buttons is local to wacom_wac

      wacom_setup_numbered_buttons() is not used outside of wacom_wac.c,
      make it static.

      Signed-off-by: Jiri Kosina <jkosina@xxxxxxx>

  commit 72b236d60218fe211a8e1210be31c31e81684b86
  Author: Aaron Skomra <skomra@xxxxxxxxx>
  Date:   Thu Aug 20 16:05:17 2015 -0700

      HID: wacom: Add support for Express Key Remote.

      This device is pad (buttons) only, there is no stylus or touch. Up to
      five remotes can pair with the device's associated USB dongle.

      Signed-off-by: Aaron Skomra <aaron.skomra@xxxxxxxxx>
      Reviewed-by: Jason Gerecke <jason.gerecke@xxxxxxxxx>
      Signed-off-by: Jiri Kosina <jkosina@xxxxxxx>

  commit 70ee06c5f447b9d50747b29d3e8d48ae7ef1cabe
  Author: Aaron Skomra <skomra@xxxxxxxxx>
  Date:   Thu Aug 20 16:05:16 2015 -0700

      HID: wacom: Set button bits based on a new numbered_buttons

      Prior to this commit, numbered button bit setting was done separately
      for each device type in wacom_setup_pad_capabilities(). Here we add a
      numbered_buttons property to the wacom_features struct and extract the
      repeated bit setting code to a new function:
      wacom_settup_numbered_buttons().

      Signed-off-by: Aaron Skomra <aaron.skomra@xxxxxxxxx>
      Reviewed-by: Jason Gerecke <jason.gerecke@xxxxxxxxx>
      Signed-off-by: Jiri Kosina <jkosina@xxxxxxx>

  commit 628b3198ccc235e387c0b8ee200c10c883e86644
  Author: Michael Powell <michael_powell@xxxxxxxxxx>
  Date:   Sun Aug 2 22:59:29 2015 +0000

      acer-wmi: No rfkill on HP Omen 15 wifi

      Prevents acer-wmi from blocking wifi on HP Omen 15 laptops

      Signed-off-by: Michael Powell <michael_powell@xxxxxxxxxx>
      [david.ward@xxxxxxxxxx: Resubmitted clean patch]
      Signed-off-by: Darren Hart <dvhart@xxxxxxxxxxxxxxx>

  commit 628536ea0627e71da654bd34b1942c85832dbdba
  Author: Jonathan Corbet <corbet@xxxxxxx>
  Date:   Tue Aug 25 01:14:48 2015 -0600

      ASoC: Clean up docbook warnings

      A number of functions and structures in the sound subsystem had incomplete
      and/or obsolete DocBook comments, leading to warnings when the docs were
      built.  Correct those comments so that we can enjoy our audio in the
      absence of warning noise.

      Signed-off-by: Jonathan Corbet <corbet@xxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 2c07144dfce366e21465cc7b0ada9f0b6dc7b7ed
  Author: Kan Liang <kan.liang@xxxxxxxxx>
  Date:   Fri Aug 28 05:48:05 2015 -0400

      perf evlist: Add backpointer for perf_env to evlist

      Add backpointer to perf_env in evlist, so we can easily access env when
      processing something where we have a evsel or evlist.

      Suggested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Kan Liang <kan.liang@xxxxxxxxx>
      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Mark Rutland <mark.rutland@xxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440755289-30939-5-git-send-email-kan.liang@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit ce80d3bef9ff97638ca57a5659ef6ad356f35047
  Author: Kan Liang <kan.liang@xxxxxxxxx>
  Date:   Fri Aug 28 05:48:04 2015 -0400

      perf tools: Rename perf_session_env to perf_env

      As it is not necessarily tied to a perf.data file and needs using in
      places where a perf_session is not required.

      Suggested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Kan Liang <kan.liang@xxxxxxxxx>
      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Mark Rutland <mark.rutland@xxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440755289-30939-4-git-send-email-kan.liang@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 9f30fffc78ca35c862f74f34cc597c7fdddc8793
  Author: Jiri Olsa <jolsa@xxxxxxxxxx>
  Date:   Wed Aug 26 15:46:45 2015 +0200

      perf tools: Do not change lib/api/fs/debugfs directly

      The tracing_events_path is the variable we want to change via
      --debugfs-dir option, not the debugfs_mountpoint.

      Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Reviewed-by: Matt Fleming <matt@xxxxxxxxxxxxxxxxxxx>
      Cc: Raphael Beamonte <raphael.beamonte@xxxxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440596813-12844-4-git-send-email-jolsa@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 9f44f0cc1c32f1542071447a9493652bbc03facb
  Author: Jiri Olsa <jolsa@xxxxxxxxxx>
  Date:   Wed Aug 26 15:46:44 2015 +0200

      perf tools: Add tracing_path and remove unneeded functions

      There's no need for find_tracing_dir, because perf already searches for
      debugfs/tracefs mount on start and populate tracing_events_path.

      Adding tracing_path to carry tracing dir string to be used in
      get_tracing_file instead of calling find_tracing_dir.

      Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Raphael Beamonte <raphael.beamonte@xxxxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Matt Fleming <matt@xxxxxxxxxxxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440596813-12844-3-git-send-email-jolsa@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 0b5a7935f3b5b7d40293b02c3e552f3d67af208b
  Author: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
  Date:   Sat Aug 15 20:42:59 2015 +0900

      perf buildid: Introduce sysfs/filename__sprintf_build_id

      Introduce sysfs/filename__sprintf_build_id for consolidating similar
      code.

      Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: Hemant Kumar <hemant@xxxxxxxxxxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Paul Mackerras <paulus@xxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/20150815114259.13642.34685.stgit@xxxxxxxxxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit d49e4695077278ee3016cd242967de23072ec331
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Thu Aug 27 08:07:40 2015 -0400

      perf evsel: Add a backpointer to the evlist a evsel is in

      So that functions that deal primarily with an evsel to access
      information that concerns the whole evlist it is in.

      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kan Liang <kan.liang@xxxxxxxxx>
      Cc: Mark Rutland <mark.rutland@xxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440677263-21954-5-git-send-email-kan.liang@xxxxxxxxx
      Signed-off-by: Kan Liang <kan.liang@xxxxxxxxx>
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit a598bb5e3558509cbb8aa1d422071ef61fda9d77
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Fri Aug 28 12:02:37 2015 -0300

      perf trace: Add header with copyright and background info

      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Link: http://lkml.kernel.org/n/tip-5yqtfs728r1j1u8zmg8ufxwm@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 84e5d89a777cca26cc513264752b439874702dd6
  Author: Tony Jones <tonyj@xxxxxxxx>
  Date:   Mon Aug 17 12:48:52 2015 -0700

      perf scripts python: Add new compaction-times script

      This patch creates a new script (compaction-times) to report time
      spent in mm compaction. It is possible to report times in nanoseconds
      (default) or microseconds (-u).

      The option -p will break down results by process id, -pv will further
      decompose by each compaction entry/exit.

      For each compaction entry/exit what is reported is controlled by the
      options:

        -t   report only timing
        -m   report migration stats
        -ms  report migration scanner stats
        -fs  report free scanner stats

      The default is to report all.

      Entries may be further filtered by pid, pid-range or comm (regex).

      The script is useful when analysing workloads that compact memory. The
      most common example will be THP allocations on systems with a lot of
      uptime that has fragmented memory.

      This is an example of using the script to analyse a thpscale from
      mmtests which deliberately fragments memory and allocates THP in 4
      separate threads

        # Recording step, one of the following;
        $ perf record -e 'compaction:mm_compaction_*' ./workload
        # or:
        $ perf script record compaction-times

        # Reporting: basic
        total: 2444505743ns migration: moved=357738 failed=39275
        free_scanner: scanned=2705578 isolated=387875
        migration_scanner: scanned=414426 isolated=397013

        # Reporting: Per task stall times
        $ perf script report compaction-times -- -t -p
        total: 2444505743ns
        6384[thpscale]: 740800017ns
        6385[thpscale]: 274119512ns
        6386[thpscale]: 832961337ns
        6383[thpscale]: 596624877ns

        # Reporting: Per-compaction attempts for task 6385
        $ perf script report compaction-times -- -m -pv 6385
        total: 274119512ns migration: moved=14893 failed=24285
        6385[thpscale]: 274119512ns migration: moved=14893 failed=24285
        6385[thpscale].1: 3033277ns migration: moved=511 failed=1
        6385[thpscale].2: 9592094ns migration: moved=1524 failed=12
        6385[thpscale].3: 2495587ns migration: moved=512 failed=0
        6385[thpscale].4: 2561766ns migration: moved=512 failed=0
        6385[thpscale].5: 2523521ns migration: moved=512 failed=0
        ..... output continues ...

      Changes since v1:
      - report stats for isolate_migratepages and isolate_freepages
        (Vlastimil Babka)
      - refactor code to achieve above
      - add help text
      - output to stdout/stderr explicitly

      Signed-off-by: Tony Jones <tonyj@xxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxxx>
      Cc: Vlastimil Babka <vbabka@xxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439840932-8933-1-git-send-email-tonyj@xxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit efd85cf86a56898686187397adfd52dfac79aff2
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Wed Aug 26 11:13:38 2015 -0700

      thinkpad_acpi: Remove side effects from vdbg_printk -> no_printk macro

      vdbg_printk when not using CONFIG_THINKPAD_ACPI_DEBUG uses
      no_printk which produces no logging output but always
      evaluates arguments.

      Change the macro to surround the no_printk call with
        do { if (0) no_printk(...); } while (0)
      to avoid the unnecessary argument evaluations.

      $ size drivers/platform/x86/thinkpad_acpi.o*
         text      data     bss     dec     hex filename
        60918      6184     824   67926   10956 
drivers/platform/x86/thinkpad_acpi.o.new
        60927      6184     824   67935   1095f 
drivers/platform/x86/thinkpad_acpi.o.old

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Acked-by: Henrique de Moraes Holschuh <hmh@xxxxxxxxxx>
      Signed-off-by: Darren Hart <dvhart@xxxxxxxxxxxxxxx>

  commit 099982fac0f3e884ed4af2178d4dcded69e0042e
  Author: Archit Taneja <architt@xxxxxxxxxxxxxx>
  Date:   Fri Aug 28 16:22:18 2015 +0530

      regulator: core: use debug level print in regulator_check_drms

      When calling regulator_set_load, regulator_check_drms prints and returns
      an error if the regulator device's flag REGULATOR_CHANGE_DRMS isn't set.
      drms_uA_update, however, bails out without reporting an error.

      Replace the error print with a debug level print so that we don't get
      such prints when the underlying regulator doesn't support DRMS.

      Signed-off-by: Archit Taneja <architt@xxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 39d9b85a4d4fa1642663ca0d208b5c246a3d6f50
  Author: Gary Wang <gary.c.wang@xxxxxxxxx>
  Date:   Fri Aug 28 16:40:34 2015 +0800

      drm/i915: set CDCLK if DPLL0 enabled during resuming from S3

      Since BIOS RC 1.4 it would enable CDCLK PLL during BIOS S3 resume, then
      driver needs to set CDCLK to avoid display corruption if DPLL0 enabled.

      References: https://bugs.freedesktop.org/show_bug.cgi?id=91697
      Reviewed-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
      Reviewed-by: Damien Lespiau <damien.lespiau@xxxxxxxxx>
      Reviewed-by: Cooper Chiou <cooper.chiou@xxxxxxxxx>
      Reviewed-by: Wei Shun Chang <wei.shun.chang@xxxxxxxxx>
      Tested-by: Gary Wang <gary.c.wang@xxxxxxxxx>
      Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: Gavin Hindman <gavin.hindman@xxxxxxxxx>
      Cc: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
      Cc: Xiong Y Zhang <xiong.y.zhang@xxxxxxxxx>
      Signed-off-by: Gary Wang <gary.c.wang@xxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit bf9628373418328daf67b6508fc3713fc6f5067d
  Author: Kamlakant Patel <kamlakant.patel@xxxxxxxxxxxx>
  Date:   Thu Aug 27 17:49:29 2015 +0530

      spi: Add DT bindings documentation for Netlogic XLP SPI controller

      Add DT bindings documentation for SPI controller driver used by
      Netlogic XLP MIPS64 SoCs.

      Signed-off-by: Kamlakant Patel <kamlakant.patel@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit d8c80d49cfa08b83841a3e315fa13dd310bec006
  Author: Kamlakant Patel <kamlakant.patel@xxxxxxxxxxxx>
  Date:   Thu Aug 27 17:49:28 2015 +0530

      spi/xlp: SPI controller driver for Netlogic XLP SoCs

      Add SPI Master controller driver for the SPI interface on XLP8XX,
      XLP3XX, XLP2XX, XLP9XX and XLP5XX family of Netlogic XLP MIPS64 
processors.

      Signed-off-by: Kamlakant Patel <kamlakant.patel@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit e9abb4db8d108624c293f06dce06b2978e626a13
  Author: Heiner Kallweit <hkallweit1@xxxxxxxxx>
  Date:   Wed Aug 26 21:21:55 2015 +0200

      spi: fsl-espi: add runtime PM

      Add runtime PM and use autosuspend instead of suspending the
      SPI controller after each transfer.

      Signed-off-by: Heiner Kallweit <hkallweit1@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 3c5395b66ff69d8d568d0b9ff8b1077e044def5b
  Author: Heiner Kallweit <hkallweit1@xxxxxxxxx>
  Date:   Wed Aug 26 21:21:53 2015 +0200

      spi: fsl-(e)spi: simplify cleanup code

      Now that most cleanup is done automatically the remove functions
      can be significantly simplified.

      Signed-off-by: Heiner Kallweit <hkallweit1@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 4178b6b1b595003cd6e04711b449797a582e44f5
  Author: Heiner Kallweit <hkallweit1@xxxxxxxxx>
  Date:   Wed Aug 26 21:21:50 2015 +0200

      spi: fsl-(e)spi: migrate to using devm_ functions to simplify cleanup

      Migrate fsl-espi and fsl-spi to using the managed devm_ functions
      for resource handling. This simplifies the cleanup.

      Signed-off-by: Heiner Kallweit <hkallweit1@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 54d71856428961124be26301b7997f2ad23be520
  Author: Chao Yu <chao2.yu@xxxxxxxxxxx>
  Date:   Fri Aug 28 18:18:57 2015 +0800

      f2fs: avoid accessing NULL pointer in f2fs_drop_largest_extent

      If extent cache is disable, we will encounter oops when triggering direct
      IO as below:

      BUG: unable to handle kernel NULL pointer dereference at 0000000c
      IP: [<f0b9c61e>] f2fs_drop_largest_extent+0xe/0x30 [f2fs]
      *pdpt = 000000002bb9a001 *pde = 0000000000000000
      Oops: 0000 [#1] SMP
      Modules linked in: f2fs(O) fuse bnep rfcomm bluetooth nfsd dm_crypt 
nfs_acl auth_rpcgss oid_registry nfs binfmt_misc fscache lockd
      sunrpc grace snd_intel8x0 snd_ac97_codec ac97_bus snd_pcm snd_seq_midi 
snd_rawmidi snd_seq_midi_event snd_seq snd_timer
      snd_seq_device snd soundcore joydev psmouse hid_generic i2c_piix4 
serio_raw ppdev mac_hid parport_pc lp parport ext4 jbd2 mbcache
      usbhid hid e1000
      CPU: 3 PID: 3608 Comm: dd Tainted: G           O    4.2.0-rc4 #12
      Hardware name: innotek GmbH VirtualBox/VirtualBox, BIOS VirtualBox 
12/01/2006
      task: ef161600 ti: ebd5e000 task.ti: ebd5e000
      EIP: 0060:[<f0b9c61e>] EFLAGS: 00010202 CPU: 3
      EIP is at f2fs_drop_largest_extent+0xe/0x30 [f2fs]
      EAX: 00000000 EBX: ddebc000 ECX: 00000000 EDX: 00000000
      ESI: ebd5fdf8 EDI: 00000000 EBP: ebd5fd58 ESP: ebd5fd58
       DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
      CR0: 80050033 CR2: 0000000c CR3: 2c24ee40 CR4: 000006f0
      Stack:
       ebd5fda4 f0b8c005 00000000 00000001 00000000 f0b8c430 c816cd68 ddebc000
       ddebc088 00001000 00000555 00000555 ffffffff c160bb00 00055501 00000000
       00000000 00000100 00000000 ebd5fe20 f0b8c430 00000046 ef161600 00001000
      Call Trace:
       [<f0b8c005>] __allocate_data_block+0x1a5/0x260 [f2fs]
       [<f0b8c430>] ? f2fs_direct_IO+0x370/0x440 [f2fs]
       [<c160bb00>] ? down_read+0x30/0x50
       [<f0b8c430>] f2fs_direct_IO+0x370/0x440 [f2fs]
       [<c113e115>] generic_file_direct_write+0xa5/0x260
       [<c10b53f8>] ? current_fs_time+0x18/0x50
       [<c113e38b>] __generic_file_write_iter+0xbb/0x210
       [<c113e50f>] ? generic_file_write_iter+0x2f/0x320
       [<c113e63c>] generic_file_write_iter+0x15c/0x320
       [<f0b77f29>] f2fs_file_write_iter+0x39/0x80 [f2fs]
       [<c11984d9>] __vfs_write+0xa9/0xe0
       [<c1199227>] vfs_write+0x97/0x180
       [<c119955b>] SyS_write+0x5b/0xd0
       [<c160dcd0>] sysenter_do_call+0x12/0x12
      Code: 10 8b 50 1c 89 53 14 eb ca 8d 74 26 00 85 f6 74 86 eb a6 0f 0b 90 
8d b4 26 00 00 00 00 55 89 e5 3e 8d 74 26 00 8b 80 d4 02 00
      00 <8b> 48 0c 39 d1 77 0e 03 48 14 39 ca 73 07 c7 40 14 00 00 00 00
      EIP: [<f0b9c61e>] f2fs_drop_largest_extent+0xe/0x30 [f2fs] SS:ESP 
0068:ebd5fd58
      CR2: 000000000000000c
      ---[ end trace a38c07026a1afffd ]---

      This is because when extent cache is disable, extent_tree pointer in 
struct
      f2fs_inode_info should be NULL, but in f2fs_drop_largest_extent we access
      this NULL pointer directly without checking state of extent cache, then,
      the oops occurs. Let's fix it by checking state of extent cache before
      accessing.

      Signed-off-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 95e3c2305b79e9c0e5f2cb0090efca397249b51f
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Thu Aug 27 09:14:50 2015 +0800

      ASoC: txx9: Convert to devm_snd_soc_register_platform

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 637c4497bbf0c9a4e00d6be2731bd560bf609f6b
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Thu Aug 27 09:13:46 2015 +0800

      ASoC: pxa: Convert to devm_snd_soc_register_platform

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit d5f1117ff60d1e314b15e3a85b7705db3421d7d4
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Thu Aug 27 09:12:17 2015 +0800

      ASoC: nuc900: Convert to devm_snd_soc_register_platform

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit c4d2ab0d59f53a1534e6817b5dbd28719f667c39
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Thu Aug 27 09:11:13 2015 +0800

      ASoC: blackfin: Convert to devm_snd_soc_register_platform

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit edd98a1a2d163cef6d91226bf42ca002ced6ff16
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Thu Aug 27 09:09:29 2015 +0800

      ASoC: au1x: Convert to devm_snd_soc_register_platform

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 6fe7ccfd77415a6ba250c10c580eb3f9acf79753
  Author: Jozsef Kadlecsik <kadlec@xxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 25 11:17:51 2015 +0200

      netfilter: ipset: Out of bound access in hash:net* types fixed

      Dave Jones reported that KASan detected out of bounds access in hash:net*
      types:

      [   23.139532] 
==================================================================
      [   23.146130] BUG: KASan: out of bounds access in 
hash_net4_add_cidr+0x1db/0x220 at addr ffff8800d4844b58
      [   23.152937] Write of size 4 by task ipset/457
      [   23.159742] 
=============================================================================
      [   23.166672] BUG kmalloc-512 (Not tainted): kasan: bad access detected
      [   23.173641] 
-----------------------------------------------------------------------------
      [   23.194668] INFO: Allocated in hash_net_create+0x16a/0x470 age=7 cpu=1 
pid=456
      [   23.201836]  __slab_alloc.constprop.66+0x554/0x620
      [   23.208994]  __kmalloc+0x2f2/0x360
      [   23.216105]  hash_net_create+0x16a/0x470
      [   23.223238]  ip_set_create+0x3e6/0x740
      [   23.230343]  nfnetlink_rcv_msg+0x599/0x640
      [   23.237454]  netlink_rcv_skb+0x14f/0x190
      [   23.244533]  nfnetlink_rcv+0x3f6/0x790
      [   23.251579]  netlink_unicast+0x272/0x390
      [   23.258573]  netlink_sendmsg+0x5a1/0xa50
      [   23.265485]  SYSC_sendto+0x1da/0x2c0
      [   23.272364]  SyS_sendto+0xe/0x10
      [   23.279168]  entry_SYSCALL_64_fastpath+0x12/0x6f

      The bug is fixed in the patch and the testsuite is extended in ipset
      to check cidr handling more thoroughly.

      Signed-off-by: Jozsef Kadlecsik <kadlec@xxxxxxxxxxxxxxxxx>

  commit 618718dc56a49321a12f231b34f6c43f44c3c374
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Fri Aug 28 10:53:31 2015 +0800

      ASoC: qcom: Constify asoc_qcom_lpass_cpu_dai_ops

      asoc_qcom_lpass_cpu_dai_ops is exported and used by multiple drivers,
      make it const to prevent modifying it at run time.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 92eca20bbeaa4ec1908bad8aeefcaa2d98e302ff
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Fri Aug 28 10:50:53 2015 +0800

      ASoC: sh: ssi: Convert to devm_snd_soc_register_component

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 2cf32b7b338086e9b85bb9fdd8aa398e89d83e9e
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Fri Aug 28 10:49:44 2015 +0800

      ASoC: pxa2xx-i2s: Convert to devm_snd_soc_register_component

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 637ce53a1b1c489ff0e92aa00b8376464f697dc5
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Fri Aug 28 10:48:35 2015 +0800

      ASoC: pxa-ssp: Convert to devm_snd_soc_register_component

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit b37bfdaac914f4886b8be803703b12177eb873f6
  Author: Ricard Wanderlof <ricard.wanderlof@xxxxxxxx>
  Date:   Fri Aug 28 12:11:48 2015 +0200

      ASoC: ics43432: Fix build errors

      Fix build errors

      Signed-off-by: Ricard Wanderlof <ricardw@xxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 2f38bc8829b83aed3e2c5e6d43a430d39f1b0e1d
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Fri Aug 28 11:23:05 2015 +0800

      ASoC: ics43432: Fix module license

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 11d932416ecada27ca7576dca7e74e23477df7ef
  Author: kbuild test robot <fengguang.wu@xxxxxxxxx>
  Date:   Fri Aug 28 10:04:03 2015 +0800

      ASoC: ics43432: fix platform_no_drv_owner.cocci warnings

      sound/soc/codecs/ics43432.c:66:3-8: No need to set .owner here. The core 
will do it.

       Remove .owner field if calls are used which set it automatically

      Generated by: scripts/coccinelle/api/platform_no_drv_owner.cocci

      CC: Ricard Wanderlof <ricard.wanderlof@xxxxxxxx>
      Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 5bbb9f753afe213aebc8dba30c7e2dbb73616b79
  Author: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 11:53:30 2015 +0200

      scripts: add stackdelta script

      This adds a simple perl script for reading two files as produced by
      the stackusage script and computing the changes in stack usage. For
      example:

      $ scripts/stackusage -o /tmp/old.su CC=gcc-4.7 -j8 fs/ext4/
      $ scripts/stackusage -o /tmp/new.su CC=gcc-5.0 -j8 fs/ext4/
      $ scripts/stackdelta /tmp/{old,new}.su | sort -k5,5g

      shows that gcc 5.0 generally produces less stack-hungry code than gcc
      4.7. Obviously, the script can also be used for measuring the effect
      of commits, .config tweaks or whatnot.

      Signed-off-by: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit d523b255de60880304038006de5f93f2db612ad6
  Author: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 11:53:29 2015 +0200

      kbuild: remove *.su files generated by -fstack-usage

      Make sure 'make clean' removes *.su files generated by the gcc option
      -fstack-usage.

      Signed-off-by: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit e25572878a70d9cd84020f577b7c45583b9d42ae
  Author: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 11:53:28 2015 +0200

      .gitignore: add *.su pattern

      Ignore the *.su files generated by using the gcc option -fstack-usage.

      Signed-off-by: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit 56d4a3814690a62a3fd9724844e23ea152ce938c
  Author: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 11:53:27 2015 +0200

      scripts: add stackusage script

      The current checkstack.pl script has a few problems, stemming from the
      overly simplistic attempt at parsing objdump output with regular
      expressions: For example, on x86_64 it doesn't take the push
      instruction into account, making it consistently underestimate the
      real stack use, and it also doesn't capture stack pointer adjustments
      of exactly 128 bytes [1].

      Since newer gcc (>= 4.6) knows about -fstack-usage, we might as well
      take the information straight from the horse's mouth. This patch
      introduces scripts/stackusage, which is a simple wrapper for running
      make with KCFLAGS set to -fstack-usage. Example use is

      scripts/stackusage -o out.su -j8 lib/

      The script understands "-o foo" for writing to 'foo' and -h for a
      trivial help text; anything else is passed to make.

      Afterwards, we find all newly created .su files, massage them a
      little, sort by stack use and write the result to a single output
      file.

      Note that the function names printed by (at least) gcc 4.7 are
      sometimes useless. For example, the first three lines of out.su
      generated above are

      ./lib/decompress_bunzip2.c:155  get_next_block  448     static
      ./lib/decompress_unlzma.c:537   unlzma  336     static
      ./lib/vsprintf.c:616    8       304     static

      That function '8' is really the static symbol_string(), but it has
      been subject to 'interprocedural scalar replacement of aggregates', so
      its name in the object file is 'symbol_string.isra.8'. gcc 5.0 doesn't
      have this problem; it uses the full name as seen in the object file.

      [1] Since gcc encodes that by

      48 83 c4 80             add    $0xffffffffffffff80,%rsp

      and not

      48 81 ec 80 00 00 00    sub    $0x80,%rsp

      since -128 fits in an imm8.

      Signed-off-by: Rasmus Villemoes <linux@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit 601083cffb7cabdcc55b8195d732f0f7028570fa
  Author: Kan Liang <kan.liang@xxxxxxxxx>
  Date:   Thu Jul 2 03:08:43 2015 -0400

      perf stat: Get correct cpu id for print_aggr

      print_aggr() fails to print per-core/per-socket statistics after commit
      582ec0829b3d ("perf stat: Fix per-socket output bug for uncore events")
      if events have differnt cpus. Because in print_aggr(), aggr_get_id needs
      index (not cpu id) to find core/pkg id. Also, evsel cpu maps should be
      used to get aggregated id.

      Here is an example:

      Counting events cycles,uncore_imc_0/cas_count_read/. (Uncore event has
      cpumask 0,18)

        $ perf stat -e cycles,uncore_imc_0/cas_count_read/ -C0,18 --per-core 
sleep 2

      Without this patch, it failes to get CPU 18 result.

         Performance counter stats for 'CPU(s) 0,18':

        S0-C0           1            7526851      cycles
        S0-C0           1               1.05 MiB  uncore_imc_0/cas_count_read/
        S1-C0           0      <not counted>      cycles
        S1-C0           0      <not counted> MiB  uncore_imc_0/cas_count_read/

      With this patch, it can get both CPU0 and CPU18 result.

         Performance counter stats for 'CPU(s) 0,18':

        S0-C0           1            6327768      cycles
        S0-C0           1               0.47 MiB  uncore_imc_0/cas_count_read/
        S1-C0           1             330228      cycles
        S1-C0           1               0.29 MiB  uncore_imc_0/cas_count_read/

      Signed-off-by: Kan Liang <kan.liang@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Acked-by: Stephane Eranian <eranian@xxxxxxxxxx>
      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Fixes: 582ec0829b3d ("perf stat: Fix per-socket output bug for uncore 
events")
      Link: 
http://lkml.kernel.org/r/1435820925-51091-1-git-send-email-kan.liang@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 1d945012d1381f0232ea2d66e32b06182eedb476
  Author: Steven Rostedt <rostedt@xxxxxxxxxxx>
  Date:   Thu Aug 27 09:46:01 2015 -0400

      tools lib traceeveent: Allow for negative numbers in print format

      It was reported that "%-8s" does not parse well when used in the printk
      format. The '-' is what is throwing it off. Allow that to be included.

      Reporter note:

      Example before:

        transhuge-stres-10730 [004]  5897.713989: mm_compaction_finished: node=0
        zone=>-<8s order=-2119871790 ret=

      Example after:

        transhuge-stres-4235  [000]   453.149280: mm_compaction_finished: node=0
        zone=ffffffff81815d7a order=9 ret=

      (I will send patches to fix the string handling in the tracepoints so
      it's on par with in-kernel printing via trace_pipe:)

        transhuge-stres-10921 [007] ...1  6307.140205: mm_compaction_finished: 
node=0
        zone=Normal   order=9 ret=partial

      Reported-by: Vlastimil Babka <vbabka@xxxxxxx>
      Signed-off-by: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Tested-by: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Link: http://lkml.kernel.org/r/20150827094601.46518bcc@xxxxxxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 77e0070da41f76e1ebd15291fb0254b0c174adfa
  Author: Mark Drayton <mbd@xxxxxx>
  Date:   Wed Aug 26 12:18:15 2015 -0700

      perf script: Add --[no-]-demangle/--[no-]-demangle-kernel

      Sometimes when post-processing output from `perf script` one does not
      want to demangle C++ symbol names. Add an option to allow this.

      Also add --[no-]demangle-kernel to be consistent with top/report/probe.

      Signed-off-by: Mark Drayton <mbd@xxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440616695-32340-1-git-send-email-scientist@xxxxxx
      Signed-off-by: Yannick Brosseau <scientist@xxxxxx>
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 50a3cb04a5f9cd5323a76db9ee409a7f3004259a
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Wed Aug 12 15:59:39 2015 +0530

      PM / OPP: Drop unlikely before IS_ERR(_OR_NULL)

      IS_ERR(_OR_NULL) already contain an 'unlikely' compiler flag and there
      is no need to do that again from its callers. Drop it.

      Acked-by: Pavel Machek <pavel@xxxxxx>
      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 68fa9f0ab1b61cfc7deee699da8b5b5cb12f7a58
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Aug 17 19:20:20 2015 +0530

      PM / OPP: Fix static checker warning (broken 64bit big endian systems)

      Dan Carpenter reported (generated with static checker):

      drivers/base/power/opp.c:949 _opp_add_static_v2()
      warn: passing casted pointer '&new_opp->clock_latency_ns' to
      'of_property_read_u32()' 64 vs 32.

      This code will break on 64 bit, big endian machines.

      Fix this by reading the value in a u32 type variable first and then
      assigning it to the unsigned long variable.

      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Suggested-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 4c1ed5a6079078699128064664913ae7b079648f
  Author: Xunlei Pang <pang.xunlei@xxxxxxxxxx>
  Date:   Tue Aug 4 13:48:56 2015 +0800

      cpuidle/coupled: Remove redundant 'dev' argument of 
cpuidle_state_is_coupled()

      For cpuidle_state_is_coupled(), 'dev' is not used, so remove it.

      Signed-off-by: Xunlei Pang <pang.xunlei@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit ba6a860d41ed3a377d61d59d7c7b08dd7455c686
  Author: Xunlei Pang <pang.xunlei@xxxxxxxxxx>
  Date:   Tue Aug 4 13:48:55 2015 +0800

      cpuidle/coupled: Remove cpuidle_device::safe_state_index

      cpuidle_device::safe_state_index need to be initialized before
      use, it should be the same as cpuidle_driver::safe_state_index.

      We tackled this issue by removing the safe_state_index from the
      cpuidle_device structure and use the one in the cpuidle_driver
      structure instead.

      Suggested-by: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
      Signed-off-by: Xunlei Pang <pang.xunlei@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit ce14c5831364118324b10c0355dead062b9ddd40
  Author: Prarit Bhargava <prarit@xxxxxxxxxx>
  Date:   Tue Aug 25 13:34:53 2015 -0400

      Documentation, add kernel-parameters.txt entry for dis_ucode_ldr

      dis_ucode_ldr was introduced in 65cef13 ("x86, microcode: Add a disable
      chicken bit") and will disable microcode loading on x86.  This kernel
      parameter is buried in the code and should be added to the Documentation.

      Signed-off-by: Prarit Bhargava <prarit@xxxxxxxxxx>
      Signed-off-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 4d59ed85451befda203d72462f1b7ead0fde3267
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 25 08:31:16 2015 +0200

      leds: Export OF module alias information in missing drivers

      The I2C core always reports the MODALIAS uevent as "i2c:<modalias>"
      regardless of the mechanism that was used to register the device
      (i.e: OF or board code) and the table that is used later to match
      the driver with the device (i.e: I2C id table or OF match table).

      So drivers needs to export the I2C id table and this be built into
      the module or udev won't have the necessary information to autoload
      the needed driver module when the device is added.

      But this means that OF-only drivers needs to have both OF and I2C id
      tables that have to be kept in sync and also the dev node compatible
      manufacturer prefix is stripped when reporting the MODALIAS. Which can
      lead to issues if two vendors use the same I2C device name for example.

      To avoid the above, the I2C core behavior may be changed in the future
      to not require an SPI device table for OF-only drivers and report the
      OF module alias. So, it's better to also export the OF table even when
      is unused now to prevent breaking module loading when the core changes.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit ed133352047e46687afd98c299ec8ce7f6ea07bd
  Author: Milo Kim <milo.kim@xxxxxx>
  Date:   Mon Aug 24 16:09:55 2015 +0900

      leds:lp55xx: use the private data instead of updating I2C device platform 
data

      Currently, lp55xx_of_populate_pdata() allocates lp55xx_platform_data if
      it's null. And it parses the DT and copies values into the
      'client->dev.platform_data'. This may have architectural issue.
      Platform data is configurable through the DT or I2C board info inside the
      platform area. However, lp55xx common driver changes this configuration
      when it is loaded. So 'client->dev.platform_data' is not null anymore.
      Eventually, the driver initialization is not identical when it's unloaded
      and loaded again.
      The lp55xx common driver should use the private data, 'lp55xx_chip->pdata'
      instead of changing the original platform data.

      So, lp55xx_of_populate_pdata() is modified as follows.
      * Do not update 'dev->platform_data'. Return the pointer of new allocated
         lp55xx_platform_data. Then the driver points it to private data,
         'lp55xx_chip->pdata'.
      * Each lp55xx driver checks the pointer and handles an error case.

      Then, original platform data configuration will be kept regardless of
      loading or unloading the driver.
      The driver allocates the memory and copies them from the DT if it's NULL.
      After the driver is loaded again, 'client->dev.platform_data' is same as
      initial load, so the driver is initialized identically.

      Cc: Toshi Kikuchi <toshik@xxxxxxxxxxxx>
      Cc: linux-leds@xxxxxxxxxxxxxxx
      Signed-off-by: Milo Kim <milo.kim@xxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit 991a3f61fa93c1752a47ae157a8238395850c730
  Author: Bjorn Andersson <bjorn.andersson@xxxxxxxxxxxxxx>
  Date:   Tue Aug 18 12:25:26 2015 -0700

      leds: syscon: Correct check for syscon_node_to_regmap() errors

      syscon_node_to_regmap() returns a regmap or an ERR_PTR().

      Signed-off-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit c2d4af9370b1757714b895f005479393e4ec14b8
  Author: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
  Date:   Tue Aug 18 19:50:16 2015 +0530

      leds: leds-fsg: Use devm_led_classdev_register

      Use resource-managed function devm_led_classdev_register instead
      of led_classdev_register to make the error-path simpler.

      To be compatible with the change, various gotos are replaced with
      direct returns and unneeded labels are dropped. Also, remove
      fsg_led_remove as it is now redundant.

      Signed-off-by: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit b8926ba0d7fd74e140d408f6dfeff5f5b9c2afae
  Author: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>
  Date:   Thu Aug 20 08:59:35 2015 +0200

      MAINTAINERS: Change LED subsystem git tree URL

      This patch removes Bryan Wu from the list of LED subsystem
      maintainers and replaces related git tree URL with the one
      maintained by Jacek Anaszewski.

      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>
      Cc: Richard Purdie <rpurdie@xxxxxxxxx>
      Acked-by: Bryan Wu <cooloney@xxxxxxxxx>

  commit e5b5a61fcb3743f1dacf9e20d28f48423cecf0c1
  Author: Ricardo Ribalda Delgado <ricardo.ribalda@xxxxxxxxx>
  Date:   Fri Jul 31 13:36:21 2015 +0200

      leds/led-class: Add missing put_device()

      Devices found by class_find_device must be freed with put_device().
      Otherwise the reference count will not work properly.

      Fixes: a96aa64cb572 ("leds/led-class: Handle LEDs with the same name")
      Reported-by: Alan Tull <delicious.quinoa@xxxxxxxxx>
      Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@xxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit 4fc5af86837d983d7b1dd4edad245454e1874fa0
  Author: Vincent Donnefort <vdonnefort@xxxxxxxxx>
  Date:   Thu Jul 2 19:56:41 2015 +0200

      ARM: Kirkwood: add modes-map property to ns2-leds nodes

      Since the LED modes mapping is no longer hardcoded inside the leds-ns2
      driver, then it must be provided through the modes-map property in the
      ns2-leds nodes.

      Signed-off-by: Vincent Donnefort <vdonnefort@xxxxxxxxx>
      Acked-by: Gregory CLEMENT <gregory.clement@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit f3a2a097a37acfb7c28da171248d15b9bb2e657b
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Sun Jul 26 12:05:16 2015 +0800

      leds: tlc591xx: Remove redundant I2C_FUNC_SMBUS_BYTE_DATA functionality 
check

      This checking is done by regmap_get_i2c_bus() which is called in
      devm_regmap_init_i2c().

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Reviewed-by: Andrew Lunn <andrew@xxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit 259f5ba308ee46c616ced3d336d7ab8e06f5a6ce
  Author: Simon Guinot <simon.guinot@xxxxxxxxxxxx>
  Date:   Thu Jul 2 19:56:43 2015 +0200

      leds: leds-ns2: depends on MACH_ARMADA_370

      The leds-ns2 driver is also used by the n090401 board (Seagate NAS
      4-Bay), which is based on the Marvell Armada-370 SoC.

      Then this patch allows to select the leds-ns2 driver if MACH_ARMADA_370
      is enabled. Additionally, this also updates the Kconfig help message.

      Signed-off-by: Simon Guinot <simon.guinot@xxxxxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit 4b90432dc1edca6cfc0bb338794beed46af3a472
  Author: Simon Guinot <simon.guinot@xxxxxxxxxxxx>
  Date:   Thu Jul 2 19:56:42 2015 +0200

      leds: leds-ns2: handle can_sleep GPIOs

      On the board n090401 (Seagate NAS 4-Bay), some of the LEDs are handled
      by the leds-ns2 driver. This LEDs are connected to an I2C GPIO expander
      (PCA95554PW) which means that GPIO access may sleep. This patch makes
      leds-ns2 compatible with such GPIOs by using the *_cansleep() variant of
      the GPIO functions. As a drawback this functions can't be used safely in
      a timer context (with the timer LED trigger for example). To fix this
      issue, a workqueue mechanism (copied from the leds-gpio driver) is used.

      Note that this patch also updates slightly the ns2_led_sata_store
      function. The LED state is now retrieved from cached values instead of
      reading the GPIOs previously. This prevents ns2_led_sata_store from
      working with a stale LED state (which may happen when a delayed work
      is pending).

      Signed-off-by: Simon Guinot <simon.guinot@xxxxxxxxxxxx>
      Signed-off-by: Vincent Donnefort <vdonnefort@xxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit f7fafd083ccc340502448903aaddc76f10785c8c
  Author: Vincent Donnefort <vdonnefort@xxxxxxxxx>
  Date:   Thu Jul 2 19:56:40 2015 +0200

      leds: leds-ns2: move LED modes mapping outside of the driver

      On the board n090401 (Seagate NAS 4-Bay), the LED mode mapping (GPIO
      values to LED mode) is different from the one used on other boards
      supported by the leds-ns2 driver.

      With this patch the hardcoded mapping is removed from leds-ns2. Now,
      it must be defined either in the platform data (if an old-fashion board
      setup file is used) or in the DT node. In order to allow the later, this
      patch also introduces a modes-map property for the leds-ns2 DT binding.

      Signed-off-by: Vincent Donnefort <vdonnefort@xxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit de88e71a91ed7c8de321b44882e0805f0b24d734
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Wed Jul 8 10:43:26 2015 +0800

      leds: lp8860: Constify reg_default tables

      These reg_default tables are not modified after initialized, so make them
      const.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit 44ab901f91b22dcfc7d03d6f0da15c5354042367
  Author: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
  Date:   Fri Jul 10 15:00:52 2015 +0900

      leds: Drop owner assignment from i2c_driver

      i2c_driver does not need to set an owner because i2c_register_driver()
      will set it.

      Signed-off-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit 6e3956cd532d8c263e68ebae1252828e297aac4d
  Author: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
  Date:   Mon Jul 6 15:42:34 2015 +0200

      leds: Allow compile test of LEDS_AAT1290 and LEDS_KTD2692 if !GPIOLIB

      The GPIO subsystem provides dummy GPIO consumer functions if GPIOLIB is
      not enabled. Hence drivers that depend on GPIOLIB, but use GPIO consumer
      functionality only, can still be compiled if GPIOLIB is not enabled.

      If COMPILE_TEST is enabled, relax the dependency on GPIOLIB for the
      recently introduced symbols LEDS_AAT1290 and LEDS_KTD2692.

      Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit 823227419588001f2d4accf3c5660cd99442a0f8
  Author: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
  Date:   Tue May 5 18:32:25 2015 +0200

      leds: Allow compile test of GPIO consumers if !GPIOLIB

      The GPIO subsystem provides dummy GPIO consumer functions if GPIOLIB is
      not enabled. Hence drivers that depend on GPIOLIB, but use GPIO consumer
      functionality only, can still be compiled if GPIOLIB is not enabled.

      Relax the dependency on GPIOLIB if COMPILE_TEST is enabled, where
      appropriate.

      Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Cc: Richard Purdie <rpurdie@xxxxxxxxx>
      Cc: linux-leds@xxxxxxxxxxxxxxx
      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>

  commit aa14318aa02f14044acf81f418e1a1cbda29fcfc
  Author: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>
  Date:   Fri Apr 10 10:36:56 2015 +0200

      DT: leds: Improve description of flash LEDs related properties

      1. Since max-microamp property has had no users so far, then rename
         it to more descriptive led-max-microamp.
      2. Since flash-timeout-us property has had no users so far, then rename
         it to more accurate flash-max-timeout-us.
      3. Describe led-max-microamp property as mandatory for specific board
         configurations.
      4. Make flash-max-microamp and flash-max-timeout-us properties mandatory
         for devices with configurable flash current and flash timeout settings
         respectively.

      Signed-off-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>
      Cc: Richard Purdie <rpurdie@xxxxxxxxx>
      Cc: Pavel Machek <pavel@xxxxxx>
      Cc: devicetree@xxxxxxxxxxxxxxx
      Acked-by: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx>
      Acked-by: Sylwester Nawrocki <s.nawrocki@xxxxxxxxxxx>

  commit 92cffd56b21c825579f3b37bc7803e4c37073076
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Aug 28 20:33:58 2015 +1000

      drm/nouveau/dispnv04: fix build on powerpc

      align with mask code in overlay.c, Ben can clean the naming
      up later if necessary.

      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit 90996511187d6282db6d02d3f97006b4dbb5c457
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Wed Aug 5 15:42:35 2015 -0700

      MIPS: CPS: use 32b accesses to GCRs

      Commit b677bc03d757 ("MIPS: cps-vec: Use macros for various arithmetics
      and memory operations") replaced various load & store instructions
      through cps-vec.S with the PTR_L & PTR_S macros. However it was somewhat
      overzealous in doing so for CM GCR accesses, since the bit width of the
      CM doesn't necessarily match that of the CPU. The registers accessed
      (GCR_CL_COHERENCE & GCR_CL_ID) should be safe to simply always access
      using 32b instructions, so do so in order to avoid issues when using a
      32b CM with a 64b CPU.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # 3.16+
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10864/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 6aa6925cad06159dc6e25857991bbc4960821242
  Author: Yao-Wen Mao <yaowen@xxxxxxxxxx>
  Date:   Fri Aug 28 16:33:25 2015 +0800

      ALSA: usb-audio: correct the value cache check.

      The check of cval->cached should be zero-based (including master channel).

      Signed-off-by: Yao-Wen Mao <yaowen@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit a47d4576cd1c58157a2d8cfffa93aa7ca375eede
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Fri Aug 28 10:30:15 2015 +0200

      x86/irq: Do not dereference irq descriptor before checking it

      Having the IS_NULL_OR_ERR() check after dereferencing the pointer is
      not really working well.

      Move the dereference after the check.

      Fixes: a782a7e46bb5 'x86/irq: Store irq descriptor in vector array'
      Reported-and-tested-by: Ingo Molnar <mingo@xxxxxxxxxx>
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 4b9e78bd9f0efcf9e82b4886de7a4289dbf3cffe
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Aug 28 18:18:10 2015 +1000

      nouveau: fix powerpc build

      Reported-by: Ilia Mirkin on irc.
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit 2baa891e42d84159b693eadd44f6fe1486285bdc
  Author: Luis R. Rodriguez <mcgrof@xxxxxxxx>
  Date:   Mon Aug 24 12:13:33 2015 -0700

      x86/mm/mtrr: Remove kernel internal MTRR interfaces: unexport mtrr_add() 
and mtrr_del()

      The effort to replace mtrr_add() with architecture agnostic
      arch_phys_wc_add() is complete, this will ensure write-combining
      implementations (PAT on x86) is taken advantage instead of using
      MTRR. With the effort done now, hide direct MTRR access for
      drivers.

      The legacy user-space /proc/mtrr ABI is not affected.

      Update x86 documentation on MTRR to reflect the completion of
      the phasing out of direct access to MTRR, also add a note on
      platform firmware code use of MTRRs based on the obituary
      discussion of MTRRs on Linux [0].

        [0] http://lkml.kernel.org/r/1438991330.3109.196.camel@xxxxxx

      Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxx>
      Cc: <syrjala@xxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Andy Walls <awalls@xxxxxxxxxxxxxxxx>
      Cc: Antonino Daplas <adaplas@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: Dave Airlie <airlied@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: Davidlohr Bueso <dbueso@xxxxxxx>
      Cc: Doug Ledford <dledford@xxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Jean-Christophe Plagniol-Villard <plagnioj@xxxxxxxxxxxx>
      Cc: Juergen Gross <jgross@xxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Suresh Siddha <sbsiddha@xxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
      Cc: Toshi Kani <toshi.kani@xxxxxx>
      Cc: Ville Syrjälä <syrjala@xxxxxx>
      Cc: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: airlied@xxxxxxxx
      Cc: benh@xxxxxxxxxxxxxxxxxxx
      Cc: bhelgaas@xxxxxxxxxx
      Cc: dan.j.williams@xxxxxxxxx
      Cc: konrad.wilk@xxxxxxxxxx
      Cc: linux-fbdev@xxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: linux-media@xxxxxxxxxxxxxxx
      Cc: mst@xxxxxxxxxx
      Cc: netdev@xxxxxxxxxxxxxxx
      Cc: vinod.koul@xxxxxxxxx
      Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1440443613-13696-12-git-send-email-mcgrof@xxxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit d1ee8bc195ffedbf91af0245a2406d6ebd2578f8
  Merge: 0e53909 a2fb338
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Fri Aug 28 08:22:02 2015 +0200

      Merge tag 'perf-core-for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core

      Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:

      User visible changes:

        - Add support for using several Intel PT features (CYC, MTC packets), 
the
          relevant documentation was updated: 
tools/perf/Documentation/intel-pt.txt,
          briefly describing those packets, its purposes, how to configure them 
in
          the event config terms and relevant external documentation for further
          reading. (Adrian Hunter)

        - Introduce support for probing at an absolute address, for user and 
kernel
          'perf probe's, useful when one have the symbol maps on a developer 
machine
          but not on an embedded system. (Wang Nan)

        - Fix 'perf probe' list results when a symbol can't be found or the
          address is zero and when an offset is provided without a function 
(Wang Nan)

        - Do not print '0x (null)' in uprobes when offset is zero (Wang Nan)

        - Clear the progress bar at the end of a ordered_events flush, fixing
          an UI artifact when, after ordering the events the screen doesn't get
          completely redraw, for instance, when an error window covers just the
          center of the screen and waits for user input. (Arnaldo Carvalho de 
Melo)

        - Fix 'annotate' segfault by resetting the dso find_symbol cache when 
removing
          symbols. (Arnaldo Carvalho de Melo)

      Infrastructure changes:

        - Allow duplicate objects in the object list, just like it is possible 
to have
          things like this, in the kernel:

            drivers/Makefile:obj-$(CONFIG_PCI)        += usb/
            drivers/Makefile:obj-$(CONFIG_USB_GADGET) += usb/

          (Jiri Olsa)

        - Fix Intel PT 'instructions' sample period. (Adrian Hunter)

        - Prevent segfault when reading probe point with absolute address. 
(Wang Nan)

      Build fixes:

        - Fix tarball build broken by pt/bts. (Adrian Hunter)

        - Remove export.h from MANIFEST, fixing the perf tarball make target. 
(Jiri Olsa)

      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit ee03c5868e74847ba0bd1e6dccbbe26e6504466d
  Author: Luis R. Rodriguez <mcgrof@xxxxxxxx>
  Date:   Wed Aug 26 16:34:10 2015 -0700

      s390/io: Add pci_iomap_wc() and pci_iomap_wc_range()

      The following commit:

        1b3d4200c1e0 ("PCI: Add pci_iomap_wc() variants")

      Introduced pci_iomap_wc() variants but broke the s390 build,
      because s390 requires its own implementation of pcio_iomap*()
      calls.

      The reason for that is that:

        "BAR spaces are not disjunctive on s390 so we need the bar
         parameter of pci_iomap to find the corresponding device
         and create the mapping cookie"

      so it has its own lookup/lock solution and it does not include
      asm-generic/pci_iomap.h.

      Since it currenty maps ioremap_wc() to ioremap_nocache() and
      that's the architecture default we can easily just map the wc
      calls to the default calls as well.

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Cc: Frank Blaschka <frank.blaschka@xxxxxxxxxx>
      Cc: Guenter Roeck <linux@xxxxxxxxxxxx>
      Cc: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
      Cc: Jean-Christophe Plagniol-Villard <plagnioj@xxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Cc: Thierry Reding <treding@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
      Cc: Toshi Kani <toshi.kani@xxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Cc: linux-fbdev@xxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Cc: linux-s390@xxxxxxxxxxxxxxx
      Cc: linux390@xxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1440632050-23648-1-git-send-email-mcgrof@xxxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 7e01ebffffedec22cea86ebe94802f909e4579ca
  Author: Huang Rui <ray.huang@xxxxxxx>
  Date:   Thu Aug 27 18:04:04 2015 +0800

      x86/asm: Drop repeated macro of X86_EFLAGS_AC definition

      We just need one macro of X86_EFLAGS_AC_BIT and X86_EFLAGS_AC.

      Signed-off-by: Huang Rui <ray.huang@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Cc: Fenghua Yu <fenghua.yu@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tony Li <tony.li@xxxxxxx>
      Cc: Tony Luck <tony.luck@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440669844-21535-1-git-send-email-ray.huang@xxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 1a7ccad88d1bcebabc011b54a2f8615175e523fc
  Author: Eric Sandeen <sandeen@xxxxxxxxxx>
  Date:   Fri Aug 28 14:51:10 2015 +1000

      xfs: fix error gotos in xfs_setattr_nonsize

      As the code stands today, if xfs_trans_reserve() fails, we
      goto out_dqrele, which does not free the allocated transaction.

      Fix up the goto targets to undo everything properly.

      Addresses-Coverity-Id: 145571
      Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 8774cf8bacd4e79b7c65cdf1208da264a9d436d2
  Author: Lucas Stach <dev@xxxxxxxxxx>
  Date:   Fri Aug 28 14:50:56 2015 +1000

      xfs: add mssing inode cache attempts counter increment

      Increasing the inode cache attempt counter was apparently dropped while
      refactoring the cache code and so stayed at the initial 0 value. Add the
      increment back to make the runtime stats more useful.

      Signed-off-by: Lucas Stach <dev@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit c9eb256eda4420c06bb10f5e8fbdbe1a34bc98e0
  Author: David Jeffery <djeffery@xxxxxxxxxx>
  Date:   Fri Aug 28 14:50:45 2015 +1000

      xfs: return errors from partial I/O failures to files

      There is an issue with xfs's error reporting in some cases of I/O 
partially
      failing and partially succeeding. Calls like fsync() can report success 
even
      though not all I/O was successful in partial-failure cases such as one 
disk of
      a RAID0 array being offline.

      The issue can occur when there are more than one bio per xfs_ioend struct.
      Each call to xfs_end_bio() for a bio completing will write a value to
      ioend->io_error.  If a successful bio completes after any failed bio, no
      error is reported do to it writing 0 over the error code set by any 
failed bio.
      The I/O error information is now lost and when the ioend is completed
      only success is reported back up the filesystem stack.

      xfs_end_bio() should only set ioend->io_error in the case of BIO_UPTODATE
      being clear.  ioend->io_error is initialized to 0 at allocation so only 
needs
      to be updated by a failed bio. Also check that ioend->io_error is 0 so 
that
      the first error reported will be the error code returned.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: David Jeffery <djeffery@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit dfdd4ac66c2f921ecec730a2b24b0b13e10346b2
  Author: Darrick J. Wong <darrick.wong@xxxxxxxxxx>
  Date:   Fri Aug 28 14:50:03 2015 +1000

      libxfs: bad magic number should set da block buffer error

      If xfs_da3_node_read_verify() doesn't recognize the magic number of a
      buffer it's just read, set the buffer error to -EFSCORRUPTED so that
      the error can be sent up to userspace.  Without this patch we'll
      notice the bad magic eventually while trying to traverse or change
      the block, but we really ought to fail early in the verifier.

      Signed-off-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 0d36938bb82a7775c21ce0a7429f08ba13d025b6
  Merge: 55f14da 4941b8f
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 27 21:45:31 2015 -0700

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

  commit ab98193dace971f4742eebb5103212e23bb392f5
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Wed Aug 26 14:16:27 2015 -0700

      dmaengine: ioatdma: add Broadwell EP ioatdma PCI dev IDs

      Adding the Broadwell Xeon ioatdma PCI device IDs and
      related bits. This is still IOATDMA 3.2 based hw.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 6ef41cf6f721573d286a06ca35a9f1e370637d51
  Author: yalin wang <yalin.wang2010@xxxxxxxxx>
  Date:   Tue Aug 25 16:15:13 2015 +0800

      dmaengine :ipu: change ipu_irq_handler() to remove compile warning

      Change ipu_irq_handler() to avoid gcc warning:

      drivers/dma/ipu/ipu_irq.c:305:4: warning: 'irq' may be used
      uninitialized in this function [-Wmaybe-uninitialized]
          generic_handle_irq(irq);

      Signed-off-by: yalin wang <yalin.wang2010@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 259800135c654a098d9f0adfdd3d1f20eef1f231
  Author: Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 28 11:57:00 2015 +1000

      powerpc/eeh: Fix fenced PHB caused by eeh_slot_error_detail()

      The config space of some PCI devices can't be accessed when their
      PEs are in frozen state. Otherwise, fenced PHB might be seen.
      Those PEs are identified with flag EEH_PE_CFG_RESTRICTED, meaing
      EEH_PE_CFG_BLOCKED is set automatically when the PE is put to
      frozen state (EEH_PE_ISOLATED). eeh_slot_error_detail() restores
      PCI device BARs with eeh_pe_restore_bars(), which then calls
      eeh_ops->restore_config() to reinitialize the PCI device in
      (OPAL) firmware. eeh_ops->restore_config() produces PCI config
      access that causes fenced PHB. The problem was reported on below
      adapter:

         0001:01:00.0 0200: 14e4:168e (rev 10)
         0001:01:00.0 Ethernet controller: Broadcom Corporation \
                      NetXtreme II BCM57810 10 Gigabit Ethernet (rev 10)

      This fixes the issue by skipping eeh_pe_restore_bars() in
      eeh_slot_error_detail() when EEH_PE_CFG_BLOCKED is set for the PE.

      Fixes: b6541db1 ("powerpc/eeh: Block PCI config access upon frozen PE")
      Cc: stable@xxxxxxxxxxxxxxx # v4.0+
      Reported-by: Manvanthara B. Puttashankar <mputtash@xxxxxxxxxx>
      Signed-off-by: Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 3439633a85891626abf124a52f2c3e3e83cca9d0
  Merge: d7b27368 a3c1ff8
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Aug 28 13:20:09 2015 +1000

      Merge branch 'linux-4.3' of 
git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-next

      Rather large pull request this time around, due to the long-pending
      cleanup of the kernel driver being here.  There's a stupidly large
      number of commits for that, as I wanted to have the series be
      bisectable at a fairly fine-grained level.  That said, a very large
      portion of the churn in the rework was automated, and a very large
      number of boards from right across the whole range we support have
      been tested.  I'm fairly confident there shouldn't be (too many)
      issues from this.

      Beyond correcting some not-so-great design decisions and making the
      code a lot easier to work with, there's not much exciting (lower
      memory usage, GPU VM should be a lot faster, etc) to be gained by the
      end-user as a result of the cleanup, it mostly lays the groundwork for
      future improvements.

      A big thanks goes to Alexandre Courbot for testing/debugging the GK20A
      codepaths for me :)

      Highlights:
      - A heap of perfmon work, providing a more useful userspace interface
      and specifying counters for a bunch of boards
      - Support for GT200 reclocking + other misc pm improvements
      - Initial patches towards supporting GM20B (Tegra X1)
      - Maxwell DisplayPort fixes
      - Cleanup of the kernel driver
      - The usual collection of random fixes

      * 'linux-4.3' of git://anongit.freedesktop.org/git/nouveau/linux-2.6: 
(312 commits)
        drm/nouveau: bump driver version for release
        drm/nouveau/tegra: merge platform setup from nouveau drm
        drm/nouveau/pci: merge agp handling from nouveau drm
        drm/nouveau/device: remove pci/platform_device from common struct
        drm/nouveau/device: import pciid list and integrate quirks with it
        drm/nouveau/device: cleaner abstraction for device resource functions
        drm/nouveau/mc: move device irq handling to platform-specific code
        drm/nouveau/mc/gf100-: handle second interrupt tree
        drm/nouveau/mc: abstract interface to master intr registers
        drm/nouveau/pci: new subdev
        drm/nouveau/object: merge with handle
        drm/nouveau/core: remove the remainder of the previous style
        drm/nouveau/mpeg: convert to new-style nvkm_engine
        drm/nouveau/sw: convert to new-style nvkm_engine
        drm/nouveau/pm: convert to new-style nvkm_engine
        drm/nouveau/gr: convert to new-style nvkm_engine
        drm/nouveau/fifo: convert to new-style nvkm_engine
        drm/nouveau/disp: convert to new-style nvkm_engine
        drm/nouveau/dma: convert to new-style nvkm_engine
        drm/nouveau/cipher: convert to new-style nvkm_engine
        ...

  commit a3c1ff87cfe27f99de58c153eb9d42dcfdbfa59b
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:23 2015 +1000

      drm/nouveau: bump driver version for release

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 43a70661eaa64aa4e36e421eee3b9ded3190837b
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:23 2015 +1000

      drm/nouveau/tegra: merge platform setup from nouveau drm

      The copyright header in nvkm/engine/device/platform.c has been replaced
      with the NVIDIA one from drm/nouveau_platform.c, as most of the actual
      code is now theirs.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 340b0e7c500a0ac8fb649c58cf8528550642c1d8
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:23 2015 +1000

      drm/nouveau/pci: merge agp handling from nouveau drm

      This commit reinstates the pre-DEVINIT AGP fiddling that was broken in
      an earlier commit.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 26c9e8effebb9166eb1cfba2d164676e98c505c7
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:23 2015 +1000

      drm/nouveau/device: remove pci/platform_device from common struct

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit c7af0ff0e89327918743052d12bf5536e34c7f1a
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:23 2015 +1000

      drm/nouveau/device: import pciid list and integrate quirks with it

      PCI IDs taken from the NVIDIA binary driver, with permission.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 7e8820fed712c6de1933dcc91edbf08dcec74925
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:23 2015 +1000

      drm/nouveau/device: cleaner abstraction for device resource functions

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 2b700825e7a7702fb862edba1262c98040dc1bf6
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:22 2015 +1000

      drm/nouveau/mc: move device irq handling to platform-specific code

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit ae0a5b2dd2f54584d677701d989732b464b6d8c9
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:22 2015 +1000

      drm/nouveau/mc/gf100-: handle second interrupt tree

      Doesn't fix any known issue, but best be safe in case control is handed
      to us from firmware with these left enabled.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit d4c4cc8373806d0f822f8847f8bcda64f36cb73f
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:22 2015 +1000

      drm/nouveau/mc: abstract interface to master intr registers

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 0a34fb3149c3001f9c1b2bd0f98f94d63e74cb85
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:22 2015 +1000

      drm/nouveau/pci: new subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit fbd58ebda9c8572ca6285b88e3348c7712f125ec
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:22 2015 +1000

      drm/nouveau/object: merge with handle

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 68f3f702b6a430a8d1e909455a60d26c0f2da530
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:22 2015 +1000

      drm/nouveau/core: remove the remainder of the previous style

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 7624fc011e56902a83e409b14d6c1efa75aa4a58
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:22 2015 +1000

      drm/nouveau/mpeg: convert to new-style nvkm_engine

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 6f41c7c56929b3a2ad943d5b6dd4d66d716e74d7
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:22 2015 +1000

      drm/nouveau/sw: convert to new-style nvkm_engine

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 97070f23c60869830039b216ff88230f54ef7107
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:22 2015 +1000

      drm/nouveau/pm: convert to new-style nvkm_engine

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit c85ee6ca79590cd51356bf24fb8936bc352138cf
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:22 2015 +1000

      drm/nouveau/gr: convert to new-style nvkm_engine

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 13de7f462902d1a452d501cdb2d06ef02cabbfff
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:22 2015 +1000

      drm/nouveau/fifo: convert to new-style nvkm_engine

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 70aa8670e5229766f12c4b818a68aa61913df0b6
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:22 2015 +1000

      drm/nouveau/disp: convert to new-style nvkm_engine

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit bd70563f015a5204c62a52a87a35c32377940187
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:21 2015 +1000

      drm/nouveau/dma: convert to new-style nvkm_engine

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 14d74acafb15fd3fac16eef89de7643cddd01775
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:21 2015 +1000

      drm/nouveau/cipher: convert to new-style nvkm_engine

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit e5b31ca63249f03e56529dcd4260b23196ce2c28
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:21 2015 +1000

      drm/nouveau/ce: convert to new-style nvkm_engine

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 98b20c9ab88ff4dbe5f3e239efa5a6b7818c1da7
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:21 2015 +1000

      drm/nouveau/xtensa: convert to new-style nvkm_engine

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 53e60da43aee440d3f75000cdd269bd1324a8ad4
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:21 2015 +1000

      drm/nouveau/falcon: convert to new-style nvkm_engine

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 437b2296ced574eada632b11346e22f6b0103e17
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:21 2015 +1000

      drm/nouveau/volt: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 31649ecf47a44e02e73bffc5680c8f56d6cf587a
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:21 2015 +1000

      drm/nouveau/tmr: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 57113c0170b9efeacb3e3e9d4c2178c30d9cd991
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:21 2015 +1000

      drm/nouveau/therm: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit e2ca4e7d6e56cb73a068708f0b0c9bd62ab9e02c
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:21 2015 +1000

      drm/nouveau/pmu: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit a4f7bd360893ab4f6bbc1ae4ef617c68bf987f3d
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:21 2015 +1000

      drm/nouveau/mxm: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit c9582455ab74246ec9f5986db3821b33058de585
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:21 2015 +1000

      drm/nouveau/mmu: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 54dcadd5b65e12f851ff80af4afef606040ad8b9
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:21 2015 +1000

      drm/nouveau/mc: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 70bc7182cbf1bb07e414bbb553890ddf1b540264
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:21 2015 +1000

      drm/nouveau/ltc: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit b7a2bc1886d00f5f1358079e1e6f4979006a4ed6
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:20 2015 +1000

      drm/nouveau/imem: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 8de65bd0901e2ee7a485a158bfe9e4631cc00644
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:20 2015 +1000

      drm/nouveau/devinit: run devinit scripts right after preinit

      This ensures we have a valid mask of disabled engines before we start
      trying to execute fini()/init() on the subdevs, potentially touching
      devices that don't exist.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 551d341755e2ade4a915d889524a4187f2cd210e
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:20 2015 +1000

      drm/nouveau/ibus: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 49bd8da5130aa2de1c891c71163a033254eaf932
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:20 2015 +1000

      drm/nouveau/i2c: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 2ea7249fe2d4815fc6d0b50021bcbd8bb72b8437
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:20 2015 +1000

      drm/nouveau/gpio: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit c5fcafa528463b207108cd606e0d41741fb7dc50
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:20 2015 +1000

      drm/nouveau/fuse: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 03c8952fb36b58e451b8a93a1a2abd59e09ddf7b
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:20 2015 +1000

      drm/nouveau/fb: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 151abd44c27c1562f348a99c176b078a876ebe93
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:20 2015 +1000

      drm/nouveau/devinit: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 6625f55c080f888ccf51b6881f0bad13f5762d15
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:20 2015 +1000

      drm/nouveau/clk: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit bb23f9d7919311ebc696bc540e41c908168f9cb5
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:20 2015 +1000

      drm/nouveau/bus: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 46484438ab7dbab6ed29cf647d029e0b1ef3d9d8
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:20 2015 +1000

      drm/nouveau/bios: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 3293228174e4d44cca56d809cc8409c3f88f8b90
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:20 2015 +1000

      drm/nouveau/bar: convert to new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit ef8bc5760b51d69741ed5f42224f1fdd2935541a
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:19 2015 +1000

      drm/nouveau/core: kill some (now) dead code

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 07b9e6cc957195bd1e6908612d67a92ba0ed2cb6
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:19 2015 +1000

      drm/nouveau/sw: convert user classes to new-style nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 5ffeb84b8eba71b4f88af6997db843ddf68149e0
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:19 2015 +1000

      drm/nouveau/pm: convert user classes to new-style nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 218f978d43296a9ac142a63361e25f517df3d318
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:19 2015 +1000

      drm/nouveau/mpeg: convert user classes to new-style nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 27f3d6cf80324940edd29be7758f81145e73d1ff
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:19 2015 +1000

      drm/nouveau/gr: convert user classes to new-style nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit b3c981504721a5765641a21d521eb04f7d23e065
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:19 2015 +1000

      drm/nouveau/cipher: convert user classes to new-style nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit e5ff112781667dbe641aee2adf6189d8023cb27f
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:19 2015 +1000

      drm/nouveau/ce: convert user classes to new-style nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit c79a191b2799fb36a7b64c0f9ddc20383ed0dcdb
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:19 2015 +1000

      drm/nouveau/xtensa: convert user classes to new-style nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 9d498e0f7a5ece8f61c8a174b40668a2621a82e3
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:19 2015 +1000

      drm/nouveau/falcon: convert user classes to new-style nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 8f0649b5c6e70ec18122255690e39f010c12a614
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:19 2015 +1000

      drm/nouveau/fifo: convert user classes to new-style nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 9a65a38c456ebac97f0498e85fe26f6d26fe3936
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:19 2015 +1000

      drm/nouveau/fifo: split user classes out from engine implementations

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 0ce41e3c66ca8958dec427f1c46f64efdda90f30
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:19 2015 +1000

      drm/nouveau/disp: convert user classes to new-style nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 2a7909c0ade08c66690e6115ae49765dc47873e6
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:19 2015 +1000

      drm/nouveau/disp: split user classes out from engine implementations

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 0710cc31482ae3711367c42e61580126c50c8ec0
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:18 2015 +1000

      drm/nouveau/dma: convert user classes to new-style nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 19fef52d93518cc01fd284b55ee93c0a9967634f
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:18 2015 +1000

      drm/nouveau/dma: split user classes out from engine implementations

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 0e29998a89a6254f5ca9f78167f9ce790d01da45
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:18 2015 +1000

      drm/nouveau/device: convert ctrl class to new-style nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 2a9f847f5d43d15c0401d050cdd77fb4cbe7da06
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:18 2015 +1000

      drm/nouveau/device: convert user class to new-style nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 24bd0930bedea1182aaadc52757897d2b9b3ca99
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:18 2015 +1000

      drm/nouveau/client: convert to new-style nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 6157091177102638c7d94ffc159c0b157a1c9b56
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:18 2015 +1000

      drm/nouveau/sw: remove dependence on namedb/engctx lookup

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 590801c1a3b19883b0d0e4c60241cbed8a916d47
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:18 2015 +1000

      drm/nouveau/mpeg: remove dependence on namedb/engctx lookup

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit a65955e19e769e92a0e29cccdc29aea0b19f3809
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:18 2015 +1000

      drm/nouveau/gr: remove dependence on namedb/engctx lookup

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 6ca307b0c9c7878eb1b2b42982c05671f0591229
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:18 2015 +1000

      drm/nouveau/fifo: remove dependence on namedb/engctx lookup

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 35acf3d72cf273e164c9a8bbf30610b95e2a4c84
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:18 2015 +1000

      drm/nouveau/cipher: remove dependence on namedb/engctx lookup

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit a83d8872fc8a482e47f7375ab66006e1f8c1fd59
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:18 2015 +1000

      drm/nouveau/falcon: remove dependence on namedb/engctx lookup

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 344c2d429dd86b1b0113177e18f15adb74e9d936
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:18 2015 +1000

      drm/nouveau/fb: remove dependence on namedb/engctx lookup

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 898a2b32138da26ed8f7abc0cc8232741ca03de7
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:18 2015 +1000

      drm/nouveau/sw: turn flip completion into an event

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit cd459e7776c2c08e3771e20fca7de96272f2c9cd
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:18 2015 +1000

      drm/nouveau/sw/nv04: replace direct context access with GetRef method

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 1d2a1e53865266a67fb569705eba3ec992682721
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:17 2015 +1000

      drm/nouveau/ramht: remove dependence on namedb

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit f027f49166171c98d5945af12ac3ee9bc9f9bf4c
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:17 2015 +1000

      drm/nouveau/gpuobj: separate allocation from nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 227c95d90a3c50defbc7b4f98605e13af4e6214c
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:17 2015 +1000

      drm/nouveau/gr: directly use instmem where currently possible

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 358ce601ae5de59bf6f08f79455c5b3cb7d359d4
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:17 2015 +1000

      drm/nouveau/fifo: directly use instmem for runlists and polling areas

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit faf468981e3a50ce088460595bd10812af9be7f8
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:17 2015 +1000

      drm/nouveau/xtensa: directly use instmem for ucode image

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 406ca8c714825c2d9e2c866787150eae4e1a1cc3
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:17 2015 +1000

      drm/nouveau/falcon: directly use instmem for ucode image

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 5b1ab0c2c79c3556c4350f4f47d11745fdffad8f
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:17 2015 +1000

      drm/nouveau/imem/nv04-nv40: directly use instmem for vbios/ramfc/ramro

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit adb53d2773a7b0e95bb47e092c71906c7d989366
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:17 2015 +1000

      drm/nouveau/bar/gf100: directly use instmem for channel descriptors

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit d0659d3277cd7bf50e45d48f4692a7fbb11e5957
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:17 2015 +1000

      drm/nouveau/mmu: directly use instmem for page tables

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit d8e83994aaf6749b7124a219f5b46bd1329e2a08
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:17 2015 +1000

      drm/nouveau/imem: improve management of instance memory

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 1de68568d69ac518db076cc6118af91e930b5f90
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:17 2015 +1000

      drm/nouveau/mmu: protect each vm with its own mutex

      An upcoming commit requires being able to modify the PRAMIN BAR page
      tables while already holding the MMU subdev mutex.

      To solve this issue, each VM has been given its own mutex.  As a nice
      side-effect, this also allows separate VMs to be updated concurrently.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 524bdbf2025d44cdea672511d21012a52b427374
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:17 2015 +1000

      drm/nouveau/core: prepare for new-style objects

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 6cf813fb26640ef539051fb7f965af8c9ff10d92
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:17 2015 +1000

      drm/nouveau/device: prepare for new-style subdevs

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 7974dd1bdb43aaf5b45a915c6b439d11733450fc
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:17 2015 +1000

      drm/nouveau/device: separate construction of pci/tegra devices

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 168c2e213d3a9b605856d3676d9e93733c8b37d3
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:16 2015 +1000

      drm/nouveau/engine: implement support for new-style nvkm_engine

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit f0290215c44370ff5d55c01a13dc5a44a1f86efa
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:16 2015 +1000

      drm/nouveau/subdev: implement support for new-style nvkm_subdev

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit cbea21e2ab658ca1256bfe5f4c535b2b1b9e4060
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:16 2015 +1000

      drm/nouveau/object: implement support for new-style nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 89c651e2213a148d19407109051abbf81328a4a8
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:16 2015 +1000

      drm/nouveau/engine: rename some functions to avoid upcoming conflicts

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 3a8c3400f3e74638bedd0d2410416aa8b794c0fd
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:16 2015 +1000

      drm/nouveau/subdev: rename some functions to avoid upcoming conflicts

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit aa35888ff024b18c7b6b29eb773a221f642987f7
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:16 2015 +1000

      drm/nouveau/object: rename some functions to avoid upcoming conflicts

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit d61f4c178cb36a7b15871fcc60814f1f94a5044d
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:16 2015 +1000

      drm/nouveau/nvif: device time mthd

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 159045cdc460794df27e2cc624a9641be5c54b23
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:16 2015 +1000

      drm/nouveau/nvif: replace pushbuf with vm in fermi/kepler gpfifo class 
args

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 22827fa42b0baa9287ea56691f26dc45fecea049
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:16 2015 +1000

      drm/nouveau/nvif: return chipset/board names from device info method

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit d56241794c293ff7341d373d853e5a4e2f5de244
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:16 2015 +1000

      drm/nouveau/nvif: add supported engines query to kepler gpfifo class

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 41a634064db489713945e228e216336080ba57f8
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:16 2015 +1000

      drm/nouveau/nvif: return min/max versions for supported object classes

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit f58ddf9581655d3fea51465f06f292d365af9c87
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:16 2015 +1000

      drm/nouveau/nvif: assign internal class identifiers to sw classes

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 315a8b2edf51711857795ba6e02b843d7792b59c
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:16 2015 +1000

      drm/nouveau/nvif: use negative oclass identifier for internal classes

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 5c15bf709eb6fb52c5bcb95d545250dde22f9625
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:16 2015 +1000

      drm/nouveau/nvif: return success from sclass even for objects without 
children

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 99d4d36ad673c2b4fea364f6d456718f0f701ce4
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:16 2015 +1000

      drm/nouveau/nvif: extend nop ioctl to return nvif version identifier

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit bf81df9be28657eea4aca8c6ab4ed3e69f8a051c
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:16 2015 +1000

      drm/nouveau/nvif: replace path-based object identification

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit a01ca78c8f118e5a24f1527ecf078ab56ddd4805
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:15 2015 +1000

      drm/nouveau/nvif: simplify and tidy library interfaces

      A variety of tweaks to the NVIF library interfaces, mostly ripping out
      things that turned out to be not so useful.

      - Removed refcounting from nvif_object, callers are expected to not be
        stupid instead.
      - nvif_client is directly reachable from anything derived from 
nvif_object,
        removing the need for heuristics to locate it
      - _new() versions of interfaces, that allocate memory for the object
        they construct, have been removed.  The vast majority of callers used
        the embedded _init() interfaces.
      - No longer storing constructor arguments (and the data returned from
        nvkm) inside nvif_object, it's more or less unused and just wastes
        memory.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 4e7e62d607a711bc8e8576a0fc7d8f242d25c9b3
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:15 2015 +1000

      drm/nouveau/client: store default device by handle, not reference

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 102b49da15834c1d2ba508457fdf69b3d07c6fee
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:15 2015 +1000

      drm/nouveau/parent: remove some (now) unnecessary special-case handling

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 493f189dc0cbbe9bde8074fb49ca777ba1ef292c
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:15 2015 +1000

      drm/nouveau/object: store object type data outside of handle

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit a1e88736221d2e971726931c449ed7d0af31755b
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:15 2015 +1000

      drm/nouveau/device: decouple from engine machinery

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit a1bfb29a33521efa6b1714589bf68cb4afebacb1
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:15 2015 +1000

      drm/nouveau/device: split user device implementation out on its own

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 0ac9d210a13c6eaa5492bdd27eb0add952238b8c
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:15 2015 +1000

      drm/nouveau/device: simplify subdev construction

      Replaces the piece-by-piece (in response to NV_DEVICE ctor args) device
      contruction with a once-off all-or-nothing approach, eliminating some
      tricky refcounting issues.  The partial device init capability was only
      required by some tools, and has been moved to probe time instead.

      Temporarily removes a workaround for some boards where we need to fiddle
      with AGP registers before executing the DEVINIT scripts.  A later commit
      in this series reinstates it.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit c813d8e048740ca82b88a9d3f639bbd8095b24ac
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:15 2015 +1000

      drm/nouveau/bin: punt client/device argument handling into a common helper

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit e781dc8f6cebf69bd410eb652a13e0a3797d71fe
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:15 2015 +1000

      drm/nouveau/device: tidy ctor/dtor interfaces

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 76ecea5b4b9383edde2bfe49e59e76fec4e21aa4
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:15 2015 +1000

      drm/nouveau/client: tidy ctor/dtor interfaces

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 47b2505efb2d951f16c3a229d93450b463d925e5
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:15 2015 +1000

      drm/nouveau/platform: remove subclassing of nvkm_device

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit f2c906fc0cf1657e4164e09ae6061534eebd5430
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:15 2015 +1000

      drm/nouveau/disp: transition outp/conn away from being based on 
nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 2aa5eac5163fedf09f2d61992cb5ea4d75bec9db
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:15 2015 +1000

      drm/nouveau/i2c: transition pad/ports away from being based on nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit d36a99d2da22bdffebf644e4a5f811e8eff82360
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:14 2015 +1000

      drm/nouveau/fb: transition nvkm_ram away from being based on nvkm_object

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit a8dae9fe0e8ad94de1bb2bfda90d288c1b9eb6e6
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:14 2015 +1000

      drm/nouveau/vga: require nvkm_device pointer in accessor functions

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 95cf469cc3b266324cd9129f93a2d44b85ea27ed
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:14 2015 +1000

      drm/nouveau/imem: use object accessor function for suspend/resume

      Very much not ideal, but this will be improved later.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit cfdc4c44b4388bb8e697882cddd966333e4ab7b0
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:14 2015 +1000

      drm/nouveau/core: wrap direct use of object accessor functions

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 572fb13db2a9dc5336a4b769d60428bc9cff0af6
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:14 2015 +1000

      drm/nouveau/mpeg: switch to gpuobj accessor macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 142ea05f49b9517929f8b27ee800160e7ebf3a02
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:14 2015 +1000

      drm/nouveau/gr: switch to gpuobj accessor macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 5444e770e3991ddb5a9583d622fc18bbf414b551
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:14 2015 +1000

      drm/nouveau/fifo: switch to gpuobj accessor macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 3f532ef1e23395d7abb0eed316dd31123f87f448
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:14 2015 +1000

      drm/nouveau/dma: switch to gpuobj accessor macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 6d06fd68cb8d3c8be819d96bffb0a342d01b5e22
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:14 2015 +1000

      drm/nouveau/cipher: switch to gpuobj accessor macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit edb1dc51de2f93905f49ba693c1777d6497a5cae
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:14 2015 +1000

      drm/nouveau/xtensa: switch to gpuobj accessor macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 9cc264a3aac2ca62d8a2e13c8f13c8ef8567550b
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:14 2015 +1000

      drm/nouveau/falcon: switch to gpuobj accessor macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit cd821077aa7f180f83f3a5d60ec47cb75d56fd37
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:14 2015 +1000

      drm/nouveau/mmu: switch to gpuobj accessor macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 1918707556986e9460682845a2bf4055c43a8b65
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:14 2015 +1000

      drm/nouveau/bar: switch to gpuobj accessor macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 45ea503161af6e94d593a59e8cca8981d0435d5c
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:14 2015 +1000

      drm/nouveau/core: switch to gpuobj accessor macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 384af9aceaf8ee1e2d3791cc89a32c161d67bb57
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:14 2015 +1000

      drm/nouveau/gpuobj: type-safe accessor macros

      These require an explicit struct nvkm_gpuobj pointer, unlike the previous
      macros which take a void *, and work with any nvkm_object.

      New semantics require acquiring/releasing a gpuobj before accessing them,
      which will be made use of in later patches to greatly reduce the overhead
      of accesses, particularly when a direct mmio mapping of the object is not
      available (suspend/resume, out of ioremap() space, and on GK20A).

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 9ccdc76006e3b6ca46c8dbc446bc2e3f6d8d95cb
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:13 2015 +1000

      drm/nouveau/xtensa: remove object accessor functions

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 63902181a7ce9177c476103694cbdf45ee5c0578
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:13 2015 +1000

      drm/nouveau/falcon: remove object accessor functions

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit a47474261e77b148480daff855e516dc60e80b48
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:13 2015 +1000

      drm/nouveau/imem: remove object accessor functions

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 7e24c1145a9176fb9c9b81b3a0f0703598b1445c
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:13 2015 +1000

      drm/nouveau/fuse: remove object accessor functions

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 7f5f518fd70b1b72ca4cf8249ca3306846383ed4
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:13 2015 +1000

      drm/nouveau/bios: remove object accessor functions

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 53003941067534b1071b0f7b71f4700c16d97b28
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:13 2015 +1000

      drm/nouveau/core: remove last printks

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 9ad97ede4b1b257ccc867d5a1e865049e1f09166
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:13 2015 +1000

      drm/nouveau: use dev_* for logging

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 9e3911e5b244c01886f25ce1cb453dd9c5334853
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:13 2015 +1000

      drm/nouveau/sec: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 476901ff6c611620daab3af6cea940be91d97420
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:13 2015 +1000

      drm/nouveau/pm: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit b835c09bc6b87318fd06bfcb9ac4bb59eaa48f57
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:13 2015 +1000

      drm/nouveau/mpeg: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 109c2f2f1c42c16a4b265e796dee6ae4ada78417
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:13 2015 +1000

      drm/nouveau/gr: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit e5c5e4f5d319799fe67dc67531e41ba0b7ed15e6
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:13 2015 +1000

      drm/nouveau/fifo: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 84407824e97d87161f5ef09ba43a1ac6ec10f479
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:13 2015 +1000

      drm/nouveau/disp: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit e37f543370b86de9eefd86896adb171b7c45a451
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:13 2015 +1000

      drm/nouveau/device: switch to dev_printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 65850a3b407b065f4b0db0264796d2981feb85aa
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/cipher: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 1eed206fa29a98df728dd6e67ac02e135645029f
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/ce: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 7108bfe4086862fa29ba1cf82f4dee66be314619
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/xtensa: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 64b5ce1fe9ab0949c6387f5df57aaf0527567e08
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/falcon: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 185eda33394af09dbb0c9d330811718e84c0b070
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/volt: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 9d7b9d9f1140e56ad14111fd9576e7333412dc12
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/tmr: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit b3c418bb48228a206a8c421adaf269cdc83c3c52
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/therm: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit c19e329d663715014b367c4fedb217e0378342bf
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/pmu: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 27cc60a17512055c63f05a27eb6687051ade5257
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/mxm: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 85ae830f5ac177244892b934953106d11cd5a679
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/mmu: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit c47a48a544ba47eb26ff922203fa0f99c0306907
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/mc: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 59e1a2f1a665c6defc0050060846ed3d89291e8c
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/ltc: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 00c5550710184bad189d2cfe6b1880c0e9331bae
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/imem: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 18019e95de4ffdfb020d61197b8da2af1a442c8e
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/ibus: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 1cb57d25b6b62b39f07c4ff4370c2c48803000e9
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/i2c: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 3ecd329b6445efdcad26e94edd57f0fd5ccd080b
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/fb: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit aa860e4bbe16d5756d6845022a6e94d6cb200df9
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/devinit: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit b907649e7be734a4911f83b67a14e3425fa8a2a1
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:12 2015 +1000

      drm/nouveau/clk: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit a699a85addc747068a9ac1b2046f4313eb499bc2
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau/bus: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 60b29d2071795d322221cfcfe377e6778b09ca90
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau/bios: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 0df18e6d52fab22e841e734c384c86f3b7b762b8
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau/bar: switch to subdev printk macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 6594363b9f765e569feb6222d7d07e19db3fa460
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau/core: type-safe printk macros

      These require an explicit pointers to nvkm_object/nvkm_subdev/nvkm_device,
      depending on which macros are used.  This is unlike the previous macros
      which take a void *, and work for anything derived from nvkm_object (by
      way of some awful heuristics).

      The output will be a bit confused until everything has been transitioned,
      as the logging format used is a more standard style that previously.

      In addition, usage of pr_cont(), which doesn't work correctly with the
      dev_*() printk functions (and was potentially racy to begin with), will
      be replaced.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 5444204036b2e3a4aeeef6265897df3a9976bf97
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau: switch to new-style timer macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 37eabb030c03539996bff662e4adb078a7f8b2a6
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau/mpeg: switch to new-style timer macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit c4584adc37720b65ae44a84c660d47b3ebcf7dfb
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau/gr: switch to new-style timer macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit af3082b3c621e75371dc6d11fac5a2dc2b19b1bc
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau/fifo: switch to new-style timer macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 3a020b4dfc3a6c79f144b2c6786d86b33cda64d9
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau/disp: switch to new-style timer macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 6ed5c1682425e29913785977cccca67ff3dec5f1
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau/falcon: switch to new-style timer macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit dd4bb3eccc806e78baee3009aa466466daae0f29
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau/pmu: switch to new-style timer macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 909604d444eb26ed37860268cfc6a68d4a5f28cb
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau/mmu: switch to new-style timer macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 1302bcbb8229b0575401be87765277629330384a
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau/ltc: switch to new-style timer macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 63bb5c390bf2f975f0936b6523af6784af811b49
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau/ibus: switch to new-style timer macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit cf07d861ce3c4bfd9d45f9e66f30cbfb56dca3a0
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau/fb: switch to new-style timer macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 6979c6303a4abf263753cd9d577d79f05c6e8c47
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau/clk: switch to new-style timer macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 4f31c84ebafd7b3940c2fe109fe173c62d097080
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:11 2015 +1000

      drm/nouveau/bus: switch to new-style timer macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 4dd308f446c31e8f4a2b5033ba2de6f53f015114
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:10 2015 +1000

      drm/nouveau/bar: switch to new-style timer macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 56f67dc19623b6cd4db57ee07d6f0cad32bcd5af
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:10 2015 +1000

      drm/nouveau/tmr: type-safe PTIMER-based delay/wait macros

      These require an explicit struct nvkm_device pointer, unlike the previous
      macros which take a void *, and work for (almost) anything derived from
      nvkm_object by using some heuristics.

      These macros are more general than the previous ones, and can be used to
      handle PTIMER-based busy-waits (will be used in later devinit fixes) as
      well as more complicated wait conditions.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 2ebfa1bc6ff1a7cded8b662f507d34574ffcc2c6
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:10 2015 +1000

      drm/nouveau/kms/nv04: fix incorrect use of register accessors

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 01d64afc2e3238cf1658184427fa2563963c8708
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:10 2015 +1000

      drm/nouveau/sw: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit b8ad561e5541e6e6fe5c60ef33fec50ec211c92b
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:10 2015 +1000

      drm/nouveau/sec: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 846e831d953fd01cb78b9ed92495baee142bed37
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:10 2015 +1000

      drm/nouveau/pm: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit f2d85ad1a63130ba31434d042b6c76f24f6b9673
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:10 2015 +1000

      drm/nouveau/msvld: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 320ca25131758a445e351f701daf91d8aa5be096
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:10 2015 +1000

      drm/nouveau/msppp: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 54118c74fb4b4fdb032a6c4dfc59bb856bc6fc48
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:10 2015 +1000

      drm/nouveau/mspdec: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 636e37aa978b4904189710b5b501299bd7404ad5
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:10 2015 +1000

      drm/nouveau/mpeg: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 276836d46e535c8ca299a1ea8302879dbdd3e93a
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:10 2015 +1000

      drm/nouveau/gr: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 8774440390cdfe37c5d003f850847c9fd67cdf61
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:10 2015 +1000

      drm/nouveau/fifo: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 2fde1f1c343030d169945aa67a0e485b568f1393
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:10 2015 +1000

      drm/nouveau/disp: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit f9793bb7ed4d83c1b72661c1cca2949a343df231
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:10 2015 +1000

      drm/nouveau/device: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit b958bf916d34f35639048361f7d87334770ebf4d
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/cipher: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 29e9f51094316879c4602795167e9635e18a3c8b
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/ce: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 2ef770f743c55ee2e7efb8e750c6e2d2eae9f74e
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/xtensa: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 96975248ee45cd50101b4bdf0eaf8c2d9e6cfa73
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/falcon: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit c44c049f28dbebfb95aca3847fd4996ca3503b0c
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/tmr: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 5718ea3257f5fb945a8625dd17d0d753c9dbec34
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/therm: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit bef002e87f1accc12a7fc7c98b80354c136c199e
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/pmu: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 83f56106ead017a07868176279746d73bc7a7060
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/mmu: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 25e3a463fc1bd39c01cc6d19d2c8b4c4725699b9
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/mc: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 99336ed363f49f484b4d93600c4dfec1f2ebb84a
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/ltc: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit d5c5bcf693e7c72f2f853066858f3d40a42ba942
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/imem: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit fef5cc0f258d68d3a9ead1058461bf5f2e2796da
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/ibus: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 6f2274991043a3db2ab84b5d9462a085d38f1fb1
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/i2c: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 4de93a086eb0315f0bd8e1d6da40186842670b57
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/gpio: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 2bdb4995fd9629840ed80305f2a9f046071881d7
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/fuse: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 6758745b2821bddcec1aae0c4cffaa9608aeda59
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/fb: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 8ac3f64f75b6b7dbe5917e5c65344915415f58e1
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:09 2015 +1000

      drm/nouveau/devinit: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 822ad79fa40070fc36cae2ad929ab0c409919080
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:08 2015 +1000

      drm/nouveau/clk: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 14caba447c9a22ceb0400e964f585e5ffff5f0b8
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:08 2015 +1000

      drm/nouveau/bus: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit d8f266a353cb397aa792b59d5aa16ea09579f9ac
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:08 2015 +1000

      drm/nouveau/bios: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 9155c16214631e064d0d1edcd60a62347f823c80
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:08 2015 +1000

      drm/nouveau/bar: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 94bab102233e30d08fcb33a424ec56520b22eb1b
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:08 2015 +1000

      drm/nouveau/core: switch to device pri macros

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit dd64694208d7c902ba7a5bcd2bf012c1087ba0f0
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:08 2015 +1000

      drm/nouveau/device: type-safe register accessor macros

      These require an explit struct nvkm_device pointer, unlike the previous
      macros which take a void *, and assume it's any old nvkm_subdev.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 8699745a2bc143eee429c556d631e8e5be5dc009
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:08 2015 +1000

      drm/nouveau/vp: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 226dcefe706ff8854bca1bb75ae7bfd2fe3296c5
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:08 2015 +1000

      drm/nouveau/sw: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit c0e297dc61f8d4453e07afbea1fa8d0e67cd4a34
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:08 2015 +1000

      drm/nouveau/sec: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 8c1aeaa13954585e8482866457abacb5c094db35
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:08 2015 +1000

      drm/nouveau/pm: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 74137ffcd1dfd6537bbfdd1d1149942412280e9e
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:08 2015 +1000

      drm/nouveau/msvld: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit fd507a53abda54697bcae2f60cfaf41932634d68
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:08 2015 +1000

      drm/nouveau/msppp: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 11271f9f8ff3755bf9a413d157dc7cb7c36856b1
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:08 2015 +1000

      drm/nouveau/mspdec: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit b19de4f3d787947224e89447505dd3c99b304d7b
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:08 2015 +1000

      drm/nouveau/mpeg: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit bfee3f3d97db88bfb732735eb4955ad3381ac758
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:08 2015 +1000

      drm/nouveau/gr: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 6189f1b0938dc0621c27494031b83ffae566e318
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:07 2015 +1000

      drm/nouveau/fifo: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit a317aa21be51f869d5ab0198fad94a4570af9ddb
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:07 2015 +1000

      drm/nouveau/dma: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit fd166a1832db138f22ad95eacd0879af30742f57
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:07 2015 +1000

      drm/nouveau/disp: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit e2f1cf253e0cf5b64fa6fee439aeeda49c6f09d8
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:07 2015 +1000

      drm/nouveau/cipher: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit d9261a68374fbeda5a180fbba926aaba29321a75
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:07 2015 +1000

      drm/nouveau/ce: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit d8c304b504bc2709eaec742be1b30d5e53e47449
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:07 2015 +1000

      drm/nouveau/bsp: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit f0961867b817e3aca45dca7e1885a7ec99a260ed
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:07 2015 +1000

      drm/nouveau/xtensa: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit b26ada6fedeb7cf6dacb1275a8ea08f4e39b53d2
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:07 2015 +1000

      drm/nouveau/falcon: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 6052dc5775ac0be49db3e25d2719c72a250189a2
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:07 2015 +1000

      drm/nouveau/volt: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit cb8bb9cedb6015eafd56ef9e9c5b2c216e8e7960
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:07 2015 +1000

      drm/nouveau/tmr: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit da06b46b720687117178d3ee85a601762f1c36b5
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:07 2015 +1000

      drm/nouveau/therm: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 5a7d1e22feedd3cfab5a94bba5f26ab61610bc62
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:07 2015 +1000

      drm/nouveau/pmu: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 2d9d5889e8848501ffe71b4e99c639a29a1fe10f
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:07 2015 +1000

      drm/nouveau/mxm: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 1f5bffca226929a834c7d631464d420e78cbe5f1
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:07 2015 +1000

      drm/nouveau/mmu: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 2ca0ddbc03917f94c6d34820f91d0c920c057df2
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:07 2015 +1000

      drm/nouveau/mc: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit c7750cfbc150460a507deb27b8eed93fcf60ea8d
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:07 2015 +1000

      drm/nouveau/ltc: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit c44c06aeebf481fb69c665a21090f2f0aac878c5
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:06 2015 +1000

      drm/nouveau/imem: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit ac51596f27d5cece39cb63b857e6ebbffa05ca33
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:06 2015 +1000

      drm/nouveau/ibus: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 5b920d926422fdc5b40b703d72344d5e20b3872a
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:06 2015 +1000

      drm/nouveau/i2c: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit e7d65181045898a6da80add0392765e253b0023c
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:06 2015 +1000

      drm/nouveau/gpio: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit ce7b4f60a84cfb1533f217198b01758aab05f4dc
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:06 2015 +1000

      drm/nouveau/fuse: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit b1e4553cb1f9deddbd8c13d95e9cef81967a3f41
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:06 2015 +1000

      drm/nouveau/fb: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 266f8b5ee6e98979f3251efc81451a2a2cbf2a28
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:06 2015 +1000

      drm/nouveau/devinit: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 3eca809b3c05ea6918c1d13da478abdae5e712ba
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:06 2015 +1000

      drm/nouveau/clk: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 01d6b95605ad5c5be9ce0c7bf37b1a6d51cbb9e4
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:06 2015 +1000

      drm/nouveau/bus: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit a00014e3963642e7cf7206a9fa814b547d642a72
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:06 2015 +1000

      drm/nouveau/bios: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 5b0c189fcb232daa1cabac8892e42cdee57254bd
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:06 2015 +1000

      drm/nouveau/bar: cosmetic changes

      This is purely preparation for upcoming commits, there should be no
      code changes here.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 9ace404b1098221021b01c2ba0eeea0c257fa4a5
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:06 2015 +1000

      drm/nouveau/device: include core/device.h automatically for 
subdevs/engines

      Pretty much every subdev/engine is going to need access to nvkm_device
      shortly to touch registers and/or output messages.

      The odd placement of the includes is necessary to work around some
      inter-dependencies that currently exist.  This will be fixed later.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 6d0d40e7a577bbc7497ee7fbfeb2315d46a872a6
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:06 2015 +1000

      drm/nouveau/device: add direct pointer to struct device

      A future commit will hide the platform/pci specifics from nvkm_device,
      but it's still very useful in a lot of places to have access to the
      Linux device struct.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 741d778ea0dde26a345717f1843407760f02fe03
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:05 2015 +1000

      drm/nouveau/device: add direct pointers to subdevs from nvkm_device

      Will be used in upcoming commits to remove the need for lookup/runtime
      type-checking functions when accessing foreign subdevs.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit d351b8569e3c57bf5dc3dd5a1295974a9e04316e
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:05 2015 +1000

      drm/nouveau/subdev: add direct pointer to nvkm_device

      Will be utilised in upcoming commits to remove the need for heuristics
      to lookup the device a subdev belongs to.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 0d5dd3f301bbc66c41b219f50fa97a6df1965cfe
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 20 14:54:05 2015 +1000

      drm/nouveau/lib: various tweaks

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 205877f9156daebb975fb46205488da6fdf5b3f5
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Thu Aug 27 17:33:19 2015 +1000

      drm/nouveau/pmu/gk104: implement a hackish workaround for a hw bug

      Only a handful of machines have this enabled by default, where it's been
      proven to work.  The workaround can be explicitly enabled with a module
      option also.

      Still waiting on feedback from NVIDIA for a proper idea of exactly what
      this fix is doing, and how to implement it properly.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 2a89359415da2fc1250b4c205de3c384bd781f54
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Fri Aug 21 13:38:31 2015 +1000

      drm/nouveau/disp/dp: gm1xx appears to have same dp lane ordering as gm2xx

      Fixes 2-lane DP on Quadro K620.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit fe0f5d08806dcf7fd51092dfc6ea666ea2392692
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Fri Aug 21 12:50:07 2015 +1000

      drm/nouveau/disp/dp: fix some tx_pu mishandling

      We only need to mask 0x0f on GM2xx, and want to keep the higher bits on
      earlier cards.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit f10956d4455fcb24ecbdca30e6d9d88c95dc2588
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Fri Aug 21 13:19:13 2015 +1000

      drm/nouveau/bios/dp: use alternate set of drvctl values where necessary

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 7c11c99b3c66a8e03494e56ce6e6c5303ee85934
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Fri Aug 21 10:52:54 2015 +1000

      drm/nouveau/bios/dcb: accept "maxwell" lane count values for dcb 4.0

      We previously assumed that the values "2" and "4" were new in DCB 4.1,
      however, there's at least one GM107 DCB 4.0 board (Quadro K620) that
      uses the newer values.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 895fb8e6f77589b9c50ff1f231b5025935d1d59f
  Author: Ilia Mirkin <imirkin@xxxxxxxxxxxx>
  Date:   Mon Aug 17 19:37:34 2015 -0400

      drm/nouveau/fb/sddr3: add WR/CWL values seen on a GK208

      Signed-off-by: Ilia Mirkin <imirkin@xxxxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 0a363e85cdafbceeee6a49b91c604d0d4d070dc7
  Author: Hans de Goede <hdegoede@xxxxxxxxxx>
  Date:   Thu Jul 23 17:20:12 2015 +0200

      drm/nouveau/nv46: Change mc subdev oclass from nv44 to nv4c

      MSI interrupts appear to not work for nv46 based cards. Change the mc
      subdev oclass for these cards from nv44 to nv4c, the nv4c mc code is
      identical to the nv44 mc code except that it does not use msi
      (it does not define a msi_rearm callback).

      BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=90435
      Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 2df0bf57f89cfa6e6adafb44d666ecc4a228a731
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Tue Aug 4 23:58:15 2015 +0200

      drm/nouveau/pm/gf100: only use PBFB_BROADCAST.PM_UNK100 for PBFB signals

      High level hardware events related to PBFB will monitor all partitions.
      While we are at it, fix bitfield for this mux.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 8feece04db884e04c31c008b76a7610849757720
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Tue Aug 4 23:58:14 2015 +0200

      drm/nouveau/pm/gf100: remove multiple definitions of GPC_DOM signal 0x0e

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 9b4dc66d4772a432f271e1ebafd70aafe2b9bb27
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Tue Aug 4 23:58:13 2015 +0200

      drm/nouveau/pm/gf100: remove undefined TEX.PM_UNKC8 mux

      This mux only exists on GF108+ (except for GF110 one), but since it is
      not used by the userspace we can drop it for now.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 7fe882eb90844f79acd9cdd3ccd5d3459c27cf3f
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Tue Aug 4 23:58:12 2015 +0200

      drm/nouveau/pm: allow zeroed signals to enable sources

      Hardware signals index 0x00 are defined for some domains and they have
      to be allowed to enable sources like the others.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 5a23936129b87833e3f3e90a610c65f73c7bbeaa
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jul 26 11:30:08 2015 +0200

      drm/nouveau/pm/nv50: TPC[0x3] must be used for PGRAPH muxs on G80

      I thought that using TPC[0x0] like for G84:GT215 was sufficient on G80,
      but it's actually not the case. According to NVIDIA PerfKit on Windows,
      we have to configure PGRAPH related muxs on TPC[0x3] for this chipset.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit a4650ed9bd6564b5135ccebf8a5b108ed16abbac
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jul 26 11:30:07 2015 +0200

      drm/nouveau/pm/nv50: fix wrong addr for ZCULL source on G80:GT215

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit bacbad17fbc636125bf472240860a58a54ad62db
  Author: Ilia Mirkin <imirkin@xxxxxxxxxxxx>
  Date:   Fri Jun 19 02:51:23 2015 -0400

      drm/nouveau/bios: add opcodes 0x73 and 0x77

      No known VBIOSes use these, but they are present in the actual VBIOS
      table parsing logic. No harm in adding these too.

      Signed-off-by: Ilia Mirkin <imirkin@xxxxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 970fee29d036eda3ea869033d6b0b7b42238b22a
  Author: Alexandre Courbot <acourbot@xxxxxxxxxx>
  Date:   Tue Jun 23 15:16:06 2015 +0900

      drm/nouveau/platform: recognize GM20B

      Allow the platform driver to recognize GM20B.

      Signed-off-by: Alexandre Courbot <acourbot@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit d10ae271301803c2720b8ad53d6a90b5620ea439
  Author: Alexandre Courbot <acourbot@xxxxxxxxxx>
  Date:   Tue Jun 23 15:16:05 2015 +0900

      drm/nouveau/device: recognize GM20B

      Recognize GM20B and assign the right engines and subdevs.

      Signed-off-by: Alexandre Courbot <acourbot@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit a032fb9da665ed6e6a36fa6788eff1db43ba2703
  Author: Alexandre Courbot <acourbot@xxxxxxxxxx>
  Date:   Tue Jun 23 15:16:04 2015 +0900

      drm/nouveau/gr: add GM20B support

      Add support for GM20B's graphics engine, based on GK20A. Note that this
      code alone will not allow the engine to initialize on released devices
      which require PMU-assisted secure boot.

      Signed-off-by: Alexandre Courbot <acourbot@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 3326060a17f6ef8ca3d3f785b1ae31ff76f713f6
  Author: Alexandre Courbot <acourbot@xxxxxxxxxx>
  Date:   Tue Jun 23 15:16:03 2015 +0900

      drm/nouveau/fifo: add GM20B fifo

      GM20B has a 512-channels FIFO similar to GK104.

      Signed-off-by: Alexandre Courbot <acourbot@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit c4d0f8f6f8c8dc09cd32e7fdb31e3d1a65a0f8f1
  Author: Alexandre Courbot <acourbot@xxxxxxxxxx>
  Date:   Tue Jun 23 15:16:02 2015 +0900

      drm/nouveau/gr/gk20a: use same initialization sequence as nvgpu

      GK20A's initialization was based on GK104, but differences exist in the
      way the initial context is built and the initialization process itself.

      This patch follows the same initialization sequence as nvgpu performs
      to avoid bad surprises. Since the register bundles initialization also
      differ considerably from GK104, the register packs are now loaded from
      firmware files, again similarly to what is done with nvgpu.

      Signed-off-by: Alexandre Courbot <acourbot@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 8539b37acef73949861a16808b60cb8b5b9b3bab
  Author: Alexandre Courbot <acourbot@xxxxxxxxxx>
  Date:   Tue Jun 23 15:16:01 2015 +0900

      drm/nouveau/gr: use NVIDIA-provided external firmwares

      NVIDIA will officially start providing GR firmwares through
      linux-firmware for GPUs that require it. Change the GR firmware lookup
      function to use these files.

      Signed-off-by: Alexandre Courbot <acourbot@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 13cffadced770954fc647e1aee8c959a99ecf0f4
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Fri Jun 19 17:37:18 2015 +0200

      drm/nouveau/pm/gk104: add compute signals/sources

      These signals and sources have been reverse engineered from CUPTI
      (Linux). Graphics signals exposed by PerfKit (Windows only) will be
      added later. I need to reverse engineer them and it's a bit painful.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 1914f673ec8b440a03ed56e0a1f42e3565c405c7
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Fri Jun 19 17:37:17 2015 +0200

      drm/nouveau/pm/gk104: re-use gf100_pm_ctor()

      gk104_pm_ctor() is equal to gf100_pm_ctor().

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 261d678d10d9ba866e279e0da0415267f1e6e561
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Fri Jun 19 17:36:38 2015 +0200

      drm/nouveau/pm/nv40: rename pcounter domains to 'pc' instead of 'pm'

      This trivial patch makes thing more consistent since hardware signals
      names are prefixed by 'pcXX'.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit df0b37ee1aa19fc1b948099bf449fdd94f36036c
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Fri Jun 19 17:36:37 2015 +0200

      drm/nouveau/pm: expose name of domains

      This is going to be very useful for GF100+ because each GPC can
      have its own domain of counters.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 85fa319d8a5240bab2e4123cfc9178bff55694ca
  Author: Wei Ni <wni@xxxxxxxxxx>
  Date:   Tue Jun 16 17:35:12 2015 +0800

      drm/nouveau/drm/nouveau/clk: fix tstate to pstate calculation

      According to the tstate calculation in nvkm_clk_tstate(),
      the range of tstate is from -(clk->state_nr - 1) to 0,
      it mean the tstate is negative value. But in nvkm_pstate_work(),
      it use (clk->state_nr - 1 - clk->tstate) to limit pstate,
      it's not correct.
      This patch fix it to use (clk->state_nr - 1 + clk->tstate) to
      limit pstate.

      Signed-off-by: Wei Ni <wni@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit d4a312dc90a7c1079133b038aec0120ee9e3d0ce
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 14 13:50:06 2015 +0200

      drm/nouveau/pm: some fixes related to sources

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit eb94345a93204f0d7d7e0809dde329977522aec0
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 14 13:50:05 2015 +0200

      drm/nouveau/pm: fix signals/sources for GT200+

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 94a2ef69aa0c3612577ab1a6f5c248b206118e68
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 14 13:33:55 2015 +0200

      drm/nouveau/pm/gf100: add compute signals/sources

      These signals and sources have been reverse engineered from CUPTI
      (Linux). Graphics signals exposed by PerfKit (Windows only) will be
      added later. I need to reverse engineer them and it's a bit painful.

      This commit also adds a new class for GF108 and GF117.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 060f50e3b100b8f51fbf165de48c2ea097ff7390
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 14 13:33:54 2015 +0200

      drm/nouveau/pm/gf100: allow to share GPC, HUB and PART domains

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit f21950ea35c86be79c293b199fe48b5152ec8311
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Sun Jun 14 12:20:37 2015 +1000

      drm/nouveau/pm: stack perfdom class under perfmon

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 2d4b94b95f30b0a4244fce4866583094d991c0ec
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Sun Jun 14 12:10:59 2015 +1000

      drm/nouveau/pm: swap perfmon/perfdom code to avoid forward decl in next 
commit

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 06b7972dc915e60051cd6531d988a7c72645d00a
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 7 22:40:28 2015 +0200

      drm/nouveau/pm/nv50: add compute and graphics signals/sources

      These signals and sources have been reverse engineered from NVIDIA
      PerfKit (Windows) and CUPTI (Linux), they will be used to build complex
      hardware events from the userspace.

      This commit also adds a new class for GT200.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 6137b5a7c2aeca9f72229c120504f5d083fa9127
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 7 22:40:27 2015 +0200

      drm/nouveau/pm: allow the userspace to configure sources

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 0f3804360dd4f88332b9c0b2d7cb4c1f30893cc7
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 7 22:40:26 2015 +0200

      drm/nouveau/pm: allow to configure domains instead of simple counters

      Configuring counters from the userspace require the kernel to handle some
      logic related to performance counters. Basically, it has to find a free
      slot to assign a counter, to handle extra counting modes like B4/B6 and it
      must return and error when it can't configure a counter.

      In my opinion, the kernel should not handle all of that logic but it
      should only write the configuration sent by the userspace without
      checking anything. In other words, it should overwrite the configuration
      even if it's already counting and do not return any errors.

      This patch allows the userspace to configure a domain instead of
      separate counters. This has the advantage to move all of the logic to
      the userspace.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 3bfdde178a959cb5e490e4a3a2433c95a9a1af26
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 7 22:40:25 2015 +0200

      drm/nouveau/pm: allow the userspace to schedule hardware counters

      This adds a new method NVIF_PERFCTR_V0_INIT which starts a batch of
      hardware counters for sampling. This will allow the userspace to start
      a monitoring session using the INIT method and to stop it with SAMPLE,
      for example before and after a frame is rendered.

      This commit temporarily breaks nv_perfmon but this is going to be fixed
      with the upcoming patch.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 6f99c84873f455a76a0356061b276bc0c89b5d92
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 7 22:40:24 2015 +0200

      drm/nouveau/pm: implement NVIF_PERFMON_V0_QUERY_SOURCE method

      This allows to query the ID, the mask and the user-readable name of
      sources for each signal.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 50d138d7528c3370ebf3a54079091a35a60a23be
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 7 22:40:23 2015 +0200

      drm/nouveau/pm: allow to query the number of sources for a signal

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit e82661e23c60fc41424ca138820d729d8e4a2226
  Author: Samuel Pitoiset <samuel.pitoisetÅ?gmail.com>
  Date:   Sun Jun 7 22:40:22 2015 +0200

      drm/nouveau/pm: add concept of sources

      A source (or multiplexer) is a tuple addr+mask+shift which allows to
      control a block of signals. The maximum number of sources that a signal
      can define is arbitrary limited to 8 and this should be large enough.
      This patch allows to define multi-level of sources for a signal.

      Each different sources are stored to a global list and will be exposed
      to the userspace through the nvif interface in order to avoid conflicts.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 40a3b22c92ac3dad5adc818a84671bfb00303731
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 7 22:40:21 2015 +0200

      drm/nouveau/pm: allow to monitor hardware signal index 0x00

      This signal index must be always allowed even if it's not clearly
      defined in a domain in order to monitor a counter like 0x03020100
      because it's the default value of signals.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 10a4d2b2489394e32f17afc6cc63ccdfc1b6050b
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 7 22:40:20 2015 +0200

      drm/nouveau/pm: use hardware signals indexes instead of user-readable 
names

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit e4047599aede7a7aca97ace770002c4e29e403d2
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 7 22:40:19 2015 +0200

      drm/nouveau/pm: change signal iter to u16

      16 bits is large enough to store the maximum number of signals available
      for one domain (i.e. 256).

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 3e1b33571ab4937cbd400976a115e4922797559a
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 7 22:40:18 2015 +0200

      drm/nouveau/pm: allow to query signals by domain

      This will allow to configure performance counters with hardware signal
      indexes instead of user-readable names in an upcoming patch.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 45f0f94db285009a41a94e069618ea9bb269af84
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 7 22:40:17 2015 +0200

      drm/nouveau/pm: implement NVIF_PERFMON_V0_QUERY_DOMAIN method

      This allows to query the number of available domains, including the
      number of hardware counter and the number of signals per domain.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 44d9de58ea5633e4f2d062e718016383b28b4eed
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 7 22:40:16 2015 +0200

      drm/nouveau/pm: prevent creating a perfctr object when signals are not 
found

      Since a new class has been introduced to query signals, we can now
      return an error when the userspace wants to monitor unknown signals.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 5a0bc4b5aeba3bb32eb7da6a98108e93bbd64f7e
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 7 22:40:15 2015 +0200

      drm/nouveau/pm: reorganize the nvif interface

      This commit introduces the NVIF_IOCTL_NEW_V0_PERFMON class which will be
      used in order to query domains, signals and sources. This separates the
      querying and the counting interface.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit a78ce96f96d76311fd165207a6ffb64b0ebd85cc
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 7 22:40:14 2015 +0200

      drm/nouveau/pm: remove unused nvkm_perfsig_wrap() function

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Reviewed-by: Martin Peres <martin.peres@xxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 0b7515c035d26faee91b6c3023622385c109b99e
  Author: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
  Date:   Sun Jun 7 22:40:13 2015 +0200

      drm/nouveau/pm: remove pmu signals

      PDAEMON signals don't have to be exposed by the perfmon engine.

      Signed-off-by: Samuel Pitoiset <samuel.pitoiset@xxxxxxxxx>
      Reviewed-by: Martin Peres <martin.peres@xxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 087cd0db87a79b03d35567a32d4a29bee179ad9e
  Author: Roy Spliet <rspliet@xxxxxxxxxx>
  Date:   Sun May 24 10:44:02 2015 +0200

      drm/nouveau/clk/nv50: Enable user reclocking for NVA0

      Tested on a few cards. Probably works quite well for most, given they 
should
      all be GDDR3.

      Signed-off-by: Roy Spliet <rspliet@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 852c619b6e6e33509b405a5ad7400255e02ba8ec
  Author: Roy Spliet <rspliet@xxxxxxxxxx>
  Date:   Sun May 24 10:44:01 2015 +0200

      drm/nouveau/fb/gddr3: Add a few CL and WR entries observed on GTX260

      Signed-off-by: Roy Spliet <rspliet@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 82a74fd2936afd97e83cf195c41dc372ebe9fc84
  Author: Roy Spliet <rspliet@xxxxxxxxxx>
  Date:   Sun May 24 10:44:00 2015 +0200

      drm/nouveau/fb/ramnv50: GDDR3 script for NVA0

      This looks surprisingly similar to scripts on earlier cards as well
      but they don't seem to work just yet. That... and I don't have any, which
      makes it a tough job to reverse engineer.

      Signed-off-by: Roy Spliet <rspliet@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit c25bf7b6155cb1e737c39ab76c844469deed3c98
  Author: Roy Spliet <rspliet@xxxxxxxxxx>
  Date:   Sun May 24 10:43:59 2015 +0200

      drm/nouveau/bios/ramcfg: Separate out RON pull value

      Signed-off-by: Roy Spliet <rspliet@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 2813e19f13035e5971b6f4001782135cfc0909e0
  Author: Roy Spliet <rspliet@xxxxxxxxxx>
  Date:   Sat May 23 10:37:47 2015 +0200

      drm/nouveau/bios/rammap: Parse perf mode as if it's a rammap entry

      Some of the bits in there are similar to the bits in the gt215 rammap.

      Signed-off-by: Roy Spliet <rspliet@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 35fe024acffc2c29bade5a68a09962bf7ea3c8ed
  Author: Roy Spliet <rspliet@xxxxxxxxxx>
  Date:   Sat May 23 10:37:46 2015 +0200

      drm/nouveau/fb/ramnv50: Ressurect timing code, use proper timing/rammap 
handlers

      Might need some generalisation to < GT200. For those: use at your own 
risk!

      Signed-off-by: Roy Spliet <rspliet@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 3b582bed907a26b30e511c83c24254c0ae987f47
  Author: Roy Spliet <rspliet@xxxxxxxxxx>
  Date:   Sat May 23 10:37:45 2015 +0200

      drm/nouveau/fb/ramgt215: No need to cuss like that

      Signed-off-by: Roy Spliet <rspliet@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit d4cc5f0c2aea8350fe07a87cd312ca6a8f1f3129
  Author: Roy Spliet <rspliet@xxxxxxxxxx>
  Date:   Sat May 23 10:37:44 2015 +0200

      drm/nouveau/fb/ramnv50: Make 0x100da0 per-partition

      Like on GT215

      Signed-off-by: Roy Spliet <rspliet@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 7164f4c5b2cfe9aa59d290ea71268022f8950eba
  Author: Roy Spliet <rspliet@xxxxxxxxxx>
  Date:   Sat May 23 10:37:43 2015 +0200

      drm/nouveau/bios/rammap: Pull DLLoff bit out of version 0x10 struct

      In preparation of NV50 reclocking, where there is no version

      Signed-off-by: Roy Spliet <rspliet@xxxxxxxxxx>
      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 4a68ccc8e49854e071e14995de2a35016b240131
  Author: Ben Skeggs <bskeggs@xxxxxxxxxx>
  Date:   Wed Apr 29 10:28:17 2015 +1000

      remove unnecessary include

      This was merged with core/device.h in an earlier commit, but somehow
      never got removed.

      Signed-off-by: Ben Skeggs <bskeggs@xxxxxxxxxx>

  commit 1f821ed7afaa7ed689322ee2369f270e374a6350
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Wed Aug 12 16:30:18 2015 +0530

      PM / OPP: Free resources and properly return error on failure

      _of_init_opp_table_v2() isn't freeing up resources on some errors and
      the error values returned are also not correct always.

      This fixes following problems:
      - Return -ENOENT, if no entries are found in the table.
      - Use IS_ERR() to properly check return value of _find_device_opp().
      - Return error value with PTR_ERR() in above case.
      - Free table if _find_device_opp() fails.

      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit ea0f8acf4d44727f7d3a38072566029bf5e17b44
  Author: Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 14:12:37 2015 +1000

      powerpc/pseries: Cleanup on pci_dn_reconfig_notifier()

      This applies cleanup on pci_dn_reconfig_notifier(), no functional
      changes:

         * Rename variable "pci" to "pdn" to indicate its purpose clearly.
         * The parent node can be released at any time. So it should be
           hold with of_get_parent() before accessing it.
         * The device node doesn't have to have parent node in theory.
           More check on this.

      Signed-off-by: Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 590c7567a2895f939525ead57b0334c6d47986f0
  Author: Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 14:12:36 2015 +1000

      powerpc/pseries: Fix corrupted pdn list

      Commit cca87d30 ("powerpc/pci: Refactor pci_dn") introduced pdn
      list for SRIOV VFs. It means the pdn is be put into the child list
      of its parent pdn when the pdn is created. When doing PCI hot
      unplugging on pSeries, the PCI device node as well as its pdn are
      released through procfs entry "powerpc/ofdt". Some one else grabs
      the memory chunk of the pdn and update it accordingly. At the same
      time, the pdn is still tracked in the child list of parent pdn. It
      leads to corrupted child list in the parent pdn.

      This fixes above issue by removing the pdn from the child list of
      its parent pdn when the device node is detached from the system.
      Note the pdn is free'd when the device node is released if the
      device node is dynamic one. Otherwise, the device node as well
      as the pdn won't be released.

      Fixes: cca87d30 ("powerpc/pci: Refactor pci_dn")
      Cc: stable@xxxxxxxxxxxxxxx # 4.1+
      Reported-by: Santwana Samantray <santwana.samantray@xxxxxxxxxx>
      Signed-off-by: Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 6669cb8bed02ec1b60e80f2e1e317afc28544207
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 20:43:20 2015 -0400

      NFSv4.1/pnfs: Ensure layoutreturn reserves space for the opaque payload

      The "FIXME" is outdated. Flexfiles does add a payload.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit d13549074cf066d6d5bb29903d044beffea342d3
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 20:37:39 2015 -0400

      NFSv4.1/flexfiles: Fix a protocol error in layoutreturn

      According to the flexfiles protocol, the layoutreturn should specify an
      array of errors in the following format:

      struct ff_ioerr4 {
        offset4        ffie_offset;
        length4        ffie_length;
        stateid4       ffie_stateid;
        device_error4  ffie_errors<>;
      };

      This patch fixes up the code to ensure that our ffie_errors is indeed
      encoded as an array (albeit with only a single entry).

      Reported-by: Tom Haynes <thomas.haynes@xxxxxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 55f14da66954083b621debbdbf62c7fc429291e8
  Merge: 69dba9b 3e692f2
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 27 17:14:30 2015 -0700

      Merge branch 'iff_no_queue_fixups'

      Phil Sutter says:

      ====================
      fixup IFF_NO_QUEUE conversion

      This series serves two purposes:

      On one hand it fixes a quite embarrassing bug around the warning I added 
for
      drivers still setting tx_queue_len = 0 to achieve noqueue operation. It 
turned
      out to be quite useless as due to using alloc_netdev(), many in-kernel 
drivers
      fell into the trap by accident, as well. Instead this place serves pretty 
well
      as a sanitizing point to set IFF_NO_QUEUE for drivers not initializing
      tx_queue_len, which in turn allows to drop all special treatment of the 
latter
      being zero since that can not happen anymore without IFF_NO_QUEUE being 
set.

      On the other hand, it provides a better solution for Eric Dumazet's 
concern
      regarding how to assign noqueue to an interface which does not default to 
it
      already. In order to make this possible, noqueue is being registered so 
users
      can 'tc qd add dev eth0 root noqueue'. In addition, it resolves the ugly
      situation of 'tc qd show' not showing noqueue. Finally, the former changes
      allow for some code cleanup.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3e692f21532a54eeb5e6fc0ccc214cfa56fe23d3
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Thu Aug 27 21:21:39 2015 +0200

      net: sched: simplify attach_one_default_qdisc()

      Now that noqueue qdisc can be attached just like any other qdisc, no
      special treatment is necessary anymore when attaching it as default
      qdisc.

      This change has the added benefit that 'tc qdisc show' prints noqueue
      instead of nothing for devices defaulting to noqueue.

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d66d6c3152e8d5a6db42a56bf7ae1c6cae87ba48
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Thu Aug 27 21:21:38 2015 +0200

      net: sched: register noqueue qdisc

      This way users can attach noqueue just like any other qdisc using tc
      without having to mess with tx_queue_len first.

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit db4094bca7a5746bc8e36db0557e8732963e88f0
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Thu Aug 27 21:21:37 2015 +0200

      net: sched: ignore tx_queue_len when assigning default qdisc

      Since alloc_netdev_mqs() sets IFF_NO_QUEUE for drivers not initializing
      tx_queue_len, it is safe to assume that if tx_queue_len is zero,
      dev->priv flags always contains IFF_NO_QUEUE.

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f84bb1eac0275283ccd76455e20f926e186ea8c8
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Thu Aug 27 21:21:36 2015 +0200

      net: fix IFF_NO_QUEUE for drivers using alloc_netdev

      Printing a warning in alloc_netdev_mqs() if tx_queue_len is zero and
      IFF_NO_QUEUE not set is not appropriate since drivers may use one of the
      alloc_netdev* macros instead of alloc_etherdev*, thereby not
      intentionally leaving tx_queue_len uninitialized. Instead check here if
      tx_queue_len is zero and set IFF_NO_QUEUE, so the value of tx_queue_len
      can be ignored in net/sched_generic.c.

      Fixes: 906470c ("net: warn if drivers set tx_queue_len = 0")
      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 69dba9bbc50609f19ee89d62d5199c81fcbc74b2
  Author: Jean Sacren <sakiwit@xxxxxxxxx>
  Date:   Thu Aug 27 18:05:49 2015 -0600

      sock: fix kernel doc error

      The symbol '__sk_reclaim' is not present in the current tree. Apparently
      '__sk_reclaim' was meant to be '__sk_mem_reclaim', so fix it with the
      right symbol name for the kernel doc.

      Signed-off-by: Jean Sacren <sakiwit@xxxxxxxxx>
      Cc: Hideo Aoki <haoki@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 5334c5bdac926c5f8d89729beccb46fe88eda9e7
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Wed Aug 26 21:13:37 2015 +0800

      NFS: Send attributes in OPEN request for NFS4_CREATE_EXCLUSIVE4_1

      Client sends a SETATTR request after OPEN for updating attributes.
      For create file with S_ISGID is set, the S_ISGID in SETATTR will be
      ignored at nfs server as chmod of no PERMISSION.

      v3, same as v2.

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 8c61282ff61c28d5a12bb53f0eaa221d30fd3ae1
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Wed Aug 26 21:12:58 2015 +0800

      NFS: Get suppattr_exclcreat when getting server capabilities

      Create file with attributs as NFS4_CREATE_EXCLUSIVE4_1 mode
      depends on suppattr_exclcreat attribut.

      v3, same as v2.

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 5153aacfb8e2744af68e7b84ccd3f02aeefe4f48
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Wed Aug 26 21:12:15 2015 +0800

      NFS: Update NFS4_BITMAP_SIZE

      v4.1/v4.2 have define attributes at word2, nfs client also support
      security label now.

      v3, same as v2.

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit c5c3fb5f975a8bcc42cd039b83d9a4729ce489bb
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Wed Aug 26 21:11:39 2015 +0800

      NFS: Make opened as optional argument in _nfs4_do_open

      Check opened, only update it when non-NULL.
      It's not needs define an unused value for the opened
      when calling _nfs4_do_open.

      v3, same as v2.

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit ae57ca0f4fce219ef34c28f0edc210598c465a4d
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Wed Aug 26 21:10:55 2015 +0800

      NFS: Check size by inode_newsize_ok in nfs_setattr

      Set rlimit for NFS's files is useless right now.
      For local process's rlimit, it should be checked by nfs client.

      The same, CIFS also call inode_change_ok checking rlimit at its client
      in cifs_setattr_nounix() and cifs_setattr_unix().

      v3, fix bad using of error

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 96601adb745186ccbcf5b078d4756f13381ec2af
  Author: Dan Williams <dan.j.williams@xxxxxxxxx>
  Date:   Mon Aug 24 18:29:38 2015 -0400

      x86, pmem: clarify that ARCH_HAS_PMEM_API implies PMEM mapped WB

      Given that a write-back (WB) mapping plus non-temporal stores is
      expected to be the most efficient way to access PMEM, update the
      definition of ARCH_HAS_PMEM_API to imply arch support for
      WB-mapped-PMEM.  This is needed as a pre-requisite for adding PMEM to
      the direct map and mapping it with struct page.

      The above clarification for X86_64 means that memcpy_to_pmem() is
      permitted to use the non-temporal arch_memcpy_to_pmem() rather than
      needlessly fall back to default_memcpy_to_pmem() when the pcommit
      instruction is not available.  When arch_memcpy_to_pmem() is not
      guaranteed to flush writes out of cache, i.e. on older X86_32
      implementations where non-temporal stores may just dirty cache,
      ARCH_HAS_PMEM_API is simply disabled.

      The default fall back for persistent memory handling remains.  Namely,
      map it with the WT (write-through) cache-type and hope for the best.

      arch_has_pmem_api() is updated to only indicate whether the arch
      provides the proper helpers to meet the minimum "writes are visible
      outside the cache hierarchy after memcpy_to_pmem() + wmb_pmem()".  Code
      that cares whether wmb_pmem() actually flushes writes to pmem must now
      call arch_has_wmb_pmem() directly.

      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: "H. Peter Anvin" <hpa@xxxxxxxxx>
      Reviewed-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      [hch: set ARCH_HAS_PMEM_API=n on x86_32]
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      [toshi: x86_32 compile fixes]
      Signed-off-by: Toshi Kani <toshi.kani@xxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 41e94a851304f7acac840adec4004f8aeee53ad4
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Mon Aug 17 16:00:35 2015 +0200

      add devm_memremap_pages

      This behaves like devm_memremap except that it ensures we have page
      structures available that can back the region.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      [djbw: catch attempts to remap RAM, drop flags]
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 033fbae988fcb67e5077203512181890848b8e90
  Author: Dan Williams <dan.j.williams@xxxxxxxxx>
  Date:   Sun Aug 9 15:29:06 2015 -0400

      mm: ZONE_DEVICE for "device memory"

      While pmem is usable as a block device or via DAX mappings to userspace
      there are several usage scenarios that can not target pmem due to its
      lack of struct page coverage. In preparation for "hot plugging" pmem
      into the vmemmap add ZONE_DEVICE as a new zone to tag these pages
      separately from the ones that are subject to standard page allocations.
      Importantly "device memory" can be removed at will by userspace
      unbinding the driver of the device.

      Having a separate zone prevents allocation and otherwise marks these
      pages that are distinct from typical uniform memory.  Device memory has
      different lifetime and performance characteristics than RAM.  However,
      since we have run out of ZONES_SHIFT bits this functionality currently
      depends on sacrificing ZONE_DMA.

      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Jerome Glisse <j.glisse@xxxxxxxxx>
      [hch: various simplifications in the arch interface]
      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 012dcef3f058385268630c0003e9b7f8dcafbeb4
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Fri Aug 7 17:41:01 2015 -0400

      mm: move __phys_to_pfn and __pfn_to_phys to asm/generic/memory_model.h

      Three architectures already define these, and we'll need them genericly
      soon.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit cb389b9c0e00c30c9daf20287f7d91e2466edbb1
  Author: Dan Williams <dan.j.williams@xxxxxxxxx>
  Date:   Fri Aug 7 17:41:00 2015 -0400

      dax: drop size parameter to ->direct_access()

      None of the implementations currently use it.  The common
      bdev_direct_access() entry point handles all the size checks before
      calling ->direct_access().

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit b0f6446377e72bcabafe83d29bf6a2f6dd19d0b0
  Author: Carol L Soto <clsoto@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 14:43:26 2015 -0500

      net/mlx4_core: Fix unintialized variable used in error path

      The uninitialized value name in mlx4_en_activate_cq was used in order
      to print an error message. Fixing it by replacing it with cq->vector.

      Signed-off-by: Matan Barak <matanb@xxxxxxxxxxxx>
      Signed-off-by: Carol L Soto <clsoto@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4a9bf88a5caa8495b5eb2b738d5fb40924bbc538
  Merge: a06a757 67a3e8f
  Author: Dan Williams <dan.j.williams@xxxxxxxxx>
  Date:   Thu Aug 27 19:40:26 2015 -0400

      Merge branch 'pmem-api' into libnvdimm-for-next

  commit 9293267a3e2a7a2555d8ddc8f9301525e5b03b1b
  Author: Carol L Soto <clsoto@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 14:43:25 2015 -0500

      net/mlx4_core: Capping number of requested MSIXs to MAX_MSIX

      We currently manage IRQs in pool_bm which is a bit field
      of MAX_MSIX bits. Thus, allocating more than MAX_MSIX
      interrupts can't be managed in pool_bm.
      Fixing this by capping number of requested MSIXs to
      MAX_MSIX.

      Signed-off-by: Matan Barak <matanb@xxxxxxxxxxxx>
      Signed-off-by: Carol L Soto <clsoto@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b22fbf22f8469d8cacb6fcf5d266426826e1137d
  Author: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 14:19:20 2015 -0700

      bridge: fdb: rearrange net_bridge_fdb_entry

      While looking into fixing the local entries scalability issue I noticed
      that the structure is badly arranged because vlan_id would fall in a
      second cache line while keeping rcu which is used only when deleting
      in the first, so re-arrange the structure and push rcu to the end so we
      can get 16 bytes which can be used for other fields (by pushing rcu
      fully in the second 64 byte chunk). With this change all the core
      necessary information when doing fdb lookups will be available in a
      single cache line.

      pahole before (note vlan_id):
      struct net_bridge_fdb_entry {
        struct hlist_node          hlist;                /*     0    16 */
        struct net_bridge_port *   dst;                  /*    16     8 */
        struct callback_head       rcu;                  /*    24    16 */
        long unsigned int          updated;              /*    40     8 */
        long unsigned int          used;                 /*    48     8 */
        mac_addr                   addr;                 /*    56     6 */
        unsigned char              is_local:1;           /*    62: 7  1 */
        unsigned char              is_static:1;          /*    62: 6  1 */
        unsigned char              added_by_user:1;      /*    62: 5  1 */
        unsigned char              added_by_external_learn:1; /*    62: 4  1 */

        /* XXX 4 bits hole, try to pack */
        /* XXX 1 byte hole, try to pack */

        /* --- cacheline 1 boundary (64 bytes) --- */
        __u16                      vlan_id;              /*    64     2 */

        /* size: 72, cachelines: 2, members: 11 */
        /* sum members: 65, holes: 1, sum holes: 1 */
        /* bit holes: 1, sum bit holes: 4 bits */
        /* padding: 6 */
        /* last cacheline: 8 bytes */
      }

      pahole after (note vlan_id):
      struct net_bridge_fdb_entry {
        struct hlist_node          hlist;                /*     0    16 */
        struct net_bridge_port *   dst;                  /*    16     8 */
        long unsigned int          updated;              /*    24     8 */
        long unsigned int          used;                 /*    32     8 */
        mac_addr                   addr;                 /*    40     6 */
        __u16                      vlan_id;              /*    46     2 */
        unsigned char              is_local:1;           /*    48: 7  1 */
        unsigned char              is_static:1;          /*    48: 6  1 */
        unsigned char              added_by_user:1;      /*    48: 5  1 */
        unsigned char              added_by_external_learn:1; /*    48: 4  1 */

        /* XXX 4 bits hole, try to pack */
        /* XXX 7 bytes hole, try to pack */

        struct callback_head       rcu;                  /*    56    16 */
        /* --- cacheline 1 boundary (64 bytes) was 8 bytes ago --- */

        /* size: 72, cachelines: 2, members: 11 */
        /* sum members: 65, holes: 1, sum holes: 7 */
        /* bit holes: 1, sum bit holes: 4 bits */
        /* last cacheline: 8 bytes */
      }

      Signed-off-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 67a3e8fe90156d41cd480d3dfbb40f3bc007c262
  Author: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 13:14:20 2015 -0600

      nd_blk: change aperture mapping from WC to WB

      This should result in a pretty sizeable performance gain for reads.  For
      rough comparison I did some simple read testing using PMEM to compare
      reads of write combining (WC) mappings vs write-back (WB).  This was
      done on a random lab machine.

      PMEM reads from a write combining mapping:
        # dd of=/dev/null if=/dev/pmem0 bs=4096 count=100000
        100000+0 records in
        100000+0 records out
        409600000 bytes (410 MB) copied, 9.2855 s, 44.1 MB/s

      PMEM reads from a write-back mapping:
        # dd of=/dev/null if=/dev/pmem0 bs=4096 count=1000000
        1000000+0 records in
        1000000+0 records out
        4096000000 bytes (4.1 GB) copied, 3.44034 s, 1.2 GB/s

      To be able to safely support a write-back aperture I needed to add
      support for the "read flush" _DSM flag, as outlined in the DSM spec:

      http://pmem.io/documents/NVDIMM_DSM_Interface_Example.pdf

      This flag tells the ND BLK driver that it needs to flush the cache lines
      associated with the aperture after the aperture is moved but before any
      new data is read.  This ensures that any stale cache lines from the
      previous contents of the aperture will be discarded from the processor
      cache, and the new data will be read properly from the DIMM.  We know
      that the cache lines are clean and will be discarded without any
      writeback because either a) the previous aperture operation was a read,
      and we never modified the contents of the aperture, or b) the previous
      aperture operation was a write and we must have written back the dirtied
      contents of the aperture to the DIMM before the I/O was completed.

      In order to add support for the "read flush" flag I needed to add a
      generic routine to invalidate cache lines, mmio_flush_range().  This is
      protected by the ARCH_HAS_MMIO_FLUSH Kconfig variable, and is currently
      only supported on x86.

      Signed-off-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit d3a730971b90dd150e43c924b1b4dec8197fccad
  Merge: c4d3e22 7b85b4d
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 27 16:35:51 2015 -0700

      Merge branch 'ovs-v6-build-err'

      Joe Stringer says:

      ====================
      OPENVSWITCH && !NETFILTER build fix.

      Fix issues reported by kbuild test robot:

      All error/warnings (new ones prefixed by >>):

         net/openvswitch/actions.c: In function 'ovs_fragment':
      >> net/openvswitch/actions.c:705:16: error: implicit declaration of
      function 'nf_get_ipv6_ops' [-Werror=implicit-function-declaration]
            const struct nf_ipv6_ops *v6ops = nf_get_ipv6_ops();
                         ^
      >> net/openvswitch/actions.c:705:37: warning: initialization makes
      pointer from integer without a cast
            const struct nf_ipv6_ops *v6ops = nf_get_ipv6_ops();
                                              ^
      >> net/openvswitch/actions.c:707:19: error: storage size of 'ovs_rt'
      isn't known
            struct rt6_info ovs_rt;
                            ^
      >> net/openvswitch/actions.c:724:8: error: dereferencing pointer to
      incomplete type
            v6ops->fragment(skb->sk, skb, ovs_vport_output);
                 ^
      >> net/openvswitch/actions.c:707:19: warning: unused variable 'ovs_rt'
      [-Wunused-variable]
            struct rt6_info ovs_rt;
                            ^
         cc1: some warnings being treated as errors
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7b85b4dff2caa5e52726093fd058f87bbc14f156
  Author: Joe Stringer <joestringer@xxxxxxxxxx>
  Date:   Thu Aug 27 15:25:46 2015 -0700

      openvswitch: Include ip6_fib.h.

      kbuild test robot reports that certain configurations will not
      automatically pick up on the "struct rt6_info" definition, so explicitly
      include the header for this structure.

      Fixes: 7f8a436 "openvswitch: Add conntrack action"
      Signed-off-by: Joe Stringer <joestringer@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2e4cfae2a8e3f9ce3925c9b6e9e865fe8476fc4f
  Author: Joe Stringer <joestringer@xxxxxxxxxx>
  Date:   Thu Aug 27 15:25:45 2015 -0700

      netfilter: Define v6ops in !CONFIG_NETFILTER case.

      When CONFIG_OPENVSWITCH is set, and CONFIG_NETFILTER is not set, the
      openvswitch IPv6 fragmentation handling cannot refer to ipv6_ops because
      it isn't defined. Add a dummy version to avoid #ifdefs in source files.

      Fixes: 7f8a436 "openvswitch: Add conntrack action"
      Signed-off-by: Joe Stringer <joestringer@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a06a7576526e10a99ea7721533e7f2df3e26baad
  Author: yalin wang <yalin.wang2010@xxxxxxxxx>
  Date:   Thu Aug 27 19:35:48 2015 -0400

      nvdimm: change to use generic kvfree()

      Signed-off-by: yalin wang <yalin.wang2010@xxxxxxxxx>
      Reviewed-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit c4d3e22438d405b84c00710aad177184d789353f
  Merge: ec5d165 1e81779
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 27 16:31:17 2015 -0700

      Merge branch 'mlxsw-small-updates'

      Jiri Pirko says:

      ====================
      mlxsw: small driver update

      Ido Schimmel (2):
        mlxsw: Remove duplicate included header
        mlxsw: Make mailboxes 4KB aligned

      Jiri Pirko (1):
        mlxsw: adjust transmit fail log message level in __mlxsw_emad_transmit
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1e81779ae41e5d14174ce5e61790ace34914ade0
  Author: Ido Schimmel <idosch@xxxxxxxxxxxx>
  Date:   Thu Aug 27 17:59:57 2015 +0200

      mlxsw: Make mailboxes 4KB aligned

      The HW-SW contract requires mailboxes passed to the firmware to be 4KB
      aligned. Previously, these mailboxes were mapped using streaming DMA
      routines, which do not guarantee the bus addresses to be 4KB aligned.
      Under certain conditions this constraint was indeed violated and errors
      were observed.

      By using consistent DMA mapping routines together with a mailbox size of
      4KB we are guaranteed not to violate the constraint.

      Signed-off-by: Ido Schimmel <idosch@xxxxxxxxxxxx>
      Signed-off-by: Jiri Pirko <jiri@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 262df6919edd837c0745fc2a751364af671feaf7
  Author: Jiri Pirko <jiri@xxxxxxxxxxxx>
  Date:   Thu Aug 27 17:59:56 2015 +0200

      mlxsw: adjust transmit fail log message level in __mlxsw_emad_transmit

      When transmit fails, it is an error, not a warning.

      Signed-off-by: Jiri Pirko <jiri@xxxxxxxxxxxx>
      Signed-off-by: Ido Schimmel <idosch@xxxxxxxxxxxx>
      Signed-off-by: Elad Raz <eladr@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a585dabd96f3ccb4ada36cf616ab4477873b506c
  Author: Ido Schimmel <idosch@xxxxxxxxxxxx>
  Date:   Thu Aug 27 17:59:55 2015 +0200

      mlxsw: Remove duplicate included header

      Signed-off-by: Ido Schimmel <idosch@xxxxxxxxxxxx>
      Signed-off-by: Jiri Pirko <jiri@xxxxxxxxxxxx>
      Signed-off-by: Elad Raz <eladr@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 718e38b4d96085b4dab08d3d32e5e033aa1ba6e9
  Author: Roger Quadros <rogerq@xxxxxx>
  Date:   Wed Jul 8 14:50:19 2015 +0300

      mtd: mtd_oobtest: Fix the address offset with vary_offset case

      When vary_offset is set (e.g. test case 3), the offset is not always
      zero so memcmpshow() will show the wrong offset in the print message.
      To fix this we introduce a new function memcmpshowoffset() which takes
      offset as a parameter and displays the right offset and use it in
      the case where offset is non zero.

      The old memcmpshow() functionality is preserved by converting it into
      a macro with offset preset to 0.

      Signed-off-by: Roger Quadros <rogerq@xxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit ec5d165555ea02ac9b69bbed8ff8f1de7c782f66
  Merge: 547c890 686ed30
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 27 16:28:35 2015 -0700

      Merge branch 'rocker-master-change'

      Jiri Pirko says:

      ====================
      rocker: make master change handling nicer

      Jiri Pirko (6):
        net: introduce change upper device notifier change info
        net: add netif_is_bridge_master helper
        net: add netif_is_ovs_master helper with IFF_OPENVSWITCH private flag
        net: kill long time unused bonding private flags
        rocker: use new helper to figure out master kind
        rocker: use change upper info
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 686ed3047e8727fe3c7eb5a3c63a5e9b1556bbbb
  Author: Jiri Pirko <jiri@xxxxxxxxxxxx>
  Date:   Thu Aug 27 09:31:23 2015 +0200

      rocker: use change upper info

      Since now information about changed upper is passed along, benefit from
      that and use this info directly.

      This also fixes possible issues that could happen when non-master device
      is added (current code does not distinguish between master and non-master
      upper device).

      Signed-off-by: Jiri Pirko <jiri@xxxxxxxxxxxx>
      Acked-by: Scott Feldman <sfeldma@xxxxxxxxx
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit fb4bf214346e37778bcf00a89bfb90112859b23c
  Author: Jiri Pirko <jiri@xxxxxxxxxxxx>
  Date:   Thu Aug 27 09:31:22 2015 +0200

      rocker: use new helper to figure out master kind

      Looking at rtnl kind string is kind of ugly. So use new helpers to do
      this in nicer way.

      Signed-off-by: Jiri Pirko <jiri@xxxxxxxxxxxx>
      Acked-by: Scott Feldman <sfeldma@xxxxxxxxx
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0dc1549bfd67053181415a3f7544628a6bcd2a08
  Author: Jiri Pirko <jiri@xxxxxxxxxxxx>
  Date:   Thu Aug 27 09:31:21 2015 +0200

      net: kill long time unused bonding private flags

      We don't use them for years, just kill them now.

      Signed-off-by: Jiri Pirko <jiri@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 35d4e1725202e6656fcfa8b88447327ad3ae0c0c
  Author: Jiri Pirko <jiri@xxxxxxxxxxxx>
  Date:   Thu Aug 27 09:31:20 2015 +0200

      net: add netif_is_ovs_master helper with IFF_OPENVSWITCH private flag

      Add this helper so code can easily figure out if netdev is openswitch.

      Signed-off-by: Jiri Pirko <jiri@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0894ae3f0a587bda9733ec4a4b67af7ded3a9498
  Author: Jiri Pirko <jiri@xxxxxxxxxxxx>
  Date:   Thu Aug 27 09:31:19 2015 +0200

      net: add netif_is_bridge_master helper

      Add this helper so code can easily figure out if netdev is a bridge.

      Signed-off-by: Jiri Pirko <jiri@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0e4ead9d7b3655d76371604abb9b0dcc4e79bb7d
  Author: Jiri Pirko <jiri@xxxxxxxxxxxx>
  Date:   Thu Aug 27 09:31:18 2015 +0200

      net: introduce change upper device notifier change info

      Add info that is passed along with NETDEV_CHANGEUPPER event.

      Signed-off-by: Jiri Pirko <jiri@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0bdb8fa6ecb4a356f26c6874db51b5488706e088
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 19:17:33 2015 -0400

      NFSv4.1/pNFS: pnfs_mark_matching_lsegs_return must notify of layout return

      It's not sufficient to just mark the layout segment for layout return. We
      also need to set the NFS_LAYOUT_RETURN_BEFORE_CLOSE flag in the layout 
header.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 547c890cfd26010e01b3faf98f29ca9b2252c8d8
  Author: Jason Wang <jasowang@xxxxxxxxxx>
  Date:   Thu Aug 27 14:53:06 2015 +0800

      virtio-net: avoid unnecessary sg initialzation

      Usually an skb does not have up to MAX_SKB_FRAGS frags. So no need to
      initialize the unuse part of sg. This patch initialize the sg based on
      the real number it will used:

      - during xmit, it could be inferred from nr_frags and can_push.
      - for small receive buffer, it will also be 2.

      Cc: Michael S. Tsirkin <mst@xxxxxxxxxx>
      Signed-off-by: Jason Wang <jasowang@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 5e0aa59728854837a7256e21644596f21a16ce0f
  Merge: d2d427b 66d4700
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 27 15:42:48 2015 -0700

      Merge branch 'geneve-consolidation'

      Pravin B Shelar says:

      ====================
      Geneve: Add support for tunnel metadata mode

      Following patches adds support for Geneve tunnel metadata
      mode. OVS can make use of Geneve net-device with tunnel
      metadata API from kernel.

      This also allows us to consolidate Geneve implementation
      from two kernel modules geneve_core and geneve to single
      geneve module. geneve_core module was targeted to share
      Geneve encap and decap code between Geneve netdevice and
      OVS Geneve tunnel implementation, Since OVS no longer
      needs these API, Geneve code can be consolidated into
      single geneve module.

      v3-v4:
      - Drop NETIF_F_NETNS_LOCAL feature.
      - Fix geneve device newlink check

      v2-v3:
      - make tunnel medata device and regular device mutually exclusive.
      - Fix Kconfig dependency for Geneve.
      - Fix dst-port netlink encoding.
      - drop changelink patch.

      v1-v2:
      - Replaced per hash table tunnel pointer (metadata enabled) with flag.
      - Added support for changelink.
      - Improve geneve device route lookup with more parameters.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 66d47003f7c1034d66776ab869030f73f6c9ce81
  Author: Pravin B Shelar <pshelar@xxxxxxxxxx>
  Date:   Wed Aug 26 23:46:55 2015 -0700

      geneve: Move device hash table to geneve socket.

      This change simplifies Geneve Tunnel hash table management.

      Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Reviewed-by: Jesse Gross <jesse@xxxxxxxxxx>
      Reviewed-by: John W. Linville <linville@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 371bd1061d29562e6423435073623add8c475ee2
  Author: Pravin B Shelar <pshelar@xxxxxxxxxx>
  Date:   Wed Aug 26 23:46:54 2015 -0700

      geneve: Consolidate Geneve functionality in single module.

      geneve_core module handles send and receive functionality.
      This way OVS could use the Geneve API. Now with use of
      tunnel meatadata mode OVS can directly use Geneve netdevice.
      So there is no need for separate module for Geneve. Following
      patch consolidates Geneve protocol processing in single module.

      Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Reviewed-by: Jesse Gross <jesse@xxxxxxxxxx>
      Acked-by: John W. Linville <linville@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6b001e682e90d7edf21f93687f5c3b39d412ad6c
  Author: Pravin B Shelar <pshelar@xxxxxxxxxx>
  Date:   Wed Aug 26 23:46:53 2015 -0700

      openvswitch: Use Geneve device.

      With help of tunnel metadata mode OVS can directly use
      Geneve devices to implement Geneve tunnels.
      This patch removes all of the OVS specific Geneve code
      and make OVS use a Geneve net_device. Basic geneve vport
      is still there to handle compatibility with current
      userspace application.

      Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Reviewed-by: Jesse Gross <jesse@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e305ac6cf5a1e1386aedce7ef9cb773635d5845c
  Author: Pravin B Shelar <pshelar@xxxxxxxxxx>
  Date:   Wed Aug 26 23:46:52 2015 -0700

      geneve: Add support to collect tunnel metadata.

      Following patch create new tunnel flag which enable
      tunnel metadata collection on given device. These devices
      can be used by tunnel metadata based routing or by OVS.
      Geneve Consolidation patch get rid of collect_md_tun to
      simplify tunnel lookup further.

      Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Reviewed-by: Jesse Gross <jesse@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit cd7918b35f0ee0106bbe2ce4a14b5a8c9763deb8
  Author: Pravin B Shelar <pshelar@xxxxxxxxxx>
  Date:   Wed Aug 26 23:46:51 2015 -0700

      geneve: Make dst-port configurable.

      Add netlink interface to configure Geneve UDP port number.
      So that user can configure it for a Gevene device.

      Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Reviewed-by: Jesse Gross <jesse@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Acked-by: John W. Linville <linville@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c29a70d2cadfea443c027d23481f820530b70057
  Author: Pravin B Shelar <pshelar@xxxxxxxxxx>
  Date:   Wed Aug 26 23:46:50 2015 -0700

      tunnel: introduce udp_tun_rx_dst()

      Introduce function udp_tun_rx_dst() to initialize tunnel dst on
      receive path.

      Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Reviewed-by: Jesse Gross <jesse@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 980c394c53e420f7e5484d011378a4bec861ec7a
  Author: Pravin B Shelar <pshelar@xxxxxxxxxx>
  Date:   Wed Aug 26 23:46:49 2015 -0700

      geneve: Use skb mark and protocol to lookup route.

      On packet transmit path geneve need to lookup route. Following
      patch improves route lookup using more parameters.

      Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Reviewed-by: Jesse Gross <jesse@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Acked-by: John W. Linville <linville@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 87cd3dcaf4bd135e44ee187baf788deeb011e58d
  Author: Pravin B Shelar <pshelar@xxxxxxxxxx>
  Date:   Wed Aug 26 23:46:48 2015 -0700

      geneve: Initialize ethernet address in device setup.

      Signed-off-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Reviewed-by: Jesse Gross <jesse@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Acked-by: John W. Linville <linville@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d2d427b3927bd7a0348fc7f323d0e291f79a2779
  Author: Toshiaki Makita <makita.toshiaki@xxxxxxxxxxxxx>
  Date:   Thu Aug 27 15:32:26 2015 +0900

      bridge: Add netlink support for vlan_protocol attribute

      This enables bridge vlan_protocol to be configured through netlink.

      When CONFIG_BRIDGE_VLAN_FILTERING is disabled, kernel behaves the
      same way as this feature is not implemented.

      Signed-off-by: Toshiaki Makita <makita.toshiaki@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9c9a6524b5fdf6cb57c9ff627b7f242a6a4e0b00
  Author: Yuval Mintz <Yuval.Mintz@xxxxxxxxxx>
  Date:   Thu Aug 27 08:03:08 2015 +0300

      bnx2x: Add new device ids under the Qlogic vendor

      This adds support for 3 new PCI device combinations -
      1077:16a1, 1077:16a4 and 1077:16ad.

      Signed-off-by: Yuval Mintz <Yuval.Mintz@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9fae100cbd1049057bbc3e3180a6de339b9b73a9
  Author: Bamvor Jian Zhang <bamvor.zhangjian@xxxxxxxxxx>
  Date:   Fri Aug 14 21:43:38 2015 +0800

      selftests: breakpoints: fix installing error on the architecture except 
x86

      Signed-off-by: Bamvor Jian Zhang <bamvor.zhangjian@xxxxxxxxxx>
      Signed-off-by: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>

  commit a7d0f078892ee5e737cbe79541353c630bc71651
  Author: Bamvor Jian Zhang <bamvor.zhangjian@xxxxxxxxxx>
  Date:   Fri Aug 14 21:43:35 2015 +0800

      selftests: check before install

      When the test cases is not supported by the current architecture
      the install files(TEST_PROGS, TEST_PROGS_EXTENDED and TEST_FILES)
      will be empty. Check it before installation to dismiss a failure
      reported by install program.

      Signed-off-by: Bamvor Jian Zhang <bamvor.zhangjian@xxxxxxxxxx>
      Signed-off-by: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>

  commit f21fb798fe38cf87b177d45820991f0e315c0ba8
  Author: Naresh Kamboju <naresh.kamboju@xxxxxxxxxx>
  Date:   Tue Aug 18 12:31:59 2015 +0530

      selftests/zram: Adding zram tests

      zram: Compressed RAM based block devices
      ----------------------------------------
      The zram module creates RAM based block devices named /dev/zram<id>
      (<id> = 0, 1, ...). Pages written to these disks are compressed and stored
      in memory itself. These disks allow very fast I/O and compression provides
      good amounts of memory savings. Some of the usecases include /tmp storage,
      use as swap disks, various caches under /var and maybe many more :)

      Statistics for individual zram devices are exported through sysfs nodes at
      /sys/block/zram<id>/

      This patch is to validate the zram functionality. Test interacts with 
block
      device /dev/zram<id> and sysfs nodes /sys/block/zram<id>/

      zram.sh: sanity check of CONFIG_ZRAM and to run zram01 and zram02 tests
      zram01.sh: creates general purpose ram disks with different filesystems
      zram02.sh: creates block device for swap
      zram_lib.sh: create library with initialization/cleanup functions
      README: ZRAM introduction and Kconfig required.
      Makefile: To run zram tests

      zram test output
      -----------------
      ./zram.sh
      --------------------
      running zram tests
      --------------------
      /dev/zram0 device file found: OK
      set max_comp_streams to zram device(s)
      /sys/block/zram0/max_comp_streams = '2' (1/1)
      zram max streams: OK
      test that we can set compression algorithm
      supported algs: [lzo] lz4
      /sys/block/zram0/comp_algorithm = 'lzo' (1/1)
      zram set compression algorithm: OK
      set disk size to zram device(s)
      /sys/block/zram0/disksize = '2097152' (1/1)
      zram set disksizes: OK
      set memory limit to zram device(s)
      /sys/block/zram0/mem_limit = '2M' (1/1)
      zram set memory limit: OK
      make ext4 filesystem on /dev/zram0
      zram mkfs.ext4: OK
      mount /dev/zram0
      zram mount of zram device(s): OK
      fill zram0...
      zram0 can be filled with '1932' KB
      zram used 3M, zram disk sizes 2097152M
      zram compression ratio: 699050.66:1: OK
      zram cleanup
      zram01 : [PASS]

      /dev/zram0 device file found: OK
      set max_comp_streams to zram device(s)
      /sys/block/zram0/max_comp_streams = '2' (1/1)
      zram max streams: OK
      set disk size to zram device(s)
      /sys/block/zram0/disksize = '1048576' (1/1)
      zram set disksizes: OK
      set memory limit to zram device(s)
      /sys/block/zram0/mem_limit = '1M' (1/1)
      zram set memory limit: OK
      make swap with zram device(s)
      done with /dev/zram0
      zram making zram mkswap and swapon: OK
      zram swapoff: OK
      zram cleanup
      zram02 : [PASS]

      CC: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      CC: Tyler Baker <tyler.baker@xxxxxxxxxx>
      CC: Milosz Wasilewski <milosz.wasilewski@xxxxxxxxxx>
      CC: Alexey Kodanev <alexey.kodanev@xxxxxxxxxx>
      Signed-off-by: Naresh Kamboju <naresh.kamboju@xxxxxxxxxx>
      Signed-off-by: Alexey Kodanev <alexey.kodanev@xxxxxxxxxx>
      Reviewed-By: Tyler Baker <tyler.baker@xxxxxxxxxx>
      Signed-off-by: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>

  commit 3f1d44ae640172482a8c0125efe9ca93331b056b
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Thu Aug 27 11:13:36 2015 +0100

      Documentation/Changes: Now need OpenSSL devel packages for module signing

      The module signing script (sign-file) used to be a wrapper around the
      openssl program.  It has now been replaced by a C program that uses the
      crypto library from the OpenSSL package meaning that the OpenSSL devel
      packages are necessary to provide the devel library link and the header
      files.

      This would be openssl-devel on Fedora and libssl-dev on Debian.

      Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
      Acked-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      Signed-off-by: James Morris <james.l.morris@xxxxxxxxxx>

  commit 31cb5c9e69cedd4bdd7bb7b442582914ceae8c2b
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Wed Aug 26 20:27:05 2015 -0700

      smsc911x: Ignore error return from device_get_phy_mode()

      Commit 62ee783bf1f8 ("smsc911x: Fix crash seen if neither ACPI nor OF is
      configured or used") introduces an error check for the return value from
      device_get_phy_mode() and bails out if there is an error. Unfortunately,
      there are configurations where no phy is configured. Those configurations
      now fail.

      To fix the problem, accept error returns from device_get_phy_mode(),
      and use the return value from device_property_read_u32() to determine
      if there is a suitable firmware interface to read the configuration.

      Fixes: 62ee783bf1f8 ("smsc911x: Fix crash seen if neither ACPI nor OF is 
configured or used")
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4fa7508e9f1c64ae39516e40ee5495aaa4616ad7
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Wed Aug 26 20:27:04 2015 -0700

      device property: Return -ENXIO if there is no suitable FW interface

      Return -ENXIO if device property array access functions don't find
      a suitable firmware interface.

      This lets drivers decide if they should use available platform data
      instead.

      Cc: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Tested-by: Jeremy Linton <jeremy.linton@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3b3ae880266d148bf73a573a766bc9b78c08d805
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Wed Aug 26 23:00:06 2015 +0200

      net: sched: consolidate tc_classify{,_compat}

      For classifiers getting invoked via tc_classify(), we always need an
      extra function call into tc_classify_compat(), as both are being
      exported as symbols and tc_classify() itself doesn't do much except
      handling of reclassifications when tp->classify() returned with
      TC_ACT_RECLASSIFY.

      CBQ and ATM are the only qdiscs that directly call into 
tc_classify_compat(),
      all others use tc_classify(). When tc actions are being configured
      out in the kernel, tc_classify() effectively does nothing besides
      delegating.

      We could spare this layer and consolidate both functions. pktgen on
      single CPU constantly pushing skbs directly into the netif_receive_skb()
      path with a dummy classifier on ingress qdisc attached, improves
      slightly from 22.3Mpps to 23.1Mpps.

      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Acked-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit fe2188236ad04618b25978c44d896c16613de9aa
  Merge: 0118e01 bf41846
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 27 14:06:09 2015 -0700

      Merge branch 'master' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue

      Jeff Kirsher says:

      ====================
      Intel Wired LAN Driver Updates 2015-08-26

      This series contains updates to i40e and i40evf only.

      Anjali provides a fix for i40e where the part is not receiving multicast
      or VLAN tagged packets when in promiscuous mode.  This can occur when a
      software bridge is created on top of the device.  Fixed the legacy and MSI
      interrupt mode in the driver, which was non-existent before since we
      were assuming MSIX was the only mode that the driver ran in.  Fixed the
      i40evf driver, where the wrong defines were getting used in the VF
      driver.

      Mitch fixes a sparse warning about comparing __le16 to u16 so use
      le16_to_cpu() to resolve the warning.  Also fixed a dyslexic spelling
      of invalid.

      Shannon adds port.crc_errors to receive CRC error counter, since it
      is a receive counter.

      Catherine provides a fix to move the stopping of the service task and
      flow director to i40e_shutdown() instead of i40e_suspend().

      Greg fixes the ethtool offline diagnostic with netqueues, which just need
      to be treated the same as virtual functions when someone wants to run the
      ethtool offline diagnostic test.  Also fixed up code comments for the
      i40e ethtool diagnostic test function.  Cleans up redundant and unneeded
      messages, since the kernel notifies all VXLAN capable registered drivers,
      so no need to log this.

      Neerav adds the ability to update statistics per VEB per traffic class
      and dump it via ethtool.

      Jingjing adds support for virtual channel offload to support receive
      polling mode in the VF driver.

      v2: dropped patch which added helper functions into a header, feedback 
from
          David Miller was to make the functions constant to reduce the driver
          footprint, so remove the patch while Anjali works on making the 
requested
          changes.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0118e01935cae83261f1c52f1c88c6514ef330f6
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Wed Aug 26 11:49:35 2015 -0700

      smsc9194: Remove uncompilable #if 0'd use of pr_dbg

      No pr_dbg method exists.

      While this code is #if 0'd, it'd be nicer to
      use the generic hex_dump, so use it instead.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 763a32bd0fea2893d4b87f20f9f9c278d776fbf6
  Merge: 21c721f 9b00eb4
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 27 13:51:38 2015 -0700

      Merge branch 'xgene-tso'

      Iyappan Subramanian says:

      ====================
      drivers: net: xgene: Add TSO support

      Adding TSO support for 10GbE

      iperf Tx data rate without TSO: 3.42 Gbps
                            with TSO: 9.41 Gbps

      v2: Address review comments from v1
          - skb_linearize() if headers doesn't fit in 3 hardware buffers

      v1:
      * Initial version
      ====================

      Signed-off-by: Iyappan Subramanian <isubramanian@xxxxxxx>

  commit 9b00eb494dc7c19ee69afef46e864f842cc1824f
  Author: Iyappan Subramanian <isubramanian@xxxxxxx>
  Date:   Wed Aug 26 11:48:06 2015 -0700

      drivers: net: xgene: Adding support for TSO

      Signed-off-by: Iyappan Subramanian <isubramanian@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 949c40bb16bcf5f9584ce585f8a477481ab6aa80
  Author: Iyappan Subramanian <isubramanian@xxxxxxx>
  Date:   Wed Aug 26 11:48:05 2015 -0700

      drivers: net: xgene: Preparatory patch for TSO support

      - Rearranged descriptor writes
      - Moved increment command write to xgene_enet_setup_tx_desc

      Signed-off-by: Iyappan Subramanian <isubramanian@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 152933244a1a3232b32d2e973754d03321a5b0c6
  Author: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
  Date:   Thu Aug 27 21:09:04 2015 +0800

      spi: mediatek: fix SPI_CMD_PAUSE_IE macro error

      enable pause interrupt should use SPI_CMD_PAUSE_IE MACRO,
      so fix it.

      Signed-off-by: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 2002e90412df17ef7f714be62ed96a3c80b2f907
  Merge: 02a9547 3b7ce99
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Thu Aug 27 20:30:46 2015 +0100

      Merge branch 'topic/ics43432' of 
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-gtm601

  commit d6aa1db3eac37cc92d67c3f66eab1b46d5bb9f7b
  Merge: 3b7ce99 02a9547
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Thu Aug 27 20:29:18 2015 +0100

      Merge branch 'topic/gtm601' of 
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-ics43432

  commit 054bc835d27b558393541c32a209c01d89cda75a
  Author: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 17:04:01 2015 +0200

      ASoC: bcm2835-i2s: Fix module autoload for OF platform drivers

      These platform drivers have a OF device ID table but the OF module
      alias information is not created so module autoloading won't work.

      Signed-off-by: Luis de Bethencourt <luis@xxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit f2988afedf2c19880a3c65d79dfc7939e1b53d8a
  Author: Oder Chiou <oder_chiou@xxxxxxxxxxx>
  Date:   Thu Aug 27 15:14:51 2015 +0800

      ASoC: rt5645: Prevent the pop sound of the headphone while rebooting or 
shutdowning

      Add i2c shutdown function to prevent the pop sound of the headphone while
      the system is rebooting or shutdowning. It de-initials the jack detection
      function, and it cannot be turned off in _BIAS_OFF. If we don't de-initial
      it, the pop sound will be heard in the situation of powering off. And
      replace the related register settings from magic number to meaningful
      defined name.

      Signed-off-by: Oder Chiou <oder_chiou@xxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit ba30011577330b7e29ecb5916d89c6db9fbc5b3d
  Author: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
  Date:   Wed Aug 12 10:58:22 2015 +0200

      clk: s5pv210: add missing call to samsung_clk_of_add_provider()

      Commit d5e136a21b2028fb1f45143ea7112d5869bfc6c7 ("clk: samsung: Register
      clk provider only after registering its all clocks", merged to v3.17-rc1)
      modified a way that driver registers registers to core framework. This
      change has not been applied to s5pv210 clocks driver, which has been
      merged in parallel to that commit. This patch adds a missing call to
      samsung_clk_of_add_provider(), so the driver is operational again.

      Signed-off-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      CC: stable@xxxxxxxxxxxxxxx  # v3.17+
      Acked-by: Tomasz Figa <tomasz.figa@xxxxxxxxx>
      Signed-off-by: Michael Turquette <mturquette@xxxxxxxxxxxx>

  commit 21c721fd0b991b1871ea5dd517be1b5375c5f8f7
  Merge: 538e456 cae3a26
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 27 11:40:44 2015 -0700

      Merge branch 'ovs-conntrack'

      Joe Stringer says:

      ====================
      OVS conntrack support

      The goal of this series is to allow OVS to send packets through the Linux
      kernel connection tracker, and subsequently match on fields populated by
      conntrack. This functionality is enabled through a new
      CONFIG_OPENVSWITCH_CONNTRACK option.

      This version addresses the feedback from v5, primarily checking the 
behaviour
      is correct with different configurations such as disabling
      CONFIG_OPENVSWITCH_CONNTRACK or disabling individual conntrack features 
like
      connlabels.

      The branch below has been updated with the corresponding userspace pieces:
      https://github.com/joestringer/ovs dev/ct_20150818
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit cae3a2627520c3795b54533c5328b77af3405dbe
  Author: Joe Stringer <joestringer@xxxxxxxxxx>
  Date:   Wed Aug 26 11:31:53 2015 -0700

      openvswitch: Allow attaching helpers to ct action

      Add support for using conntrack helpers to assist protocol detection.
      The new OVS_CT_ATTR_HELPER attribute of the CT action specifies a helper
      to be used for this connection. If no helper is specified, then helpers
      will be automatically applied as per the sysctl configuration of
      net.netfilter.nf_conntrack_helper.

      The helper may be specified as part of the conntrack action, eg:
      ct(helper=ftp). Initial packets for related connections should be
      committed to allow later packets for the flow to be considered
      established.

      Example ovs-ofctl flows allowing FTP connections from ports 1->2:
      in_port=1,tcp,action=ct(helper=ftp,commit),2
      in_port=2,tcp,ct_state=-trk,action=ct(recirc)
      in_port=2,tcp,ct_state=+trk-new+est,action=1
      in_port=2,tcp,ct_state=+trk+rel,action=1

      Signed-off-by: Joe Stringer <joestringer@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Acked-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c2ac667358708d7cce64c78f58af6adf4c1e848b
  Author: Joe Stringer <joestringer@xxxxxxxxxx>
  Date:   Wed Aug 26 11:31:52 2015 -0700

      openvswitch: Allow matching on conntrack label

      Allow matching and setting the ct_label field. As with ct_mark, this is
      populated by executing the CT action. The label field may be modified by
      specifying a label and mask nested under the CT action. It is stored as
      metadata attached to the connection. Label modification occurs after
      lookup, and will only persist when the conntrack entry is committed by
      providing the COMMIT flag to the CT action. Labels are currently fixed
      to 128 bits in size.

      Signed-off-by: Joe Stringer <joestringer@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Acked-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 86ca02e77408bb58ba596c1a411ec7f631733690
  Author: Joe Stringer <joestringer@xxxxxxxxxx>
  Date:   Wed Aug 26 11:31:51 2015 -0700

      netfilter: connlabels: Export setting connlabel length

      Add functions to change connlabel length into nf_conntrack_labels.c so
      they may be reused by other modules like OVS and nftables without
      needing to jump through xt_match_check() hoops.

      Suggested-by: Florian Westphal <fw@xxxxxxxxx>
      Signed-off-by: Joe Stringer <joestringer@xxxxxxxxxx>
      Acked-by: Florian Westphal <fw@xxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 55e5713f2b5cefed98e3674017e994d688e47b85
  Author: Joe Stringer <joestringer@xxxxxxxxxx>
  Date:   Wed Aug 26 11:31:50 2015 -0700

      netfilter: Always export nf_connlabels_replace()

      The following patches will reuse this code from OVS.

      Signed-off-by: Joe Stringer <joestringer@xxxxxxxxxx>
      Acked-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 182e3042e15de759e81618d11fe4f62f5259d982
  Author: Joe Stringer <joestringer@xxxxxxxxxx>
  Date:   Wed Aug 26 11:31:49 2015 -0700

      openvswitch: Allow matching on conntrack mark

      Allow matching and setting the ct_mark field. As with ct_state and
      ct_zone, these fields are populated when the CT action is executed. To
      write to this field, a value and mask can be specified as a nested
      attribute under the CT action. This data is stored with the conntrack
      entry, and is executed after the lookup occurs for the CT action. The
      conntrack entry itself must be committed using the COMMIT flag in the CT
      action flags for this change to persist.

      Signed-off-by: Justin Pettit <jpettit@xxxxxxxxxx>
      Signed-off-by: Joe Stringer <joestringer@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Acked-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7f8a436eaa2c3ddd8e1ff2fbca267e6275085536
  Author: Joe Stringer <joestringer@xxxxxxxxxx>
  Date:   Wed Aug 26 11:31:48 2015 -0700

      openvswitch: Add conntrack action

      Expose the kernel connection tracker via OVS. Userspace components can
      make use of the CT action to populate the connection state (ct_state)
      field for a flow. This state can be subsequently matched.

      Exposed connection states are OVS_CS_F_*:
      - NEW (0x01) - Beginning of a new connection.
      - ESTABLISHED (0x02) - Part of an existing connection.
      - RELATED (0x04) - Related to an established connection.
      - INVALID (0x20) - Could not track the connection for this packet.
      - REPLY_DIR (0x40) - This packet is in the reply direction for the flow.
      - TRACKED (0x80) - This packet has been sent through conntrack.

      When the CT action is executed by itself, it will send the packet
      through the connection tracker and populate the ct_state field with one
      or more of the connection state flags above. The CT action will always
      set the TRACKED bit.

      When the COMMIT flag is passed to the conntrack action, this specifies
      that information about the connection should be stored. This allows
      subsequent packets for the same (or related) connections to be
      correlated with this connection. Sending subsequent packets for the
      connection through conntrack allows the connection tracker to consider
      the packets as ESTABLISHED, RELATED, and/or REPLY_DIR.

      The CT action may optionally take a zone to track the flow within. This
      allows connections with the same 5-tuple to be kept logically separate
      from connections in other zones. If the zone is specified, then the
      "ct_zone" match field will be subsequently populated with the zone id.

      IP fragments are handled by transparently assembling them as part of the
      CT action. The maximum received unit (MRU) size is tracked so that
      refragmentation can occur during output.

      IP frag handling contributed by Andy Zhou.

      Based on original design by Justin Pettit.

      Signed-off-by: Joe Stringer <joestringer@xxxxxxxxxx>
      Signed-off-by: Justin Pettit <jpettit@xxxxxxxxxx>
      Signed-off-by: Andy Zhou <azhou@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Acked-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e79e259588a414589a016edc428ee8dd308f81ad
  Author: Joe Stringer <joestringer@xxxxxxxxxx>
  Date:   Wed Aug 26 11:31:47 2015 -0700

      dst: Add __skb_dst_copy() variation

      This variation on skb_dst_copy() doesn't require two skbs.

      Signed-off-by: Joe Stringer <joestringer@xxxxxxxxxx>
      Acked-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 5b490047240f7b986228de968334ddd7a341e1fe
  Author: Joe Stringer <joestringer@xxxxxxxxxx>
  Date:   Wed Aug 26 11:31:46 2015 -0700

      ipv6: Export nf_ct_frag6_gather()

      Signed-off-by: Joe Stringer <joestringer@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Acked-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit be26b9a88fcee570796c67701f50800039e25aec
  Author: Joe Stringer <joestringer@xxxxxxxxxx>
  Date:   Wed Aug 26 11:31:45 2015 -0700

      openvswitch: Move MASKED* macros to datapath.h

      This will allow the ovs-conntrack code to reuse these macros.

      Signed-off-by: Joe Stringer <joestringer@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Acked-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8e2fed1c0cfbb29995a4301060acc0ef4ee84420
  Author: Joe Stringer <joestringer@xxxxxxxxxx>
  Date:   Wed Aug 26 11:31:44 2015 -0700

      openvswitch: Serialize acts with original netlink len

      Previously, we used the kernel-internal netlink actions length to
      calculate the size of messages to serialize back to userspace.
      However,the sw_flow_actions may not be formatted exactly the same as the
      actions on the wire, so store the original actions length when
      de-serializing and re-use the original length when serializing.

      Signed-off-by: Joe Stringer <joestringer@xxxxxxxxxx>
      Acked-by: Pravin B Shelar <pshelar@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 538e4563198cd3d1a8e74c47fee3e49dc93e4a95
  Author: RafaÅ? MiÅ?ecki <zajec5@xxxxxxxxx>
  Date:   Wed Aug 26 17:53:45 2015 +0200

      bgmac: support up to 3 cores (devices) on a bus

      Broadcom buses may have more than 1 Ethernet device. This is used e.g.
      to have few interfaces connected to different switch ports. So far we
      saw chipsets with only 2 devices (e.g. BCM4706) but recent ones have
      up to 3 (e.g. Netgear R8000 uses 3rd interface for most of switch
      traffic, lower interfaces are for some kind of offloading).

      Signed-off-by: RafaÅ? MiÅ?ecki <zajec5@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 395250e483d492e9ec5e36a6b78fb142affddee2
  Merge: 1dd34b5 0ba3ac0
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 27 11:25:56 2015 -0700

      Merge tag 'wireless-drivers-next-for-davem-2015-08-26' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next

      Kalle Valo says:

      ====================
      Major changes:

      iwlwifi:

      * new Tx power firmware API
      * bump max firmware API to 17
      * fix bug in debug prints
      * static checker fix
      * fix unused defines
      * fix command list on newest firmware

      brcmfmac:

      * support NVRAM loading for bcm47xx platform
      * new debugfs entry for msgbuf protocol layer used with PCIe devices

      ath10k:

      * add spectral scan support for qca99x0
      * add qca6164 support
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ed29266347025a19ee689807b07d121f0a7441f1
  Author: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
  Date:   Tue Aug 4 23:31:44 2015 +0800

      batman-adv: turn batadv_neigh_node_get() into local function

      commit c214ebe1eb29 ("batman-adv: move neigh_node list add into
      batadv_neigh_node_new()") removed external calls to
      batadv_neigh_node_get().

      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 7bca68c7844b1642868809a5ef4387c1f099ab1d
  Author: Sven Eckelmann <sven@xxxxxxxxxxxxx>
  Date:   Fri Aug 7 19:28:42 2015 +0200

      batman-adv: Add lower layer needed_(head|tail)room to own ones

      The maximum of hard_header_len and maximum of all needed_(head|tail)room 
of
      all slave interfaces of a batman-adv device must be used to define the
      batman-adv device needed_(head|tail)room. This is required to avoid too
      small buffer problems when these slave devices try to send the 
encapsulated
      packet in a tx path without the possibility to resize the skbuff.

      Signed-off-by: Sven Eckelmann <sven@xxxxxxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit a5256f7e74d85d7ae60ac3bd557d5fe3444be810
  Author: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>
  Date:   Tue Aug 4 22:26:19 2015 +0200

      batman-adv: don't access unregistered net_device object

      In batadv_hardif_disable_interface() there is a call to
      batadv_softif_destroy_sysfs() which in turns invokes
      unregister_netdevice() on the soft_iface.
      After this point we cannot rely on the soft_iface object
      anymore because it might get free'd by the netdev periodic
      routine at any time.

      For this reason the netdev_upper_dev_unlink(.., soft_iface) call
      is moved before the invocation of batadv_softif_destroy_sysfs() so
      that we can be sure that the soft_iface object is still valid.

      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>

  commit 07c48eca1661decbd52393ef535f0c97e5313c4e
  Author: Simon Wunderlich <sw@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 14:43:16 2015 +0200

      batman-adv: Start new development cycle

      Signed-off-by: Simon Wunderlich <sw@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 1e3b4669e79253748073b0ee95270f92f0372b20
  Author: Simon Wunderlich <sw@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 15:44:06 2015 +0200

      batman-adv: fix gateway client style issues

      commit 0511575c4d03 ("batman-adv: remove obsolete deleted attribute for
      gateway node") incorrectly added an empy line and forgot to remove an
      include.

      Signed-off-by: Simon Wunderlich <sw@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 3f32f8a6874ae2515c8894588a5c60dd65ecc7e5
  Author: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
  Date:   Sun Jul 26 04:59:15 2015 +0800

      batman-adv: rearrange batadv_neigh_node_new() arguments to follow 
convention

      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Acked-by: Simon Wunderlich <sw@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit bd3524c14bd02f94a4fa33e700883e01182f5ed5
  Author: Simon Wunderlich <simon@xxxxxxxxxxxxx>
  Date:   Mon Aug 3 19:13:58 2015 +0200

      batman-adv: remove obsolete deleted attribute for gateway node

      With rcu, the gateway node deleted attribute is not needed anymore. In
      fact, it may delay the free of the gateway node and its referenced
      structures. Therefore remove it altogether and simplify purging as well.

      Signed-off-by: Simon Wunderlich <simon@xxxxxxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 741aa06bfb0ab731086d258a1838152fe2502b5f
  Author: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
  Date:   Sun Jul 26 04:57:43 2015 +0800

      batman-adv: move neigh_node list add into batadv_neigh_node_new()

      All batadv_neigh_node_* functions expect the neigh_node list item to be 
part
      of the orig_node->neigh_list, therefore the constructor of said list item
      should be adding the newly created neigh_node to the respective list.

      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Acked-by: Simon Wunderlich <sw@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 39bf7618f038474a0ccbeb0be173f11e147bd083
  Author: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
  Date:   Sun Jul 26 04:37:47 2015 +0800

      batman-adv: remove redundant hard_iface assignment

      The batadv_neigh_node_new() function already sets the hard_iface pointer.

      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Acked-by: Simon Wunderlich <sw@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit f729dc70dafec281e524f51ae496a72ea4f8e319
  Author: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
  Date:   Sun Jul 26 04:37:15 2015 +0800

      batman-adv: move hardif refcount inc to batadv_neigh_node_new()

      The batadv_neigh_node cleanup function 'batadv_neigh_node_free_rcu()'
      takes care of reducing the hardif refcounter, hence it's only logical
      to assume the creating function of that same object
      'batadv_neigh_node_new()' takes care of increasing the same refcounter.

      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Acked-by: Simon Wunderlich <sw@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit c75683ca13d12a700531864bcd3118e94bc9eaa0
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:25:06 2015 +0530

      mpt3sas : Bump mpt3sas driver version to 9.100.00.00

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit df838f92f3f5240dca54e1629e8547818e8ea646
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:25:05 2015 +0530

      mpt3sas: When device is blocked followed by unblock fails, unfreeze the 
I/Os

      Issue: When the disks are getting discovered and assigned device
      handles by the kernel, a device block followed by an unblock
      (due to broadcast primitives) issued by the driver is
      interspersed by the kernel changing the state of the device.
      Therefore the unblock by the driver results in a no operation
      within the kernel API.

      To fix this one, the below patch checks the return of the unblock API
      and performs a block followed by an unblock to unfreeze the block
      layer's I/O queue. Sufficient checks and prints are also added in the
      driver to identify this condition caused by the kernel.

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 36814028ad720165a6febcf9ddd7de20833fd240
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:25:04 2015 +0530

      mpt3sas: Call dma_mapping_error() API after mapping an address with 
dma_map_single() API

      Added dma_mapping_error() API after mapping an address with 
dma_map_single()
      API.  Otherwise when CONFIG_DMA_API_DEBUG is enabled in the kernel, then 
it
      complains about mpt3sas driver not calling dma_mapping_error after 
mapping an
      address with dma_map_single

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit bdff785e4f593218816fa3677e043aae1481aa98
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:25:03 2015 +0530

      mpt3sas: Use alloc_ordered_workqueue() API instead of 
create_singlethread_workqueue() API

      Created a thread using alloc_ordered_workqueue() API in order to process
      the works from firmware Work-queue sequentially instead of
      create_singlethread_workqueue() API.

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Joe Lawrence <joe.lawrence@xxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit d8eb4a47c70b4bab34b938d2f682044687f53c64
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:25:02 2015 +0530

      mpt3sas: Added support for customer specific branding

      "VendorID"   "DeviceID"  "SubsystemVendor ID"   "SubsystemDevice ID"  
Cisco Branding String
      0x1000         0x97           0x1137                 0x154           
Cisco 9300-8i 12Gbps SAS HBA
      0x1000         0x97           0x1137                 0x155           
Cisco 12G Modular SAS Pass through Controller
      0x1000         0x97           0x1137                 0x156           UCS 
C3X60 12G SAS Pass through Controller

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 62f5c74c97037c7c00fdefb69dcfe39810c34a05
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:25:01 2015 +0530

      mpt3sas: Return host busy error status to SML when DMA mapping of scatter 
gather list fails for a SCSI command

      scsi_dma_map API will return a negative value (i.e. -ENOMEM)
      if DMA mapping of sg lists fails and zero if the sg list in the
      SCSI cmd is NULL. But drivers doesn't handled sg list DMA mapping
      failure case properly.

      So, Updated the code to return host busy error status to SCSI MID 
Layer(SML),
      when DMA mapping of scatter gather list fails for a SCSI command.
      So that SML will retry this SCSI cmd after some time.

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 3898f08e8ccfc8b7b4c297960ecdde970869e950
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:25:00 2015 +0530

      mpt3sas: Complete the SCSI command with DID_RESET status for log_info 
value 0x0x32010081

      For any SCSI command, if the driver receives
      IOC status = SCSI_IOC_TERMINATED and log info = 0x32010081 then
      that command will be completed with DID_RESET host status.

      The definition of this log info value is
      "Virtual IO has failed and has to be retried".

      Firmware will provide this log info value with IOC Status
      "SCSI_IOC_TERMINATED", whenever a drive (with is a part of a volume)
      is pulled and pushed back within some minimal delay.
      With this log info value, firmware informs the driver to retry the
      failed IO command infinite times, so to provide some time for the
      firmware to discover the reinserted drive successfully instated of
      just retrying failed command for five times(doesn't giving enough
      time for firmware to complete the drive discovery) and failing the
      IO permanently even though drive came back successfully.

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit a6f84009b9d7ca97c400ca929f9d58f43b0ece9d
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:24:59 2015 +0530

      mpt3sas: MPI 2.5 Rev K (2.5.6) specifications

      Below are the new changes to MPI 2.5 Rev K(2.5.6) specification and 
2.00.35
      header files

      1) Added a minimum size requirement for target mode command buffers.

      2) Added MinMSIxIndex and MaxMSIxIndex fields to CommandBufferPostBase
         Request.

      3) For BIOS Page 1, added SSUTimeout field, and added Product Name String
         Format bits to the BiosOptions field

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 2b89669ae4addfa68a58e0fc16afdd24739720d8
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:24:58 2015 +0530

      mpt3sas: Bump mpt3sas driver version to v6.100.00.00

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 38e4141ecb0e59c93d85ec5948f98d1f1e331a88
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:24:57 2015 +0530

      mpt3sas: Add branding string support for OEM custom HBA

      Add the following OEM's branding to the mpt3sas driver.

      "VendorID"   "DeviceID"  "SubsystemVendor ID"   "SubsystemDevice ID"  
Cisco Branding String
      0x1000         0x97         SVID = 0x1137             0x014C          
Cisco 9300-8E 12G SAS HBA

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit fb84dfc44718ef4099a827d147f738e428828d02
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:24:56 2015 +0530

      mpt3sas: Add branding string support for OEM's HBA

      Added the following Dell branding to the mpt3sas driver.

      "VendorID"   "DeviceID"  "SubsystemVendor ID"  "SubsystemDevice ID"  Dell 
Branding String
      0x1000        0x0097          0x1028                 0x1F46            
DELL 12Gbps HBA

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 35c319b47884e49d9d0a84779097916ccb173947
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:24:55 2015 +0530

      mpt3sas: MPI 2.5 Rev J (2.5.5) specification and 2.00.34 header files

      Following is the change set,

      1. Added more defines for the BiosOptions field of 
MPI2_CONFIG_PAGE_BIOS_1.

      2. Added MPI2_TOOLBOX_CLEAN_BIT26_PRODUCT_SPECIFIC definition.

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 2e26c3853206ba166c3434e5f2ca4c82078ad84e
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:24:54 2015 +0530

      mpt3sas: Update MPI2 strings to MPI2.5

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit f9d81cfc23151eb6e9e498663c9784c351646d0e
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:24:53 2015 +0530

      mpt3sas: Bump mpt3sas Driver version to v5.100.00.00

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit e6d45e3e7e6582fa206ef84631639ce70d50e5c5
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:24:52 2015 +0530

      mpt3sas: Provides the physical location of sas drives

      This Patch will provide more details of the devices such as slot number,
      enclosure logical id, enclosure level & connector name in the following
      scenarios,

      - When end device is added in the topology,

      - When the end device is removed from the setup,

      - When the SCSI mid layer issues TASK ABORT/ DEVICE RESET/ TARGET RESET 
during
        error handling,

      - When any command to the device fails with Sense key Hardware error or 
Medium
        error or Unit Attention,

      - When firmware returns device error or device not ready status for the 
end
        device,

      - When a Predicted fault is detected on an end device.

      This information can be used by the user to identify the location of the
      desired drive in the topology.

      Driver will get these information by reading the sas device page0.

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit a94bea343c2f747c62ef66b52d2430e6aeb75434
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:24:51 2015 +0530

      mpt3sas: MPI 2.5 Rev I (2.5.4) specifications.

      Update MPI 2.5 Release: MPI 2.5 Rev I (2.5.4) specification and 2.00.33 
header
      files

      Below is the change set from the MPI specification for I Rev

      1) Added Base Enclosure Level bit to the Flags field of Manufacturing 
Page 7.

      2) Updated description of the MaxTargetPortConnectTime field of SAS IO 
Unit
         Page 1.

      3) Added EnclosureLevel and ConnectorName fields to SAS Device Page 0. 
Also,
         added EnclosureLevel and ConnectorName Valid bit to the Flags field.

      4) Added EnclosureLevel field to SAS Enclosure Page 0. Also, added
         EnclosureLevel Valid bit to the Flags field.

      5) Added value for BIOS image to HashImageType.

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 580d4e3153f0d7a9a9235b675b0b7b13e2185a8b
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:24:50 2015 +0530

      mpt3sas: Remove redundancy code while freeing the controller resources.

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit e4bc7f5c21a18cab9acd30940df0ee791fcd7b9e
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:24:49 2015 +0530

      mpt3sas: Don't block the drive when drive addition under the control of 
SML

      During hot-plugging of a disk(having a flaky link), the disk addition
      stops and any further disk addition or removal doesn't happen on that
      controller.

      This is because, when driver receives DELAY_NOT_RESPONDING event for a 
disk
      while it is undergoing addition at the SCSI Transport layer, the driver
      would block the I/O to that disk resulting in a deadlock. i.e the disk
      addition work couldn't be completed at the SCSI Transport Layer as it
      can't send any I/Os (such as Inquiry, Report LUNs etc) to the disk as
      I/Os are blocked to this drive. Also any subsequent device removal
      (TARGET_NOT_RESPONDING) or link update(RC_PHY_CHANGED) event couldn't be
      processed as they are in the queue to get processed after disk addition
      event.

      Description of Change:
      Don't block the drive when drive addition is under the control of SML.
      So that SML won't be blocked of issuing the device dicovery commands
      (such as Inquiry, Report LUNs etc).

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 4dc8c8087f0304ff8d06f862520406b11aac4a66
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:24:48 2015 +0530

      mpt3sas: Get IOC_FACTS information using handshake protocol only after 
HBA card gets into READY or Operational state.

      Driver initialization fails if driver tries to send IOC facts request 
message
      when the IOC is in reset or in a fault state.

      This patch will make sure that

       1.Driver to send IOC facts request message only if HBA is in operational 
or
         ready state.

       2.If IOC is in fault state, a diagnostic reset would be issued.

       3.If IOC is in reset state then driver will wait for 10 seconds to exit 
out
         of reset state.  If the HBA continues to be in reset state, then the 
HBA
         wouldn't be claimed by the driver.

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit fb77bb5376a55f4e6c8d9243249e82831a276ee5
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Tue Jun 30 12:24:47 2015 +0530

      mpt3sas: Added Combined Reply Queue feature to extend up-to 96 MSIX 
vector support

      In this patch, increased the number of MSIX vector support for SAS3 C0 
HBAs to
      up-to 96.

      Following are changes that are done in this patch

      1. This feature is enabled only for SAS3 C0 and higher revision cards and 
also
      only when reply post free queue count is greater than 8.

      2. To support this feature 12 SupplementalReplyPostHostIndex system 
interfaces
      are used. MSI-X index numbered from 0 to 7 use the first
      SupplementalReplyPostHostIndex system interface to update its 
corresponding
      ReplyPostHostIndex values, MSI-X index numbered from 8 to 15 will use the
      second SupplementalReplyPostHostIndex system interface and so on. These 12
      SuppementalReplyPostHostIndex system interfaces address are saved in the 
array
      replyPostRegisterIndex[].

      3. As each SupplementalReplyPostHostIndex register supports 8 MSI-X
      vectors. So MSIxIndex field in these register must contain a value 
between 0
      and 7.

      4. After processing the reply descriptors from a reply post free queues 
then
      update the new reply post host index value in ReplyPostHostIndex field and
      (msix_index mod 8) value in MSIxIndex field of 
SupplementalReplyPostHostIndex
      register. The Address of this SupplementalReplyPostHostIndex register is
      retrived from (msix_index/8)th entry of replyPostRegisterIndex[] array.

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit b00855aecbb166428c67b26e1bfeb675463a0212
  Author: Srinidhi Kasagar <srinidhi.kasagar@xxxxxxxxx>
  Date:   Thu Aug 27 21:30:55 2015 +0530

      ACPI / LPSS: Ignore 10ms delay for Braswell

      LPSS devices in Braswell does not need the default 10ms
      d3_delay imposed by PCI specification. Removing this
      unnecessary delay significantly reduces the resume time
      approximately upto 200ms on this platform.

      Signed-off-by: Srinidhi Kasagar <srinidhi.kasagar@xxxxxxxxx>
      Acked-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 3b7ce99748f0d006f9d1aa85709872e7b46787f7
  Author: Ricard Wanderlof <ricard.wanderlof@xxxxxxxx>
  Date:   Thu Aug 27 11:35:20 2015 +0200

      ASoC: ics43432: Add codec driver for InvenSense ICS-43432

      Add support for the InvenSense ICS-43432 I2S MEMS microphone.

      This is a non-software-configurable MEMS microphone with I2S output.

      Tested on a setup with a single ICS-43432 (the device itself supports
      stereo operation using a hardware pin controlling left vs. right channel
      output).

      Signed-off-by: Ricard Wanderlof <ricardw@xxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 8d03bc56cc27ddd93f70a630686ef06289787c78
  Author: Chris Metcalf <cmetcalf@xxxxxxxxxx>
  Date:   Wed Aug 26 13:09:28 2015 -0400

      tile: correct some typos in opcode type names

      These particular opcode names are not used in the kernel directly,
      so updating them just has the effect of making downstream consumers
      more likely to end up using better names; this was reported from the
      qemu community.

      Reported-by: Richard Henderson <rth@xxxxxxxxxxx>
      Signed-off-by: Chris Metcalf <cmetcalf@xxxxxxxxxx>

  commit 01f779f4862b53810ba4eb247f57bd1ad31d1c18
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Wed Aug 26 17:00:45 2015 +0100

      irqchip/GIC: Don't deactivate interrupts forwarded to a guest

      Commit 0a4377de3056 ("genirq: Introduce irq_set_vcpu_affinity() to
      target an interrupt to a VCPU") added just what we needed at the
      lowest level to allow an interrupt to be deactivated by a guest.

      When such a request reaches the GIC, it knows it doesn't need to
      perform the deactivation anymore, and can safely leave the guest
      do its magic. This of course requires additional support in both
      VFIO and KVM.

      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Reviewed-and-tested-by: Eric Auger <eric.auger@xxxxxxxxxx>
      Cc: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: <linux-arm-kernel@xxxxxxxxxxxxxxxxxxx>
      Cc: kvmarm@xxxxxxxxxxxxxxxxxxxxx
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440604845-28229-5-git-send-email-marc.zyngier@xxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 0b996fd35957a30568cddbce05b917c1897966e0
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Wed Aug 26 17:00:44 2015 +0100

      irqchip/GIC: Convert to EOImode == 1

      So far, GICv2 has been used with EOImode == 0. The effect of this
      mode is to perform the priority drop and the deactivation of the
      interrupt at the same time.

      While this works perfectly for Linux (we only have a single priority),
      it causes issues when an interrupt is forwarded to a guest, and when
      we want the guest to perform the EOI itself.

      For this case, the GIC architecture provides EOImode == 1, where:
      - A write to the EOI register drops the priority of the interrupt
        and leaves it active. Other interrupts at the same priority level
        can now be taken, but the active interrupt cannot be taken again
      - A write to the DIR marks the interrupt as inactive, meaning it can
        now be taken again.

      We only enable this feature when booted in HYP mode and that
      the device-tree reported a suitable CPU interface. Observable behaviour
      should remain unchanged.

      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Reviewed-and-tested-by: Eric Auger <eric.auger@xxxxxxxxxx>
      Cc: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: <linux-arm-kernel@xxxxxxxxxxxxxxxxxxx>
      Cc: kvmarm@xxxxxxxxxxxxxxxxxxxxx
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440604845-28229-4-git-send-email-marc.zyngier@xxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 530bf353e4eb06bcba5078390c949650cd26a7c7
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Wed Aug 26 17:00:43 2015 +0100

      irqchip/GICv3: Don't deactivate interrupts forwarded to a guest

      Commit 0a4377de3056 ("genirq: Introduce irq_set_vcpu_affinity() to
      target an interrupt to a VCPU") added just what we needed at the
      lowest level to allow an interrupt to be deactivated by a guest.

      When such a request reaches the GIC, it knows it doesn't need to
      perform the deactivation anymore, and can safely leave the guest
      do its magic. This of course requires additional support in both
      VFIO and KVM.

      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Reviewed-and-tested-by: Eric Auger <eric.auger@xxxxxxxxxx>
      Cc: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: <linux-arm-kernel@xxxxxxxxxxxxxxxxxxx>
      Cc: kvmarm@xxxxxxxxxxxxxxxxxxxxx
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440604845-28229-3-git-send-email-marc.zyngier@xxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 0b6a3da9617a08e13afc09cb7e148470ed0eb280
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Wed Aug 26 17:00:42 2015 +0100

      irqchip/GICv3: Convert to EOImode == 1

      So far, GICv3 has been used in with EOImode == 0. The effect of this
      mode is to perform the priority drop and the deactivation of the
      interrupt at the same time.

      While this works perfectly for Linux (we only have a single priority),
      it causes issues when an interrupt is forwarded to a guest, and when
      we want the guest to perform the EOI itself.

      For this case, the GIC architecture provides EOImode == 1, where:
      - A write to ICC_EOIR1_EL1 drops the priority of the interrupt and
        leaves it active. Other interrupts at the same priority level can
        now be taken, but the active interrupt cannot be taken again
      - A write to ICC_DIR_EL1 marks the interrupt as inactive, meaning
        it can now be taken again.

      This patch converts the driver to be able to use this new mode,
      depending on whether or not the kernel can behave as a hypervisor.
      No feature change.

      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Reviewed-and-tested-by: Eric Auger <eric.auger@xxxxxxxxxx>
      Cc: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: <linux-arm-kernel@xxxxxxxxxxxxxxxxxxx>
      Cc: kvmarm@xxxxxxxxxxxxxxxxxxxxx
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440604845-28229-2-git-send-email-marc.zyngier@xxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 1ed32160dba643e61504b334f45b002198c88254
  Author: Huang Rui <ray.huang@xxxxxxx>
  Date:   Thu Aug 27 16:07:38 2015 +0800

      hwmon: (fam15h_power) Add ratio of Tsample to the PTSC period

      This patch adds a member (cpu_pwr_sample_ratio) of fam15h_power_data,
      that represents the ratio of compute unit power accumulator sample
      period to the PTSC counter period.

      Tsample: compute unit power accumulator sample period
      Tref: the performance timestamp counter period
      PTSC: performance timestamp counter

      Signed-off-by: Huang Rui <ray.huang@xxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit 5aeb5d205e122b70742df94a7d51a3502f1a8277
  Author: Huang Rui <ray.huang@xxxxxxx>
  Date:   Thu Aug 27 16:07:37 2015 +0800

      hwmon: (fam15h_power) Add documentation for new processors support

      This patch updates description of fam15h_power driver, its scope is
      extended to family 16h processsors.

      Signed-off-by: Huang Rui <ray.huang@xxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit e9cd4d55d16f880ddf436fbae8c0c82ce0a928d5
  Author: Huang Rui <ray.huang@xxxxxxx>
  Date:   Thu Aug 27 16:07:35 2015 +0800

      hwmon: (fam15h_power) Update running_avg_capture bit field to 28

      On Carrizo and later platforms, running_avg_capture bit field is
      extended to 4:31 (28 bits) from 4:25.

      Signed-off-by: Huang Rui <ray.huang@xxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit b3a5bbfd780d9e9291f5f257be06e9ad6db11657
  Author: Bob Peterson <rpeterso@xxxxxxxxxx>
  Date:   Thu Aug 27 09:34:47 2015 -0500

      dlm: print error from kernel_sendpage

      Print a dlm-specific error when a socket error occurs
      when sending a dlm message.

      Signed-off-by: Bob Peterson <rpeterso@xxxxxxxxxx>
      Signed-off-by: David Teigland <teigland@xxxxxxxxxx>

  commit d83e92b3af602c6ebb6d25d5232ecba73201a0e5
  Author: Huang Rui <ray.huang@xxxxxxx>
  Date:   Thu Aug 27 16:07:33 2015 +0800

      hwmon: (fam15h_power) Rename fam15h_power_is_internal_node0 function

      We rename fam15h_power_is_internal_node0() function to
      should_load_on_this_node(), because it may not be node0 from KV and
      on, and they are single-node processors.

      Signed-off-by: Huang Rui <ray.huang@xxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit 5dc087254acf12bf6908a924539fb624891e8b24
  Author: Huang Rui <ray.huang@xxxxxxx>
  Date:   Thu Aug 27 16:07:32 2015 +0800

      hwmon: (fam15h_power) Add support for AMD Carrizo

      AMD Carrizo(Fam15h, M60h) processors can report power1_crit
      (ProcessorPwrWatts) and power1_input (CurrPwrWatts) values.
      And this patch adds support for CZ.

      Signed-off-by: Huang Rui <ray.huang@xxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit 987e05c9c3fbffba81104b8ae9a0dde9c73758e9
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Thu Aug 27 14:44:07 2015 +0530

      mmc: host: omap_hsmmc: remove CONFIG_REGULATOR check

      Now that support for platforms which have optional regulator is added,
      remove CONFIG_REGULATOR check in omap_hsmmc.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 1d17f30bd87bf4857478b2a68dadf0096ca1cb40
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Thu Aug 27 14:44:06 2015 +0530

      mmc: host: omap_hsmmc: use ios->vdd for setting vmmc voltage

      vdd voltage is set in mmc core to ios->vdd and vmmc should actually
      be set to this voltage. Modify omap_hsmmc_enable_supply
      to not take vdd as argument since now it's directly set to
      the voltage in ios->vdd.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit c55d7a0553643a7e8f120688b82b594471084d3c
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Thu Aug 27 14:44:05 2015 +0530

      mmc: host: omap_hsmmc: use regulator_is_enabled to find pbias status

      Use regulator_is_enabled of pbias regulator to find pbias regulator
      status instead of maintaining a custom bookkeeping
      pbias_enabled variable.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 3f77f702389b7fbc955ec95721ce3861e40697fc
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Thu Aug 27 14:44:04 2015 +0530

      mmc: host: omap_hsmmc: enable/disable vmmc_aux regulator based on 
previous state

      enable vmmc_aux regulator only if it is in disabled state and disable
      vmmc_aux regulator only if it is in enabled state.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit c8518efa6de999bcbd638702c2a2d72fe83431e4
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Thu Aug 27 14:44:03 2015 +0530

      mmc: host: omap_hsmmc: don't use ->set_power to set initial regulator 
state

      If the regulator is enabled on boot (checked using regulator_is_enabled),
      invoke regulator_enable() so that the usecount reflects the correct
      state of the regulator and then disable the regulator so that the
      initial state of the regulator is disabled. Avoid using ->set_power,
      since set_power also takes care of setting the voltages which is not
      needed at this point.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 97fe7e5ab6318ea5716f86be3b4ca8776a9e609c
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Thu Aug 27 14:44:02 2015 +0530

      mmc: host: omap_hsmmc: avoid pbias regulator enable on power off

      Fix omap_hsmmc_set_power so that pbias regulator is not enabled
      during power off.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit ec85c95e8ce5df18608ee9aa6a2626d903f548af
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Thu Aug 27 14:44:01 2015 +0530

      mmc: host: omap_hsmmc: add separate function to set pbias

      No functional change. Cleanup omap_hsmmc_set_power by adding separate
      functions to set pbias and invoke it from omap_hsmmc_set_power.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 2a17f84442e22cd1522400fcc0356c4a36b38361
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Thu Aug 27 14:44:00 2015 +0530

      mmc: host: omap_hsmmc: add separate functions for enable/disable supply

      No functional change. Cleanup omap_hsmmc_set_power by adding separate
      functions for enable/disable supply and invoke it from
      omap_hsmmc_set_power.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 229f329265d6d2a738fc861b7b9b6144980580f6
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Thu Aug 27 14:43:59 2015 +0530

      mmc: host: omap_hsmmc: return error if any of the regulator APIs fail

      Return error if any of the regulator APIs (regulator_enable,
      regulator_disable, regulator_set_voltage) fails in
      omap_hsmmc_set_power to avoid undefined behavior.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit ef62b8bc2c740a7f72525a4797aa45056c833e3d
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Thu Aug 27 14:43:58 2015 +0530

      mmc: host: omap_hsmmc: remove unnecessary pbias set_voltage

      Remove the unnecessary pbias regulator_set_voltage done after
      pbias regulator_disable in omap_hsmmc_set_power.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Reviewed-by: Roger Quadros <rogerq@xxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit aa9a68014bb6c6e1052d79561815885b797d15ea
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Thu Aug 27 14:43:57 2015 +0530

      mmc: host: omap_hsmmc: use mmc_host's vmmc and vqmmc

      No functional change. Instead of using omap_hsmmc_host's vcc and vcc_aux
      members, use vmmc and vqmmc present in mmc_host which is present
      for the same purpose.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Reviewed-by: Roger Quadros <rogerq@xxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit b49069fc0b96de5dd508ccba0a1417e524734712
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Thu Aug 27 14:43:56 2015 +0530

      mmc: host: omap_hsmmc: use the ocrmask provided by the vmmc regulator

      If the vmmc regulator provides a valid ocrmask, use it. By this even if
      the pdata has a valid ocrmask, it will be overwritten with the ocrmask
      of the vmmc regulator.
      Also remove the unnecessary compatibility check between the ocrmask in
      the pdata and the ocrmask from the vmmc regulator.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit c299dc39883ca5596905507cc945332fa4bae8bd
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Thu Aug 27 14:43:55 2015 +0530

      mmc: host: omap_hsmmc: cleanup omap_hsmmc_reg_get()

      No functional change. Instead of using a local regulator variable
      in omap_hsmmc_reg_get() for holding the return value of
      devm_regulator_get_optional() and then assigning to omap_hsmmc_host
      regulator members: vcc, vcc_aux and pbias, directly use the
      omap_hsmmc_host regulator members.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Reviewed-by: Roger Quadros <rogerq@xxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 6a9b2ff07d0415ad19fb07b9a141863fb86c3497
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Thu Aug 27 14:43:54 2015 +0530

      mmc: host: omap_hsmmc: return on fatal errors from omap_hsmmc_reg_get

      Now return error only if the return value of
      devm_regulator_get_optional() is not the same as -ENODEV, since with
      -EPROBE_DEFER, the regulator can be obtained later and all other
      errors are fatal.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 7d607f917008218564ae44ca3ef47076a9b36e8f
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Thu Aug 27 14:43:53 2015 +0530

      mmc: host: omap_hsmmc: use devm_regulator_get_optional() for vmmc

      Since vmmc can be optional for some platforms, use
      devm_regulator_get_optional() for vmmc. Now return error only
      if the return value of devm_regulator_get_optional() is not the
      same as -ENODEV, since with -EPROBE_DEFER, the regulator can be
      obtained later and all other errors are fatal.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 5f2b3eab3fade514f9647e88356d29c7795ed7ef
  Author: kbuild test robot <fengguang.wu@xxxxxxxxx>
  Date:   Tue Aug 25 16:13:29 2015 +0200

      mmc: sdhci-of-at91: fix platform_no_drv_owner.cocci warnings

       Remove .owner field if calls are used which set it automatically

      Generated by: scripts/coccinelle/api/platform_no_drv_owner.cocci

      CC: ludovic.desroches@xxxxxxxxx <ludovic.desroches@xxxxxxxxx>
      Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 5afc30fc666165c1c37c246e08b4282bc8c31d98
  Author: Koji Matsuoka <koji.matsuoka.xm@xxxxxxxxxxx>
  Date:   Sun Aug 23 21:58:08 2015 +0900

      mmc: sh_mmcif: Fix suspend process

      The clock should be enable when SDHI registers are accessed.

      Signed-off-by: Koji Matsuoka <koji.matsuoka.xm@xxxxxxxxxxx>
      Signed-off-by: Yoshihiro Kaneko <ykaneko0929@xxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 3b1cac4d9f915758d0d755f11bb8fd4373cf653b
  Author: Julia Lawall <Julia.Lawall@xxxxxxx>
  Date:   Sun Aug 23 02:11:17 2015 +0200

      mmc: usdhi6rol0: fix error return code

      Propagate error code on failure.

      A simplified version of the semantic match that finds this problem is as
      follows: (http://coccinelle.lip6.fr/)

      // <smpl>
      @@
      identifier ret; expression e1,e2;
      @@
      (
      if (\(ret < 0\|ret != 0\))
       { ... return ret; }
      |
      ret = 0
      )
      ... when != ret = e1
          when != &ret
      *if(...)
      {
        ... when != ret = e2
            when forall
       return ret;
      }
      // </smpl>

      Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 38276a912c9bb6dc48e21dc23a92b6286ca00962
  Author: Julia Lawall <Julia.Lawall@xxxxxxx>
  Date:   Sun Aug 23 02:11:12 2015 +0200

      mmc: omap: fix error return code

      Return a negative error code on failure.

      A simplified version of the semantic match that finds this problem is as
      follows: (http://coccinelle.lip6.fr/)

      // <smpl>
      @@
      identifier ret; expression e1,e2;
      @@
      (
      if (\(ret < 0\|ret != 0\))
       { ... return ret; }
      |
      ret = 0
      )
      ... when != ret = e1
          when != &ret
      *if(...)
      {
        ... when != ret = e2
            when forall
       return ret;
      }
      // </smpl>

      Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 3fe95db19be6a98bcb45d2780c6a90d1e96bfcc9
  Author: Rabin Vincent <rabin.vincent@xxxxxxxx>
  Date:   Wed Aug 19 15:41:36 2015 +0200

      mmc: usdhi6rol0: fix ack register write

      The intent appears to be to clear only the bits which are set in status
      (by setting them to zero in the ack write), like in the other interrupt
      handlers, and not to always clear everything (by always writing zero).
      Use the correct not operator.

      Signed-off-by: Rabin Vincent <rabin.vincent@xxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit bb08a7d489bd22a9b6e489f8c8449b0bc92594d0
  Author: Rabin Vincent <rabin.vincent@xxxxxxxx>
  Date:   Wed Aug 19 15:41:35 2015 +0200

      mmc: usdhi6rol0: fix NULL pointer deref in debug print

      host->sg is only set when we're transferring multiple blocks.  Check for
      its availibility before dereferencing it in the timeout work debug
      print.

      Signed-off-by: Rabin Vincent <rabin.vincent@xxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 767264725d6c0c8e2a42f14ded88c8f05fec5863
  Author: Rabin Vincent <rabin.vincent@xxxxxxxx>
  Date:   Wed Aug 19 15:41:34 2015 +0200

      mmc: usdhi6rol0: handle probe deferral for regulator

      We ignore errors from mmc_regulator_get_supply() because the usage of
      the regulators is optional for the driver, but we still need to check
      for and handle EPROBE_DEFER, like it's done in for example dw_mmc.
      Otherwise we might end up not using the specified regulators just
      because of probe order.

      Signed-off-by: Rabin Vincent <rabin.vincent@xxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit da795ec26e2542f1e306598a1d7a31c0762f2bd7
  Author: Shawn Lin <shawn.lin@xxxxxxxxxxxxxx>
  Date:   Tue Aug 11 15:57:05 2015 +0800

      mmc: sdhci-of-arasan: Add the support for sdhci-5.1

      This patch adds the compatible string in sdhci-of-arasan.c to
      support sdhci-arasan5.1 version of controller. No documented
      controller IP version is found in the TRM, so we use ths version
      of command queueing engine integrated into this controller by arasan
      to specify our controller.

      Signed-off-by: Shawn Lin <shawn.lin@xxxxxxxxxxxxxx>
      Acked-by: Michal Simek <michal.simek@xxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 0dafa60eb2506617e6968b97cc5a44914a7fb1a6
  Author: Jisheng Zhang <jszhang@xxxxxxxxxxx>
  Date:   Tue Aug 18 16:21:39 2015 +0800

      mmc: sdhci: also get preset value and driver type for MMC_DDR52

      commit bb8175a8aa42 ("mmc: sdhci: clarify DDR timing mode between
      SD-UHS and eMMC") added MMC_DDR52 as eMMC's DDR mode to be
      distinguished from SD-UHS, but it missed setting driver type for
      MMC_DDR52 timing mode.

      So sometimes we get the following error on Marvell BG2Q DMP board:

      [    1.559598] mmcblk0: error -84 transferring data, sector 0, nr 8, cmd
      response 0x900, card status 0xb00
      [    1.569314] mmcblk0: retrying using single block read
      [    1.575676] mmcblk0: error -84 transferring data, sector 2, nr 6, cmd
      response 0x900, card status 0x0
      [    1.585202] blk_update_request: I/O error, dev mmcblk0, sector 2
      [    1.591818] mmcblk0: error -84 transferring data, sector 3, nr 5, cmd
      response 0x900, card status 0x0
      [    1.601341] blk_update_request: I/O error, dev mmcblk0, sector 3

      This patches fixes this by adding the missing driver type setting.

      Fixes: bb8175a8aa42 ("mmc: sdhci: clarify DDR timing mode ...")
      Signed-off-by: Jisheng Zhang <jszhang@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit f912632b6086d4464af2443dee0c6f4055cf5159
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 16:26:48 2015 +0200

      mmc: atmel-mci: remove useless include

      Definitions from linux/platform_data/atmel.h are not used, remove the
      include.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Acked-by: Ludovic Desroches <ludovic.desroches@xxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 7bb9c244356d2d45ac03cf65e55b035c5954d7de
  Author: Michal Suchanek <hramrach@xxxxxxxxx>
  Date:   Wed Aug 12 15:29:31 2015 +0200

      mmc: sunxi: fix timeout in sunxi_mmc_oclk_onoff

      The 250ms timeout is too short.

      On my system enabling the oclk takes under 50ms and disabling slightly
      over 100ms when idle. Under load disabling the clock can take over
      350ms.

      This does not make mmc clock gating look like good option to have on
      sunxi but the system should not crash with mmc clock gating enabled
      nonetheless.

      This patch sets the timeout to 750ms.

      Signed-off-by: Michal Suchanek <hramrach@xxxxxxxxx>
      Acked-by: Hans de Goede <hdegoede@xxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 1880d8f6fbb01a16404dee7167621dc09b5f1d35
  Author: Barry Song <Baohua.Song@xxxxxxx>
  Date:   Wed Aug 12 06:59:33 2015 +0000

      mmc: sdhci-sirf: corrent quirk according to real chips

      the current quirk set is for an old FPGA, and this patch corrects
      quirks according to real SoC.

      Signed-off-by: Barry Song <Baohua.Song@xxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit b5b4ff0a633910b2b9dca7915fd6ab17aa10dc3e
  Author: Shawn Lin <shawn.lin@xxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:08:32 2015 +0800

      mmc: block: skip trim for some kingston eMMCs

      For some mass production of kingston eMMCs which adopt Phison's
      firmware will meet an unrecoverable data conrruption occasionally
      if performing trim due to a firmware bug confirmed by vendor. We
      found it on Intel-C3230RK platform. So we add fixup of broken trim
      for it.

      Signed-off-by: Shawn Lin <shawn.lin@xxxxxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit e31e67cf2578bd05e99afabb22403542306d6bed
  Author: Haibo Chen <haibo.chen@xxxxxxxxxxxxx>
  Date:   Tue Aug 11 19:38:31 2015 +0800

      mmc: sdhci-esdhc-imx: change default watermark level and burst length

      By default, for all imx SoC types, the watermark level is 16, and the
      burst length is 8. But if the SDIO/SD/MMC I/O speed is fast enough,
      this default watermark level and burst length will be the performance
      bottleneck.

      For example, i.MX7D support eMMC HS400 mode, this mode can run in 8 bit,
      200MHZ DDR mode. So the I/O speed improve a lot compare to SD3.0.
      The default burst length is 8, if we don't change this value, in
      HS400 mode, when we do eMMC read operation, we can find that the
      clock signal will stop for a period of time. This means the speed
      of data moving on AHB bus is slower than I/O speed. So we should
      improve the speed of data moving on AHB bus.

      This patch set the default burst length as 16, and set the default
      watermark level as 64. The test result is the clock signal has
      no stop during the eMMC HS400 operation.

      Signed-off-by: Haibo Chen <haibo.chen@xxxxxxxxxxxxx>
      Acked-by: Dong Aisheng <aisheng.dong@xxxxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit fd44954e77b436673eb5221e5485a32ea6550128
  Author: Haibo Chen <haibo.chen@xxxxxxxxxxxxx>
  Date:   Tue Aug 11 19:38:30 2015 +0800

      mmc: sdhci-esdhc-imx: set back the burst_length_enable bit to 1

      Currently we find that if a usdhc is choosed to boot system, then ROM
      code will set the burst length enable bit of this usdhc as 0.

      This will make performance drop a lot if this usdhc's burst length is
      configed. So this patch set back the burst_length_enable bit as 1,
      which is the default value, and means burst length is enabled for INCR.

      Signed-off-by: Haibo Chen <haibo.chen@xxxxxxxxxxxxx>
      Acked-by: Dong Aisheng <aisheng.dong@xxxxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit d407e30ba614b1542c8ac032f8fb2332b8071efe
  Author: Haibo Chen <haibo.chen@xxxxxxxxxxxxx>
  Date:   Tue Aug 11 19:38:27 2015 +0800

      mmc: sdhci-esdhc-imx: add tuning-step setting support

      tuning-step is the delay cell steps in tuning procedure. The default value
      of tuning-step is 1. Some boards or cards need another value to pass the
      tuning procedure. For example, imx7d-sdb board need the tuning-step value
      as 2, otherwise it can't pass the tuning procedure.

      So this patch add the tuning-step setting in driver, so that user can set
      the tuning-step value in dts.

      Signed-off-by: Haibo Chen <haibo.chen@xxxxxxxxxxxxx>
      Acked-by: Dong Aisheng <aisheng.dong@xxxxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 28b07674f287092f3b63a7d5e5c7e68bdeed0247
  Author: Haibo Chen <haibo.chen@xxxxxxxxxxxxx>
  Date:   Tue Aug 11 19:38:26 2015 +0800

      mmc: sdhci-esdhc-imx: add imx7d support and support HS400

      The imx7d usdhc is derived from imx6sx, the difference is that
      imx7d support HS400.

      So introduce a new compatible string for imx7d and add HS400
      support for imx7d usdhc.

      Signed-off-by: Haibo Chen <haibo.chen@xxxxxxxxxxxxx>
      Acked-by: Dong Aisheng <aisheng.dong@xxxxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 2a2a7ea7c0126d388c14c28927cdba429b4858dd
  Author: Haibo Chen <haibo.chen@xxxxxxxxxxxxx>
  Date:   Tue Aug 11 19:38:28 2015 +0800

      mmc: sdhci-esdhc-imx: Document new DT bindings for imx7d support

      Add a required property "fsl,imx7d-usdhc" in binding doc.
      Add an optional property "fsl,tuning-step" in binding doc.

      Signed-off-by: Haibo Chen <haibo.chen@xxxxxxxxxxxxx>
      Acked-by: Dong Aisheng <aisheng.dong@xxxxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 77bd2f6f6c65b4ad259394d416855ed561f21e8f
  Author: Yangbo Lu <yangbo.lu@xxxxxxxxxxxxx>
  Date:   Tue Aug 11 10:53:34 2015 +0800

      mmc: sdhci-of-esdhc: add workaround for pre divider initial value

      For eSDHC(version < 2.3), the pre divider only could divide base clock
      by 2 at least. Add workaround for this to avoid unexpected issue.

      Signed-off-by: Yangbo Lu <yangbo.lu@xxxxxxxxxxxxx>
      Acked-by: Joakim Tjernlund <Joakim.Tjernlund@xxxxxxxxxxxx>
      Fixes: bd455029d01c ("mmc: sdhci-of-esdhc: Pre divider starts at 1")
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit d31911b9374a76560d2c8ea4aa6ce5781621e81d
  Author: Haibo Chen <haibo.chen@xxxxxxxxxxxxx>
  Date:   Tue Aug 25 10:02:11 2015 +0800

      mmc: sdhci: fix dma memory leak in sdhci_pre_req()

      Currently one mrq->data maybe execute dma_map_sg() twice
      when mmc subsystem prepare over one new request, and the
      following log show up:
        sdhci[sdhci_pre_dma_transfer] invalid cookie: 24, next-cookie 25

      In this condition, mrq->date map a dma-memory(1) in sdhci_pre_req
      for the first time, and map another dma-memory(2) in sdhci_prepare_data
      for the second time. But driver only unmap the dma-memory(2), and
      dma-memory(1) never unmapped, which cause the dma memory leak issue.

      This patch use another method to map the dma memory for the mrq->data
      which can fix this dma memory leak issue.

      Fixes: 348487cb28e6 ("mmc: sdhci: use pipeline mmc requests to improve 
performance")
      Reported-and-tested-by: Jiri Slaby <jslaby@xxxxxxx>
      Signed-off-by: Haibo Chen <haibo.chen@xxxxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 90614cd9045dc7003913ee58cbc77950351485a0
  Author: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 01:06:48 2015 +0300

      mmc: host: use of_property_read_bool()

      Use more compact of_property_read_bool() calls instead of the
      of_find_property() calls.

      Signed-off-by: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 143b648ddf1583905fa15d32be27a31442fc7933
  Author: Adam Lee <adam.lee@xxxxxxxxxxxxx>
  Date:   Mon Aug 3 14:33:28 2015 +0800

      mmc: sdhci-pci: set the clear transfer mode register quirk for O2Micro

      This patch fixes MMC not working issue on O2Micro/BayHub Host, which
      requires transfer mode register to be cleared when sending no DMA
      command.

      Signed-off-by: Peter Guo <peter.guo@xxxxxxxxxxxxxx>
      Signed-off-by: Adam Lee <adam.lee@xxxxxxxxxxxxx>
      Cc: stable <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 22d7e85ff8e5826845e9a4fa34b4723e5a97ee9b
  Author: Robin van der Gracht <robin@xxxxxxxxxxx>
  Date:   Tue Aug 4 08:58:33 2015 +0200

      mmc: core: Fixed bug in one erase-group budget TRIM

      When requesting a trim for several bytes, everything up to the next
      erase-group is erased. This causes data corruption.

      Signed-off-by: Robin van der Gracht <robin@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 0c9fc10df211e0c931787a51c58caf487035f74e
  Author: Linus Walleij <linus.walleij@xxxxxxxxxx>
  Date:   Thu Aug 27 14:05:26 2015 +0200

      gpio: tc3589x: use static container helper

      There is a helper function to do the container_of() magic for
      the tc3589x GPIO, so use it.

      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 3d5926599a6bc551efc0c8b244469a711f0d0166
  Author: Vineet Gupta <vgupta@xxxxxxxxxxxx>
  Date:   Thu Aug 27 16:25:07 2015 +0530

      ARCv2: entry: Fix reserved handler

      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit 96983515657bfd532f4d2599df16c9d756de17ea
  Merge: d690740 4524cd0
  Author: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
  Date:   Thu Aug 27 20:13:12 2015 +1000

      Merge branch 'next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/scottwood/linux into next

      Freescale updates from Scott:

      "Highlights include 32-bit memcpy/memset optimizations, checksum
      optimizations, 85xx config fragments and updates, device tree updates,
      e6500 fixes for non-SMP, and misc cleanup and minor fixes."

  commit d690740f22f6520873f96e66aae7119ec2215755
  Author: Vasant Hegde <hegdevasant@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 27 11:34:10 2015 +0530

      powerpc/powernv: Enable LEDS support

      Commit 84ad6e5c added LEDS support for PowerNV platform. Lets
      update ppc64_defconfig to pick LEDS driver.

      PowerNV LEDS driver looks for "/ibm,opal/leds" node in device
      tree and loads if this node exists. Hence added it as 'm'.

      Also note that powernv LEDS driver needs NEW_LEDS and LEDS_CLASS
      as well. Hence added them to config file.

      mpe: Also add them to pseries_defconfig, which is currently also used
      for powernv systems.

      Suggested-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Signed-off-by: Vasant Hegde <hegdevasant@xxxxxxxxxxxxxxxxxx>
      Cc: Stewart Smith <stewart@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 0e1ffef02cf94e46f95957af0f822531fecf741c
  Author: Alexey Kardashevskiy <aik@xxxxxxxxx>
  Date:   Thu Aug 27 16:01:16 2015 +1000

      powerpc/iommu: Set default DMA offset in dma_dev_setup

      Commit e91c25111aa3 "powerpc/iommu: Cleanup setting of DMA base/offset"
      expects that the default DMA offset is set from pnv_ioda_setup_bus_dma()
      which is correct unless it is SRIOV where the code flow is different -
      at the moment when pnv_ioda_setup_bus_dma() is called, PCI devices for
      VFs are not created yet.

      This adds missing set_dma_offset() to pnv_pci_ioda_dma_dev_setup() to
      cover the case of SRIOV.

      Note that we still need set_dma_offset() in pnv_ioda_setup_bus_dma() as
      at the boot time pnv_pci_ioda_dma_dev_setup() is called when no PE was
      created yet, this happens at the PHB fixup stage.

      Fixes: e91c25111aa3 ("powerpc/iommu: Cleanup setting of DMA base/offset")
      Signed-off-by: Alexey Kardashevskiy <aik@xxxxxxxxx>
      Reviewed-by: Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 9b28829d6da391f67a76dbba07a167e2b554bd10
  Author: Vineet Gupta <vgupta@xxxxxxxxxxxx>
  Date:   Tue Nov 18 17:36:11 2014 +0530

      ARCv2: perf: Finally introduce HS perf unit

      With all features in place, the ARC HS pct block can now be effectively
      allowed to be probed/used

      Acked-by: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Alexey Brodkin <abrodkin@xxxxxxxxxxxx>
      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit e525c37f8413b19130d0499c7467fed45a94579b
  Author: Alexey Brodkin <abrodkin@xxxxxxxxxxxx>
  Date:   Mon Aug 24 14:03:30 2015 +0300

      ARCv2: perf: SMP support

      * split off pmu info into singleton and per-cpu bits
      * setup PMU on all cores

      Acked-by: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Alexey Brodkin <abrodkin@xxxxxxxxxxxx>
      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit e6b1d126bb748103824087189e30febc88c4db73
  Author: Alexey Brodkin <abrodkin@xxxxxxxxxxxx>
  Date:   Mon Aug 24 13:53:36 2015 +0300

      ARCv2: perf: implement exclusion of event counting in user or kernel mode

      Acked-by: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Alexey Brodkin <abrodkin@xxxxxxxxxxxx>
      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit 36481cf7fbcc666699d54cb267088d2b415ff164
  Author: Alexey Brodkin <abrodkin@xxxxxxxxxxxx>
  Date:   Mon Aug 24 13:48:06 2015 +0300

      ARCv2: perf: Support sampling events using overflow interrupts

      In times of ARC 700 performance counters didn't have support of
      interrupt an so for ARC we only had support of non-sampling events.

      Put simply only "perf stat" was functional.

      Now with ARC HS we have support of interrupts in performance counters
      which this change introduces support of.

      ARC performance counters act in the following way in regard of
      interrupts generation.
       [1] A counter counts starting from value set in PCT_COUNT register pair
       [2] Once counter reaches value set in PCT_INT_CNT interrupt is raised

      Basic setup look like this:
       [1] PCT_COUNT = 0;
       [2] PCT_INT_CNT = __limit_value__;
       [3] Enable interrupts for that counter and let it run
       [4] Let counter reach its limit
       [5] Handle interrupt when it happens

      Note that PCT HW block is build in CPU core and so ints interrupt
      line (which is basically OR of all counters IRQs) is wired directly to
      top-level IRQC. That means do de-assert PCT interrupt it's required to
      reset IRQs from all counters that have reached their limit values.

      Acked-by: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Alexey Brodkin <abrodkin@xxxxxxxxxxxx>
      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit 1fe8bfa5ff3b2e97f26add89b20768fb7c4188c0
  Author: Alexey Brodkin <abrodkin@xxxxxxxxxxxx>
  Date:   Mon Aug 24 13:42:27 2015 +0300

      ARCv2: perf: implement "event_set_period"

      This generalization prepares for support of overflow interrupts.

      Hardware event counters on ARC work that way:
      Each counter counts from programmed start value (set in
      ARC_REG_PCT_COUNT) to a limit value (set in ARC_REG_PCT_INT_CNT) and
      once limit value is reached this timer generates an interrupt.

      Even though this hardware implementation allows for more flexibility,
      in Linux kernel we decided to mimic behavior of other architectures
      this way:

       [1] Set limit value as half of counter's max value (to allow counter to
           run after reaching it limit, see below for more explanation):
       ---------->8-----------
       arc_pmu->max_period = (1ULL << counter_size) / 2 - 1ULL;
       ---------->8-----------

       [2] Set start value as "arc_pmu->max_period - sample_period" and then
      count up to the limit

      Our event counters don't stop on reaching max value (the one we set in
      ARC_REG_PCT_INT_CNT) but continue to count until kernel explicitly
      stops each of them.

      And setting a limit as half of counter capacity is done to allow
      capturing of additional events in between moment when interrupt was
      triggered until we're actually processing PMU interrupts. That way
      we're trying to be more precise.

      For example if we count CPU cycles we keep track of cycles while
      running through generic IRQ handling code:

       [1] We set counter period as say 100_000 events of type "crun"
       [2] Counter reaches that limit and raises its interrupt
       [3] Once we get in PMU IRQ handler we read current counter value from
      ARC_REG_PCT_SNAP ans see there something like 105_000.

      If counters stop on reaching a limit value then we would miss
      additional 5000 cycles.

      Acked-by: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Alexey Brodkin <abrodkin@xxxxxxxxxxxx>
      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit fb7c57255168d34ae34300bcf78f50aebdeae4dc
  Author: Vineet Gupta <vgupta@xxxxxxxxxxxx>
  Date:   Mon Aug 24 13:37:01 2015 +0300

      ARC: perf: cap the number of counters to hardware max of 32

      The number of counters in PCT can never be more than 32 (while
      countable conditions could be 100+) for both ARCompact and ARCv2

      And while at it update copyright dates.

      Acked-by: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit 674c242c9323d3c293fc4f9a3a3a619fe3063290
  Author: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
  Date:   Thu Aug 27 07:12:33 2015 +0100

      arm64: flush FP/SIMD state correctly after execve()

      When a task calls execve(), its FP/SIMD state is flushed so that
      none of the original program state is observeable by the incoming
      program.

      However, since this flushing consists of setting the in-memory copy
      of the FP/SIMD state to all zeroes, the CPU field is set to CPU 0 as
      well, which indicates to the lazy FP/SIMD preserve/restore code that
      the FP/SIMD state does not need to be reread from memory if the task
      is scheduled again on CPU 0 without any other tasks having entered
      userland (or used the FP/SIMD in kernel mode) on the same CPU in the
      mean time. If this happens, the FP/SIMD state of the old program will
      still be present in the registers when the new program starts.

      So set the CPU field to the invalid value of NR_CPUS when performing
      the flush, by calling fpsimd_flush_task_state().

      Cc: <stable@xxxxxxxxxxxxxxx>
      Reported-by: Chunyan Zhang <chunyan.zhang@xxxxxxxxxxxxxx>
      Reported-by: Janet Liu <janet.liu@xxxxxxxxxxxxxx>
      Signed-off-by: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit e4ec73510812f24087a28ac8cbf1f77c9fb262e5
  Author: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
  Date:   Thu Aug 27 01:17:46 2015 +0600

      s390/jump_label: Use %*ph to print small buffers

      printk() supports %*ph format specifier for printing a small buffers,
      let's use it intead of %02x %02x...

      Signed-off-by: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit 13a3cf08fa1e4b3a252f24202d47a556242aea03
  Author: Andy Grover <agrover@xxxxxxxxxx>
  Date:   Mon Aug 24 10:26:06 2015 -0700

      target/iscsi: Replace __kernel_sockaddr_storage with sockaddr_storage

      It appears to be what the rest of the kernel does, so let's do it too.

      Signed-off-by: Andy Grover <agrover@xxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit dc58f760e2e1f8f2265b581d35f211415c4fee0c
  Author: Andy Grover <agrover@xxxxxxxxxx>
  Date:   Mon Aug 24 10:26:05 2015 -0700

      target/iscsi: Replace conn->login_ip with login_sockaddr

      Very similar to how it went with local_sockaddr.

      It was embedded in iscsi_login_stats so some changes there, and we needed
      to copy in a sockaddr_storage comparison function. Hopefully the kernel
      will get a standard one soon, our implementation makes the 3rd.

      isert_set_conn_info() became much smaller.

      IPV6_ADDRESS_SPACE define goes away, had to modify a call to in6_pton(),
      can just use -1 since we are sure string is null-terminated.

      Signed-off-by: Andy Grover <agrover@xxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit 69d755747d31c07a416064f251c2f408938fb67a
  Author: Andy Grover <agrover@xxxxxxxxxx>
  Date:   Mon Aug 24 10:26:04 2015 -0700

      target/iscsi: Keep local_ip as the actual sockaddr

      This is a more natural format that lets us format it with the appropriate
      printk specifier as needed.

      This also lets us handle v4-mapped ipv6 addresses a little more nicely, by
      storing the addr as an actual v4 sockaddr in conn->local_sockaddr.

      Finally, we no longer need to maintain variables for port, since this is
      contained in sockaddr. Remove iscsi_np.np_port and iscsi_conn.local_port.

      Signed-off-by: Andy Grover <agrover@xxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit 76c28f1fcfeb42b47f798fe498351ee1d60086ae
  Author: Andy Grover <agrover@xxxxxxxxxx>
  Date:   Mon Aug 24 10:26:03 2015 -0700

      target/iscsi: Fix np_ip bracket issue by removing np_ip

      Revert commit 1997e6259, which causes double brackets on ipv6
      inaddr_any addresses.

      Since we have np_sockaddr, if we need a textual representation we can
      use "%pISc".

      Change iscsit_add_network_portal() and iscsit_add_np() signatures to 
remove
      *ip_str parameter.

      Fix and extend some comments earlier in the function.

      Tested to work for :: and ::1 via iscsiadm, previously :: failed, see
      https://bugzilla.redhat.com/show_bug.cgi?id=1249107 .

      CC: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Andy Grover <agrover@xxxxxxxxxx>
      Signed-off-by: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

  commit 9f55bca2b82a77a3cc3204900db2fc40ab30019e
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Tue Aug 18 12:20:29 2015 +0300

      aic94xx: set an error code on failure

      We recently did some cleanup here and now the static checkers notice
      that there is a missing error code when ioremap() fails.  Let's set it
      to -ENOMEM.

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 111f2d15b543e15c1e0ee89745fae84e3eb91932
  Author: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 08:43:52 2015 -0700

      storvsc: Set the error code correctly in failure conditions

      In the function storvsc_channel_init(), error code was not getting
      set correctly in some of the failure cases. Fix this issue.

      Signed-off-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit b95f5be09069526cf53705acbc1e22600f3f550b
  Author: Keith Mange <keith.mange@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 08:43:51 2015 -0700

      storvsc: Allow write_same when host is windows 10

      Allow WRITE_SAME for Windows10 and above hosts.

      Tested-by: Alex Ng <alexng@xxxxxxxxxxxxx>
      Signed-off-by: Keith Mange <keith.mange@xxxxxxxxxxxxx>
      Signed-off-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit e6c4bc66842752110a66746e2d044fafc01e4800
  Author: Keith Mange <keith.mange@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 08:43:50 2015 -0700

      storvsc: use storage protocol version to determine storage capabilities

      Use storage protocol version instead of vmbus protocol
      version when determining storage capabilities.

      Tested-by: Alex Ng <alexng@xxxxxxxxxxxxx>
      Signed-off-by: Keith Mange <keith.mange@xxxxxxxxxxxxx>
      Signed-off-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit cb11feada9c049bc633831d3a5dcc50163f13b5e
  Author: Keith Mange <keith.mange@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 08:43:49 2015 -0700

      storvsc: use correct defaults for values determined by protocol 
negotiation

      Use correct defaults for values determined by protocol negotiation,
      instead of resetting them with every scsi controller.

      Tested-by: Alex Ng <alexng@xxxxxxxxxxxxx>
      Signed-off-by: Keith Mange <keith.mange@xxxxxxxxxxxxx>
      Signed-off-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 1a3631081d88180f5cc421711e40b4aecff8618e
  Author: Keith Mange <keith.mange@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 08:43:48 2015 -0700

      storvsc: Untangle the storage protocol negotiation from the vmbus 
protocol negotiation.

      Currently we are making decisions based on vmbus protocol versions
      that have been negotiated; use storage potocol versions instead.

      [jejb: fold ARRAY_SIZE conversion suggested by Johannes Thumshirn
      <jthumshirn@xxxxxxx>
      make vmstor_protocol static]
      Tested-by: Alex Ng <alexng@xxxxxxxxxxxxx>
      Signed-off-by: Keith Mange <keith.mange@xxxxxxxxxxxxx>
      Signed-off-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 2492fd7a60270b81b7ed491745fd595a26841a45
  Author: Keith Mange <keith.mange@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 08:43:47 2015 -0700

      storvsc: Use a single value to track protocol versions

      Use a single value to track protocol versions to simplify
      comparisons and to be consistent with vmbus version tracking.

      Tested-by: Alex Ng <alexng@xxxxxxxxxxxxx>
      Signed-off-by: Keith Mange <keith.mange@xxxxxxxxxxxxx>
      Signed-off-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 6ee5c61535a2df807069145970d3e7fa492a3fac
  Author: Keith Mange <keith.mange@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 08:43:46 2015 -0700

      storvsc: Rather than look for sets of specific protocol versions, make 
decisions based on ranges.

      Rather than look for sets of specific protocol versions,
      make decisions based on ranges. This will be safer and require fewer 
changes
      going forward as we add more storage protocol versions.

      Tested-by: Alex Ng <alexng@xxxxxxxxxxxxx>
      Signed-off-by: Keith Mange <keith.mange@xxxxxxxxxxxxx>
      Signed-off-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 9d8e27673c45927fee9e7d8992ffb325a6b0b0e4
  Author: Daniel Axtens <dja@xxxxxxxxxx>
  Date:   Fri Aug 21 17:25:15 2015 +1000

      cxl: Remove racy attempt to force EEH invocation in reset

      cxl_reset currently PERSTs the slot, and then repeatedly tries to
      read MMIO space in order to kick off EEH.

      There are 2 problems with this: it's unnecessary, and it's racy.

      It's unnecessary because the PERST will bring down the PHB link.
      That will be picked up by the CAPP, which will send out an HMI.
      Skiboot, noticing an HMI from the CAPP, will send an OPAL
      notification to the kernel, which will trigger EEH recovery.

      It's also racy: the EEH recovery triggered by the CAPP will
      eventually cause the MMIO space to have its mapping invalidated
      and the pointer NULLed out. This races with our attempt to read
      the MMIO space. This is causing OOPSes in testing.

      Simply drop all the attempts to force EEH detection, and trust
      that Skiboot will send the notification and that we'll act on it.
      The Skiboot code to send the EEH notification has been in Skiboot
      for as long as CAPP recovery has been supported, so we don't need
      to worry about breaking obscure setups with ancient firmware.

      Cc: Ryan Grimm <grimm@xxxxxxxxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Fixes: 62fa19d4b4fd ("cxl: Add ability to reset the card")
      Signed-off-by: Daniel Axtens <dja@xxxxxxxxxx>
      Acked-by: Ian Munsie <imunsie@xxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit a6897f39660cc07fa78b4459d82f12b07abb50b1
  Author: Vaibhav Jain <vaibhav@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 25 11:04:48 2015 +0530

      cxl: Release irqs if memory allocation fails

      This minor patch plugs a potential irq leak in case of a memory
      allocation failure inside function the afu_allocate_irqs. Presently the
      irqs allocated to the context gets leaked if allocation of either
      one of context irq_bitmap or irq_names fails.

      Signed-off-by: Vaibhav Jain <vaibhav@xxxxxxxxxxxxxxxxxx>
      Acked-by: Ian Munsie <imunsie@xxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit d7b273685fedba5359a4ba0ae4f542e3ece28153
  Merge: 3160779 6dc2e1b
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Thu Aug 27 13:01:57 2015 +1000

      Merge branch 'drm-dwhdmi-devel' of 
git://ftp.arm.linux.org.uk/~rmk/linux-arm into drm-next

      Here are some development updates for the Synopsis Designware HDMI driver,
      which clean up some of the code, and start preparing to add audio support
      to the driver.  This series of patches are based on a couple of dependent
      commits from the ALSA tree.

      Briefly, the updates are:
      - move comments which should have moved with the phy values to the IMX
        part of the driver.
      - clean up the phy configuration: to all lookups before starting to
        program the phy.
      - clean up the HDMI clock regenerator code
      - use the drm_hdmi_avi_infoframe_from_display_mode() helper which allows
        the code to be subsequently simplified
      - remove the unused 'regmap' pointer in struct dw_hdmi
      - use the bridge drm device rather than the connector (we're the bridge
        code)
      - remove private hsync/vsync/interlaced flags, getting them from the
        DRM mode structure instead.
      - implement interface functions to support audio - setting the audio
        sample rate, and enabling the audio clocks.
      - removal of broken pixel repetition support
      - cleanup DVI vs HDMI sink handling
      - enable audio only if connected device supports audio
      - avoid double-enabling bridge in the sink path (once in mode_set, and
        again in commit)
      - rename mis-named dw_hdmi_phy_enable_power()
      - fix bridge enable/disable handing, so a plug-in event doesn't
        reconfigure the bridge if DRM has disabled the output
      - fix from Vladimir Zapolskiy for the I2CM_ADDRESS macro name

      These are primerily preparitory patches for the AHB audio driver and
      the I2S audio driver (from Rockchip) for this IP.

      * 'drm-dwhdmi-devel' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
        drm: bridge/dw_hdmi: fix register I2CM_ADDRESS register name
        drm: bridge/dw_hdmi: fix phy enable/disable handling
        drm: bridge/dw_hdmi: rename dw_hdmi_phy_enable_power()
        drm: bridge/dw_hdmi: avoid enabling interface in mode_set
        drm: bridge/dw_hdmi: enable audio only if sink supports audio
        drm: bridge/dw_hdmi: clean up HDMI vs DVI mode handling
        drm: bridge/dw_hdmi: don't support any pixel doubled modes
        drm: bridge/dw_hdmi: remove pixel repetition setting for all VICs
        drm: bridge/dw_hdmi: introduce interfaces to enable and disable audio
        drm: bridge/dw_hdmi: introduce interface to setting sample rate
        drm: bridge/dw_hdmi: remove mhsyncpolarity/mvsyncpolarity/minterlaced
        drm: bridge/dw_hdmi: use our own drm_device
        drm: bridge/dw_hdmi: remove unused 'regmap' struct member
        drm: bridge/dw_hdmi: simplify hdmi_config_AVI() a little
        drm: bridge/dw_hdmi: use drm_hdmi_avi_infoframe_from_display_mode()
        drm: bridge/dw_hdmi: clean up hdmi_set_clk_regenerator()
        drm: bridge/dw_hdmi: clean up phy configuration
        drm: imx/dw_hdmi: move phy comments
        drm/edid: add function to help find SADs

  commit 31607793ee81da3f1024df9560f0dec49abde37f
  Merge: 40b2dff 36d4e87
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Thu Aug 27 13:01:23 2015 +1000

      Merge tag 'vmwgfx-next-15-08-21' of 
git://people.freedesktop.org/~thomash/linux into drm-next

      Pull request of 15-08-21

      The third pull request for 4.3. Contains two fixes for regressions 
introduced
      with previous pull requests.

      * tag 'vmwgfx-next-15-08-21' of 
git://people.freedesktop.org/~thomash/linux:
        drm/vmwgfx: Remove duplicate ttm_bo_device_release
        drm/vmwgfx: Fix a circular locking dependency in the fbdev code

  commit 40b2dffbcc67e92d5df97785dffc68fe88605bfa
  Merge: db56176 c2b6bd7
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Thu Aug 27 13:00:28 2015 +1000

      Merge branch 'drm-next-4.3' of git://people.freedesktop.org/~agd5f/linux 
into drm-next

      - DP fixes for radeon and amdgpu
      - IH ring fix for tonga and fiji
      - Lots of GPU scheduler fixes
      - Misc additional fixes

      * 'drm-next-4.3' of git://people.freedesktop.org/~agd5f/linux: (42 
commits)
        drm/amdgpu: fix wait queue handling in the scheduler
        drm/amdgpu: remove extra parameters from scheduler callbacks
        drm/amdgpu: wake up scheduler only when neccessary
        drm/amdgpu: remove entity idle timeout v2
        drm/amdgpu: fix postclose order
        drm/amdgpu: use IB for copy buffer of eviction
        drm/amdgpu: adjust the judgement of removing fence callback
        drm/amdgpu: fix no sync_wait in copy_buffer
        drm/amdgpu: fix last_vm_update fence is not effetive for sched fence
        drm/amdgpu: add priv data to sched
        drm/amdgpu: add owner for sched fence
        drm/amdgpu: remove entity reference from sched fence
        drm/amdgpu: fix and cleanup amd_sched_entity_push_job
        drm/amdgpu: remove amdgpu_bo_list_clone
        drm/amdgpu: remove the context from amdgpu_job
        drm/amdgpu: remove unused parameters to amd_sched_create
        drm/amdgpu: remove sched_lock
        drm/amdgpu: remove prepare_job callback
        drm/amdgpu: cleanup a scheduler function name
        drm/amdgpu: reorder scheduler functions
        ...

  commit 89576205de8a5b6c19a4b3bb25bd16484a567b4e
  Author: Matthew R. Ochs <mrochs@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 26 18:36:12 2015 -0500

      cxlflash: Remove unused variable from queuecommand

      The queuecommand routine has a local dev pointer used for the
      dev_* prints. The two prints that currently exist are tucked
      under a debug define and thus can be left out. Use the actual
      location instead of a local to avoid this warning.

      This patch is intended to be applied after the "CXL Flash Error
      Recovery and Superpipe" series.

      Signed-off-by: Matthew R. Ochs <mrochs@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Manoj N. Kumar <manoj@xxxxxxxxxxxxxxxxxx>
      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 4da74db0d9a6ffe053d3a3efa756906e0afc4cf7
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Tue Aug 18 11:57:43 2015 +0300

      cxlflash: shift wrapping bug in afu_link_reset()

      "port_sel" is a u64 so the shifting should also be a 64 bit shift.

      Fixes: c21e0bbfc485 ('cxlflash: Base support for IBM CXL Flash Adapter')
      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Acked-by: Matthew R. Ochs <mrochs@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 46c6d45d7875a0328258a574e376ae75f7b2a64b
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Fri Aug 14 23:35:25 2015 +0300

      cxlflash: off by one bug in cxlflash_show_port_status()

      The > should be >= or we read one element past the end of the array.

      Fixes: c21e0bbfc485 ('cxlflash: Base support for IBM CXL Flash Adapter')
      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Acked-by: Matthew R. Ochs <mrochs@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 2cb79266d6b229dbebd31fe114af1bdab25c8076
  Author: Matthew R. Ochs <mrochs@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 21:47:53 2015 -0500

      cxlflash: Virtual LUN support

      Add support for physical LUN segmentation (virtual LUNs) to device
      driver supporting the IBM CXL Flash adapter. This patch allows user
      space applications to virtually segment a physical LUN into N virtual
      LUNs, taking advantage of the translation features provided by this
      adapter.

      Signed-off-by: Matthew R. Ochs <mrochs@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Manoj N. Kumar <manoj@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Michael Neuling <mikey@xxxxxxxxxxx>
      Reviewed-by: Wen Xiong <wenxiong@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 65be2c79acc3aa0f9c0e8d4871f5a451d854465a
  Author: Matthew R. Ochs <mrochs@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 21:47:43 2015 -0500

      cxlflash: Superpipe support

      Add superpipe supporting infrastructure to device driver for the IBM CXL
      Flash adapter. This patch allows userspace applications to take advantage
      of the accelerated I/O features that this adapter provides and bypass the
      traditional filesystem stack.

      Signed-off-by: Matthew R. Ochs <mrochs@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Manoj N. Kumar <manoj@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Michael Neuling <mikey@xxxxxxxxxxx>
      Reviewed-by: Wen Xiong <wenxiong@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Brian King <brking@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 5cdac81a870f3bb65c50d3f5566a86fb086118d2
  Author: Matthew R. Ochs <mrochs@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 21:47:34 2015 -0500

      cxlflash: Base error recovery support

      Introduce support for enhanced I/O error handling.

      A device state is added to track 3 possible states of the device:

      Normal - the device is operating normally and is fully operational

      Limbo - the device is in a reset/recovery scenario and its operational
              status is paused

      Failed/terminating - the device has either failed to be reset/recovered
                           or is being terminated (removed); it is no longer
                           operational

      All operations are allowed when the device is operating normally. When the
      device transitions to limbo state, I/O must be paused. To help accomplish
      this, a wait queue is introduced where existing and new threads can wait
      until the device is no longer in limbo. When coming out of limbo, threads
      need to check the state and error out gracefully when encountering the
      failed state. When the device transitions to the failed/terminating state,
      normal operations are no longer allowed. Only specially designated
      operations related to graceful cleanup are permitted.

      Signed-off-by: Matthew R. Ochs <mrochs@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Manoj N. Kumar <manoj@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Daniel Axtens <dja@xxxxxxxxxx>
      Reviewed-by: Michael Neuling <mikey@xxxxxxxxxxx>
      Reviewed-by: Wen Xiong <wenxiong@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Brian King <brking@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit ef2a388dfce6ddc2fd0d1d798a8974396f6b6a22
  Author: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
  Date:   Tue Aug 4 13:38:04 2015 -0400

      qla2xxx: Update driver version to 8.07.00.26-k

      Signed-off-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: Giridhar Malavali <giridhar.malavali@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 2b48992f656e109b9d7357cedc0406b50ec82c22
  Author: Sawan Chandak <sawan.chandak@xxxxxxxxxx>
  Date:   Tue Aug 4 13:38:03 2015 -0400

      qla2xxx: Add pci device id 0x2261.

      Signed-off-by: Sawan Chandak <sawan.chandak@xxxxxxxxxx>
      Signed-off-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit a1d0285ecb61800a9e6808f716b880eae95f14bc
  Author: Arun Easi <arun.easi@xxxxxxxxxx>
  Date:   Tue Aug 4 13:38:02 2015 -0400

      qla2xxx: Fix missing device login retries.

      On certain conditions, login failures will just invoke
      qla2x00_mark_device_lost() with the intend to do login again;
      but if login_retry has been set already, that would fail to set the
      relogin needed flag which is required to wakeup the DPC to retry.

      Signed-off-by: Arun Easi <arun.easi@xxxxxxxxxx>
      Signed-off-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 63e322aaa6a00536055558ac1307b2919ee57aef
  Author: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
  Date:   Tue Aug 4 13:38:01 2015 -0400

      qla2xxx: do not clear slot in outstanding cmd array

      Signed-off-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: Giridhar Malavali <giridhar.malavali@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 96219424f2c7b767e42ccf203df40d7df677a5e3
  Author: Chad Dupuis <chad.dupuis@xxxxxxxxxx>
  Date:   Tue Aug 4 13:38:00 2015 -0400

      qla2xxx: Remove decrement of sp reference count in abort handler.

      Fix for memory leak when command is not found by firmware due to
      mismatch in sp reference count.

      Signed-off-by: Chad Dupuis <chad.dupuis@xxxxxxxxxx>
      Signed-off-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 03aa868c1b7b2633a4faa97b28c40e64c91a8e7f
  Author: Sawan Chandak <sawan.chandak@xxxxxxxxxx>
  Date:   Tue Aug 4 13:37:59 2015 -0400

      qla2xxx: Add support to show MPI and PEP FW version for ISP27xx.

      Signed-off-by: Sawan Chandak <sawan.chandak@xxxxxxxxxx>
      Signed-off-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit fd49a540ead94ce5769f6eb2028e97577739e24b
  Author: Chad Dupuis <chad.dupuis@xxxxxxxxxx>
  Date:   Tue Aug 4 13:37:58 2015 -0400

      qla2xxx: Do not reset ISP for error entry with an out of range handle.

      Instead of resetting the adapter wait for the login to timeout
      and retry. Resetting the adapter can cause extended path recovery
      times.

      Signed-off-by: Chad Dupuis <chad.dupuis@xxxxxxxxxx>
      Signed-off-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit c7bc4cae0d5c9703d8b15fcc0fd53b86b135bde8
  Author: Chad Dupuis <chad.dupuis@xxxxxxxxxx>
  Date:   Tue Aug 4 13:37:57 2015 -0400

      qla2xxx: Do not reset adapter if SRB handle is in range.

      If an SRB is NULL but the handle is in range just drop the
      command instead of also resetting the adapter. If the handle
      is in range then the command was valid at some point and may
      have been aborted. Resetting the adapter can lead to extended
      recovery times in this case.

      Signed-off-by: Chad Dupuis <chad.dupuis@xxxxxxxxxx>
      Signed-off-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 8fbdac8c70d378016f568106f09fb3ff153a47c3
  Author: Hiral Patel <hiral.patel@xxxxxxxxxx>
  Date:   Tue Aug 4 13:37:56 2015 -0400

      qla2xxx: Do not crash system for sp ref count zero

      Aovid crashing the system in the scenario where firmware
      just completes the command and it can not find the command
      during abort mailbox processing. This scenario can lead to
      sp reference counter being zero. Instead of crashing the
      system, use WARN_ON to print warning in log file.

      Signed-off-by: Hiral Patel <hiral.patel@xxxxxxxxxx>
      Signed-off-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit d6b9b42b49518c30df9de92ce499f005d336e97b
  Author: Saurav Kashyap <saurav.kashyap@xxxxxxxxxx>
  Date:   Tue Aug 4 13:37:55 2015 -0400

      qla2xxx: Add adapter checks for FAWWN functionality.

      Signed-off-by: Saurav Kashyap <saurav.kashyap@xxxxxxxxxx>
      Signed-off-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 8dd7e3a55949f17fecba4aedb2cb943b153e5e55
  Author: Joe Carnuccio <joe.carnuccio@xxxxxxxxxx>
  Date:   Tue Aug 4 13:37:54 2015 -0400

      qla2xxx: Pause risc before manipulating risc semaphore.

      Signed-off-by: Joe Carnuccio <joe.carnuccio@xxxxxxxxxx>
      Signed-off-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit cc790764391a68511cf6a7e4dd18eeb6e7640233
  Author: Joe Carnuccio <joe.carnuccio@xxxxxxxxxx>
  Date:   Tue Aug 4 13:37:53 2015 -0400

      qla2xxx: Use ssdid to gate semaphore manipulation.

      Execute qla25xx_manipulate_risc_semaphore() only for
      ssdid 0x0175 and 0x0240.

      Signed-off-by: Joe Carnuccio <joe.carnuccio@xxxxxxxxxx>
      Signed-off-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 17cac3a175a02cd1ae21f9183b09f30a719832df
  Author: Joe Carnuccio <joe.carnuccio@xxxxxxxxxx>
  Date:   Tue Aug 4 13:37:52 2015 -0400

      qla2xxx: Handle AEN8014 incoming port logout.

      When we get logged out, mark the port lost and set dpc flag for relogin.

      Signed-off-by: Joe Carnuccio <joe.carnuccio@xxxxxxxxxx>
      Signed-off-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 1dd34b5ad8aebaff17b625fc0126e18243008a3f
  Author: Alexei Starovoitov <ast@xxxxxxxxxxxx>
  Date:   Wed Aug 26 15:57:38 2015 -0700

      bpf: fix bpf_skb_set_tunnel_key() helper

      Make sure to indicate to tunnel driver that key.tun_id is set,
      otherwise gre won't recognize the metadata.

      Fixes: d3aa45ce6b94 ("bpf: add helpers to access tunnel metadata")
      Signed-off-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f299c7c2ab5df78e3201af34e596e8a3ba4d2791
  Author: Joe Carnuccio <joe.carnuccio@xxxxxxxxxx>
  Date:   Tue Aug 4 13:37:51 2015 -0400

      qla2xxx: Add serdes register read/write support for ISP25xx.

      Signed-off-by: Joe Carnuccio <joe.carnuccio@xxxxxxxxxx>
      Signed-off-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 709c75b5a2411c31e5a649a2cd6d4866dd11f456
  Author: jiang.biao2@xxxxxxxxxx <jiang.biao2@xxxxxxxxxx>
  Date:   Fri Jul 31 17:52:10 2015 +0800

      scsi_error: should not get sense for timeout IO in scsi error handler

      scsi_error: should not get sense for timeout IO in scsi error handler

      When an IO timeout occurs, the IO will be aborted in
      scsi_abort_command() and SCSI_EH_ABORT_SCHEDULED will be set. Because
      of that, the SCSI_EH_CANCEL_CMD will be clear in scsi_eh_scmd_add().
      So when scsi error handler starts, it will get sense for this
      timeout IO and the scmd of the IO request will be reused. In that
      case, the scmd may be double released when racing with io_done(),
      which will result in crash.
      SO SCSI_EH_ABORT_SCHEDULED should also be checked when getting sense.
      The bug maybe reproduced when the link between host and disk is
      unstable.

      Signed-off-by: Jiang Biao <jiang.biao2@xxxxxxxxxx>
      Signed-off-by: Long Chun <long.chun@xxxxxxxxxx>
      Reviewed-by: Tan Hu <tan.hu@xxxxxxxxxx>
      Reviewed-by: Chen Donghai <chen.donghai@xxxxxxxxxx>
      Reviewed-by: Cai Qu <cai.qu@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 1cd129918f14f42f8b1940096dba629ce7e7a243
  Author: Viswas G <Viswas.G@xxxxxxxx>
  Date:   Tue Aug 11 15:06:32 2015 +0530

      pm80xx: Bump pm80xx driver version to 0.1.38

      Bump pm80xx driver version to 0.1.38.

      Signed-off-by: Viswas G <Viswas.G@xxxxxxxx>
      Reviewed-by: Suresh Thiagarajan <Suresh.Thiagarajan@xxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxxx>
      Reviewed-by: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 27ecfa5e79bfc2e4efca67a6077080acab546a4a
  Author: Viswas G <Viswas.G@xxxxxxxx>
  Date:   Tue Aug 11 15:06:31 2015 +0530

      pm80xx: Handling Invalid SSP Response frame

      The request has to be retried incase if the length of the SSP
      Response IU is invalid.

      Signed-off-by: Viswas G <Viswas.G@xxxxxxxx>
      Reviewed-by: Suresh Thiagarajan <Suresh.Thiagarajan@xxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxxx>
      Reviewed-by: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 8414cd8057c29f60cda241aa489b33e4db6652f2
  Author: Viswas G <Viswas.G@xxxxxxxx>
  Date:   Tue Aug 11 15:06:30 2015 +0530

      pm80xx: Add PORT RECOVERY TIMEOUT support

      PORT RECOVERY TIMEOUT is the maximum time between the controller's
      detection of the PHY down until the receipt of the ID_Frame (from the
      same remote SAS port). If the time expires before the ID_FRAME is
      received, the port is considered INVALID and can be removed. The
      IOP_EVENT_PORT_RECOVERY_TIMER_TMO event is reported following the
      IOP_EVENT_ PHY_DOWN event when the PHY/port does not recover after
      Port Recovery Time.

      Signed-off-by: Viswas G <Viswas.G@xxxxxxxx>
      Reviewed-by: Suresh Thiagarajan <Suresh.Thiagarajan@xxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxxx>
      Reviewed-by: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 3b77894b2c32ed3326c47b550f30684beb64abd3
  Author: Viswas G <Viswas.G@xxxxxxxx>
  Date:   Tue Aug 11 15:06:29 2015 +0530

      pm80xx: Remove unnecessary phy disconnect while link error

      If the link error happens, we don't need to disconnect the phy,
      which will remove the drive. Instead acknowledging the controller
      and logging the error will be enough.

      Signed-off-by: Viswas G <Viswas.G@xxxxxxxx>
      Reviewed-by: Suresh Thiagarajan <Suresh.Thiagarajan@xxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxxx>
      Reviewed-by: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 3b700e341144f278b8248418991c086d09b7137b
  Author: Viswas G <Viswas.G@xxxxxxxx>
  Date:   Tue Aug 11 15:06:28 2015 +0530

      pm80xx: Fix for Incorrect DMA Unmapping of SG List

      In pm8001_ccb_task_free(), the dma unmapping is done based on
      ccb->n_elem value. This should be initialized to zero in the
      task_abort(). Otherwise, pm8001_ccb_task_free() will try for
      dma_unmap_sg() which is invalid for task abort and can lead to
      kernel crash.

      Changes From V1:
      None

      Signed-off-by: Viswas G <Viswas.G@xxxxxxxx>

      Reviewed-by: Suresh Thiagarajan <Suresh.Thiagarajan@xxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxxx>
      Reviewed-by: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 842784e0d15bc21b31ce69f8f3518a8cf86084e3
  Author: Viswas G <Viswas.G@xxxxxxxx>
  Date:   Tue Aug 11 15:06:27 2015 +0530

      pm80xx: Update For Thermal Page Code

      Thermal page code has been changed to 7 for the 12G controllers.

      Signed-off-by: Viswas G <Viswas.G@xxxxxxxx>
      Reviewed-by: Suresh Thiagarajan <Suresh.Thiagarajan@xxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxxx>
      Reviewed-by: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 3a1ae967741c301a5ad26665dcfb184082b969b2
  Author: Viswas G <Viswas.G@xxxxxxxx>
  Date:   Tue Aug 11 15:06:26 2015 +0530

      pm80xx: Corrected device state changes in I_T_Nexus_Reset.

      In Nexus reset the device state request are not needed.

      Signed-off-by: Viswas G <Viswas.G@xxxxxxxx>
      Reviewed-by: Suresh Thiagarajan <Suresh.Thiagarajan@xxxxxxxx>
      Acked-by: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit b093d590367f6eafbec89243fabb12d4b96a9997
  Author: Viswas G <Viswas.G@xxxxxxxx>
  Date:   Tue Aug 11 15:06:25 2015 +0530

      pm80xx: Updated link rate

      Updated 12G linkrate to libsas.

      Signed-off-by: Viswas G <Viswas.G@xxxxxxxx>
      Reviewed-by: Suresh Thiagarajan <Suresh.Thiagarajan@xxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxxx>
      Reviewed-by: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit d32477e2a72cf9b99bb174e0f11e1b1c7834b76f
  Author: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxxx>
  Date:   Wed Jul 29 12:02:50 2015 +0200

      MAINTAINERS: update email for pm8001

      Company has policy to use company email address, so update
      my email address to company address.

      Signed-off-by: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit b103918a5f21a51d12018a09919617687e584384
  Author: Sebastian Herbszt <herbszt@xxxxxx>
  Date:   Wed Jul 22 10:53:22 2015 +0200

      lpfc: Use && instead of & for boolean expression

      Use logical instead of bitwise AND.

      Signed-off-by: Sebastian Herbszt <herbszt@xxxxxx>
      Reviewed-by: James Smart <james.smart@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 5155ce5f8395730f681fe48cdc8867838e3a3f2c
  Author: Dilip Kumar Uppugandla <dilip@xxxxxxxxxxxxxxx>
  Date:   Tue Jul 21 15:07:55 2015 -0700

      qla2xxx: Return the fabric command state for non-task management requests

      Invoking get_cmd_state for qla2xxx always returns 0. Instead change it
      to return the actual fabric state from qla_tgt_cmd. This will help with
      debugging.

      Signed-off-by: Dilip Kumar Uppugandla <dilip@xxxxxxxxxxxxxxx>
      Signed-off-by: Spencer Baugh <sbaugh@xxxxxxxxxx>
      Acked-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 2d041306b669e281427de7dd398e74335c9f5042
  Author: Don Brace <don.brace@xxxxxxxx>
  Date:   Sat Jul 18 11:13:15 2015 -0500

      hpsa: fix rmmod issues

      The driver is calling hpsa_shutdown before calling scsi_remove_host.
      hpsa_shutdown is disabling interrupts.

      scsi_remove_host can trigger I/O operations, such as
      SYNCHRONIZE CACHE when multipath is enabled which hang the system.

      Call scsi_remove_host before calling hpsa_shutdown.

      Reviewed-by: Kevin Barnett <kevin.barnett@xxxxxxxx>
      Reviewed-by: Scott Teel <scott.teel@xxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: Don Brace <don.brace@xxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 9a4178b76a973684750d20b684bae4f57ab9a355
  Author: shane.seymour <shane.seymour@xxxxxx>
  Date:   Sat Jul 18 11:13:09 2015 -0500

      hpsa: fix issues with multilun devices

      A regression was introduced into the hpsa driver a while back so
      non-zero LUNs of multi-LUN devices may no longer be presented via
      a SAS based Smart Array. I have not done a bisection to discover
      the change that caused it.

      The CISS firmware specification (available on sourceforge)
      defines an 8 byte lunid that describes devices that the Smart
      Array can see/present to the system. The current code in the hpsa
      driver attempts to find matches for non-zero LUNs with LUN 0 for
      a bus/target by zeroing out byte 4 of the lunid and find a match.

      This method is sufficient for SCSI based Smart Arrays because
      byte 5 is always 0. For SAS based Smart arrays byte 5 of the
      lunid contains the path number for a multipath device and
      either one or two bits (the documentation does not define how
      many bits are used but it appears it may be one only) that
      indicate if the given path number in byte 5 must always be
      used to access that device. Byte 5 may not always be zero.

      The following are lunids (spaces added for clarity) for a
      MSL2024 single drive library connected via a H241 Smart Array:

      00 00 00 00 01 00 00 01 (changer)
      00 00 00 00 00 80 00 01 (tape)

      In the 4th byte (counting from 0) you can see that the tape
      is LUN 0 and the changer is LUN 1. The 0x80 set in the 5th byte
      for the tape drive means the driver should force access to
      path 0 (the library in this case was connected to one path only
      anyway).

      After the changes we can see the following in the dmesg output:

      scsi 0:3:0:0: RAID              HP       H241             1.18 \
      PQ: 0 ANSI: 5
      scsi 0:2:0:0: Sequential-Access HP       Ultrium 6-SCSI   354W \
      PQ: 0 ANSI: 6
      scsi 0:2:0:1: Medium Changer    HP       MSL G3 Series    8.70 \
      PQ: 0 ANSI: 5

      Showing that the changer is correctly identified as LUN 1 of
      bus 2 target 0. Before the change the changer device is not seen.

      Suggested-by: shane.seymour <shane.seymour@xxxxxx>
      Reviewed-by: Kevin Barnett <kevin.barnett@xxxxxxxx>
      Reviewed-by: Scott Teel <scott.teel@xxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: Don Brace <don.brace@xxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 5ca0120447ae8d485e2ee5100f25b6645e3e320f
  Author: Scott Benesh <scott.benesh@xxxxxxxx>
  Date:   Sat Jul 18 11:13:04 2015 -0500

      hpsa: add in new offline mode

      prevent adding volumes that are not available.

      Reviewed-by: Kevin Barnett <kevin.barnett@xxxxxxxx>
      Reviewed-by: Scott Teel <scott.teel@xxxxxxxx>
      Reviewed-by: Justin Lindley <justin.lindley@xxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: Don Brace <don.brace@xxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit b9092b79ccaf4404509d6aeb2c76eb7cbfa57bf1
  Author: Kevin Barnett <kevin.barnett@xxxxxxxx>
  Date:   Sat Jul 18 11:12:59 2015 -0500

      Change how controllers in mixed mode are handled.

      Reviewed-by: Kevin Barnett <kevin.barnett@xxxxxxxx>
      Reviewed-by: Scott Teel <scott.teel@xxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: Don Brace <don.brace@xxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit cbb47dcbb405d4a694801e6ad6d63c2992f83bb4
  Author: Don Brace <don.brace@xxxxxxxx>
  Date:   Sat Jul 18 11:12:54 2015 -0500

      hpsa: add in new controllers

      Reviewed-by: Kevin Barnett <kevin.barnett@xxxxxxxx>
      Reviewed-by: Scott Teel <scott.teel@xxxxxxxx>
      Signed-off-by: Don Brace <don.brace@xxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 9384950809d96ee08dcd7bb2eadc9628b99d0474
  Author: Don Brace <don.brace@xxxxxxxx>
  Date:   Sat Jul 18 11:12:49 2015 -0500

      hpsa: cleanup update scsi devices

      showing that tables have been updated unnecessarily.

      Reviewed-by: Kevin Barnett <kevin.barnett@xxxxxxxx>
      Reviewed-by: Scott Teel <scott.teel@xxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: Don Brace <don.brace@xxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 8270b8624365887a716615294d0ac28af07c9287
  Author: Joe Handzik <joseph.t.handzik@xxxxxx>
  Date:   Sat Jul 18 11:12:43 2015 -0500

      hpsa: add sysfs entry path_info to show box and bay information

      host no, bus, target, lun, scsi_device_type
      for hba mode add: box and bay information

      report if the path is active/inactive

      Reviewed-by: Kevin Barnett <kevin.barnett@xxxxxxxx>
      Reviewed-by: Scott Teel <scott.teel@xxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: Don Brace <don.brace@xxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 1358f6dc5875f5cef06eeeeb4532f382aaff8483
  Author: Don Brace <don.brace@xxxxxxxx>
  Date:   Sat Jul 18 11:12:38 2015 -0500

      hpsa: add PMC to copyright

      need to add PMC to copyright notice and update the Hewlett-Packard
      copyright notification.

      Reviewed-by: Scott Teel <scott.teel@xxxxxxxx>
      Reviewed-by: Kevin Barnett <kevin.barnett@xxxxxxxx>
      Reviewed-by: Justin Lindley <justin.lindley@xxxxxxxx>
      Signed-off-by: Don Brace <don.brace@xxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 7ef7323f4bf467ce9fe51177301ad8cbb7dc2631
  Author: Don Brace <don.brace@xxxxxxxx>
  Date:   Sat Jul 18 11:12:33 2015 -0500

      hpsa: correct static checker warnings on driver init cleanup

      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Reviewed-by: Kevin Barnett <kevin.barnett@xxxxxxxx>
      Reviewed-by: Scott Teel <scott.teel@xxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: Don Brace <don.brace@xxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 81c275576bcee1a80e046117c7923586216a2dd4
  Author: Don Brace <don.brace@xxxxxxxx>
  Date:   Sat Jul 18 11:12:28 2015 -0500

      hpsa: correct decode sense data

      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Reviewed-by: Kevin Barnett <kevin.barnett@xxxxxxxx>
      Reviewed-by: Scott Teel <scott.teel@xxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: Don Brace <don.brace@xxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 77678d3a35455d7b7c4da4e56b20de17ee63cec1
  Author: Don Brace <don.brace@xxxxxxxx>
  Date:   Sat Jul 18 11:12:22 2015 -0500

      hpsa: Correct double unlock of mutex

      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Reviewed-by: Scott Teel <scott.teel@xxxxxxxx>
      Reviewed-by: Kevin Barnett <kevin.barnett@xxxxxxxx>
      Reviewed-by: Tomas Henzl <thenzl@xxxxxxxxxx>
      Signed-off-by: Don Brace <don.brace@xxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 5d0ddfebb93069061880fc57ee4ba7246bd1e1ee
  Author: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 15:36:23 2015 +0800

      ACPI, PCI: Penalize legacy IRQ used by ACPI SCI

      Nick Meier reported a regression with HyperV that "
        After rebooting the VM, the following messages are logged in syslog
        when trying to load the tulip driver:
          tulip: Linux Tulip drivers version 1.1.15 (Feb 27, 2007)
          tulip: 0000:00:0a.0: PCI INT A: failed to register GSI
          tulip: Cannot enable tulip board #0, aborting
          tulip: probe of 0000:00:0a.0 failed with error -16
        Errors occur in 3.19.0 kernel
        Works in 3.17 kernel.
      "

      According to the ACPI dump file posted by Nick at
      https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1440072

      The ACPI MADT table includes an interrupt source overridden entry for
      ACPI SCI:
      [236h 0566  1]                Subtable Type : 02 <Interrupt Source 
Override>
      [237h 0567  1]                       Length : 0A
      [238h 0568  1]                          Bus : 00
      [239h 0569  1]                       Source : 09
      [23Ah 0570  4]                    Interrupt : 00000009
      [23Eh 0574  2]        Flags (decoded below) : 000D
                                         Polarity : 1
                                     Trigger Mode : 3

      And in DSDT table, we have _PRT method to define PCI interrupts, which
      eventually goes to:
              Name (PRSA, ResourceTemplate ()
              {
                  IRQ (Level, ActiveLow, Shared, )
                      {3,4,5,7,9,10,11,12,14,15}
              })
              Name (PRSB, ResourceTemplate ()
              {
                  IRQ (Level, ActiveLow, Shared, )
                      {3,4,5,7,9,10,11,12,14,15}
              })
              Name (PRSC, ResourceTemplate ()
              {
                  IRQ (Level, ActiveLow, Shared, )
                      {3,4,5,7,9,10,11,12,14,15}
              })
              Name (PRSD, ResourceTemplate ()
              {
                  IRQ (Level, ActiveLow, Shared, )
                      {3,4,5,7,9,10,11,12,14,15}
              })

      According to the MADT and DSDT tables, IRQ 9 may be used for:
       1) ACPI SCI in level, high mode
       2) PCI legacy IRQ in level, low mode
      So there's a conflict in polarity setting for IRQ 9.

      Prior to commit cd68f6bd53cf ("x86, irq, acpi: Get rid of special
      handling of GSI for ACPI SCI"), ACPI SCI is handled specially and
      there's no check for conflicts between ACPI SCI and PCI legagy IRQ.
      And it seems that the HyperV hypervisor doesn't make use of the
      polarity configuration in IOAPIC entry, so it just works.

      Commit cd68f6bd53cf gets rid of the specially handling of ACPI SCI,
      and then the pin attribute checking code discloses the conflicts
      between ACPI SCI and PCI legacy IRQ on HyperV virtual machine,
      and rejects the request to assign IRQ9 to PCI devices.

      So penalize legacy IRQ used by ACPI SCI and mark it unusable if ACPI
      SCI attributes conflict with PCI IRQ attributes.

      Please refer to following links for more information:
      https://bugzilla.kernel.org/show_bug.cgi?id=101301
      https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1440072

      Fixes: cd68f6bd53cf ("x86, irq, acpi: Get rid of special handling of GSI 
for ACPI SCI")
      Reported-and-tested-by: Nick Meier <nmeier@xxxxxxxxxxxxx>
      Acked-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: 3.19+ <stable@xxxxxxxxxxxxxxx> # 3.19+
      Signed-off-by: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit bf41846edf5b1618a37f8ec830251b31d8ed6ab3
  Author: Catherine Sullivan <catherine.sullivan@xxxxxxxxx>
  Date:   Fri Jul 10 19:36:10 2015 -0400

      i40e/i40evf: Bump i40e to 1.3.9 and i40evf to 1.3.5

      Bump version and update the copyright year for i40evf.

      Change-ID: Iddb81b9dba09f0dc57ab54937b5821ecdd721ff6
      Signed-off-by: Catherine Sullivan <catherine.sullivan@xxxxxxxxx>
      Tested-by: Andrew Bowers <andrewx.bowers@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 9fffa3f34dff2585ae86cd5b59c68ad2d4172f25
  Author: Neerav Parikh <neerav.parikh@xxxxxxxxx>
  Date:   Fri Jul 10 19:36:09 2015 -0400

      i40e/i40evf: Cache the CEE TLV status returned from firmware

      Store the CEE TLV status returned by firmware to allow drivers to dump 
that
      for debug purposes.

      Change-ID: Ie3c4cf8cebabee4f15e1e3fdc4fc8a68bbca40ee
      Signed-off-by: Neerav Parikh <neerav.parikh@xxxxxxxxx>
      Tested-by: Andrew Bowers <andrewx.bowers@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit b8262a6dfad8825e0b117fe5e3a1715a585bbd79
  Author: Anjali Singhai Jain <anjali.singhai@xxxxxxxxx>
  Date:   Fri Jul 10 19:36:08 2015 -0400

      i40e/i40evf: add VIRTCHNL_VF_OFFLOAD flag

      Add virtual channel offload capability to support RX polling mode in the
      VF.

      Change-ID: Ib643ae2a7506dfc75fc489fc207493fabefa4832
      Signed-off-by: Jingjing Wu <jingjing.wu@xxxxxxxxx>
      Signed-off-by: Anjali Singhai Jain <anjali.singhai@xxxxxxxxx>
      Tested-by: Andrew Bowers <andrewx.bowers@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 2b20c88397fde2902c7834bb9e3ef8afc0237306
  Author: Greg Rose <gregory.v.rose@xxxxxxxxx>
  Date:   Fri Jul 10 19:36:07 2015 -0400

      i40e: Remove redundant and unneeded messages

      The kernel notifies all VXLAN capable registered drivers, i.e. any
      driver that implements ndo_add_vxlan_port(), of the addition of a
      port so that the driver can track which ports are in use.  There's
      no need to log this - it just fills the system log with useless and
      irksome noise.

      Also, when failing to init SR-IOV interfaces the driver was printing the
      same message twice. Just remove the inner printk and let the outer message
      catch enable as well as the other failures.

      Change-ID: Id5ecb1d425c2a357ee2bc1635dab24553831dade
      Signed-off-by: Greg Rose <gregory.v.rose@xxxxxxxxx>
      Signed-off-by: Jesse Brandeburg <jesse.brandeburg@xxxxxxxxx>
      Tested-by: Andrew Bowers <andrewx.bowers@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit e02a7f83d84d0580a62df8d4c4e95cd8791c6645
  Author: Anjali Singhai Jain <anjali.singhai@xxxxxxxxx>
  Date:   Fri Jul 10 19:36:06 2015 -0400

      i40evf: Remove PF specific register definitions from the VF

      There were quite a few issues when the wrong defines were getting used
      in the VF driver. This patch fixes the code where PF driver registers
      were getting used for VF driver, and also removes the registers that are
      not being used from the VF register file.

      Change-ID: If116a9730112950d006eb8ec763998fc914cc839
      Signed-off-by: Anjali Singhai Jain <anjali.singhai@xxxxxxxxx>
      Acked-by: Mitch Williams <mitch.a.williams@xxxxxxxxx>
      Tested-by: Andrew Bowers <andrewx.bowers@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit b1f3366b86a9e99f4d4d557b02e0f53fa7ccd72c
  Author: Anjali Singhai Jain <anjali.singhai@xxxxxxxxx>
  Date:   Fri Jul 10 19:36:05 2015 -0400

      i40evf: Use the correct defines to match the VF registers

      Use CTLN1 instead of CTLN for the VF relative register space.

      Change-ID: Iefba63faf0307af55fec8dbb64f26059f7d91318
      Signed-off-by: Anjali Singhai Jain <anjali.singhai@xxxxxxxxx>
      Tested-by: Andrew Bowers <andrewx.bowers@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit cd494fb4c2ba56dd9bb3919dc55565c2cc1551b6
  Author: Mitch Williams <mitch.a.williams@xxxxxxxxx>
  Date:   Fri Jul 10 19:36:04 2015 -0400

      i40e: correct spelling error

      Turns out that 'inavlid' is an inavlid spelling for 'invalid'.

      Change-ID: Ie1fe2d0f8d1ba75ab880594875ec2e4152a76f61
      Signed-off-by: Mitch Williams <mitch.a.williams@xxxxxxxxx>
      Tested-by: Andrew Bowers <andrewx.bowers@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit b4e53f02d7356809acbab673e6c20773cf56dbd6
  Author: Greg Rose <gregory.v.rose@xxxxxxxxx>
  Date:   Fri Jul 10 19:36:03 2015 -0400

      i40e: Fix comment for ethtool diagnostic link test

      The existing comment is incorrect.  Add new comment to point out that the
      PF reset does not affect link but if the reset is changed to a different
      type that does affect link then the link test would need to be moved to
      before the reset.

      Change-ID: I28d786f46e9465860babdee61c1dba51016464df
      Reported-by: Jeremiah Kyle <jeremiah.kyle@xxxxxxxxx>
      Signed-off-by: Greg Rose <gregory.v.rose@xxxxxxxxx>
      Tested-by: Andrew Bowers <andrewx.bowers@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit fe860afb4638f5e62e7d861bfc35a1580fb633bb
  Author: Neerav Parikh <neerav.parikh@xxxxxxxxx>
  Date:   Fri Jul 10 19:36:02 2015 -0400

      i40e/i40evf: Add capability to gather VEB per TC stats

      This patch adds capability to update per VEB per TC statistics and dump
      it via ethtool. It also adds a structure to hold VEB per TC statistics.
      The fields can be filled by reading the GLVEBTC_* counters.

      Change-ID: I28b4759b9ab6ad5a61f046a1bc9ef6b16fe31538
      Signed-off-by: Neerav Parikh <neerav.parikh@xxxxxxxxx>
      Tested-by: Andrew Bowers <andrewx.bowers@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit c2b6bd7e91aad8440a2f55bdbde6f5a8ae19fac5
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Aug 25 21:39:31 2015 +0200

      drm/amdgpu: fix wait queue handling in the scheduler

      Freeing up a queue after signalling it isn't race free.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit bd755d08709f05a81104e8f81d721b5cc353a2b3
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Aug 24 14:57:26 2015 +0200

      drm/amdgpu: remove extra parameters from scheduler callbacks

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Acked-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 510efb2682b35790b2274639ab985fe385bb526a
  Author: Greg Rose <gregory.v.rose@xxxxxxxxx>
  Date:   Fri Jul 10 19:36:01 2015 -0400

      i40e: Fix ethtool offline diagnostic with netqueues

      Treat netqueues the same way we do virtual functions when someone wants to
      run the ethtool offline diagnostic test.

      Change-ID: Id48d2b933f1fd0db7be06305a93c6ebe3dc821f5
      Signed-off-by: Greg Rose <gregory.v.rose@xxxxxxxxx>
      Tested-by: Andrew Bowers <andrewx.bowers@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 88079006dc412c5d1676f9f6e9c4d72a209eb556
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Aug 24 14:29:40 2015 +0200

      drm/amdgpu: wake up scheduler only when neccessary

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Acked-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 062c7fb3ebb42d2a50d4644b3e49e731361e6951
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Fri Aug 21 15:46:43 2015 +0200

      drm/amdgpu: remove entity idle timeout v2

      Removing the entity from scheduling can deadlock the whole system.
      Wait forever till the remaining IBs are scheduled.

      v2: fix comment as well

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Acked-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx> (v1)

  commit 02537d63623ce5281c20d76f1b61797a7836acf4
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Aug 25 15:05:20 2015 +0200

      drm/amdgpu: fix postclose order

      The context needs to finish before everything else.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Acked-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 26cdc443fd8fccccdfb17fd2845cf9233a995325
  Author: Anjali Singhai Jain <anjali.singhai@xxxxxxxxx>
  Date:   Fri Jul 10 19:36:00 2015 -0400

      i40e: Fix legacy interrupt mode in the driver

      This patch fixes the driver flow to take into account legacy interrupts.
      Over time we added code that assumes MSIX is the only mode that the
      driver runs in. It also enables a legacy workaround to trigger SWINT
      when the TX ring has non-cache aligned descriptors pending and interrupts
      are disabled.

      We work with a single vector in MSI mode too, so apply the same
      restrictions as Legacy.

      Change-ID: I826ddff1f9bd45d2dbe11f56a3ddcef0dbf42563
      Signed-off-by: Anjali Singhai Jain <anjali.singhai@xxxxxxxxx>
      Tested-by: Andrew Bowers <andrewx.bowers@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit c7ae72c01be10f539f385f624713f8ba0aa11a8f
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Aug 25 17:23:45 2015 +0800

      drm/amdgpu: use IB for copy buffer of eviction

      This aids handling buffers moves with the scheduler.

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 113cd9dacbad4906e1c8db09233b9fdcb002f80d
  Author: Junwei Zhang <Jerry.Zhang@xxxxxxx>
  Date:   Wed Aug 26 09:34:59 2015 +0800

      drm/amdgpu: adjust the judgement of removing fence callback

      The fence in the array may be skipped if wait_all is false,
      thus the related callback is not initialized with list head.
      So removing this kind callback will cause NULL pointer reference.

      Signed-off-by: Junwei Zhang <Jerry.Zhang@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 02b42498f383a6c24f7c751d4fe89a911a249242
  Author: Catherine Sullivan <catherine.sullivan@xxxxxxxxx>
  Date:   Fri Jul 10 19:35:59 2015 -0400

      i40e: Move function calls to i40e_shutdown instead of i40e_suspend

      We should be stopping the service task and flow director on
      shutdown not on suspension.

      Signed-off-by: Catherine Sullivan <catherine.sullivan@xxxxxxxxx>
      Tested-by: Andrew Bowers <andrewx.bowers@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 9f7c94487197df9aaca172027419af57e5dc7d6f
  Author: Shannon Nelson <shannon.nelson@xxxxxxxxx>
  Date:   Fri Jul 10 19:35:57 2015 -0400

      i40e: add RX to port CRC errors label

      The port.crc_errors is really an RX counter, so let's mark it as such.

      Change-ID: I179afd3f8a95d45229bb4163a6aeb01f0d2d250b
      Signed-off-by: Shannon Nelson <shannon.nelson@xxxxxxxxx>
      Tested-by: Andrew Bowers <andrewx.bowers@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit ecbb44e8f81b860ef279b0f176a878da9ebd614e
  Author: Mitch Williams <mitch.a.williams@xxxxxxxxx>
  Date:   Fri Jul 10 19:35:56 2015 -0400

      i40e: don't degrade __le16

      Sparse cries when we compare an __le16 to a u16, almost like it cares
      about architectures other than x86. Weird. Use the le16_to_cpu macro to
      make it stop crying.

      Change-ID: Id068f4d7868a2d3df234a791a76d15938f37db35
      Signed-off-by: Mitch Williams <mitch.a.williams@xxxxxxxxx>
      Tested-by: Andrew Bowers <andrewx.bowers@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 66bc2f51ef7deabc8b8f3baa98ae64b65e5e973a
  Author: Stefan Assmann <sassmann@xxxxxxxxx>
  Date:   Wed Aug 26 13:11:49 2015 -0700

      Input: psmouse - add small delay for IBM trackpoint pass-through mode

      There are trackpoint devices that fail to respond to the PS2 command
      PSMOUSE_CMD_GETID if immediately queried after the parent device is
      deactivated. Add a small delay for the hardware to get in a sane state
      before sending any PS2 commands.

      One example of such a system is:
      Lenovo ThinkPad X120e, model 30515QG
      synaptics: Touchpad model: 1, fw: 8.0, id: 0x1e2b1, caps: 
0xd001a3/0x940300/0x121c00, board id: 1811, fw id: 797391

      Signed-off-by: Stefan Assmann <sassmann@xxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit a5e090acbf545c0a3b04080f8a488b17ec41fe02
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 20:40:41 2015 +0100

      ARM: software-based priviledged-no-access support

      Provide a software-based implementation of the priviledged no access
      support found in ARMv8.1.

      Userspace pages are mapped using a different domain number from the
      kernel and IO mappings.  If we switch the user domain to "no access"
      when we enter the kernel, we can prevent the kernel from touching
      userspace.

      However, the kernel needs to be able to access userspace via the
      various user accessor functions.  With the wrapping in the previous
      patch, we can temporarily enable access when the kernel needs user
      access, and re-disable it afterwards.

      This allows us to trap non-intended accesses to userspace, eg, caused
      by an inadvertent dereference of the LIST_POISON* values, which, with
      appropriate user mappings setup, can be made to succeed.  This in turn
      can allow use-after-free bugs to be further exploited than would
      otherwise be possible.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 2190fed67ba6f3e8129513929f2395843645e928
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 10:32:02 2015 +0100

      ARM: entry: provide uaccess assembly macro hooks

      Provide hooks into the kernel entry and exit paths to permit control
      of userspace visibility to the kernel.  The intended use is:

      - on entry to kernel from user, uaccess_disable will be called to
        disable userspace visibility
      - on exit from kernel to user, uaccess_enable will be called to
        enable userspace visibility
      - on entry from a kernel exception, uaccess_save_and_disable will be
        called to save the current userspace visibility setting, and disable
        access
      - on exit from a kernel exception, uaccess_restore will be called to
        restore the userspace visibility as it was before the exception
        occurred.

      These hooks allows us to keep userspace visibility disabled for the
      vast majority of the kernel, except for localised regions where we
      want to explicitly access userspace.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit aa06e5c1f9c2b466712be904cc5b56a813e24cfd
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Wed Aug 26 20:07:25 2015 +0100

      ARM: entry: get rid of multiple macro definitions

      The following structure is just asking for trouble:

       #ifdef CONFIG_symbol
        .macro foo
        ...
        .endm
        .macro bar
        ...
        .endm
        .macro baz
        ...
        .endm
       #else
        .macro foo
        ...
        .endm
        .macro bar
        ...
        .endm
       #ifdef CONFIG_symbol2
        .macro baz
        ...
        .endm
       #else
        .macro baz
        ...
        .endm
       #endif
       #endif

      such as one defintion being updated, but the other definitions miss out.
      Where the contents of a macro needs to be conditional, the hint is in
      the first clause of this very sentence.  "contents" "conditional".  Not
      multiple separate definitions, especially not when much of the macro
      is the same between different configs.

      This patch fixes this bad style, which had caused the Thumb2 code to
      miss-out on the uaccess updates.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 19b2c30d3cce928010138cae4b9e57c388aa065c
  Author: Chao Yu <chao2.yu@xxxxxxxxxxx>
  Date:   Wed Aug 26 20:34:48 2015 +0800

      f2fs: update extent tree in batches

      This patch introduce a new helper f2fs_update_extent_tree_range which can
      do extent mapping update at a specified range.

      The main idea is:
      1) punch all mapping info in extent node(s) which are at a specified 
range;
      2) try to merge new extent mapping with adjacent node, or failing that,
         insert the mapping into extent tree as a new node.

      In order to see the benefit, I add a function for stating time stamping
      count as below:

      uint64_t rdtsc(void)
      {
        uint32_t lo, hi;
        __asm__ __volatile__ ("rdtsc" : "=a" (lo), "=d" (hi));
        return (uint64_t)hi << 32 | lo;
      }

      My test environment is: ubuntu, intel i7-3770, 16G memory, 256g micron 
ssd.

      truncation path:  update extent cache from truncate_data_blocks_range
      non-truncataion path:     update extent cache from other paths
      total:                    all update paths

      a) Removing 128MB file which has one extent node mapping whole range of
      file:
      1. dd if=/dev/zero of=/mnt/f2fs/128M bs=1M count=128
      2. sync
      3. rm /mnt/f2fs/128M

      Before:
                total           count           average
      truncation:       7651022         32768           233.49

      Patched:
                total           count           average
      truncation:       3321            33              100.64

      b) fsstress:
      fsstress -d /mnt/f2fs -l 5 -n 100 -p 20
      Test times:               5 times.

      Before:
                total           count           average
      truncation:       5812480.6       20911.6         277.95
      non-truncation:   7783845.6       13440.8         579.12
      total:            13596326.2      34352.4         395.79

      Patched:
                total           count           average
      truncation:       1281283.0       3041.6          421.25
      non-truncation:   7355844.4       13662.8         538.38
      total:            8637127.4       16704.4         517.06

      1) For the updates in truncation path:
       - we can see updating in batches leads total tsc and update count 
reducing
         explicitly;
       - besides, for a single batched updating, punching multiple extent nodes
         in a loop, result in executing more operations, so our average tsc
         increase intensively.
      2) For the updates in non-truncation path:
       - there is a little improvement, that is because for the scenario that we
         just need to update in the head or tail of extent node, new interface
         optimize to update info in extent node directly, rather than removing
         original extent node for updating and then inserting that updated one
         into cache as new node.

      Signed-off-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 1b383bf912b25029fb180cf2cf8f33f90d6cf97f
  Merge: 1afe839 d332881
  Author: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>
  Date:   Wed Aug 26 20:33:58 2015 +0200

      Merge tag 'ipvs2-for-v4.3' of 
https://git.kernel.org/pub/scm/linux/kernel/git/horms/ipvs-next

      Simon Horman says:

      ====================
      Second Round of IPVS Updates for v4.3

      I realise these are a little late in the cycle, so if you would prefer
      me to repost them for v4.4 then just let me know.

      The updates include:
      * A new scheduler from Raducu Deaconu
      * Enhanced configurability of the sync daemon from Julian Anastasov
      ====================

      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit d31ff5f7f3b142b8d1ebb3da89187c54cdf2bc71
  Author: Damien.Horsley <Damien.Horsley@xxxxxxxxxx>
  Date:   Wed Aug 26 17:11:40 2015 +0100

      clk: pistachio: correct critical clock list

      Current critical clock list for pistachio enables
      only mips and sys clocks by default but there are
      also other clocks that are not claimed by anyone and
      needs to be enabled by default.

      This patch updates the critical clocks that need
      to be enabled by default.

      Add a separate struct to distinguish the critical clocks
      as listed:
      1.) core clocks:
        a.) mips clock
      2.) peripheral system clocks:
        a.) sys clock
        b.) sys_bus clock
        c.) DDR clock
        d.) ROM clock

      Fixes: b35d7c33419c("CLK: Pistachio: Register core clocks")
      Cc: <stable@xxxxxxxxxxxxxxx> # 4.1
      Reviewed-by: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Signed-off-by: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
      Signed-off-by: Damien.Horsley <Damien.Horsley@xxxxxxxxxx>
      Signed-off-by: Govindraj Raja <govindraj.raja@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 7937c6c57e0da7bffa7b10bac23f230c77523e35
  Author: Zdenko Pulitika <zdenko.pulitika@xxxxxxxxxx>
  Date:   Wed Aug 26 17:11:39 2015 +0100

      clk: pistachio: Fix PLL rate calculation in integer mode

      .recalc_rate callback for the fractional PLL doesn't take operating
      mode into account when calculating PLL rate. This results in
      the incorrect PLL rates when PLL is operating in integer mode.

      Operating mode of fractional PLL is based on the value of the
      fractional divider. Currently it assumes that the PLL will always
      be configured in fractional mode which may not be
      the case. This may result in the wrong output frequency.

      Also vco was calculated based on the current operating mode which
      makes no sense because .set_rate is setting operating mode. Instead,
      vco should be calculated using PLL settings that are about to be set.

      Fixes: 43049b0c83f17("CLK: Pistachio: Add PLL driver")
      Cc: <stable@xxxxxxxxxxxxxxx> # 4.1
      Reviewed-by: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Signed-off-by: Zdenko Pulitika <zdenko.pulitika@xxxxxxxxxx>
      Signed-off-by: Govindraj Raja <govindraj.raja@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit e53f21c761d141bbcbce06e9ddab3b4e0a828f2c
  Author: Zdenko Pulitika <zdenko.pulitika@xxxxxxxxxx>
  Date:   Wed Aug 26 17:11:38 2015 +0100

      clk: pistachio: Fix override of clk-pll settings from boot loader

      PLL enable callbacks are overriding PLL mode (int/frac) and
      Noise reduction (on/off) settings set by the boot loader which
      results in the incorrect clock rate.

      PLL mode and noise reduction are defined by the DSMPD and DACPD bits
      of the PLL control register. PLL .enable() callbacks enable PLL
      by deasserting all power-down bits of the PLL control register,
      including DSMPD and DACPD bits, which is not necessary since
      these bits don't actually enable/disable PLL.

      This commit fixes the problem by removing DSMPD and DACPD bits
      from the "PLL enable" mask.

      Fixes: 43049b0c83f17("CLK: Pistachio: Add PLL driver")
      Cc: <stable@xxxxxxxxxxxxxxx> # 4.1
      Reviewed-by: Andrew Bresitcker <abrestic@xxxxxxxxxxxx>
      Signed-off-by: Zdenko Pulitika <zdenko.pulitika@xxxxxxxxxx>
      Signed-off-by: Govindraj Raja <govindraj.raja@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 093affb009a3d87848e51217cd1a06ce1135633f
  Author: Zdenko Pulitika <zdenko.pulitika@xxxxxxxxxx>
  Date:   Wed Aug 26 17:11:37 2015 +0100

      clk: pistachio: Fix 32bit integer overflows

      This commit fixes 32bit integer overflows throughout the pll driver
      (i.e. wherever the result of integer multiplication may exceed the
      range of u32).

      One of the functions affected by this problem is .recalc_rate. It
      returns incorrect rate for some pll settings (not for all though)
      which in turn results in the incorrect rate setup of pll's child
      clocks.

      Fixes: 43049b0c83f17("CLK: Pistachio: Add PLL driver")
      Cc: <stable@xxxxxxxxxxxxxxx> # 4.1
      Reviewed-by: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Signed-off-by: Zdenko Pulitika <zdenko.pulitika@xxxxxxxxxx>
      Signed-off-by: Govindraj Raja <govindraj.raja@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 1afe839e6b31a85fc53adbf8757d6373908d414d
  Author: Andreas Herz <andi@xxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 11:31:32 2015 +0200

      netfilter: ip6t_REJECT: added missing icmpv6 codes

      RFC 4443 added two new codes values for ICMPv6 type 1:

       5 - Source address failed ingress/egress policy
       6 - Reject route to destination

      And RFC 7084 states in L-14 that IPv6 Router MUST send ICMPv6 Destination
      Unreachable with code 5 for packets forwarded to it that use an address
      from a prefix that has been invalidated.

      Codes 5 and 6 are more informative subsets of code 1.

      Signed-off-by: Andreas Herz <andi@xxxxxxxxxxxxxxx>
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit 8c5bbe77d4cd012668cdaf501bbd1cbfb9ad1d24
  Merge: dc8242f cff8245
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Wed Aug 26 11:01:45 2015 -0700

      Merge branch 'act_bpf_lockless'

      Alexei Starovoitov says:

      ====================
      act_bpf: remove spinlock in fast path

      v1 version had a race condition in cleanup path of bpf_prog.
      I tried to fix it by adding new callback 'cleanup_rcu' to 'struct 
tcf_common'
      and call it out of act_api cleanup path, but Daniel noticed
      (thanks for the idea!) that most of the classifiers already do action 
cleanup
      out of rcu callback.
      So instead this set of patches converts tcindex and rsvp classifiers to 
call
      tcf_exts_destroy() after rcu grace period and since action cleanup logic
      in __tcf_hash_release() is only called when bind and refcnt goes to zero,
      it's guaranteed that cleanup() callback is called from rcu callback.
      More specifically:
      patches 1 and 2 - simple fixes
      patches 2 and 3 - convert tcf_exts_destroy in tcindex and rsvp to call_rcu
      patch 5 - removes spin_lock from act_bpf

      The cleanup of actions is now universally done after rcu grace period
      and in the future we can drop (now unnecessary) call_rcu from 
tcf_hash_destroy()
      patch 5 is using synchronize_rcu() in act_bpf replacement path, since it's
      very rare and alternative of dynamically allocating 'struct tcf_bpf_cfg' 
just
      to pass it to call_rcu looks even less appealing.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit cff82457c5584f6a96d2b85d1a88b81ba304a330
  Author: Alexei Starovoitov <ast@xxxxxxxxxxxx>
  Date:   Tue Aug 25 20:06:35 2015 -0700

      net_sched: act_bpf: remove spinlock in fast path

      Similar to act_gact/act_mirred, act_bpf can be lockless in packet 
processing
      with extra care taken to free bpf programs after rcu grace period.
      Replacement of existing act_bpf (very rare) is done with synchronize_rcu()
      and final destruction is done from tc_action_ops->cleanup() callback that 
is
      called from 
tcf_exts_destroy()->tcf_action_destroy()->__tcf_hash_release() when
      bind and refcnt reach zero which is only possible when classifier is 
destroyed.
      Previous two patches fixed the last two classifiers (tcindex and rsvp) to
      call tcf_exts_destroy() from rcu callback.

      Similar to gact/mirred there is a race between prog->filter and
      prog->tcf_action. Meaning that the program being replaced may use
      previous default action if it happened to return TC_ACT_UNSPEC.
      act_mirred race betwen tcf_action and tcfm_dev is similar.
      In all cases the race is harmless.
      Long term we may want to improve the situation by replacing the whole
      tc_action->priv as single pointer instead of updating inner fields one by 
one.

      Signed-off-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Acked-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9e528d89154b602209fda2fb92e89927bbffc976
  Author: Alexei Starovoitov <ast@xxxxxxxxxxxx>
  Date:   Tue Aug 25 20:06:34 2015 -0700

      net_sched: convert rsvp to call tcf_exts_destroy from rcu callback

      Adjust destroy path of cls_rsvp to call tcf_exts_destroy() after
      rcu grace period.

      Signed-off-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Acked-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ed7aa879ce1a0ff6468c5a6d3eb4e31169b95c4a
  Author: Alexei Starovoitov <ast@xxxxxxxxxxxx>
  Date:   Tue Aug 25 20:06:33 2015 -0700

      net_sched: convert tcindex to call tcf_exts_destroy from rcu callback

      Adjust destroy path of cls_tcindex to call tcf_exts_destroy() after
      rcu grace period.

      Signed-off-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Acked-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit faa54be4c78da6aa2148c539659867afdecd3e8d
  Author: Alexei Starovoitov <ast@xxxxxxxxxxxx>
  Date:   Tue Aug 25 20:06:32 2015 -0700

      net_sched: act_bpf: remove unnecessary copy

      Fix harmless typo and avoid unnecessary copy of empty 'prog' into
      unused 'strcut tcf_bpf_cfg old'.

      Fixes: f4eaed28c783 ("act_bpf: fix memory leaks when replacing bpf 
programs")
      Signed-off-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Acked-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3c645621b79828be7a46fb2694eb423b343b4bbe
  Author: Alexei Starovoitov <ast@xxxxxxxxxxxx>
  Date:   Tue Aug 25 20:06:31 2015 -0700

      net_sched: make tcf_hash_destroy() static

      tcf_hash_destroy() used once. Make it static.

      Signed-off-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Acked-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 30b139dfe0bfa8727ceec2a1d5294766943dcdc8
  Author: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
  Date:   Wed Aug 26 14:36:46 2015 +0100

      scripts: add extract-cert and sign-file to .gitignore

      ...so "git status" doesn't nag us about them.

      Cc: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Signed-off-by: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
      Signed-off-by: James Morris <james.l.morris@xxxxxxxxxx>

  commit f57ddcdfa146636dbdcd6ac0a6d22c15d47b08c8
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Sun Aug 23 23:32:14 2015 +0800

      ASoC: tegra: Use devm_ioremap_resource instead of open code

      Use devm_ioremap_resource() to simplify the code.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 63ab645f4d8b2dc1351c41751e7ebb1b3f1c99d3
  Author: Stefan Brüns <stefan.bruens@xxxxxxxxxxxxxx>
  Date:   Sun Aug 23 16:06:30 2015 +0200

      spi: check bits_per_word in spi_setup

      This allows drivers for devices connected via SPI to check if the
      controller supports a given bits_per_word value during setup.
      Currently any BPW value is accepted durings setup, and transfers
      are rejected later.

      Signed-off-by: Stefan Brüns <stefan.bruens@xxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 5aeeb78aeb4c8607cbda54a7b0dc7315171e214f
  Author: Sreekanth Reddy <sreekanth.reddy@xxxxxxxxxxxxx>
  Date:   Wed Jul 15 10:19:56 2015 +0530

      mpt2sas, mpt3sas: Abort initialization if no memory I/O resources detected

      Driver crashes if the BIOS do not set up at least one
      memory I/O resource. This failure can happen if the device is too
      slow to respond during POST and is missed by the BIOS, but Linux
      then detects the device later in the boot process.

      Based on a patch from Timothy Pearson <tpearson@xxxxxxxxxxxxxxxxxxxxxxxx>

      Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@xxxxxxxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 7d40acc38be55abb095f517e4e3a634818bc5253
  Author: Jyri Sarha <jsarha@xxxxxx>
  Date:   Wed Aug 26 16:11:40 2015 +0300

      ASoC: omap-hdmi-audio: Set buffer bytes step constraint to 128

      Set buffer bytes step constraint to 128. A matching constraint has
      already been set to period size. This helps PCM setup to tolerate ALSA
      clients that set the PCM hw params in unusual order.

      Signed-off-by: Jyri Sarha <jsarha@xxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit dc8242f704fee4fddcbebfcc5a4d08526951444a
  Author: Valentin Rothberg <valentinrothberg@xxxxxxxxx>
  Date:   Wed Aug 26 15:36:12 2015 +0200

      lib/Makefile: remove CONFIG_AVERAGE build rule

      The Kconfig option AVERAGE and its implementation has been removed by
      commit f4e774f55fe0 ("average: remove out-of-line implementation").
      Remove the dead build rule in lib/Makefile.

      Signed-off-by: Valentin Rothberg <valentinrothberg@xxxxxxxxx>
      Reviewed-by: Johannes Berg <johannes@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8d16366b5f23e928e5fd22eaeaceeb0356921fc0
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Thu Jul 9 07:25:46 2015 -0700

      qla2xxx: Avoid that sparse complains about context imbalances

      Surround conditional locking statements with "#ifndef __CHECKER__" /
      "#endif" to hide these for the sparse static source code analysis
      tool.

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Acked-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 8a318fe16096a45c03e8c9a39449d1f750fafd27
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Thu Jul 9 07:25:25 2015 -0700

      qla2xxx: Remove dead code

      The "return QLA_SUCCESS" statement just above the "fw_load_failed"
      label cannot be reached, hence remove it. Additionally remove the
      "else" keyword since the code block below the if-statement ends
      with a return statement.

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Acked-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 82e6afd49d9a5da8cdb648cb66e54432173298d7
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Thu Jul 9 07:25:07 2015 -0700

      qla2xxx: Remove a superfluous test

      Avoid that smatch reports the following warning:

      drivers/scsi/qla2xxx/qla_attr.c:1081: qla2x00_model_desc_show() warn: 
this array is probably non-NULL. 'vha->hw->model_desc'

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Acked-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 8dfa4b5a9b44714d7710f9f452f65763629f10df
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Thu Jul 9 07:24:50 2015 -0700

      qla2xxx: Fix sparse annotations

      This patch removes 21 casts between an __iomem pointer type and
      another data type but also introduces five new casts (see also
      the casts with "__force"). Although this patch does not change
      any functionality, IMHO the code with __force casts needs further
      review.

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Acked-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 118e2ef9df2297147706d21d2a1dfeefea878c5a
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Thu Jul 9 07:24:27 2015 -0700

      qla2xxx: Avoid that sparse complains about duplicate [noderef] attributes

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Acked-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit ad950360eebb5f5f7610b13cfd08c0185ca3f146
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Thu Jul 9 07:24:08 2015 -0700

      qla2xxx: Remove __constant_ prefix

      Whether htonl() or __constant_htonl() is used, if the argument
      is a constant the conversion happens at compile time. Hence leave
      out the __constant_ prefix for this and other endianness
      conversion functions. This improves source code readability.

      [jejb: checkpatch fixes]
      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Acked-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit df3f4cd0defd5f832a806ca1f0dd6638a2df17a5
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Thu Jul 9 07:23:46 2015 -0700

      qla2xxx: Replace two macros with an inline function

      Replace the QLA82XX_ADDR_IN_RANGE() and QLA8044_ADDR_IN_RANGE() macros
      with the inline function addr_in_range(). This avoids that the compiler
      reports the following warning when building with W=1: comparison of
      unsigned expression >= 0 is always true.

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Acked-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 52c82823cc686d4faf9e9bc4feec4bf48c36fded
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Thu Jul 9 07:23:26 2015 -0700

      qla2xxx: Remove set-but-not-used variables

      Detected these variables by building with W=1.

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Acked-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 2374dd238c287fb7a370b53aad2dbc4c8f0c241c
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Thu Jul 9 07:23:02 2015 -0700

      qla2xxx: Declare local functions static

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Acked-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit c3ff356d08275960b4a36471a81d5b2685a4074e
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Thu Jul 9 07:22:38 2015 -0700

      qla2xxx: Report both rsp_info and rsp_info_len

      Let the debug statement in qlafx00_tm_iocb_entry() report both rsp_info
      and rsp_info_len instead of reporting rsp_info_len twice.

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Acked-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit e51e38494a8ecc18650efb0c840600637891de2c
  Author: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
  Date:   Thu Aug 20 14:28:48 2015 -0700

      Input: synaptics - fix handling of disabling gesture mode

      Bit 2 of the mode byte has dual meaning: it can disable reporting of
      gestures when touchpad works in Relative mode or normal Absolute mode,
      or it can enable so called Extended W-Mode when touchpad uses enhanced
      Absolute mode (W-mode). The extended W-Mode confuses our driver and
      causes missing button presses on some Thinkpads (x250, T450s), so let's
      make sure we do not enable it.

      Also, according to the spec W mode "... bit is defined only in Absolute
      mode on pads whose capExtended capability bit is set. In Relative mode and
      in TouchPads without this capability, the bit is reserved and should be
      left at 0.", so let's make sure we respect this requirement as well.

      Reported-by: Nick Bowler <nbowler@xxxxxxxxxx>
      Suggested-by: Gabor Balla <gaborwho@xxxxxxxxx>
      Tested-by: Gabor Balla <gaborwho@xxxxxxxxx>
      Tested-by: Nick Bowler <nbowler@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 3fffd12839273429a185d68431f117f0a3654b07
  Author: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
  Date:   Mon Aug 17 23:52:51 2015 -0700

      i2c: allow specifying separate wakeup interrupt in device tree

      Instead of having each i2c driver individually parse device tree data in
      case it or platform supports separate wakeup interrupt, and handle
      enabling and disabling wakeup interrupts in their power management
      routines, let's have i2c core do that for us.

      Platforms wishing to specify separate wakeup interrupt for the device
      should use named interrupt syntax in their DTSes:

        interrupt-parent = <&intc1>;
        interrupts = <5 0>, <6 0>;
        interrupt-names = "irq", "wakeup";

      This patch is inspired by work done by Vignesh R <vigneshr@xxxxxx> for
      pixcir_i2c_ts driver.

      Note that the original code tried to preserve any existing wakeup
      settings from userspace but was not quite right in that regard:
      it would preserve wakeup flag set by userspace upon driver rebinding;
      but it would re-arm the wakeup flag if it was disabled by userspace.

      We think that resetting the flag upon re-binding the driver is proper
      behavior as the driver is responsible for setting up and handling
      wakeups.

      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
      Tested-by: Vignesh R <vigneshr@xxxxxx>
      [wsa: updated the commit message]
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit 6602c452caf532893c1bde50aacda0bd17f958aa
  Author: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
  Date:   Tue Aug 25 17:04:02 2015 -0700

      of/irq: export of_get_irq_byname()

      Similarly to of_get_irq(), let's export of_irq_get_byname(), so if a bus 
core
      can be compiled as a module (such as I2C) it can have access to the 
symbol.

      Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
      Acked-by: Rob Herring <robh@xxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit 1d3f9094c6fdb5680fd3b19a5b153308d53a70ee
  Author: Hendrik Brueckner <brueckner@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 16:13:41 2015 +0200

      s390/sclp_vt220: support magic sysrequests

      Implement magic sysrequest handling for the VT220 terminal (also known as
      the Integrated ASCII console on the HMC/SE).
      To invoke a "magic sysrequest" function, press "Ctrl+o" followed by a
      second character that designates the debugging function.

      The handling of the sysrq is scheduled away from the SCLP IRQ context;
      because large amounts of sysrq output might fill up the console buffers.
      The console might deadlock because it cannot empty the buffers while still
      in the receiving IRQ context.  This behavior is the same as for the SCLP
      console.

      Reported-by: Horst Weber <hweber@xxxxxxxxxx>
      Signed-off-by: Hendrik Brueckner <brueckner@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Peter Oberparleiter <oberpar@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit ab7373bf235ede864a72f0d2f8f9a21a1748c4a2
  Author: Hendrik Brueckner <brueckner@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 17:42:39 2015 +0200

      s390/ctrlchar: improve handling of magic sysrequests

      Extract the sysrq handling from the ctrlchar_handle() into a separate
      function that can be directly used by other users.

      Introduce a new sysrq_work structure to embed the work_struct and to
      specify the magic sysrq function to be invoked.

      Signed-off-by: Hendrik Brueckner <brueckner@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit de9c35f32410c225c585535a321ce591ea001645
  Author: Michael Holzheu <holzheu@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 19:29:33 2015 +0200

      s390/numa: remove superfluous ARCH_WANT defines

      The NUMA system call "__ARCH_WANT" defines are not used by the
      Linux kernel, therefore remove them.

      Fixes: 9df62adffeb0 ("s390/numa: add core infrastructure")
      Signed-off-by: Michael Holzheu <holzheu@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit 05bfd70bcdd3cd12c061cb77b73a11ba6f87379d
  Author: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
  Date:   Wed Aug 19 16:50:10 2015 +0200

      s390/3270: redraw screen on unsolicited device end

      If a 3270 terminal is disconnected and later reconnected again,
      it gets an unsolicited device end. This is currently ignored and
      you have to hit the clear key to get the screen redrawn.
      Add an automatic full redraw of the screen for this case.

      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit e19b127f5b76ec03b9c52b64f117dc75bb39eda1
  Author: Alok Pandey <pandey.alok@xxxxxxxxxxx>
  Date:   Wed Aug 26 08:56:14 2015 -0600

      NVMe: Using PRACT bit to generate and verify PI by controller

      This patch enables the PRCHK and reftag support when PRACT bit is set, and
      block layer integrity is disabled.

      Signed-off-by: Alok Pandey <pandey.alok@xxxxxxxxxxx>
      Reviewed-by: Keith Busch <keith.busch@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 2d3a5d215e24d9bfb822ae82c6c2c5d333be076d
  Author: Johannes Thumshirn <jthumshirn@xxxxxxx>
  Date:   Wed Jul 8 17:24:01 2015 +0200

      st: Destroy st_index_idr on module exit

      Destroy st_index_idr on module exit, reclaiming the allocated memory.

      This was detected by the following semantic patch (written by Luis 
Rodriguez
      <mcgrof@xxxxxxxx>)
      <SmPL>
      @ defines_module_init @
      declarer name module_init, module_exit;
      declarer name DEFINE_IDR;
      identifier init;
      @@

      module_init(init);

      @ defines_module_exit @
      identifier exit;
      @@

      module_exit(exit);

      @ declares_idr depends on defines_module_init && defines_module_exit @
      identifier idr;
      @@

      DEFINE_IDR(idr);

      @ on_exit_calls_destroy depends on declares_idr && defines_module_exit @
      identifier declares_idr.idr, defines_module_exit.exit;
      @@

      exit(void)
      {
       ...
       idr_destroy(&idr);
       ...
      }

      @ missing_module_idr_destroy depends on declares_idr && 
defines_module_exit && !on_exit_calls_destroy @
      identifier declares_idr.idr, defines_module_exit.exit;
      @@

      exit(void)
      {
       ...
       +idr_destroy(&idr);
      }
      </SmPL>

      Signed-off-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxx>
      Acked-by: Kai Mäkisara <kai.makisara@xxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit da0dc9fb4e6b0ad5a947c27a3c48985f6a2377eb
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Tue Jul 7 15:52:45 2015 -0500

      megaraid_sas: fix whitespace errors

      Fix whitespace and indentation errors.  No code change.

      [jejb: checkpatch fixes]
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxx>
      Acked-by: Sumit Saxena <sumit.saxena@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 1be1825453f6d75ea9c9ea0c8549ca481d94a7ab
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Tue Jul 7 15:52:34 2015 -0500

      megaraid_sas: use dev_printk when possible

      Use dev_printk() when possible to make messages more useful.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxx>
      Acked-by: Sumit Saxena <sumit.saxena@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 3b8a1ba378b7502c7206ab3da5ea484a132ad30c
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Tue Jul 7 15:52:25 2015 -0500

      megaraid : use dev_printk when possible

      Use dev_printk() when possible to make messages more useful.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxx>
      Acked-by: Sumit Saxena <sumit.saxena@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 14c3e677df9fa2e4bf87b9de683452fc140934b2
  Author: Hannes Reinecke <hare@xxxxxxx>
  Date:   Mon Jul 6 13:41:53 2015 +0200

      scsi: Add ALUA state change UA handling

      Log the ALUA state change unit attention correctly with
      the message log and emit an event to allow user-space
      tools to react to it.

      Signed-off-by: Hannes Reinecke <hare@xxxxxxx>
      Reviewed-by: Ewan D. Milne <emilne@xxxxxxxxxx>
      Reviewed-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 0662292aec0528363df037ad7c66bf9949c7ce46
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Wed Aug 26 10:23:26 2015 +0200

      ALSA: usb-audio: Handle normal and auto-suspend equally

      In theory, the device may get suspended even at runtime PM suspend.
      Currently we don't save the mixer state for autopm, and it may bring
      inconsistency.

      This patch removes the special handling for autosuspend.

      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit e819cdb198319cccf4af4fc12ac4d796109d8c23
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Fri Jul 3 11:53:03 2015 +0300

      mptfusion: prevent some memory corruption

      These are signed values the come from the user, we put a cap on the
      upper bounds but not on the lower bounds.

      We use "karg.dataSgeOffset" to calculate "sz".  We verify "sz" and
      proceed as if that means that "karg.dataSgeOffset" is correct but this
      fails to consider that the "sz" calculations can have integer overflows.

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit a2fb3382edbea83c6f2bf6ac15e3673b2e254aad
  Author: Wang Nan <wangnan0@xxxxxxxxxx>
  Date:   Wed Aug 26 10:57:46 2015 +0000

      tracing/uprobes: Do not print '0x (null)' when offset is 0

      When manually added uprobe point with zero address, 'uprobe_events'
      output '(null)' instead of 0x00000000:

        # echo p:probe_libc/abs_0 /path/to/lib.bin:0x0 arg1=%ax > \
                  /sys/kernel/debug/tracing/uprobe_events

        # cat /sys/kernel/debug/tracing/uprobe_events
          p:probe_libc/abs_0 /path/to/lib.bin:0x          (null) arg1=%ax

       This patch fixes this behavior:

        # cat /sys/kernel/debug/tracing/uprobe_events
        p:probe_libc/abs_0 /path/to/lib.bin:0x0000000000000000

      Signed-off-by: Wang Nan <wangnan0@xxxxxxxxxx>
      Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Cc: Zefan Li <lizefan@xxxxxxxxxx>
      Cc: pi3orama@xxxxxxx
      Link: 
http://lkml.kernel.org/r/1440586666-235233-8-git-send-email-wangnan0@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit da15bd9df4afd2f9f78cf29f85f013e3a38402b5
  Author: Wang Nan <wangnan0@xxxxxxxxxx>
  Date:   Wed Aug 26 10:57:45 2015 +0000

      perf probe: Support probing at absolute address

      It should be useful to allow 'perf probe' probe at absolute offset of a
      target. For example, when (u)probing at a instruction of a shared object
      in a embedded system where debuginfo is not avaliable but we know the
      offset of that instruction by manually digging.

      This patch enables following perf probe command syntax:

        # perf probe 0xffffffff811e6615

      And

        # perf probe /lib/x86_64-linux-gnu/libc-2.19.so 0xeb860

      In the above example, we don't need a anchor symbol, so it is possible
      to compute absolute addresses using other methods and then use 'perf
      probe' to create the probing points.

      v1 -> v2:
        Drop the leading '+' in cmdline;
        Allow uprobing at offset 0x0;
        Improve 'perf probe -l' result when uprobe at area without debuginfo.

      v2 -> v3:
        Split bugfix to a separated patch.

      Test result:

        # perf probe 0xffffffff8119d175 %ax
        # perf probe sys_write %ax
        # perf probe /lib64/libc-2.18.so 0x0 %ax
        # perf probe /lib64/libc-2.18.so 0x5 %ax
        # perf probe /lib64/libc-2.18.so 0xd8e40 %ax
        # perf probe /lib64/libc-2.18.so __write %ax
        # perf probe /lib64/libc-2.18.so 0xd8e49 %ax
        # cat /sys/kernel/debug/tracing/uprobe_events

        p:probe_libc/abs_0 /lib64/libc-2.18.so:0x          (null) arg1=%ax
        p:probe_libc/abs_5 /lib64/libc-2.18.so:0x0000000000000005 arg1=%ax
        p:probe_libc/abs_d8e40 /lib64/libc-2.18.so:0x00000000000d8e40 arg1=%ax
        p:probe_libc/__write /lib64/libc-2.18.so:0x00000000000d8e40 arg1=%ax
        p:probe_libc/abs_d8e49 /lib64/libc-2.18.so:0x00000000000d8e49 arg1=%ax

        # cat /sys/kernel/debug/tracing/kprobe_events

        p:probe/abs_ffffffff8119d175 0xffffffff8119d175 arg1=%ax
        p:probe/sys_write _text+1692016 arg1=%ax

        # perf probe -l

        Failed to find debug information for address 5
          probe:abs_ffffffff8119d175 (on sys_write+5 with arg1)
          probe:sys_write      (on sys_write with arg1)
          probe_libc:__write   (on @unix/syscall-template.S:81 in 
/lib64/libc-2.18.so with arg1)
          probe_libc:abs_0     (on 0x0 in /lib64/libc-2.18.so with arg1)
          probe_libc:abs_5     (on 0x5 in /lib64/libc-2.18.so with arg1)
          probe_libc:abs_d8e40 (on @unix/syscall-template.S:81 in 
/lib64/libc-2.18.so with arg1)
          probe_libc:abs_d8e49 (on __GI___libc_write+9 in /lib64/libc-2.18.so 
with arg1)

      Signed-off-by: Wang Nan <wangnan0@xxxxxxxxxx>
      Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Cc: Zefan Li <lizefan@xxxxxxxxxx>
      Cc: pi3orama@xxxxxxx
      Link: 
http://lkml.kernel.org/r/1440586666-235233-7-git-send-email-wangnan0@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 6c6e024f0a62a6a08c06002fd3caa2307cc54fd0
  Author: Wang Nan <wangnan0@xxxxxxxxxx>
  Date:   Wed Aug 26 10:57:44 2015 +0000

      perf probe: Fix error reported when offset without function

      This patch fixes a bug that, when offset is provided but function is
      lost, parse_perf_probe_point() will give a "" string as function name,
      so the checking code at the end of parse_perf_probe_point() become
      useless.  For example:

        # perf probe +0x1234
        Failed to find symbol  in kernel
          Error: Failed to add events.

      After this patch:

        # perf probe +0x1234
        Semantic error :Offset requires an entry function.
          Error: Command Parse Error.

      Signed-off-by: Wang Nan <wangnan0@xxxxxxxxxx>
      Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Cc: Zefan Li <lizefan@xxxxxxxxxx>
      Cc: pi3orama@xxxxxxx
      Link: 
http://lkml.kernel.org/r/1440586666-235233-6-git-send-email-wangnan0@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit a6da499b76b1a75412f047ac388e9ffd69a5c55b
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Wed Aug 26 10:20:59 2015 +0200

      ALSA: usb-audio: Replace probing flag with active refcount

      We can use active refcount for preventing autopm during probe.

      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit be07afe92a09638db9159d2c0794487d66a437a2
  Author: Wang Nan <wangnan0@xxxxxxxxxx>
  Date:   Wed Aug 26 10:57:43 2015 +0000

      perf probe: Fix list result when address is zero

      When manually added uprobe point with zero address, 'perf probe -l'
      reports error. For example:

        # echo p:probe_libc/abs_0 /path/to/lib.bin:0x0 arg1=%ax > \
                 /sys/kernel/debug/tracing/uprobe_events

        # perf probe -l
        Error: Failed to show event list.

      Probing at 0x0 is possible and useful when lib.bin is not a normal
      shared object but is manually mapped. However, in this case kernel
      report:

        # cat /sys/kernel/debug/tracing/uprobe_events
        p:probe_libc/abs_0 /path/to/lib.bin:0x          (null) arg1=%ax

      This patch supports the above kernel output.

      Signed-off-by: Wang Nan <wangnan0@xxxxxxxxxx>
      Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Cc: Zefan Li <lizefan@xxxxxxxxxx>
      Cc: pi3orama@xxxxxxx
      Link: 
http://lkml.kernel.org/r/1440586666-235233-5-git-send-email-wangnan0@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 47ab154593827b1a8f0713a2b9dd445753d551d8
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Tue Aug 25 16:09:00 2015 +0200

      ALSA: usb-audio: Avoid nested autoresume calls

      After the recent fix of runtime PM for USB-audio driver, we got a
      lockdep warning like:

        =============================================
        [ INFO: possible recursive locking detected ]
        4.2.0-rc8+ #61 Not tainted
        ---------------------------------------------
        pulseaudio/980 is trying to acquire lock:
         (&chip->shutdown_rwsem){.+.+.+}, at: [<ffffffffa0355dac>] 
snd_usb_autoresume+0x1d/0x52 [snd_usb_audio]
        but task is already holding lock:
         (&chip->shutdown_rwsem){.+.+.+}, at: [<ffffffffa0355dac>] 
snd_usb_autoresume+0x1d/0x52 [snd_usb_audio]

      This comes from snd_usb_autoresume() invoking down_read() and it's
      used in a nested way.  Although it's basically safe, per se (as these
      are read locks), it's better to reduce such spurious warnings.

      The read lock is needed to guarantee the execution of "shutdown"
      (cleanup at disconnection) task after all concurrent tasks are
      finished.  This can be implemented in another better way.

      Also, the current check of chip->in_pm isn't good enough for
      protecting the racy execution of multiple auto-resumes.

      This patch rewrites the logic of snd_usb_autoresume() & co; namely,
      - The recursive call of autopm is avoided by the new refcount,
        chip->active.  The chip->in_pm flag is removed accordingly.
      - Instead of rwsem, another refcount, chip->usage_count, is introduced
        for tracking the period to delay the shutdown procedure.  At
        the last clear of this refcount, wake_up() to the shutdown waiter is
        called.
      - The shutdown flag is replaced with shutdown atomic count; this is
        for reducing the lock.
      - Two new helpers are introduced to simplify the management of these
        refcounts; snd_usb_lock_shutdown() increases the usage_count, checks
        the shutdown state, and does autoresume.  snd_usb_unlock_shutdown()
        does the opposite.  Most of mixer and other codes just need this,
        and simply returns an error if it receives an error from lock.

      Fixes: 9003ebb13f61 ('ALSA: usb-audio: Fix runtime PM unbalance')
      Reported-and-tested-by: Alexnader Kuleshov <kuleshovmail@xxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 614e2fdbd79b47ddf63a1ccd3f2343e98c3077fb
  Author: Wang Nan <wangnan0@xxxxxxxxxx>
  Date:   Wed Aug 26 10:57:42 2015 +0000

      perf probe: Fix list result when symbol can't be found

      'perf probe -l' reports error if it is unable find symbol through
      address. Here is an example.

        # echo 'p:probe_libc/abs_5 /lib64/libc.so.6:0x5' >
                /sys/kernel/debug/tracing/uprobe_events
        # cat /sys/kernel/debug/tracing/uprobe_events
         p:probe_libc/abs_5 /lib64/libc.so.6:0x0000000000000005
        # perf probe -l
          Error: Failed to show event list

      Also, this situation triggers a logical inconsistency in
      convert_to_perf_probe_point() that, it returns ENOMEM but actually it
      never try strdup().

      This patch removes !tp->module && !is_kprobe condition, so it always
      uses address to build function name if symbol not found.

      Test result:

        # perf probe -l
          probe_libc:abs_5     (on 0x5 in /lib64/libc.so.6)

      Signed-off-by: Wang Nan <wangnan0@xxxxxxxxxx>
      Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Cc: Zefan Li <lizefan@xxxxxxxxxx>
      Cc: pi3orama@xxxxxxx
      Link: 
http://lkml.kernel.org/r/1440586666-235233-4-git-send-email-wangnan0@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 0bdede8a3e4ff7710622a2e6713d04b3243c24a8
  Author: Jiri Olsa <jolsa@xxxxxxxxxx>
  Date:   Wed Aug 26 15:01:03 2015 +0200

      tools build: Allow duplicate objects in the object list

      It's sometimes useful to specify the object affiliation to multiple
      config options like:

        libperf-$(CONFIG_X86) += tsc.o
        libperf-$(CONFIG_AUXTRACE) += tsc.o

      while the object itself is linked only once. Adding the support for this
      and ignoring duplicate objects in the object list.

      Suggested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Sukadev Bhattiprolu <sukadev@xxxxxxxxxxxxxxxxxx>
      Link: http://lkml.kernel.org/r/20150826130103.GF22670@xxxxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 18b9a05868391e8f617febb4528bc1765dc921cf
  Author: Jiri Olsa <jolsa@xxxxxxxxxx>
  Date:   Wed Aug 26 10:07:50 2015 +0200

      perf tools: Remove export.h from MANIFEST

      We don't carry an export.h wrapper anymore, remove it from the MANIFEST
      file to avoid breaking the make perf-tar targets.

      Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Sukadev Bhattiprolu <sukadev@xxxxxxxxxxxxxxxxxx>
      Link: http://lkml.kernel.org/r/20150826080750.GD22670@xxxxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit e486367f0101d43a044404ed2fa35aa043b19667
  Author: Wang Nan <wangnan0@xxxxxxxxxx>
  Date:   Tue Aug 25 13:27:35 2015 +0000

      perf probe: Prevent segfault when reading probe point with absolute 
address

      'perf probe -l' panic if there is a manually inserted probing point with
      absolute address. For example:

        # echo 'p:probe/abs_ffffffff811e6615 0xffffffff811e6615' > 
/sys/kernel/debug/tracing/kprobe_events
        # perf probe -l
        Segmentation fault (core dumped)

      This patch fix this problem by considering the situation that
      "tp->symbol == NULL" in find_perf_probe_point_from_dwarf() and
      find_perf_probe_point_from_map().

      After this patch:

        # perf probe -l
        probe:abs_ffffffff811e6615 (on SyS_write+5@fs/read_write.c)

      And when debug info is missing:

        # rm -rf ~/.debug
        # mv /lib/modules/4.2.0-rc1+/build/vmlinux 
/lib/modules/4.2.0-rc1+/build/vmlinux.bak
        # perf probe -l
        probe:abs_ffffffff811e6615 (on sys_write+5)

      Signed-off-by: Wang Nan <wangnan0@xxxxxxxxxx>
      Tested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: pi3orama@xxxxxxx
      Link: 
http://lkml.kernel.org/r/1440509256-193590-1-git-send-email-wangnan0@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit c60f99445aed684b5a8d84dcb84f5a06c1f70430
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Sun Jul 12 18:11:20 2015 -0500

      MIPS: MT: Remove "weak" from vpe_run() declaration

      Weak header file declarations are error-prone because they make every
      definition weak, and the linker chooses one based on link order (see
      10629d711ed7 ("PCI: Remove __weak annotation from pcibios_get_phb_of_node
      decl")).

      That's not a problem for vpe_run() because Kconfig ensures there's never
      more than one definition:

        - vpe_run() is defined in arch/mips/kernel/vpe-mt.c if
          CONFIG_MIPS_VPE_LOADER_MT=y

        - vpe_run() is defined in arch/mips/mti-malta/malta-amon.c if
          CONFIG_MIPS_CMP=y

        - CONFIG_MIPS_VPE_LOADER_MT cannot be set if CONFIG_MIPS_CMP=y

      But it's simpler to verify correctness if we remove "weak" from the 
picture
      and test the config symbols directly.

      Remove "weak" from the vpe_run() declaration and use #if to test whether a
      definition should be present.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10684/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 1c205b9cc6f66c5caa91fa2644dcf75254c3bfe1
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Sun Jul 12 18:11:12 2015 -0500

      MIPS: VPE: Exit vpe_release() early if vpe_run() isn't defined

      vpe_run() is a weak symbol.  If there's no definition of it, its value is
      zero.

      If vpe_run is zero, return failure early.  We're going to fail anyway, so
      there's no point in getting a VPE and attempting to load it.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10683/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 27d8d449ba7c553e9e004aaa07b225625b20fd2d
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Sun Jul 12 18:11:04 2015 -0500

      MIPS: Remove "weak" from platform_maar_init() declaration

      Weak header file declarations are error-prone because they make every
      definition weak, and the linker chooses one based on link order (see
      10629d711ed7 ("PCI: Remove __weak annotation from pcibios_get_phb_of_node
      decl")).

      platform_maar_init() is defined in:

        - arch/mips/mm/init.c (where it is marked "weak")
        - arch/mips/mti-malta/malta-memory.c (without annotation)

      The "weak" attribute on the platform_maar_init() extern declaration 
applies
      to the platform-specific definition in arch/mips/mti-malta/malta-memory.c,
      so both definitions are weak, and which one we get depends on link order.

      Remove the "weak" attribute from the declaration.  That makes the malta
      definition strong, so it will always be preferred if it is present.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      CC: linux-mips@xxxxxxxxxxxxxx
      Reviewed-by: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10682/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 8dedde6b289c51ba216fdf5467fc85a673775489
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Sun Jul 12 18:10:56 2015 -0500

      MIPS: CPC: Remove "weak" from mips_cpc_phys_base() and make it static

      There's only one implementation of mips_cpc_phys_base(), and it's only 
used
      within the same file, so it doesn't need to be weak, and it doesn't need 
an
      extern declaration.

      Remove the extern mips_cpc_phys_base() declaration and make it static.

      [ralf@xxxxxxxxxxxxxx: Fixed conflict.]

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      CC: linux-mips@xxxxxxxxxxxxxx
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: James Hogan <james.hogan@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10681/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 9b4685de77afd688407fd56cc350083a0a6a0516
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jul 13 17:14:22 2015 +0100

      MIPS: Drop CONFIG_RUNTIME_DEBUG & debug.h

      The debug.h header provided some MIPS-specific debug macros, which are
      no longer used at all. Remove them.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10693/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 2dca88da835616c3c65d1e4167288346fd67f02f
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Mon Jul 13 17:14:21 2015 +0100

      MIPS: ops-emma2rh: Drop nonsensical db_assert

      The db_assert call checks whether the bus_num pointer is non-NULL, but
      does so after said pointer has been dereferenced by the assignment on
      the previous line. Thus the check is pointless & likely to have been
      optimised out by the compiler anyway. The check_args function is static
      & only ever called from the local file with bus_num being a pointer to
      an on-stack variable, so the check seems somewhat overzealous anyway.
      Simply remove it.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10692/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit e51395d2739d0bb4991b6b531e1066475aae9bfd
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Jul 13 20:46:10 2015 +0000

      MIPS: rt3883: Prepare rt3883_pci_irq_handler for irq argument removal

      The irq argument of most interrupt flow handlers is unused or merily
      used instead of a local variable. The handlers which need the irq
      argument can retrieve the irq number from the irq descriptor.

      Search and update was done with coccinelle and the invaluable help of
      Julia Lawall.

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Julia Lawall <Julia.Lawall@xxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: LKML <linux-kernel@xxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10706/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 31429d1a74c01875d7dad72a6a1d75d8eeca2bc6
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Jul 13 20:46:09 2015 +0000

      MIPS: netlogic: Prepare ipi handlers for irq argument removal

      The irq argument of most interrupt flow handlers is unused or merily
      used instead of a local variable. The handlers which need the irq
      argument can retrieve the irq number from the irq descriptor.

      Search and update was done with coccinelle and the invaluable help of
      Julia Lawall.

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Julia Lawall <Julia.Lawall@xxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: LKML <linux-kernel@xxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10705/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 56a86c352b02ce2fe09a72771ef4334632a1f9c1
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Jul 13 20:46:07 2015 +0000

      MIPS: octeon: Replace the homebrewn flow handler

      The gpio interrupt handling of octeon contains a homebrewn flow
      handler which calls either handle_level_irq or handle_edge_irq
      depending on the trigger type. Thats an extra conditional and call in
      the interrupt handling path. The proper way to handle different types
      and therefor different flows is to update the handler in the
      irq_set_type() callback.

      Remove the extra indirection and add the handler update to
      octeon_irq_ciu_gpio_set_type(). At mapping time it defaults to
      handle_level_irq which gets updated if the device tree contains a
      different trigger type.

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: David Daney <david.daney@xxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: LKML <linux-kernel@xxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10704/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 9d9a2fa7dcbd05a1608a6a38b6ec1a092e117c3c
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Jul 13 20:46:06 2015 +0000

      MIPS: ath91: Remove pointless irqdisable/enable

      The various interrupt flow handlers in ath79 are cascading interrupt
      handlers. They all have a disable_irq_nosync()/enable_irq() pair
      around the generic_handle_irq() call. The value of this disable/enable
      is zero because its a complete noop:

      disable_irq_nosync() merily increments the disable count without
      actually masking the interrupt. enable_irq() soleley decrements the
      disable count without touching the interrupt chip. The interrupt
      cannot arrive again because the complete call chain runs with
      interrupts disabled.

      Remove it.

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: LKML <linux-kernel@xxxxxxxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10703/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit e0288a0a7bb8b28787453cb96f7aad272086def1
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Jul 13 20:46:04 2015 +0000

      MIPS: alchemy: Remove pointless irqdisable/enable

      bcsr_csc_handler() is a cascading interrupt handler. It has a
      disable_irq_nosync()/enable_irq() pair around the generic_handle_irq()
      call. The value of this disable/enable is zero because its a complete
      noop:

      disable_irq_nosync() merily increments the disable count without
      actually masking the interrupt. enable_irq() soleley decrements the
      disable count without touching the interrupt chip. The interrupt
      cannot arrive again because the complete call chain runs with
      interrupts disabled.

      Remove it.

      [ralf@xxxxxxxxxxxxxx: Fold in followup fix from Thomas Gleixner.]

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: LKML <linux-kernel@xxxxxxxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10702/
      Patchwork: https://patchwork.linux-mips.org/patch/10708/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 9154566ee3edd0f6a7aa4ef8bed76d3cd57bcb88
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Jul 13 20:46:02 2015 +0000

      MIPS: bcm63xx: Use irq_set_handler_locked()

      Use irq_set_handler_locked() as it avoids a redundant lookup of the
      irq descriptor.

      Search and replacement was done with coccinelle.

      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: Julia Lawall <julia.lawall@xxxxxxx>
      Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: LKML <linux-kernel@xxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10701/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 5a06545008514ce4b9315284b4ddff31bfa9d77e
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Jul 13 20:46:01 2015 +0000

      MIPS: alchemy: Use irq_set_chip_handler_name_locked()

      Hand in irq_data and avoid the redundant lookup of irq_desc.

      Originally-from: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: LKML <linux-kernel@xxxxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10700/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 5c1594224fffccb4adb76fb460871e1047accbbd
  Author: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
  Date:   Mon Jul 13 20:45:59 2015 +0000

      MIPS: irq: Use access helper irq_data_get_affinity_mask()

      This is a preparatory patch for moving irq_data struct members.

      Signed-off-by: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: LKML <linux-kernel@xxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10699/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 586134a84c0e3e503d2e65a117e2cb06f376aac8
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Jul 13 20:45:58 2015 +0000

      MIPS: pci-rt3883: Consolidate chained IRQ handler install/remove

      Chained irq handlers usually set up handler data as well. We now have
      a function to set both under irq_desc->lock. Replace the two calls
      with one.

      Search and conversion was done with coccinelle.

      Reported-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Julia Lawall <Julia.Lawall@xxxxxxx>
      Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: LKML <linux-kernel@xxxxxxxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10698/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 4d3f77d855090e11c9823fcb00864745adaf6fae
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Jul 13 20:45:56 2015 +0000

      MIPS: pci-ar724x: Consolidate chained IRQ handler install/remove

      Chained irq handlers usually set up handler data as well. We now have
      a function to set both under irq_desc->lock. Replace the two calls
      with one.

      Search and conversion was done with coccinelle.

      Reported-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Julia Lawall <Julia.Lawall@xxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: LKML <linux-kernel@xxxxxxxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10697/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 777fd18a71866f5057b27535c47c817973293498
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Jul 13 20:45:55 2015 +0000

      MIPS: pci-ar71xx: Consolidate chained IRQ handler install/remove

      Chained irq handlers usually set up handler data as well. We now have
      a function to set both under irq_desc->lock. Replace the two calls
      with one.

      Search and conversion was done with coccinelle.

      Reported-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Julia Lawall <Julia.Lawall@xxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: LKML <linux-kernel@xxxxxxxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10696/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit f058dc80d6f964fa466650f74290a964a7f91c92
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Mon Jul 13 20:45:53 2015 +0000

      MIPS: jz4740: Consolidate chained IRQ handler install/remove

      Chained irq handlers usually set up handler data as well. We now have
      a function to set both under irq_desc->lock. Replace the two calls
      with one.

      Search and conversion was done with coccinelle.

      Reported-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Julia Lawall <Julia.Lawall@xxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: LKML <linux-kernel@xxxxxxxxxxxxxxx>
      Cc: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Patchwork: https://patchwork.linux-mips.org/patch/10695/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 20a7f7e5a6739a3521529a5f2bbfddf9f545fef9
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Jul 9 10:40:53 2015 +0100

      MIPS: Set up FTLB probability for I6400

      Set up the I6400 FTLB probability similar to P5600 and proAptiv.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10652/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit e87569cd6c57cfe8c3fbbd20a5cf5cefb8b14156
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Jul 9 10:40:52 2015 +0100

      MIPS: cpu-probe: Fix VTLB/FTLB configuration for R6

      R6 has dropped the MMUExtDef field from the config4 register and it
      now returns 0. However, the return value means nothing in that case
      and the only supported configuration for R6 is the VTLB+FTLB
      (MMUextDef == 3). As a result, rework the code so that the correct
      value is set for R6 cores.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10651/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 912708c26d673f8d043bc4a9552495fefd6ddf18
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Jul 9 10:40:51 2015 +0100

      MIPS: Add default case for the FTLB enable/disable code

      Add a default case for the FTLB enable/disable code. This will be used
      to detect that something went wrong in the set_ftlb_enable() function
      either because that function knows nothing about the running core, or
      simply because the core can't turn its FTLB on/off.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10650/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit c982c6d6c48b48159db481581cadbb8773219677
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Jul 9 10:40:50 2015 +0100

      MIPS: cpu-probe: Remove cp0 hazard barrier when enabling the FTLB

      We are so early in the boot process where we really don't want to
      stall and wait for CP0 FTLB related changes become visible so just drop
      the cp0 hazard barrier.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10649/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 6f50c83529ac1fa3444ff4be5f5b0bf3d76db678
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Jul 9 10:40:49 2015 +0100

      IRQCHIP: irq-mips-gic: Add support for CM3 64-bit timer irqs

      CM3 uses a 64-bit counter and compare registers so add support for
      them in the GIC counter interrupt.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10648/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit c3f57f02e3a275d8b5c6dc692adb21525ccb392c
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Tue Jul 14 10:26:09 2015 +0100

      IRQCHIP: irq-mips-gic: Extend GIC accessors for 64-bit CMs

      Previously, the GIC accessors were only accessing u32 registers but
      newer CMs may actually be 64-bit on MIPS64 cores. As a result of which,
      extended these accessors to support 64-bit reads and writes.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10709/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 3885c2b463f6a236e47df22ef13d13433006b951
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Jul 9 10:40:47 2015 +0100

      MIPS: CM: Add support for reporting CM cache errors

      The CM cache error reporting code is not Malta specific and as such it
      should live in the mips-cm.c file. Moreover, CM2 and CM3 differ in the
      way cache errors are being recorded to the registers so extend the
      previous code to add support for the CM3 as well.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10646/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 391057d915f42d4942f0c65e7d55cec6662c8a54
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Jul 9 10:40:46 2015 +0100

      MIPS: CPC: Fix type for GCR CPC base reg for 64-bit

      The GCR CPC base register is 64-bit on 64-bit processors so use the
      appropriate field.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10645/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 038b0f536e45d85038428d2edc169f1f4089c36d
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Jul 9 10:40:45 2015 +0100

      MIPS: CM: The CMGCRBase register is 64-bit on 64 bit kernels.

      The CMGCRBase register (CP0, 15, 3) register is 64-bit on MIPS64
      so we change its type to unsigned long.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10644/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit c0b584a2691ccbc3c0d4e6cb1874bcf00a921371
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Tue Jul 14 09:14:12 2015 +0100

      MIPS: mips-cm: Extend CM accessors for 64-bit CPUs

      Previously, the CM accessors were only accessing CM registers as u32
      types instead of using the native CM register with. However, newer CMs
      may actually be 64-bit on MIPS64 cores. Fortunately, current 64-bit CMs
      (CM3) hold all the useful configuration bits in the lower half of the
      64-bit registers (at least most of them) so they can still be accessed
      using the current 32-bit accessors.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10707/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit c014d164f21dbdbe721a4ec7e5147591c4eed545
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Jul 9 10:40:43 2015 +0100

      MIPS: Add platform callback before initializing the L2 cache

      Allow platforms to perform platform-specific steps before configuring
      the L2 cache. This is necessary for platforms with CM3 since the L2
      parameters no longer live in the Config2 register.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: Paul Burton <paul.burton@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10642/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 7d53e9c4cd21cbc82b7422c90852e56baaf7ddae
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Thu Jul 9 10:40:42 2015 +0100

      MIPS: CM3: Add support for CM3 L2 cache.

      Detect the L2 cache configuration from GCR_L2_CONFIG when a CM3 is
      present in the system, rather than from Config2 which does not expose
      the L2 configuration on I6400.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10641/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 0ba3c125aa0ff9f993c0f9629945a0dd18d42568
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Thu Jul 9 10:40:40 2015 +0100

      MIPS: CM: Add GCR_L2_CONFIG register accessors

      Provide accessor functions for the GCR_L2_CONFIG register introduced
      with CM3, and define the bits included in the register.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10639/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 197e89e0984a2aaf1a5a998887b22e53051e3b6d
  Author: Paul Burton <paul.burton@xxxxxxxxxx>
  Date:   Fri Jul 10 10:12:52 2015 +0100

      MIPS: mips-cm: Implement mips_cm_revision

      Provide a function to trivially return the version of the CM present in
      the system, or 0 if no CM is present. The mips_cm_revision() will be
      used later on to determine the CM register width, so it must not use
      the regular CM accessors to read the revision register since that will
      lead to build failures due to recursive inlines.

      Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx>
      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10655/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 5676319c91c8d668635ac0b9b6d9145c4fa418ac
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Jul 9 10:40:38 2015 +0100

      MIPS: Kconfig: Disable MIPS MT and SMP implementations for R6

      R6 does not support the MIPS MT ASE and the CMP/SMP options so
      restrict them in order to prevent users from selecting incompatible
      SMP configuration for R6 cores. We also disable the CPS/SMP option
      because its support hasn't been added to the CPS code yet.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10637/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit e57f9a2dcedc7f4847799e13a9987874a161d308
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Jul 9 10:40:37 2015 +0100

      MIPS: Add MIPS I6400 probe support

      Add a case in cpu_probe_mips for the MIPS I6400 processor ID, which sets
      the CPU type to the new CPU_I6400.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10636/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 4e88a8621301b992e8e3422e08bfb604772f3338
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Jul 9 10:40:36 2015 +0100

      MIPS: Add cases for CPU_I6400

      Add a CPU_I6400 case to various switch statements, doing the same thing
      as for CPU_P5600.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10635/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 90b8baa2c1acb8c270aa31e75d00b44193fb306f
  Author: Markos Chandras <markos.chandras@xxxxxxxxxx>
  Date:   Thu Jul 9 10:40:35 2015 +0100

      MIPS: Add MIPS I6400 PRid and cputype identifiers

      Add a Processor ID and CPU type for the MIPS I6400 core.

      Signed-off-by: Markos Chandras <markos.chandras@xxxxxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10634/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit 7653716bf989cf8be04c7bedcad6bb201b1df108
  Author: Alban Bedel <albeu@xxxxxxx>
  Date:   Thu Jul 9 10:51:36 2015 +0200

      MIPS: ath79: irq: IRQCHIP_DECLARE moved to linux/irqchip.h

      Remove the ugly cross tree include now that IRQCHIP_DECLARE moved to
      linux/irqchip.h.

      Signed-off-by: Alban Bedel <albeu@xxxxxxx>
      Cc: linux-mips@xxxxxxxxxxxxxx
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: Qais Yousef <qais.yousef@xxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Patchwork: https://patchwork.linux-mips.org/patch/10633/
      Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx>

  commit a0c81ce08791d3892aacba341efa29fadf30beda
  Author: Julia Lawall <Julia.Lawall@xxxxxxx>
  Date:   Sun Aug 23 02:11:22 2015 +0200

      gpio: xlp: fix error return code

      Return a negative error code on failure.

      A simplified version of the semantic match that finds this problem is as
      follows: (http://coccinelle.lip6.fr/)

      // <smpl>
      @@
      identifier ret; expression e1,e2;
      @@
      (
      if (\(ret < 0\|ret != 0\))
       { ... return ret; }
      |
      ret = 0
      )
      ... when != ret = e1
          when != &ret
      *if(...)
      {
        ... when != ret = e2
            when forall
       return ret;
      }
      // </smpl>

      Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit fd96811576e646011489e38b0594dc017db21971
  Author: Stefan Agner <stefan@xxxxxxxx>
  Date:   Fri Aug 21 15:56:42 2015 -0700

      gpio: vf610: handle level IRQ's properly

      The GPIO IRQ controller is able to generate level triggered
      interrupts, however, these were handled by handle_simple_irq so far
      which did not take care of IRQ masking. This lead to "nobody cared
      (try booting with the "irqpoll" option)" stack traces.

      Use the generic interrupt handlers depending on the IRQ type.

      Signed-off-by: Stefan Agner <stefan@xxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 58a5e1b64bb0a9ef7747840b79d290e1ad4eed44
  Author: Maoguang Meng <maoguang.meng@xxxxxxxxxxxx>
  Date:   Fri Aug 14 16:38:06 2015 +0800

      pinctrl: mediatek: Implement wake handler and suspend resume

      This patch implement irq_set_wake to get who is wakeup source and
      setup on suspend resume.

      Signed-off-by: Maoguang Meng <maoguang.meng@xxxxxxxxxxxx>
      Reviewed-by: Daniel Kurtz <djkurtz@xxxxxxxxxxxx>
      Acked-by: Yingjoe Chen <yingjoe.chen@xxxxxxxxxxxx>
      Acked-by: Hongzhou Yang <hongzhou.yang@xxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit d48c2c02645392483f2b88b050d21ce1db6997b3
  Author: Hongzhou Yang <hongzhou.yang@xxxxxxxxxxxx>
  Date:   Tue Aug 25 17:32:45 2015 -0700

      pinctrl: mediatek: Fix multiple registration issue.

      Since our common driver need support main chip and PMU
      at the same time, that means it will register two
      pinctrl device, and the pinctrl_desc structure should
      be used two times.

      But pinctrl_desc use global static definition, then
      the latest registered pinctrl device will overwrite
      the old one's, all members in pinctrl_desc will set to
      the new one's, such as name, pins and pins numbers, etc.
      This is a bug.

      Move pinctrl_desc into mtk_pinctrl, assign new value for
      each pinctrl device to fix it.

      Cc: stable@xxxxxxxxxxxxxxx # v4.1+
      Signed-off-by: Hongzhou Yang <hongzhou.yang@xxxxxxxxxxxx>
      Reviewed-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit b25cf30a013195a69c167209d13c19b90a7450f2
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Wed Aug 26 14:21:14 2015 +0200

      ALSA: hda - Remove superfluous pcm NULL check

      The variable pcm can be never NULL since it was rewritten with
      list_for_each_entry().

      Suggested-by: Markus Osterhoff <linux-kernel@xxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 1c0beb27443c98257a5bced2978f2556f2ae1709
  Author: kbuild test robot <fengguang.wu@xxxxxxxxx>
  Date:   Wed Aug 26 19:48:13 2015 +0800

      ASoC: rockchip: fix platform_no_drv_owner.cocci warnings

      sound/soc/rockchip/rockchip_rt5645.c:214:3-8: No need to set .owner here. 
The core will do it.

       Remove .owner field if calls are used which set it automatically

      Generated by: scripts/coccinelle/api/platform_no_drv_owner.cocci

      Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 0137d5ff8488f1d17a83508578976d3a67ba8e81
  Author: kbuild test robot <fengguang.wu@xxxxxxxxx>
  Date:   Wed Aug 26 19:44:10 2015 +0800

      ASoC: rockchip: fix platform_no_drv_owner.cocci warnings

      sound/soc/rockchip/rockchip_max98090.c:225:3-8: No need to set .owner 
here. The core will do it.

       Remove .owner field if calls are used which set it automatically

      Generated by: scripts/coccinelle/api/platform_no_drv_owner.cocci

      Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 580a7ee93317b901358f497c2de34f7a66066963
  Author: Shinobu Uehara <shinobu.uehara.xc@xxxxxxxxxxx>
  Date:   Wed Aug 19 01:26:55 2015 +0300

      pinctrl: sh-pfc: r8a7794: add USB pin groups

      Add USB0/1 pin groups to R8A7794 PFC driver.

      Signed-off-by: Shinobu Uehara <shinobu.uehara.xc@xxxxxxxxxxx>
      [Sergei: rebased, renamed, added changelog.]
      Signed-off-by: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
      Acked-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 78de5d5220322456f2568de23bc2e97bba3957e3
  Author: Nicholas Krause <xerofoify@xxxxxxxxx>
  Date:   Tue Aug 18 09:55:44 2015 -0400

      gpio: max732x: Fix error handling in probe()

      This fixes error handling in the function max732x_probe by checking
      if the calls to the function max732x_readb fail by returning a error
      code.

      Signed-off-by: Nicholas Krause <xerofoify@xxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit f8ce20005d1694584448cd544be5fb32416a277c
  Author: Xing Zheng <zhengxing@xxxxxxxxxxxxxx>
  Date:   Tue Aug 25 15:52:42 2015 +0800

      ASoC: rockchip: fix a misjudgement by return

      Being careless, judge the return value of snd_soc_card_jack_new
      is opposite, so it should be fixed.

      Signed-off-by: Xing Zheng <zhengxing@xxxxxxxxxxxxxx>
      Reviewed-by: Dylan Reid <dgreid@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 0ba3ac03c1f38be17102d1c76c42a7c66a3e9ff2
  Merge: a8b9774 ee92a20
  Author: Kalle Valo <kvalo@xxxxxxxxxxxxxx>
  Date:   Wed Aug 26 12:40:23 2015 +0300

      Merge ath-next from ath.git

      Major changes in ath10k:

      * add spectral scan support for qca99x0
      * add qca6164 support

  commit ee92a2099f79d47e1d6d4857ab308f5b15a00549
  Author: Raja Mani <rmani@xxxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 18:42:36 2015 +0530

      ath10k: fix compilation warnings in wmi phyerr pull function

      Below compilation warnings are observed in gcc version 4.8.2.
      Even though it's not seen in bit older gcc versions (for ex, 4.7.3),
      It's good to fix it by changing format specifier from %d to
      %zd in wmi pull phyerr functions.

      wmi.c: In function 'ath10k_wmi_op_pull_phyerr_ev':
      wmi.c:3567:8: warning: format '%d' expects argument of type 'int',
                    but argument 4 has type 'long unsigned int' [-Wformat=]
                    left_len, sizeof(*phyerr));
                              ^
      wmi.c: In function 'ath10k_wmi_10_4_op_pull_phyerr_ev':
      wmi.c:3612:8: warning: format '%d' expects argument of type 'int',
              but argument 4 has type 'long unsigned int' [-Wformat=]
                    left_len, sizeof(*phyerr));
                              ^
      Fixes: 991adf71a6cd ("ath10k: refactor phyerr event handlers")
      Fixes: 2b0a2e0d7c2f ("ath10k: handle 10.4 firmware phyerr event")
      Signed-off-by: Raja Mani <rmani@xxxxxxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit a9dd941d840714b96b0a60451f6a3aa3a9be8fc6
  Author: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx>
  Date:   Thu Aug 13 17:16:10 2015 -0400

      kbuild: avoid listing /lib/modules in kernel spec file

      This causes conflicts when using multiple kernels built
      with this mechanism.

      Reviewed-by: Dennis Dalessandro <dennis.dalessandro@xxxxxxxxx>
      Signed-off-by: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit 36582e5d4daeccf68a8a3cef9bc37b60fb7d45b9
  Author: Michal Kazior <michal.kazior@xxxxxxxxx>
  Date:   Thu Aug 13 14:32:26 2015 +0200

      ath10k: add qca6164 support

      This adds additional 0x0041 PCI Device ID
      definition to ath10k for QCA6164 which is a 1
      spatial stream sibling of the QCA6174 (which is 2
      spatial stream chip).

      The QCA6164 needs a dedicated board.bin file which
      is different than the one used for QCA6174. If the
      board.bin is wrong the device will crash early
      while trying to boot firmware. The register dump
      will look like this:

       ath10k_pci 0000:02:00.0: firmware register dump:
       ath10k_pci 0000:02:00.0: [00]: 0x05010000 0x000015B3 0x000A012D 
0x00955B31
       ...

      Note the value 0x000A012D.

      Special credit goes to Alan Liu
      <alanliu@xxxxxxxxxxxxxxxx> for providing support
      help which enabled me to come up with this patch.

      Signed-off-by: Michal Kazior <michal.kazior@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 4535edbd4214ce21328655434c0b75da404e29b7
  Author: Raja Mani <rmani@xxxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 10:29:05 2015 +0530

      ath10k: add spectral scan support for 10.4 fw

      To enable/configure spectral scan parameters in 10.4 firmware, existing
      wmi spectral related functions can be reused. Link those functions in
      10.4 wmi ops table.

      In addition, adjust bin size (only when size is 68 bytes) before reporting
      bin samples to user space. The background for this adjustment is that
      qca99x0 reports bin size as 68 bytes (64 bytes + 4 bytes) in report
      mode 2. First 64 bytes carries in-band tones (-32 to +31) and last 4 byte
      carries band edge detection data (+32) mainly used in radar detection
      purpose. Additional last 4 bytes are stripped to make bin size valid one.

      This bin size adjustment will happen only for qca99x0, all other chipsets
      will report proper bin sizes (64/128) without extra 4 bytes being added
      at the end. The changes are validated in qca99x0 using 10.4 firmware.

      Signed-off-by: Raja Mani <rmani@xxxxxxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 5e55e3cbd1042cffa6249f22c10585e63f8a29bf
  Author: Michal Kazior <michal.kazior@xxxxxxxxx>
  Date:   Wed Aug 19 13:10:43 2015 +0200

      ath10k: fix dma_mapping_error() handling

      The function returns 1 when DMA mapping fails. The
      driver would return bogus values and could
      possibly confuse itself if DMA failed.

      Fixes: 767d34fc67af ("ath10k: remove DMA mapping wrappers")
      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Michal Kazior <michal.kazior@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 503422d95248c1d9698735bb5803b70aa51b18ef
  Author: Michal Kazior <michal.kazior@xxxxxxxxx>
  Date:   Wed Aug 19 13:08:53 2015 +0200

      ath10k: add missing mutex unlock on failpath

      Kernel would complain about leaving a held lock
      after going back to userspace and would
      subsequently deadlock.

      Fixes: e04cafbc38c7 ("ath10k: fix peer limit enforcement")
      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Michal Kazior <michal.kazior@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 5d9452e7c52a106c9efdeb6c72fc73b184a6543f
  Author: Grygorii Strashko <grygorii.strashko@xxxxxx>
  Date:   Tue Aug 18 14:10:56 2015 +0300

      gpio: omap: fix clk_prepare/unprepare usage

      As per CCF documentation (clk.txt) the clk_prepare/unprepare APIs
      are not allowed in atomic context. But now OMAP GPIO driver
      uses them while applying debounce settings and as part
      of PM runtime irqsafe operations:

      - omap_gpio_debounce() is holding the lock with IRQs off.
        + omap2_set_gpio_debounce()
         + clk_prepare_enable()
          + clk_prepare() this one might sleep.

      - pm_runtime_get_sync() is holding the lock with IRQs off
        + omap_gpio_runtime_suspend()
          + raw_spin_lock_irqsave()
          + omap_gpio_dbck_disable()
            + clk_disable_unprepare()

      Hence, fix it by moeving dbclk prepare/unprepare in OMAP GPIO
      omap_gpio_probe/omap_gpio_remove. Also, while here, ensure that
      debounce functionality is disabled if clk_get() failed,
      because otherwise kernel will carsh in omap2_set_gpio_debounce().

      Reported-by: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
      Acked-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Grygorii Strashko <grygorii.strashko@xxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 235f1eb1ab93a8e30a66c38949e6d2aeda136aec
  Author: Grygorii Strashko <grygorii.strashko@xxxxxx>
  Date:   Tue Aug 18 14:10:55 2015 +0300

      gpio: omap: protect regs access in omap_gpio_irq_handler

      The access to HW registers has to be be protected in
      omap_gpio_irq_handler(), as it may race with code executed on
      another CPUs.

      Signed-off-by: Grygorii Strashko <grygorii.strashko@xxxxxx>
      Acked-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit e85ec6c3047be0646e7c572e24869c212b685c7c
  Author: Grygorii Strashko <grygorii.strashko@xxxxxx>
  Date:   Tue Aug 18 14:10:54 2015 +0300

      gpio: omap: fix omap2_set_gpio_debounce

      According to TRMs:

      Required input line stable =
        (the value of the GPIO_DEBOUNCINGTIME[7:0].DEBOUNCETIME + 1) Ã?â?? 31,
      where the value of the GPIO_DEBOUNCINGTIME[7:0].DEBOUNCETIME bit field
      is from 0 to 255.

      But now omap2_set_gpio_debounce() will calculate debounce time and
      behave incorrectly in the following cases:
      1) requested debounce time is !0 and <32
         calculated DEBOUNCETIME = 0x1 == 62 us;
         expected value of DEBOUNCETIME = 0x0 == 31us
      2) requested debounce time is 0
         calculated DEBOUNCETIME = 0x1 == 62 us;
         expected: disable debounce and DEBOUNCETIME = 0x0
      3) requested debounce time is >32 and <63
         calculated DEBOUNCETIME = 0x0 and debounce will be disabled;
         expected: enable debounce and DEBOUNCETIME = 0x1 == 62 us

      Hence, rework omap2_set_gpio_debounce() to fix above cases:
      1) introduce local variable "enable" and use it to identify
      when debounce need to be enabled or disabled. Disable debounce
      if requested debounce time is 0.
      2) use below formula for debounce time calculation:
         debounce = (DIV_ROUND_UP(debounce, 31) - 1) & 0xFF;

      Signed-off-by: Grygorii Strashko <grygorii.strashko@xxxxxx>
      Acked-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 89d18e3af8b99481589e07f92fd966ceb86eff5d
  Author: Grygorii Strashko <grygorii.strashko@xxxxxx>
  Date:   Tue Aug 18 14:10:53 2015 +0300

      gpio: omap: switch to use platform_get_irq

      Switch OMAP GPIO driver to use platform_get_irq(), because
      it is not recommened to use platform_get_resource(pdev, IORESOURCE_IRQ, 
..)
      for requesting IRQ resources any more, as they can be not ready yet
      in case of DT-boot.

      Signed-off-by: Grygorii Strashko <grygorii.strashko@xxxxxx>
      Acked-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit bb8cdf9510d5d2b67126b36747c51d531026215d
  Author: Grygorii Strashko <grygorii.strashko@xxxxxx>
  Date:   Tue Aug 18 14:10:52 2015 +0300

      gpio: omap: remove wrong irq_domain_remove usage in probe

      The bank->chip.irqdomain is uninitialized at the moment when
      irq_domain_remove() is called, so remove this call.

      Signed-off-by: Grygorii Strashko <grygorii.strashko@xxxxxx>
      Acked-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Tested-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 91d33cfedf181cd9e1230d38e466de2f6697d317
  Author: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
  Date:   Mon Aug 17 15:32:16 2015 +0200

      pinctrl: at91: Use generic irq_{request,release}_resources()

      The at91-specific irq_{request,release}_resources() callbacks are
      identical to the generic ones, modulo the bug fix in 5b76e79c77264899
      ("gpiolib: irqchip: prevent driver unloading if gpio is used as irq
      only").

      Until commit 8b67a1f0ad1f260f ("gpio: don't override irq_*_resources()
      callbacks"), the buggy at91-specific callbacks were never used, though.

      Hence drop the at91-specific ones in favor of the generic ones.

      Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 41d6bb4c890c8db01248b1bdd512a18e7bd29ca3
  Author: Grygorii Strashko <grygorii.strashko@xxxxxx>
  Date:   Mon Aug 17 15:35:24 2015 +0300

      gpiolib: add description for gpio irqchip fields in struct gpio_chip

      Add missed description for GPIO irqchip fields in struct gpio_chip.

      Signed-off-by: Grygorii Strashko <grygorii.strashko@xxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 109fdf1572be86aaf681e69b30dc5ada90ce6f35
  Author: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 16:13:30 2015 +0300

      pinctrl: cherryview: Use raw_spinlock for locking

      When running -rt kernel and an interrupt happens on a GPIO line 
controlled by
      Intel Cherryview/Braswell pinctrl driver we get:

       BUG: sleeping function called from invalid context at 
kernel/locking/rtmutex.c:917
       in_atomic(): 1, irqs_disabled(): 1, pid: 0, name: swapper/0
       Preemption disabled at:[<ffffffff81092e9f>] cpu_startup_entry+0x17f/0x480

       CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.1.5-rt5 #16
        ...
       Call Trace:
        <IRQ>  [<ffffffff816283c6>] dump_stack+0x4a/0x61
        [<ffffffff81077e17>] ___might_sleep+0xe7/0x170
        [<ffffffff8162d6cf>] rt_spin_lock+0x1f/0x50
        [<ffffffff812e52ed>] chv_gpio_irq_ack+0x3d/0xa0
        [<ffffffff810a72f5>] handle_edge_irq+0x75/0x180
        [<ffffffff810a3457>] generic_handle_irq+0x27/0x40
        [<ffffffff812e57de>] chv_gpio_irq_handler+0x7e/0x110
        [<ffffffff810050aa>] handle_irq+0xaa/0x190
        ...

      This is because desc->lock is raw_spinlock and is held when 
chv_gpio_irq_ack()
      is called by the genirq core. chv_gpio_irq_ack() in turn takes pctrl->lock
      which in -rt is an rt-mutex causing might_sleep() rightfully to complain 
about
      sleeping function called from invalid context.

      In order to keep -rt happy but at the same time make sure that register
      accesses get serialized, convert the driver to use raw_spinlock instead.

      Suggested-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Signed-off-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 78e1c896932df5b8bcdff7bf5417d8e72a4d0d6b
  Author: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 16:03:17 2015 +0300

      pinctrl: baytrail: Use raw_spinlock for locking

      The Intel Baytrail pinctrl driver implements irqchip callbacks which are
      called with desc->lock raw_spinlock held. In mainline this is fine because
      spinlock resolves to raw_spinlock. However, running the same code in -rt 
we
      get:

       BUG: sleeping function called from invalid context at 
kernel/locking/rtmutex.c:917
       in_atomic(): 1, irqs_disabled(): 1, pid: 0, name: swapper/0
       Preemption disabled at:[<ffffffff81092e9f>] cpu_startup_entry+0x17f/0x480

       CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.1.5-rt5 #13
        ...
       Call Trace:
        <IRQ>  [<ffffffff816283c6>] dump_stack+0x4a/0x61
        [<ffffffff81077e17>] ___might_sleep+0xe7/0x170
        [<ffffffff8162d6cf>] rt_spin_lock+0x1f/0x50
        [<ffffffff812e3b88>] byt_gpio_clear_triggering+0x38/0x60
        [<ffffffff812e3bc1>] byt_irq_mask+0x11/0x20
        [<ffffffff810a7013>] handle_level_irq+0x83/0x150
        [<ffffffff810a3457>] generic_handle_irq+0x27/0x40
        [<ffffffff812e3a5f>] byt_gpio_irq_handler+0x7f/0xc0
        [<ffffffff810050aa>] handle_irq+0xaa/0x190
        ...

      This is because in -rt spinlocks are preemptible so taking the driver
      private spinlock in irqchip callbacks causes might_sleep() to trigger.

      In order to keep -rt happy but at the same time make sure that register
      accesses get serialized, convert the driver to use raw_spinlock instead.

      Also shorten the critical section a bit in few places.

      Suggested-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Signed-off-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 26951caf55d73ceb1967b0bf12f6d0b96853508e
  Author: Xiong Zhang <xiong.y.zhang@xxxxxxxxx>
  Date:   Mon Aug 17 15:55:50 2015 +0800

      drm/i915/skl: enable DDI-E hotplug

      v2: fix one error found by checkpath.pl
      v3: Add one ignored break for switch-case. DDI-E hotplug
          function doesn't work after updating drm-intel tree,
          I checked the code and found this missing which isn't
          the root cause for broke DDI-E hp.  The broken
          DDI-E hp function is fixed by "Adding DDI_E power
          well domain".

      Signed-off-by: Xiong Zhang <xiong.y.zhang@xxxxxxxxx>
      Reviewed-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
      Tested-by: Timo Aaltonen <timo.aaltonen@xxxxxxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 2508a45a924dfa4a5f6e60675aa4732d888134a7
  Author: Chen Yu <yu.c.chen@xxxxxxxxx>
  Date:   Tue Aug 18 23:30:25 2015 +0800

      surface pro 3: Add support driver for Surface Pro 3 buttons

      Since Surface Pro 3 does not follow the specs of "Windows ACPI Design
      Guide for SoC Platform", code in drivers/input/misc/soc_array.c can
      not detect these buttons on it. According to bios implementation,
      Surface Pro 3 encapsulates these buttons in a device named "VGBI",
      with _HID "MSHW0028". When any of the buttons is pressed, a specify
      ACPI notification code for this button will be delivered to "VGBI". For
      example, if power button is pressed down, ACPI notification code of 0xc6
      will be sent by Notify(VGBI, 0xc6).

      This patch leverages "VGBI" to distinguish different ACPI notification
      code from Power button, Home button, Volume button, then dispatches these
      code to input layer. Lid is already covered by acpi button driver, so
      there's no need to rewrite.

      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=84651
      Tested-by: Ethan Schoonover <es@xxxxxxxxxxxxxxxxxxx>
      Tested-by: Peter Amidon <psa.pub.0@xxxxxxxxxxxxxx>
      Tested-by: Donavan Lance <tusklahoma@xxxxxxxxx>
      Tested-by: Stephen Just <stephenjust@xxxxxxxxx>
      Signed-off-by: Chen Yu <yu.c.chen@xxxxxxxxx>
      [dvhart@xxxxxxxxxxxxxxx: Formatting corrections in MAINTAINERS and Intel 
(c)]
      Signed-off-by: Darren Hart <dvhart@xxxxxxxxxxxxxxx>

  commit 8e9d597a37e407476b4de725bef4cb1ad1f5c22c
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Fri Aug 14 12:35:23 2015 +0200

      drm/i915: Fix build warning on 32-bit

      The gtt.stolen_size field is of type size_t, and so should be printed
      using %zu to avoid build warnings on either 32-bit and 64-bit builds.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Reviewed-by: Paulo Zanoni <paulo.r.zanoni@xxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 5f8b253147c27b8244451ee28aeb3429c5aa2e52
  Author: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
  Date:   Mon Aug 24 16:48:44 2015 -0700

      drm/i915/skl: Update DDI buffer translation programming.

      SKL-Y can now use the same programming for all VccIO values after an
      adjustment to I_boost.  SKL-U DP table adjustments.

      1. Remove SKL Y 0.95V from "SKL H and S" columns in all tables. The
         other SKL Y column removes the "0.85V VccIO" so it now applies to all
         voltages.

      2. DP table changes SKL U 400mV+0db dword 0 value from 2016h to 201Bh.

      3. DP table changes SKL U 600mv+0db dword 0 value from 2016h to 201Bh.

      4. DP table increases I_boost to level 3 for SKL Y 400mv+9.5db.

      v2: Fix compilation warnings as pointed by Paulo.

      Reference: Graphics Spec Change r97962
      Cc: Arthur Runyan <arthur.j.runyan@xxxxxxxxx>
      Signed-off-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
      Reviewed-by: Paulo Zanoni <paulo.r.zanoni@xxxxxxxxx>
      [Jani: reformatted commit message for shorter lines.]
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit fc0bfacd045a17e385b4272dfe2387ba3a6d8745
  Author: Giedrius StatkeviÄ?ius <giedrius.statkevicius@xxxxxxxxx>
  Date:   Sun Aug 23 14:41:09 2015 +0300

      hp-wireless: remove unneeded goto/label in hpwl_init

      acpi_bus_register_driver() already returns an appropriate value (0 on
      success, and some negative value on error) to be used in __init functions
      so the goto/label is redundant in hpwl_init thus remove it and directly
      return the value

      Signed-off-by: Giedrius StatkeviÄ?ius <giedrius.statkevicius@xxxxxxxxx>
      Signed-off-by: Darren Hart <dvhart@xxxxxxxxxxxxxxx>

  commit 4c156c21c7948a0be854cbe5914af3181303e529
  Author: Mark Yao <mark.yao@xxxxxxxxxxxxxx>
  Date:   Fri Jun 26 17:14:46 2015 +0800

      drm/rockchip: vop: support plane scale

      Win_full support 1/8 to 8 scale down/up engine, support
      all format scale.

      Signed-off-by: Mark Yao <mark.yao@xxxxxxxxxxxxxx>

  commit 77faa1619a5ae9ed600b0836bc1eec57bad1895b
  Author: Mark Yao <mark.yao@xxxxxxxxxxxxxx>
  Date:   Mon Jul 20 16:25:20 2015 +0800

      drm/rockchip: vop: restore vop registers when resume

      The registers will be reset to default values when whole
      power domain off, so restore registers from regsbak.

      Signed-off-by: Mark Yao <mark.yao@xxxxxxxxxxxxxx>

  commit c1998f08587a252734bad42b66b430f126f2385b
  Author: Mark Yao <mark.yao@xxxxxxxxxxxxxx>
  Date:   Fri Jun 26 18:10:32 2015 +0800

      drm/rockchip: vop: Default enable win2/3 area0 bit

      Win2/3 support multiple area function, but we haven't found
      a suitable way to use it yet, so let's just use them as other windows
      with only area 0 enabled.

      Signed-off-by: Mark Yao <mark.yao@xxxxxxxxxxxxxx>

  commit 84c7f8ca43000ee97e556bddbbc4543e2514239d
  Author: Mark Yao <mark.yao@xxxxxxxxxxxxxx>
  Date:   Mon Jul 20 16:16:49 2015 +0800

      drm/rockchip: vop: Add yuv plane support

      vop support yuv with NV12, NV16 and NV24, only 2 plane yuv.

      Signed-off-by: Mark Yao <mark.yao@xxxxxxxxxxxxxx>

  commit acf8c3e0a9eb5658e6ac4379cba51dba9b941083
  Author: Mark Yao <mark.yao@xxxxxxxxxxxxxx>
  Date:   Mon Jul 20 16:02:47 2015 +0800

      drm/rockchip: vop: Fix window dest start point

      Dest start point use crtc_x/y is wrong, crtc_x/y is not equal
      to dest.x1/y1 at plane scale.

      Signed-off-by: Mark Yao <mark.yao@xxxxxxxxxxxxxx>

  commit f1c79abef5bae62aefcadf16917905cb7f98dc19
  Author: Mark Yao <mark.yao@xxxxxxxxxxxxxx>
  Date:   Fri Jun 26 18:07:25 2015 +0800

      drm/rockchip: vop: Fix virtual stride calculation

      vir_stride need number words of the virtual width, and fb->pitches
      save bytes_per_pixel, so just div 4 switch to stride.

      Signed-off-by: Mark Yao <mark.yao@xxxxxxxxxxxxxx>

  commit a92d5ee8666afcb4abc7686d7b760f0fb7a0c14c
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Wed Aug 26 07:22:49 2015 +0200

      ALSA: hda - Fix widget sysfs tree corruption after refresh

      When snd_hdac_refresh_widget_sysfs() is called before the first
      hda_widget_sysfs_init(), the next call overrides and eventually
      fails.  This results in unexpected Oops, something like:
        BUG: unable to handle kernel NULL pointer dereference at 
00000000000000c8
        IP: [<ffffffff8180e2a3>] hdmi_chmap_ctl_info+0x23/0x40

      The fix is to add a check of the existing sysfs tree.  Also, for more
      safety, this patch adds the checks of device_is_registered() in
      snd-hdac_refresh_wdiget_sysfs(), too.

      Fixes: fa4f18b4f402 ('ALSA: hda - Refresh widgets sysfs at probing 
Haswell+ HDMI codecs')
      Bugizlla: https://bugzilla.kernel.org/show_bug.cgi?id=103431
      Reported-by: Andreas Reis <andreas.reis@xxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit b51aa1cc7807f4dff7b70a762aa6d8814976d706
  Author: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 26 10:42:27 2015 +0930

      tools/lguest: Clean up include dir

      It contains a symlinked header we use; ignore it and clean it up
      on 'make clean'.

      Signed-off-by: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit e523caa601f4a7c2fa1ecd040db921baf7453798
  Author: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 26 10:42:26 2015 +0930

      tools/lguest: Fix redefinition of struct virtio_pci_cfg_cap

      Ours uses a u32 for the data, since we ensure it's always
      aligned and it's x86 so it doesn't matter anyway.

        lguest.c:128:8: error: redefinition of â??struct virtio_pci_cfg_capâ??

      Signed-off-by: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Michael S. Tsirkin <mst@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Fixes: 3121bb023e2db ("virtio: define virtio_pci_cfg_cap in header.")
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 7b7d0ca7778d359584859cb5e75965ad34f42533
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Tue Aug 25 12:58:11 2015 -0700

      dmaengine: ioatdma: Fix variable array length

      Sparse reported:
      drivers/dma/ioat/prep.c:637:27: sparse: Variable length array is used.

      Assigning a static value for the array.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 5c65cb93a3d066f52a109552572304675d5a52fc
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Tue Aug 25 12:58:05 2015 -0700

      dmaengine: ioatdma: fix sparse "error" with prep lock

      The prep lock gets acquired in ioat_check_space_lock and released in
      ioat_tx_submit_unlock. Setting the annotations so sparse does not freak 
out.

      drivers/dma/ioat/dma.c:273:30: sparse: context imbalance in 
'ioat_tx_submit_unlock' - unexpected unlock
      drivers/dma/ioat/dma.c:476:5: sparse: context imbalance in 
'ioat_check_space_lock' - wrong count at exit

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 4d112426c3446d94b9bc56396075524b06913b1c
  Author: Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 24 11:21:15 2015 +0200

      dmaengine: hdmac: Add memset capabilities

      Just like for the XDMAC, the SoCs that embed the HDMAC don't have any kind
      of GPU, and need to accelerate a few framebuffer-related operations 
through
      their DMA controller.

      However, unlike the XDMAC, the HDMAC doesn't have the memset capability
      built-in. That can be easily emulated though, by doing a transfer with a
      fixed address on the variable that holds the value we want to set.

      Signed-off-by: Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 8a4ce226b9061fe3ab04f6db34d4b2ae645b9f65
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Mon Aug 24 13:43:14 2015 +0530

      dmaengine: sort the sh Makefile

      Acked-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit eeb72a8de8e5471cdce71ea7b2f908e851a73909
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Mon Aug 24 13:43:14 2015 +0530

      dmaengine: sort the sh Kconfig

      Acked-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit b6fc6072b1268a0025850cd9d3dce25a7be0158d
  Author: Ashwin Chaugule <ashwin.chaugule@xxxxxxxxxx>
  Date:   Wed Aug 5 09:40:31 2015 -0400

      PCC: Disable compilation by default

      PCC is made selectable only by clients which use it. e.g. CPPC
      Default it to disabled so that it is not included accidentally on
      platforms which dont use it.

      Signed-off-by: Ashwin Chaugule <ashwin.chaugule@xxxxxxxxxx>
      Reviewed-by: Al Stone <al.stone@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 1090c3bf81ef12eb22383d4b6627d372ce5115d9
  Author: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 26 00:13:16 2015 +0800

      nfs42: remove unused declaration

      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 19cf6335134d82be792831e14aae9d037d0cb30b
  Author: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 26 00:13:15 2015 +0800

      nfs42: decode_layoutstats does not need res parameter

      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit b635f0901a4404ebc1881eb3fce0fc2f925f6728
  Merge: c30ee8b ef63463
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Aug 25 17:01:33 2015 -0700

      Merge branch 'dsa-docs'

      Florian Fainelli says:

      ====================
      Documentation: dsa

      This patch series adds some documentation about DSA as a subsystem as well
      as the SF2 driver since it slightly diverges from your average DSA driver 
;)
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ef6346386b096549972d5b62f773eafb772682e3
  Author: Florian Fainelli <f.fainelli@xxxxxxxxx>
  Date:   Tue Aug 25 15:33:14 2015 -0700

      Documentation: networking: dsa: Add Broadcom SF2 document

      Add a document describing the Broadcom Starfigther 2 switch hardware,
      its specifics, and how the driver is implemented and its specifics.

      Signed-off-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Reviewed-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 77760e94928f910b745ab8d00298a7c8b5786fb3
  Author: Florian Fainelli <f.fainelli@xxxxxxxxx>
  Date:   Tue Aug 25 15:33:13 2015 -0700

      Documentation: networking: add a DSA document

      Describe how the DSA subsystem works, its design principles,
      limitations, and describe in details how to implement a DSA switch
      driver.

      Acked-by: Andrew Lunn <andrew@xxxxxxx>
      Acked-by: Scott Feldman <sfeldma@xxxxxxxxx>
      Reviewed-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4bf011815f2e093c7f60004f4f5683cf40b905b9
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 19:56:46 2015 +0300

      device property: check fwnode type in to_of_node()

      Potentially one of platform can support both ACPI and OF. In that case 
when we
      call to_of_node() for non-OF fwnode types we will get non-NULL result, 
which is
      wrong. Check for the type and return a correspondent result.

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Reviewed-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 7dc59dc938f034c69dcf9080d45b936882b7ffa3
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 19:56:48 2015 +0300

      device property: attach 'else if' to the proper 'if'

      Obviously in the current place the 'else' keyword is redundant, though it 
seems
      quite correct when we check if nval is in allowed range.

      Reattach the condition branch there.

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Reviewed-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 4f73b0654d8a954540d49bb0a300f31663423db9
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 19:56:47 2015 +0300

      device property: fallback to pset when gettng one string

      The one string as an equivalent to an array of one element. Allow user to 
read
      one string as a plain string.

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Reviewed-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 0762ed2ced40bfe648378ef0e1635cf4d3a6fb76
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 25 17:38:25 2015 -0400

      NFSv4.1/flexfiles: Allow coalescing of new layout segments and existing 
ones

      In order to ensure atomicity of updates, we merge the old layout segments
      into the new ones, and then invalidate the old ones.

      Also ensure that we order the list of layout segments so that
      RO segments are preferred over RW.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 03772d2f00313bb22d91b2019cb8e6e91b415653
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 25 08:54:17 2015 -0400

      NFSv4.1/pnfs: Allow pNFS device drivers to customise layout segment 
insertion

      This is needed in order to allow merging of contiguous layout segments,
      and also to correct the ordering of layouts for those device drivers that
      don't necessarily want to place the read-write layouts first.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit c30ee8b743ab10271823ffdccc71b6acd62f847c
  Merge: b8766e4 2724121
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Aug 25 16:28:11 2015 -0700

      Merge branch 'rds-more-fixes'

      Santosh Shilimkar says:

      ====================
      RDS: Few more fixes

      As indicated in the earlier series [1], this is a follow-up series which
      addresses few issues around the RDS FMR code. With [1] and the subject
      series, now I can run many parallel threads with multiple sockets with
      N x N traffic. The stress tests has survived overnight runs.

      [1] https://lkml.org/lkml/2015/8/22/127
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 272412141908c40517cc89d5bb2eb074a2ec1474
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Tue Aug 25 12:02:03 2015 -0700

      RDS: remove superfluous from rds_ib_alloc_fmr()

      Memory allocated for 'ibmr' uses kzalloc_node() which already
      initialises the memory to zero. There is no need to do
      memset() 0 on that memory.

      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ef5217a6e2e60bc3d0679f2652480b99730956fe
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Tue Aug 25 12:02:02 2015 -0700

      RDS: flush the FMR pool less often

      FMR flush is an expensive and time consuming operation. Reduce the
      frequency of FMR pool flush by 50% so that more FMR work gets accumulated
      for more efficient flushing.

      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ad1d7dc0d79d3dd2c5d2931b13edbd4fe33e5fac
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Tue Aug 25 12:02:01 2015 -0700

      RDS: push FMR pool flush work to its own worker

      RDS FMR flush operation and also it races with connect/reconect
      which happes a lot with RDS. FMR flush being on common rds_wq aggrevates
      the problem. Lets push RDS FMR pool flush work to its own worker.

      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6116c2030fff91950f68b7fffb5959c91a05aaf6
  Author: Wengang Wang <wen.gang.wang@xxxxxxxxxx>
  Date:   Tue Aug 25 12:02:00 2015 -0700

      RDS: fix fmr pool dirty_count

      In rds_ib_flush_mr_pool(), dirty_count accounts the clean ones
      which is wrong. This can lead to a negative dirty count value.

      Lets fix it.

      Signed-off-by: Wengang Wang <wen.gang.wang@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3f6b3143031b678a8577df1f24ca977510aefcf5
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Tue Aug 25 12:01:59 2015 -0700

      RDS: Fix rds MR reference count in rds_rdma_unuse()

      rds_rdma_unuse() drops the mr reference count which it hasn't
      taken. Correct way of removing mr is to remove mr from the tree
      and then rdma_destroy_mr() it first, then rds_mr_put() to decrement
      its reference count. Whichever thread holds last reference will free
      the mr via rds_mr_put()

      This bug was triggering weird null pointer crashes. One if the trace
      for it is captured below.

      BUG: unable to handle kernel NULL pointer dereference at
      0000000000000104
      IP: [<ffffffffa0899471>] rds_ib_free_mr+0x31/0x130 [rds_rdma]
      PGD 4366fa067 PUD 4366f9067 PMD 0
      Oops: 0000 [#1] SMP

      [...]

      task: ffff88046da6a000 ti: ffff88046da6c000 task.ti: ffff88046da6c000
      RIP: 0010:[<ffffffffa0899471>]  [<ffffffffa0899471>]
      rds_ib_free_mr+0x31/0x130 [rds_rdma]
      RSP: 0018:ffff88046fa43bd8  EFLAGS: 00010286
      RAX: 0000000071d38b80 RBX: 0000000000000000 RCX: 0000000000000000
      RDX: 0000000000000001 RSI: 0000000000000000 RDI: ffff880079e7ff40
      RBP: ffff88046fa43bf8 R08: 0000000000000000 R09: 0000000000000000
      R10: ffff88046fa43ca8 R11: ffff88046a802ed8 R12: ffff880079e7fa40
      R13: 0000000000000000 R14: ffff880079e7ff40 R15: 0000000000000000
      FS:  0000000000000000(0000) GS:ffff88046fa40000(0000)
      knlGS:0000000000000000
      CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
      CR2: 0000000000000104 CR3: 00000004366fb000 CR4: 00000000000006e0
      Stack:
       ffff880079e7fa40 ffff880671d38f08 ffff880079e7ff40 0000000000000296
       ffff88046fa43c28 ffffffffa087a38b ffff880079e7fa40 ffff880671d38f10
       0000000000000000 0000000000000292 ffff88046fa43c48 ffffffffa087a3b6
      Call Trace:
       <IRQ>
       [<ffffffffa087a38b>] rds_destroy_mr+0x8b/0xa0 [rds]
       [<ffffffffa087a3b6>] __rds_put_mr_final+0x16/0x30 [rds]
       [<ffffffffa087a492>] rds_rdma_unuse+0xc2/0x120 [rds]
       [<ffffffffa08766d3>] rds_recv_incoming_exthdrs+0x83/0xa0 [rds]
       [<ffffffffa0876782>] rds_recv_incoming+0x92/0x200 [rds]
       [<ffffffffa0895269>] rds_ib_process_recv+0x259/0x320 [rds_rdma]
       [<ffffffffa08962a8>] rds_ib_recv_tasklet_fn+0x1a8/0x490 [rds_rdma]
       [<ffffffff810dcd78>] ? __remove_hrtimer+0x58/0x90
       [<ffffffff810799e1>] tasklet_action+0xb1/0xc0
       [<ffffffff81079b52>] __do_softirq+0xe2/0x290
       [<ffffffff81079df6>] irq_exit+0xa6/0xb0
       [<ffffffff81613915>] do_IRQ+0x65/0xf0
       [<ffffffff816118ab>] common_interrupt+0x6b/0x6b

      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ba54d3ced958435e1802daf992cfd44c26cd4cb7
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Tue Aug 25 12:01:58 2015 -0700

      RDS: fix the dangling reference to rds_ib_incoming_slab

      On rds_ib_frag_slab allocation failure, ensure rds_ib_incoming_slab
      is not pointing to the detsroyed memory.

      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b8766e4ed3e9fc6b27dc3ead029cd307caa926d2
  Merge: dafc219 854d2a6
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Aug 25 16:20:38 2015 -0700

      Merge tag 'batman-adv-for-davem' of git://git.open-mesh.org/linux-merge

      Antonio Quartulli says:

      ====================
      Included changes:
      - code restyling and beautification
      - use int kernel types instead of C99
      - update kereldoc
      - prevent potential hlist double deletion of VLAN objects
      - fix gw bandwidth calculation
      - convert list to hlist when needed
      - add lockdep_asserts calls in function with lock requirements
        described in kerneldoc
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit dafc21995db9b2ef61a2d613f872a5c565731548
  Author: Govindarajulu Varadarajan <_govind@xxxxxxx>
  Date:   Tue Aug 25 14:15:11 2015 +0530

      enic: reduce ioread in devcmd2

      posted_index is RO in firmware. We need not do ioread everytime to get
      posted index. Store posted index locally.

      Signed-off-by: Govindarajulu Varadarajan <_govind@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c5a132a84a692f8d81f3b6959b98bcd959659457
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Tue Aug 25 16:02:02 2015 -0700

      clk: tegra: Fix some static checker problems

      The latest Tegra clk pull had some problems. Fix them.

      drivers/clk/tegra/clk-tegra124.c:1450:6: warning: symbol 
'tegra124_clock_assert_dfll_dvco_reset' was not declared. Should it be static?
      drivers/clk/tegra/clk-tegra124.c:1466:6: warning: symbol 
'tegra124_clock_deassert_dfll_dvco_reset' was not declared. Should it be static?
      drivers/clk/tegra/clk-tegra124.c:1476:5: warning: symbol 
'tegra124_reset_assert' was not declared. Should it be static?
      drivers/clk/tegra/clk-tegra124.c:1486:5: warning: symbol 
'tegra124_reset_deassert' was not declared. Should it be static?
      drivers/clk/tegra/clk-dfll.c:590 dfll_load_i2c_lut() warn: inconsistent 
indenting
      drivers/clk/tegra/clk-dfll.c:1448 dfll_build_i2c_lut() warn: unsigned 
'td->i2c_lut[0]' is never less than zero.

      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 6e85d5ad36a26debc23a9a865c029cbe242b2dc8
  Author: Corinna Vinschen <vinschen@xxxxxxxxxx>
  Date:   Mon Aug 24 12:52:39 2015 +0200

      r8169: Add values missing in @get_stats64 from HW counters

      The r8169 driver collects statistical information returned by
      @get_stats64 by counting them in the driver itself, even though many
      (but not all) of the values are already collected by tally counters
      (TCs) in the NIC.  Some of these TC values are not returned by
      @get_stats64.  Especially the received multicast packages are missing
      from /proc/net/dev.

      Rectify this by fetching the TCs and returning them from
      rtl8169_get_stats64.

      The counters collected in the driver obviously disappear as soon as the
      driver is unloaded so after a driver is loaded the counters always start
      at 0. The TCs on the other hand are only reset by a power cycle.  Without
      further considerations the values collected by the driver would not match
      up against the TC values.

      This patch introduces a new function rtl8169_reset_counters which
      resets the TCs.  Also, since rtl8169_reset_counters shares most of
      its code with rtl8169_update_counters, refactor the shared code into
      two new functions  rtl8169_map_counters and rtl8169_unmap_counters.

      Unfortunately chip versions prior to RTL_GIGA_MAC_VER_19 don't allow
      to reset the TCs programatically.  Therefore introduce an addition to
      the rtl8169_private struct and a function rtl8169_init_counter_offsets
      to store the TCs at first rtl_open.  Use these values as offsets in
      rtl8169_get_stats64.  Propagate a failure to reset *and* update the
      counters up to rtl_open and emit a warning message, if so.

      Signed-off-by: Corinna Vinschen <vinschen@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a7c602bf42f943e717eed92165ebfa6dbaba3029
  Merge: 1c4b4b0 79cf95c
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Tue Aug 25 15:55:28 2015 -0700

      Merge tag 'tegra-for-4.3-clk' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into clk-next

      clk: tegra: Changes for v4.3-rc1

      This contains the DFLL driver needed to implement CPU frequency scaling
      on Tegra.

  commit b01d04aa511b78c795dd258bf8689a421a6b4d0c
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Aug 25 15:54:25 2015 -0700

      rds: Fix improper gfp_t usage.

      >> net/rds/ib_recv.c:382:28: sparse: incorrect type in initializer 
(different base types)
         net/rds/ib_recv.c:382:28:    expected int [signed] can_wait
         net/rds/ib_recv.c:382:28:    got restricted gfp_t
         net/rds/ib_recv.c:828:23: sparse: cast to restricted __le64

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f062bcaa2579af077313e989fc7dec777965a057
  Merge: 3e5f206 3ee550f
  Author: James Morris <jmorris@xxxxxxxxx>
  Date:   Wed Aug 26 08:24:23 2015 +1000

      Merge tag 'modsign-pkcs7-20150814' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs into ra-next

  commit 04e1b7341dc33abe4dd3f761e2e9137701e55684
  Author: Shrikrishna Khare <skhare@xxxxxxxxxx>
  Date:   Mon Aug 24 14:24:11 2015 -0700

      MAINTAINERS: update vmxnet3 driver maintainer

      Shreyas Bhatewara would no longer maintain the vmxnet3 driver. Taking over
      the role of vmxnet3 maintainer.

      Signed-off-by: Shrikrishna Khare <skhare@xxxxxxxxxx>
      Signed off-by: Shreyas Bhatewara <sbhatewara@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 48e92c44bd73a8bc213560058e6b18e45929526e
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Tue Aug 25 18:36:50 2015 +0200

      vxlan: fix multiple inclusion of vxlan.h

      The vxlan_get_sk_family inline function was added after the last #endif,
      making multiple inclusion of net/vxlan.h fail. Move it to the proper 
place.

      Reported-by: Mark Rustad <mark.d.rustad@xxxxxxxxx>
      Fixes: 705cc62f6728c ("vxlan: provide access function for vxlan socket 
address family")
      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 081958ebe150dc42a0f50669169c4177786b747e
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 25 10:26:22 2015 -0700

      MAINTAINERS: Add VRF entry

      Add entry for new VRF device driver.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e252b3d1a1744af1431aca30e091420734c2b012
  Author: WANG Cong <xiyou.wangcong@xxxxxxxxx>
  Date:   Tue Aug 25 10:38:53 2015 -0700

      route: fix a use-after-free

      This patch fixes the following crash:

       general protection fault: 0000 [#1] SMP DEBUG_PAGEALLOC
       CPU: 1 PID: 0 Comm: swapper/1 Not tainted 4.2.0-rc7+ #166
       Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
       task: ffff88010656d280 ti: ffff880106570000 task.ti: ffff880106570000
       RIP: 0010:[<ffffffff8182f91b>]  [<ffffffff8182f91b>] 
dst_destroy+0xa6/0xef
       RSP: 0018:ffff880107603e38  EFLAGS: 00010202
       RAX: 0000000000000001 RBX: ffff8800d225a000 RCX: ffffffff82250fd0
       RDX: 0000000000000001 RSI: ffffffff82250fd0 RDI: 6b6b6b6b6b6b6b6b
       RBP: ffff880107603e58 R08: 0000000000000001 R09: 0000000000000001
       R10: 000000000000b530 R11: ffff880107609000 R12: 0000000000000000
       R13: ffffffff82343c40 R14: 0000000000000000 R15: ffffffff8182fb4f
       FS:  0000000000000000(0000) GS:ffff880107600000(0000) 
knlGS:0000000000000000
       CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
       CR2: 00007fcabd9d3000 CR3: 00000000d7279000 CR4: 00000000000006e0
       Stack:
        ffffffff82250fd0 ffff8801077d6f00 ffffffff82253c40 ffff8800d225a000
        ffff880107603e68 ffffffff8182fb5d ffff880107603f08 ffffffff810d795e
        ffffffff810d7648 ffff880106574000 ffff88010656d280 ffff88010656d280
       Call Trace:
        <IRQ>
        [<ffffffff8182fb5d>] dst_destroy_rcu+0xe/0x1d
        [<ffffffff810d795e>] rcu_process_callbacks+0x618/0x7eb
        [<ffffffff810d7648>] ? rcu_process_callbacks+0x302/0x7eb
        [<ffffffff8182fb4f>] ? dst_gc_task+0x1eb/0x1eb
        [<ffffffff8107e11b>] __do_softirq+0x178/0x39f
        [<ffffffff8107e52e>] irq_exit+0x41/0x95
        [<ffffffff81a4f215>] smp_apic_timer_interrupt+0x34/0x40
        [<ffffffff81a4d5cd>] apic_timer_interrupt+0x6d/0x80
        <EOI>
        [<ffffffff8100b968>] ? default_idle+0x21/0x32
        [<ffffffff8100b966>] ? default_idle+0x1f/0x32
        [<ffffffff8100bf19>] arch_cpu_idle+0xf/0x11
        [<ffffffff810b0bc7>] default_idle_call+0x1f/0x21
        [<ffffffff810b0dce>] cpu_startup_entry+0x1ad/0x273
        [<ffffffff8102fe67>] start_secondary+0x135/0x156

      dst is freed right before lwtstate_put(), this is not correct...

      Fixes: 61adedf3e3f1 ("route: move lwtunnel state to dst_entry")
      Acked-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Signed-off-by: Cong Wang <xiyou.wangcong@xxxxxxxxx>
      Signed-off-by: Cong Wang <cwang@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d7499160107dd1367cf34873564b522a5516430c
  Author: Masanari Iida <standby24x7@xxxxxxxxx>
  Date:   Mon Aug 24 22:56:54 2015 +0900

      net-next: Fix warning while make xmldocs caused by skbuff.c

      This patch fix following warnings.

      .//net/core/skbuff.c:407: warning: No description found
      for parameter 'len'
      .//net/core/skbuff.c:407: warning: Excess function parameter
       'length' description in '__netdev_alloc_skb'
      .//net/core/skbuff.c:476: warning: No description found
       for parameter 'len'
      .//net/core/skbuff.c:476: warning: Excess function parameter
      'length' description in '__napi_alloc_skb'

      Signed-off-by: Masanari Iida <standby24x7@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b7a4f7ff7f83bd42ee765f666e6c0a28545bc6d6
  Author: Bob Moore <robert.moore@xxxxxxxxx>
  Date:   Tue Aug 25 10:30:48 2015 +0800

      ACPICA: Update version to 20150818

      ACPICA commit d93470de8febeecdc20633fde11cb0b200fa773b

      Version 20150818.

      Link: https://github.com/acpica/acpica/commit/d93470de
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 2e5321cb62ca1b29941d483c21b41f71b4dc8c78
  Author: Lv Zheng <lv.zheng@xxxxxxxxx>
  Date:   Tue Aug 25 10:30:41 2015 +0800

      ACPICA: Debugger: Cleanup debugging outputs to dump name path without 
trailing underscores

      ACPICA commit 51a49c2fb4a73f302a6df2b8ddc1350dd261684d

      It is better to use unified ASL path name to interact with the developers.

      There are following acpi_ns_build_normalized_pathname() users invoking it 
for
      debugging purposes (acpiexec test results are attached):

       1. acpi_ut_display_init_pathname (acpi_ns_handle_to_pathname):
           ---------------------------------------------
            Initializing Region        \_SB.H_EC.ECF2
           ---------------------------------------------
       2. acpi_ns_print_node_pathname (acpi_ns_handle_to_pathname):
           ---------------------------------------------
           - ex \_SB.H_EC._STA
           Evaluating \_SB.H_EC._STA
           ---------------------------------------------
       3. acpi_ds_print_node_pathname (acpi_ns_handle_to_pathname):
           ---------------------------------------------
           - level 211b console
           - execute \M1
           ...
           **** Exception AE_AML_UNINITIALIZED_ARG during execution of method 
[\M1] (Node 009CB6B8)
           ---------------------------------------------
       4. acpi_ex_dump_reference_obj (acpi_ns_handle_to_pathname):
           ---------------------------------------------
           - dump \_TZ.FAN4._PR0
           ...
           [00] 00835E98 [Object Reference] Type [Named Object] 05 00828878 
\_TZ.FN04
           ---------------------------------------------
       5. acpi_db_bus_walk (acpi_ns_handle_to_pathname):
           ---------------------------------------------
           - businfo
           \_SB.PCI0                        Type 6
           ...
           ---------------------------------------------
       6. acpi_db_walk_and_match_name (acpi_ns_handle_to_pathname):
           ---------------------------------------------
           - find _PR0
                             \_TZ.FAN4._PR0 Package      002D8DF8 01 Elements 01
           ---------------------------------------------
       7. acpi_db_walk_for_specific_objects (acpi_ns_handle_to_pathname):
           ---------------------------------------------
           - methods
           ...
                             \_SB.PCI0._PRT Method       0026D918 01 Args 0 Len 
0005 Aml 0026B199
           ...
           ---------------------------------------------
       8. acpi_db_decode_and_dispaly_object (acpi_get_name):
           ---------------------------------------------
           - gpes
           Block 0 - Info 003AC7B0  device_node 003A0E08 [\_GPE] - FADT-defined 
GPE block
           ...
           ---------------------------------------------
       9. acpi_db_display_gpes (acpi_get_name):
           ---------------------------------------------
           - dump \_GPE
           Object (003A0E08) Pathname:  \_GPE
           ---------------------------------------------
       10.ae_miscellaneous_tests (acpi_get_name):
           No output available

      This patch cleans up all of the above usages. ACPICA BZ 1178, Lv Zheng.

      Linux kernel's ACPICA debugging messages may also be changed.

      Link: https://github.com/acpica/acpica/commit/51a49c2f
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit a2352db584d6402c044a07b5b252b7f133ab70cf
  Author: Lv Zheng <lv.zheng@xxxxxxxxx>
  Date:   Tue Aug 25 10:30:34 2015 +0800

      ACPICA: Disassembler: Cleanup acpi_gbl_db_opt_verbose acpiexec usage

      ACPICA commit 42d7ad7bfb1cfb95183c1386c77509f2036f521d

      When acpi_gbl_db_opt_verbose is used in acpi_dm_descending_op() (invoked 
by
      acpi_dm_disassemble()), it is actually exported by the disassembler but 
used
      by the debugger to distinguish the output of the disassembler for 
different
      debugger commands. It is by default TRUE but is set to FALSE for control
      method disassembly command - "disassemble". So it's initialization should
      be a part of the ACPI_DISASSEMBLER conditioned code. This patch uses
      ACPI_INIT_GLOBAL to achieve a clean manner so that when ACPI_DISASSEMBLER
      is not defined, ACPI_DEBUGGER conditioned code needn't link to this 
option.
      Since it is a disassembler exported variable, it is renamed to
      acpi_gbl_dm_opt_Verbose in this patch.

      As VERBOSE_PRINT() macro has only one user, this patch also removes the
      definition of this macro. Lv Zheng.

      This patch doesn't affect Linux kernel.

      Link: https://github.com/acpica/acpica/commit/42d7ad7b
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 1bdc63bf05096afac4b1e5361417fb730d77dfc7
  Author: Lv Zheng <lv.zheng@xxxxxxxxx>
  Date:   Tue Aug 25 10:30:27 2015 +0800

      ACPICA: Disassembler: Cleanup acpi_gbl_db_opt_disasm

      ACPICA commit 969989cf7f85e2a2a0cd048cd25fc706246a48a2

      This patch cleans up the following global variable - 
acpi_gbl_db_opt_disasm:
      The setting is used to control the full disassembly feature for iasl. ACPI
      debugger (acpiexec) shall have nothing to do with it. Actually, acpiexec
      never links to ad_aml_disassemble().

      This patch thus renames this global option to acpi_gbl_dm_opt_disasm and
      removes all acpiexec and debugger references on it. Lv Zheng.

      This patch doesn't affect Linux kernel.

      Link: https://github.com/acpica/acpica/commit/969989cf
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit f8fb4c383e7342731b77693edde9c6ea02ab0365
  Author: Lv Zheng <lv.zheng@xxxxxxxxx>
  Date:   Tue Aug 25 10:30:19 2015 +0800

      ACPICA: Debugger: Split debugger initialization/termination APIs

      ACPICA commit 7a3f22baab000b186779dac64ad71d9776b8f432

      It is likely that the debugger is enabled only when a userspace program
      explicitly tells a kernel to do so, so it shouldn't be initialized as
      early as current implementation.

      The only tool requiring ACPI_DEBUGGER is acpiexec, so acpiexec need to 
call
      the new APIs by itself. And BSD developers may also get notified to invoke
      the APIs for DDB enabling. Lv Zheng.

      This patch doesn't affect Linux kernel as debugger is currently not 
enabled
      in the Linux kernel.

      Link: https://github.com/acpica/acpica/commit/7a3f22ba
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit cff9406128a4f9b683eb8c52a8864496e7025467
  Author: Bob Moore <robert.moore@xxxxxxxxx>
  Date:   Tue Aug 25 10:30:11 2015 +0800

      ACPICA: Header support to improve compatibility with MSVC

      ACPICA commit 5b4087fba991d8383046b550bbe22f3d8d9b9c8f

      Needed to improve MSVC editor support for symbols.

      For Linux kernel, this change is a no-op.

      Link: https://github.com/acpica/acpica/commit/5b4087fb
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 47cdf8c692d5a64855a7aff83800d5bc5c925d7c
  Author: Bob Moore <robert.moore@xxxxxxxxx>
  Date:   Tue Aug 25 10:30:00 2015 +0800

      ACPICA: Make the max-number-of-loops runtime configurable

      ACPICA commit a9d9c2d0c2d077bb3175ec9c252cf0e5da3efd45

      Was previously compile-time only.
      Add support option for acpiexec.

      Link: https://github.com/acpica/acpica/commit/a9d9c2d0
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit e69ab9a99e1d112045dd87902e467daec0d189da
  Author: Bob Moore <robert.moore@xxxxxxxxx>
  Date:   Tue Aug 25 10:29:52 2015 +0800

      ACPICA: Debugger: Add option to display namespace summary/counts

      ACPICA commit bba222c15c2ce79076eb3a5e9d4d5f7120db8a00

      If "Objects" command is invoked with no arguments, the counts
      for each object type are displayed.

      Linux kernel is not affected by this commit as currently debugger is
      not enabled in the Linux kernel.

      Link: https://github.com/acpica/acpica/commit/bba222c1
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 25823e784aac78964ada0e49efe2766d2aeb9fa4
  Author: Bob Moore <robert.moore@xxxxxxxxx>
  Date:   Tue Aug 25 10:29:45 2015 +0800

      ACPICA: Add additional debug info/statements

      ACPICA commit 74094ca9f51e2652a9b5f01722d8640a653cc75a

      For _REG methods and module-level code blocks.
      For acpiexec, add deletion of module-level blocks in case
      of an early abort.

      Link: https://github.com/acpica/acpica/commit/74094ca9
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 3c0503dd289eb6658f16d77fa12b3a30a4072be3
  Author: Bob Moore <robert.moore@xxxxxxxxx>
  Date:   Tue Aug 25 10:29:39 2015 +0800

      ACPICA: Table handling: Cleanup and update debug output for tools

      ACPICA commit 93862bd7a227543bc617d822ef5c4f8a5d68b519

      Add output of table OEM ID along with signature to support lots
      of SSDTs.

      Cleanup use of table pointers.

      Link: https://github.com/acpica/acpica/commit/93862bd7
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 93cdafa071bd436596a0501fd43f4fab89c2be78
  Author: Bob Moore <robert.moore@xxxxxxxxx>
  Date:   Tue Aug 25 10:29:33 2015 +0800

      ACPICA: acpiexec/acpinames: Support very large number of ACPI tables

      ACPICA commit ca3bd4c5cdc39a9009280032adbbc20f34e94c47

      Fix a couple of issues with >40 ACPI tables.
      Return exit error for acpinames to enable use with BIOS builds.

      The new exported function is used by acpinames. For Linux kernel, this
      change is a no-op.

      Link: https://github.com/acpica/acpica/commit/ca3bd4c5
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 17dd4dcfadffba93cf18652eb16b345526b04ce1
  Author: Bob Moore <robert.moore@xxxxxxxxx>
  Date:   Tue Aug 25 10:29:25 2015 +0800

      ACPICA: acpinames: Add new options and wildcard support

      ACPICA commit 0ecf5b5a41c3d2e09af48f0fdbc9ae784f631788

       - Add wilcard support for input filenames.
       - Add -l option to load tables and exit, no display. This is
         useful for validation of the namespace during BIOS generation.
       - Add -x option for specifying debug level.

      Linux kernel is not affected by this commit.

      Link: https://github.com/acpica/acpica/commit/0ecf5b5a
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 10ac218e9a1e76e0d3adec8fe2e2f84bbc138759
  Author: Bob Moore <robert.moore@xxxxxxxxx>
  Date:   Tue Aug 25 10:29:17 2015 +0800

      ACPICA: Headers: Fix some comments, no functional change

      ACPICA commit 539f8c03fe64305725bd85343e42f3b6c42aad14

      A couple typos and long lines.

      Link: https://github.com/acpica/acpica/commit/539f8c03
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 7484619bff495c30e977dafe2ff735477bd569ff
  Author: Lv Zheng <lv.zheng@xxxxxxxxx>
  Date:   Tue Aug 25 10:29:08 2015 +0800

      ACPICA: Tables: Cleanup to reduce FACS globals

      ACPICA commit 3f42ba76e2a0453976d3108296d5f656fdf2bd6e

      In this patch, FACS table mapping is also tuned a bit so that only the
      selected FACS table will be mapped by the OSPM (mapped on demand) and the
      FACS related global variables can be reduced. Lv Zheng.

      Link: https://github.com/acpica/acpica/commit/3f42ba76
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 8ec3f459073e67e5c6d78507dec693064b3040a2
  Author: Lv Zheng <lv.zheng@xxxxxxxxx>
  Date:   Tue Aug 25 10:29:01 2015 +0800

      ACPICA: Tables: Fix global table list issues by removing fixed table 
indexes

      ACPICA commit c0b38b4c3982c2336ee92a2a14716107248bd941

      The fixed table indexes leave holes in the global table list:
       1. One hole can be seen when there is only 1 FACS provided by the BIOS.
       2. Tow holes can be seen when it is a reduced hardware platform.
      The holes do not break OSPMs but have broken ACPI debugger "tables"
      command.

      Also the "fixed table indexes" mechanism may make the descriptors of the
      standard tables installed earlier than DSDT to be overwritten by the
      descriptors of the fixed tables. For example, FACP disappears from the
      global table list after DSDT is installed.

      This patch fixes all above issues by removing the "fixed table indexes"
      mechanism which is too complicated to be maintained in a regression safe
      manner. After removal, the table loader will determine the indexes of the
      fixed tables. Lv Zheng.

      Link: https://github.com/acpica/acpica/commit/c0b38b4c
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 92b21a9502ea3a83464aea885b3c65c528b10190
  Author: Bob Moore <robert.moore@xxxxxxxxx>
  Date:   Tue Aug 25 10:28:54 2015 +0800

      ACPICA: Update info messages during ACPICA init

      ACPICA commit 4ccf8a1cc499ec8f00345f662a5887483980e1dd

      Small cleanup of messages.

      Link: https://github.com/acpica/acpica/commit/4ccf8a1c
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 2aabfad7c6680178ffa8f02957287178a58a46ca
  Author: Bob Moore <robert.moore@xxxxxxxxx>
  Date:   Tue Aug 25 10:28:47 2015 +0800

      ACPICA: Disassembler: Update for new listing mode

      ACPICA commit 2ed09bb7619d25f5a5c065c33a8a775a6db3a856
      ACPICA commit 2fefacf73825b0ec96bbfc4f70a256735b715d6c

      This mode emits AML code along with the ASL code.
      A new global was needed to ensure the listing mode is
      completely separate from the debugger verbose mode.

      Emits the correct AML offset for the AML code.
      The -l option now works for both the compiler and disassembler.

      Linux kernel is not affected by this commit.

      Link: https://github.com/acpica/acpica/commit/2fefacf7
      Link: https://github.com/acpica/acpica/commit/2ed09bb7
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 9f41fd8a175ff87ba610fc387a6922b0f49f8e19
  Author: Bob Moore <robert.moore@xxxxxxxxx>
  Date:   Tue Aug 25 10:28:39 2015 +0800

      ACPICA: Update parameter validation for data_table_region and load_table

      ACPICA commit 51ab555e60b4a3de3cc4a846e86d0de255be441a

      Add additional validation for the table signature and
      the OEM strings. Eliminates buffer read overrun in data_table_region.
      ACPICA BZ 1184.

      Link: https://bugs.acpica.org/show_bug.cgi?id=1184
      Link: https://github.com/acpica/acpica/commit/51ab555e
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 3534969721ba011b8c2bcb5686819852df7aa971
  Author: Bob Moore <robert.moore@xxxxxxxxx>
  Date:   Tue Aug 25 10:28:32 2015 +0800

      ACPICA: Disassembler: Remove duplicate code in _PLD processing.

      ACPICA commit 6d9c827b540837b6e54059e17756a06985e4a196

      ACPICA BZ 1176.

      Link: https://bugs.acpica.org/show_bug.cgi?id=1176
      Link: https://github.com/acpica/acpica/commit/6d9c827b
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 4712f71b609d1805b958c0c355b16a995b11ab6e
  Author: Bob Moore <robert.moore@xxxxxxxxx>
  Date:   Tue Aug 25 10:28:26 2015 +0800

      ACPICA: Correctly cleanup after a ACPI table load failure

      ACPICA commit ed7769e832de6c7ba90615480d916c85fd100422

      If a table load fails, delete all namespace objects created by the
      table, otherwise these objects will be uninitialized, causing
      problems later. This appears to be a very rare problem.
      Also handle the unitialized node problem to prevent possible
      faults. ACPICA BZ 1185.

      Link: https://github.com/acpica/acpica/commit/ed7769e8
      Signed-off-by: Bob Moore <robert.moore@xxxxxxxxx>
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 79c441ae505ccfaed9d80df95e83fb2573f23f8e
  Author: Guillaume Nault <g.nault@xxxxxxxxxxxx>
  Date:   Mon Aug 24 11:35:30 2015 +0200

      ppp: implement x-netns support

      Let packets move from one netns to the other at PPP encapsulation and
      decapsulation time.

      PPP units and channels remain in the netns in which they were
      originally created. Only the net_device may move to a different
      namespace. Cross netns handling is thus transparent to lower PPP
      layers (PPPoE, L2TP, etc.).

      PPP devices are automatically unregistered when their netns gets
      removed. So read() and poll() on the unit file descriptor will
      respectively receive EOF and POLLHUP. Channels aren't affected.

      Signed-off-by: Guillaume Nault <g.nault@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit cc7fce80229067890365c1ee196be5d304d36dea
  Author: Tomer Barletz <barletz@xxxxxxxxx>
  Date:   Tue Aug 4 21:00:24 2015 -0700

      mtd: blkdevs: fix switch-bool compilation warning

      With gcc 5.1 I get:
      warning: switch condition has boolean value [-Wswitch-bool]

      Signed-off-by: Tomer Barletz <barletz@xxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 542a64c7076565d73eea39057113914e1607db30
  Author: Hans de Goede <hdegoede@xxxxxxxxxx>
  Date:   Sun Aug 23 20:31:38 2015 +0200

      net: sun4i-emac: Claim emac sram

      Claim the emac sram ourselves, rather then relying on the bootloader
      having mapped the sram to the emac controller during boot.

      Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2c0027cd54cc3ed856e87d9aeddb6ef00f5f17f4
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Sun Aug 23 08:21:22 2015 -0600

      inetpeer: remove dead code

      Remove various inlined functions not referenced in the kernel.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 5283af899adec1a7765e413e43b27a335fadac5d
  Author: Rana Shahout <ranas@xxxxxxxxxxxx>
  Date:   Sun Aug 23 16:12:14 2015 +0300

      net/mlx5e: Avoid accessing NULL pointer at ndo_select_queue

      To avoid multiply/division operations on the data path,
      we hold a {channel, tc}==>txq mapping table.
      We held this mapping table inside the channel object that is
      being destroyed upon some configuration operations (e.g MTU change).
      So in case ndo_select_queue occurs during such a configuration operation,
      it may access a NULL channel pointer, resulting in kernel panic.
      To fix this issue we moved the {channel, tc}==>txq mapping table
      outside the channel object so that it will be available also
      during such configuration operations.

      Signed-off-by: Rana Shahout <ranas@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 06bb6f5a69dfc53b79dd5f7afabdcd070a18afbf
  Author: RafaÅ? MiÅ?ecki <zajec5@xxxxxxxxx>
  Date:   Mon Aug 10 21:39:03 2015 +0200

      mtd: spi-nor: stop (ab)using struct spi_device_id

      Using struct spi_device_id for storing list of flash devices comes from
      early SPI NOR framework days. Thanks to the commit 70f3ce0510af ("mtd:
      spi-nor: make spi_nor_scan() take a chip type name, not spi_device_id")
      we can stop using spi_device_id and just switch to our own struct.

      Signed-off-by: RafaÅ? MiÅ?ecki <zajec5@xxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 94c10f0ea303473884f69edd6bbb0cedcf570105
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Aug 25 13:38:50 2015 -0700

      ah4: Fix error return in ah_input().

      Noticed by Herbert Xu.

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 25105051fde444cac11a2e2599350e5388936428
  Author: Julia Lawall <julia.lawall@xxxxxxx>
  Date:   Sun Aug 23 02:11:21 2015 +0200

      ah6: fix error return code

      Return a negative error code on failure.

      A simplified version of the semantic match that finds this problem is as
      follows: (http://coccinelle.lip6.fr/)

      // <smpl>
      @@
      identifier ret; expression e1,e2;
      @@
      (
      if (\(ret < 0\|ret != 0\))
       { ... return ret; }
      |
      ret = 0
      )
      ... when != ret = e1
          when != &ret
      *if(...)
      {
        ... when != ret = e2
            when forall
       return ret;
      }
      // </smpl>

      Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Acked-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 5c12197939be10c117039aabc06830297fb6d6ee
  Author: Julia Lawall <julia.lawall@xxxxxxx>
  Date:   Sun Aug 23 02:11:16 2015 +0200

      mlxsw: fix error return code

      Return a negative error code on failure.

      A simplified version of the semantic match that finds this problem is as
      follows: (http://coccinelle.lip6.fr/)

      // <smpl>
      @@
      identifier ret; expression e1,e2;
      @@
      (
      if (\(ret < 0\|ret != 0\))
       { ... return ret; }
      |
      ret = 0
      )
      ... when != ret = e1
          when != &ret
      *if(...)
      {
        ... when != ret = e2
            when forall
       return ret;
      }
      // </smpl>

      Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Acked-by: Jiri Pirko <jiri@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1ef53ebfa9ff5b205604fc781868765e00ae875f
  Author: Julia Lawall <julia.lawall@xxxxxxx>
  Date:   Sun Aug 23 02:11:14 2015 +0200

      net: davinci_emac: fix error return code

      Propagate error code on failure.

      A simplified version of the semantic match that finds this problem is as
      follows: (http://coccinelle.lip6.fr/)

      // <smpl>
      @@
      identifier ret; expression e1,e2;
      @@
      (
      if (\(ret < 0\|ret != 0\))
       { ... return ret; }
      |
      ret = 0
      )
      ... when != ret = e1
          when != &ret
      *if(...)
      {
        ... when != ret = e2
            when forall
       return ret;
      }
      // </smpl>

      Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 96fd26b97a6b1412e9a302cd11363e28aa9b4ee5
  Merge: 43e122b ae05368
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Aug 25 13:35:32 2015 -0700

      Merge branch 'rds-assorted-bug-fixes'

      Santosh Shilimkar says:

      ====================
      RDS: Assorted bug fixes

      We would like to improve RDS upstream support and in that context, I
      started playing with it.  But run into number of issues including as
      basic is RDS IB RDMA doesn't work. As part of the debug, I ended up
      creating the $subject series which has bunch of assorted fixes. At
      least with this series I can run RDS IB RDMA and other tests
      successfully.

      Some of these fixes have been done by Chris Meson, Andy Grover and
      Zach Brown while at Oracle. There are still more kinks with FMR and
      error handling and I plan to address them in a follow up series.

      Series generated against Linus's master(v4.2-rc-7) but also applies
      against next-next cleanly. Its tested on Oracle hardware with IB
      fabric for both bcopy as well as RDMA mode. I don't have access
      to iWARP hardware so any testing help on iWARP hardware appreciated.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ae05368afa7ea27fd906477874ed3ebc7df7e53c
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Sat Aug 22 15:45:35 2015 -0700

      RDS: check for valid cm_id before initiating connection

      Connection could have been dropped while the route is being resolved
      so check for valid cm_id before initiating the connection.

      Reviewed-by: Ajaykumar Hotchandani <ajaykumar.hotchandani@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 06e8941e22f5cbaa4051f06d7ac99e3f302f6d48
  Author: Mukesh Kacker <mukesh.kacker@xxxxxxxxxx>
  Date:   Sat Aug 22 15:45:34 2015 -0700

      RDS: return EMSGSIZE for oversize requests before processing/queueing

      rds_send_queue_rm() allows for the "current datagram" being queued
      to exceed SO_SNDBUF thresholds by checking bytes queued without
      counting in length of current datagram. (Since sk_sndbuf is set
      to twice requested SO_SNDBUF value as a kernel heuristic this
      is usually fine!)

      If this "current datagram" squeezing past the threshold is itself
      many times the size of the sk_sndbuf threshold itself then even
      twice the SO_SNDBUF does not save us and it gets queued but
      cannot be transmitted. Threads block and deadlock and device
      becomes unusable. The check for this datagram not exceeding
      SNDBUF thresholds (EMSGSIZE) is not done on this datagram as
      that check is only done if queueing attempt fails.
      (Datagrams that follow this datagram fail queueing attempts, go
      through the check and eventually trip EMSGSIZE error but zero
      length datagrams silently fail!)

      This fix moves the check for datagrams exceeding SNDBUF limits
      before any processing or queueing is attempted and returns EMSGSIZE
      early in the rds_sndmsg() code. This change also ensures that all
      datagrams get checked for exceeding SNDBUF/sk_sndbuf size limits
      and the large datagrams that exceed those limits do not get to
      rds_send_queue_rm() code for processing.

      Signed-off-by: Mukesh Kacker <mukesh.kacker@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit dfcec251d22bab947d10cf37e9ad67085cf7f097
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Sat Aug 22 15:45:33 2015 -0700

      RDS: make sure rds_send_drop_to properly takes the m_rs_lock

      rds_send_drop_to() is used during socket tear down to find all the
      messages on the socket and flush them .  It can race with the
      acking code unless it takes the m_rs_lock on each and every message.

      This plugs a hole where we didn't take m_rs_lock on any message that
      didn't have the RDS_MSG_ON_CONN set.  Taking m_rs_lock avoids
      double frees and other memory corruptions as the ack code trusts
      the message m_rs pointer on a socket that had actually been freed.

      We must take m_rs_lock to access m_rs.  Because of lock nesting and
      rs access, we also need to acquire rs_lock.

      Reviewed-by: Ajaykumar Hotchandani <ajaykumar.hotchandani@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1c3be624f40acd6f2bd0f22ade081ac2467e8617
  Author: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
  Date:   Sat Aug 22 15:45:32 2015 -0700

      RDS: Don't destroy the rdma id until after we're done using it

      During connection resets, we are destroying the rdma id too soon. We can't
      destroy it when it is still in use. So lets move rdma_destroy_id() after
      we clear the rings.

      Reviewed-by: Ajaykumar Hotchandani <ajaykumar.hotchandani@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 5c240fa2ab394af1dbde280e00cc038cbc7f0409
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Sat Aug 22 15:45:31 2015 -0700

      RDS: Fix assertion level from fatal to warning

      Fix the asserion level since its not fatal and can be hit
      in normal execution paths. There is no need to take the
      system down.

      We keep the WARN_ON() to detect the condition if we get
      here with bad pages.

      Reviewed-by: Ajaykumar Hotchandani <ajaykumar.hotchandani@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3049147ca7c8426268433d16d7546a51dede316d
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Sat Aug 22 15:45:30 2015 -0700

      RDS: Make sure we do a signaled send for large-send

      WR(Work Requests )always generate a WC(Work Completion) with
      signaled send. Default RDS ib code is setup for un-signaled
      completion. Since RDS connction is persistent, we can end up
      sending the data even after large-send when the remote end is
      not active(for any reason).

      By doing  a signaled send at least once per large-send,
      we can at least detect the problem in work completion
      handler there by avoiding sending more data to
      inactive remote.

      Reviewed-by: Ajaykumar Hotchandani <ajaykumar.hotchandani@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4f73113c63bae5cd092c93c2a9835b9d3c7f0b54
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Sat Aug 22 15:45:29 2015 -0700

      RDS: Mark message mapped before transmit

      rds_send_xmit() marks the rds message map flag after
      xmit_[rdma/atomic]() which is clearly wrong.  We need
      to maintain the ownership between transport and rds.

      Also take care of error path.

      Reviewed-by: Ajaykumar Hotchandani <ajaykumar.hotchandani@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0df5f9a68a79f31e608b69a9369d6415a38843e1
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Sat Aug 22 15:45:28 2015 -0700

      RDS: add a sock_destruct callback debug aid

      This helps to detect the accidental processes/apps trying to destroy
      the RDS socket which they are sharing with other processes/apps.

      Reviewed-by: Ajaykumar Hotchandani <ajaykumar.hotchandani@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0c484240210a8c835a216dbca6f1d690e4094a7c
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Sat Aug 22 15:45:27 2015 -0700

      RDS: check for congestion updates during rds_send_xmit

      Ensure we don't keep sending the data if the link is congested.

      Reviewed-by: Ajaykumar Hotchandani <ajaykumar.hotchandani@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 73ce4317bf983282593aff710b112a7e705620c3
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Sat Aug 22 15:45:26 2015 -0700

      RDS: make sure we post recv buffers

      If we get an ENOMEM during rds_ib_recv_refill, we might never come
      back and refill again later. Patch makes sure to kick krdsd into
      helping out.

      To achieve this we add RDS_RECV_REFILL flag and update in the refill
      path based on that so that at least some therad will keep posting
      receive buffers.

      Since krdsd and softirq both might race for refill, we decide to
      schedule on work queue based on ring_low instead of ring_empty.

      Reviewed-by: Ajaykumar Hotchandani <ajaykumar.hotchandani@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e1f475a738e4c861d8aff84b737a0538680cbe05
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Sat Aug 22 15:45:25 2015 -0700

      RDS: don't update ip address tables if the address hasn't changed

      If the ip address tables hasn't changed, there is no need to remove
      them only to be added back again.

      Lets fix it.
      Reviewed-by: Ajaykumar Hotchandani <ajaykumar.hotchandani@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1bc7b863f230e429dd7a06c0956ada7933d69f50
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Sat Aug 22 15:45:24 2015 -0700

      RDS: destroy the ib state earlier during shutdown

      Destroy ib state early during shutdown. Otherwise we can get callbacks
      after the QP isn't really able to handle them.

      Reviewed-by: Ajaykumar Hotchandani <ajaykumar.hotchandani@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 43962dd7ee192299c6e0c6cd7f0a65997308f1f4
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Sat Aug 22 15:45:23 2015 -0700

      RDS: always free recv frag as we free its ring entry

      We were still seeing rare occurrences of the WARN_ON(recv->r_frag) which
      indicates that the recv refill path was finding allocated frags in ring
      entries that were marked free. These were usually followed by OOM crashes.
      They only seem to be occurring in the presence of completion errors and
      connection resets.

      This patch ensures that we free the frag as we mark the ring entry free.
      This should stop the refill path from finding allocated frags in ring
      entries that were marked free.

      Reviewed-by: Ajaykumar Hotchandani <ajaykumar.hotchandani@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1d2e3f396c532b95a37bbee92269f37efe908457
  Author: santosh.shilimkar@xxxxxxxxxx <santosh.shilimkar@xxxxxxxxxx>
  Date:   Sat Aug 22 15:45:22 2015 -0700

      RDS: restore return value in rds_cmsg_rdma_args()

      In rds_cmsg_rdma_args() 'ret' is used by rds_pin_pages() which returns
      number of pinned pages on success. And the same value is returned to the
      caller of rds_cmsg_rdma_args() on success which is not intended.

      Commit f4a3fc03c1d7 ("RDS: Clean up error handling in rds_cmsg_rdma_args")
      removed the 'ret = 0' line which broke RDS RDMA mode.

      Fix it by restoring the return value on rds_pin_pages() success
      keeping the clean-up in place.

      Signed-off-by: Santosh Shilimkar <ssantosh@xxxxxxxxxx>
      Signed-off-by: Santosh Shilimkar <santosh.shilimkar@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b96f465035f9fae83c1d8de3e80eecfe6877608c
  Author: David Teigland <teigland@xxxxxxxxxx>
  Date:   Tue Aug 25 12:51:44 2015 -0500

      dlm: fix lvb copy for user locks

      For a userland lock request, the previous and current
      lock modes are used to decide when the lvb should be
      copied back to the user.  The wrong previous value was
      used, so that it always matched the current value.
      This caused the lvb to be copied back to the user in
      the wrong cases.

      Signed-off-by: David Teigland <teigland@xxxxxxxxxx>

  commit 0cb850486048ba4f64482a9d3e33dff47df34c79
  Author: Oleksij Rempel <linux@xxxxxxxxxxxxxxxx>
  Date:   Wed Dec 31 13:58:53 2014 +0100

      mtd: nand: add Toshiba TC58NVG0S3E to nand_ids table

      Add the full description of the Toshiba TC58NVG0S3E NAND chip in the
      nand_ids table so that we can later use the NAND ECC info and ONFI timing
      mode in controller drivers.

      Tested with asm9260_nand driver. [Brian: driver still under review]

      Signed-off-by: Oleksij Rempel <linux@xxxxxxxxxxxxxxxx>
      Reviewed-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 540d9864e1c5f8d3ca2ecc919e7d8a47e713ec3f
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 25 11:16:13 2015 -0400

      NFSv4.1/pnfs: Add sanity check for the layout range returned by the server

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 82714bd1424a88e4bb43813c8a78fbe8f6c5feab
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 25 08:41:24 2015 -0400

      NFSv4.1/pnfs Improve the packing of struct pnfs_layout_hdr

      Eliminate a couple of holes in the structure, and move the 2 atomics
      into the same cacheline.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit e3b1df2dbd7bcda807a94db131fda6c2bbd1480a
  Author: kbuild test robot <fengguang.wu@xxxxxxxxx>
  Date:   Tue Aug 25 11:19:25 2015 +0800

      NFSv4.1/flexfile: ff_layout_remove_mirror can be static

      Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit bbf58bf3488e41f346536aa89d62bdf2fe771128
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 24 20:39:18 2015 -0400

      NFSv4.2/pnfs: Make the layoutstats timer configurable

      Allow advanced users to set the layoutstats timer in order to lengthen
      or shorten the period between layoutstat transmissions to the server.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 266d12d42ebd2587d3d0e8c4a4e54bfb5ed29543
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 24 20:03:17 2015 -0400

      NFSv4.1/flexfile: Ensure uniqueness of mirrors across layout segments

      Keep the full list of mirrors in the struct nfs4_ff_layout_mirror so that
      they can be shared among the layout segments that use them.
      Also ensure that we send out only one copy of the layoutstats per mirror.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 0b7baf9433d4e0a0c83eecbadc1f035d5370c6dc
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 24 18:22:28 2015 -0400

      NFSv4.1/flexfiles: Remove mirror backpointer to lseg.

      When we start sharing mirrors between several lsegs, we won't be able to
      keep it.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 28a0d72c6867af307c000e068a6da93ae98bcd0c
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 24 18:08:30 2015 -0400

      NFSv4.1/flexfiles: Add refcounting to struct nfs4_ff_layout_mirror

      We do want to share mirrors between layout segments, so add a refcount
      to enable that.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit a6970317f2d5f596302d957ae2f5b0d7c8676371
  Author: Oleg Drokin <green@xxxxxxxxxxxxxx>
  Date:   Tue Aug 18 21:04:35 2015 -0400

      staging/lustre/o2iblnd: remove references to ib_reg_phsy_mr()

      Removed references to ib_reg_phsy_mr() and PMR which was added
      to deal with some Chelsio specific scenario, but no longer needed
      now.

      Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      Signed-off-by: Amir Shehata <amir.shehata@xxxxxxxxx>
      Signed-off-by: Oleg Drokin <oleg.drokin@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 5420401079e152ff68a8024f6a375804b1c21505
  Author: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 06:40:00 2015 +0800

      NFS41/flexfiles: zero out DS write wcc

      We do not want to update inode attributes with DS values.

      Cc: stable@xxxxxxxxxxxxxxx # v4.0+
      Signed-off-by: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 3976143b063e3c42fe5471d87860f6ae118e0eee
  Author: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 12:49:44 2015 +0800

      NFS41: remove NFS_LAYOUT_ROC flag

      If we return delegation before closing, we fail to do roc check
      during close because NFS_LAYOUT_ROC is cleared by delegreturn
      and it causes layouts to be still hanging around after delegreturn
      + close, which is a voilation against protocol.

      Signed-off-by: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 249b2eef647f97164b8bb61f2d9282f227a17992
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 20:43:14 2015 -0500

      NFSv4: Add a tracepoint for CB_LAYOUTRECALL

      Only support for single file layoutrecall for now.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 7cd148610af9312aa6454395fe174ebfe9496aa1
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 20:07:54 2015 -0500

      NFSv4: Add a tracepoint for CB_GETATTR

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 6a463beb9a433d91f3eaf85c2f0ca0aeddf3e0ab
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 15:40:47 2015 -0500

      NFSv4.1/pnfs: Add a tracepoint for return-on-close events

      Allow tracing of return-on-close.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit aaae3f00d3f67f681a1f3cb7af999e976e8a24ce
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 18:56:07 2015 -0500

      NFSv4: Force a post-op attribute update when holding a delegation

      If the ctime or mtime or change attribute have changed because
      of an operation we initiated, we should make sure that we force
      an attribute update. However we do not want to mark the page cache
      for revalidation.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # v4.0+

  commit 804486b19de92449203f95027c2b207d8c5d5c79
  Author: Milo Kim <milo.kim@xxxxxx>
  Date:   Tue Aug 25 14:54:12 2015 +0900

      regulator: lp872x: handle error case

      If memory allocation gets failed on parsing the DT, then it returns error
      '-ENOMEM' explicitly. Then, the driver exists from the _probe().

      Signed-off-by: Milo Kim <milo.kim@xxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit d9ffae15f7b1933c71dfb7c5e8ef61296d2833d7
  Author: Milo Kim <milo.kim@xxxxxx>
  Date:   Tue Aug 25 14:54:11 2015 +0900

      regulator: lp872x: use the private data instead of updating I2C device 
platform data

      Currently, lp872x driver parses the DT and copies values into the
      'cl->dev.platform_data' if 'of_node' exists.
      This may have architectural issue. Platform data is configurable through
      the DT or I2C board info inside the platform area.
      However, lp872x driver changes this configuration when it is loaded.

      The lp872x driver should get data from the platform side and use the 
private
      data, 'lp872x->pdata' instead of changing the original platform data.

      Signed-off-by: Milo Kim <milo.kim@xxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 43e122b014c955a33220fabbd09c4b5e4f422c3c
  Author: Eric Dumazet <edumazet@xxxxxxxxxx>
  Date:   Fri Aug 21 17:38:02 2015 -0700

      tcp: refine pacing rate determination

      When TCP pacing was added back in linux-3.12, we chose
      to apply a fixed ratio of 200 % against current rate,
      to allow probing for optimal throughput even during
      slow start phase, where cwnd can be doubled every other gRTT.

      At Google, we found it was better applying a different ratio
      while in Congestion Avoidance phase.
      This ratio was set to 120 %.

      We've used the normal tcp_in_slow_start() helper for a while,
      then tuned the condition to select the conservative ratio
      as soon as cwnd >= ssthresh/2 :

      - After cwnd reduction, it is safer to ramp up more slowly,
        as we approach optimal cwnd.
      - Initial ramp up (ssthresh == INFINITY) still allows doubling
        cwnd every other RTT.

      Signed-off-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Cc: Neal Cardwell <ncardwell@xxxxxxxxxx>
      Cc: Yuchung Cheng <ycheng@xxxxxxxxxx>
      Acked-by: Neal Cardwell <ncardwell@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1c4b4b0eb1909010b8ebda1ef208bf3ed62e7487
  Author: Georgi Djakov <georgi.djakov@xxxxxxxxxx>
  Date:   Tue Aug 25 15:27:43 2015 +0300

      clk: qcom: Fix MSM8916 prng clock enable bit

      Fix the enable bit of the pseudorandom number generator clock.

      Reported-by: Stanimir Varbanov <stanimir.varbanov@xxxxxxxxxx>
      Fixes: 3966fab8b6ab "clk: qcom: Add MSM8916 Global Clock Controller 
support"
      Signed-off-by: Georgi Djakov <georgi.djakov@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 4ec3b28c2763e11a423d03810ff0be65f02e635e
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 15:06:30 2015 -0700

      xfrm: Use VRF master index if output device is enslaved

      Directs route lookups to VRF table. Compiles out if NET_VRF is not
      enabled. With this patch able to successfully bring up ipsec tunnels
      in VRFs, even with duplicate network configuration.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Steffen Klassert <steffen.klassert@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6f021c62d64f38092bc2a0c5fe7b81d5e5b21a00
  Author: Eric Dumazet <edumazet@xxxxxxxxxx>
  Date:   Fri Aug 21 12:30:00 2015 -0700

      tcp: fix slow start after idle vs TSO/GSO

      slow start after idle might reduce cwnd, but we perform this
      after first packet was cooked and sent.

      With TSO/GSO, it means that we might send a full TSO packet
      even if cwnd should have been reduced to IW10.

      Moving the SSAI check in skb_entail() makes sense, because
      we slightly reduce number of times this check is done,
      especially for large send() and TCP Small queue callbacks from
      softirq context.

      As Neal pointed out, we also need to perform the check
      if/when receive window opens.

      Tested:

      Following packetdrill test demonstrates the problem
      // Test of slow start after idle

      `sysctl -q net.ipv4.tcp_slow_start_after_idle=1`

      0.000 socket(..., SOCK_STREAM, IPPROTO_TCP) = 3
      +0    setsockopt(3, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0
      +0    bind(3, ..., ...) = 0
      +0    listen(3, 1) = 0

      +0    < S 0:0(0) win 65535 <mss 1000,sackOK,nop,nop,nop,wscale 7>
      +0    > S. 0:0(0) ack 1 <mss 1460,nop,nop,sackOK,nop,wscale 6>
      +.100 < . 1:1(0) ack 1 win 511
      +0    accept(3, ..., ...) = 4
      +0    setsockopt(4, SOL_SOCKET, SO_SNDBUF, [200000], 4) = 0

      +0    write(4, ..., 26000) = 26000
      +0    > . 1:5001(5000) ack 1
      +0    > . 5001:10001(5000) ack 1
      +0    %{ assert tcpi_snd_cwnd == 10 }%

      +.100 < . 1:1(0) ack 10001 win 511
      +0    %{ assert tcpi_snd_cwnd == 20, tcpi_snd_cwnd }%
      +0    > . 10001:20001(10000) ack 1
      +0    > P. 20001:26001(6000) ack 1

      +.100 < . 1:1(0) ack 26001 win 511
      +0    %{ assert tcpi_snd_cwnd == 36, tcpi_snd_cwnd }%

      +4 write(4, ..., 20000) = 20000
      // If slow start after idle works properly, we should send 5 MSS here 
(cwnd/2)
      +0    > . 26001:31001(5000) ack 1
      +0    %{ assert tcpi_snd_cwnd == 10, tcpi_snd_cwnd }%
      +0    > . 31001:36001(5000) ack 1

      Signed-off-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Cc: Neal Cardwell <ncardwell@xxxxxxxxxx>
      Cc: Yuchung Cheng <ycheng@xxxxxxxxxx>
      Acked-by: Neal Cardwell <ncardwell@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 20f1f4b5ffb870631bf4a4e7c7ba10e3528ae6a6
  Merge: ce52399 3e1d2ee
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 25 14:19:29 2015 -0400

      Merge branch 'for-4.3-unified-base' into for-4.3

  commit ce52399520e4b97466165737e00c7b528ae8c8f5
  Author: Aleksa Sarai <cyphar@xxxxxxxxxx>
  Date:   Tue Aug 25 12:50:44 2015 +1000

      cgroup: pids: fix invalid get/put usage

      Fix incorrect usage of css_get and css_put to put a different css in
      pids_{cancel_,}attach() than the one grabbed in pids_can_attach(). This
      could lead to quite serious memory leakage (and unsafe operations on the
      putted css).

      tj: minor comment update

      Signed-off-by: Aleksa Sarai <cyphar@xxxxxxxxxx>
      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>

  commit 0e7659712836ca59b4735bc5cc94de38698a5e01
  Author: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 25 12:43:48 2015 +0100

      ASoC: arizona: Poll for FLL clock OK rather than use interrupts

      The extcon driver takes the DAPM mutex from within the interrupt thread
      in several places, which makes it possible to get into a situation where
      the interrupt thread is blocked waiting on the DAPM mutex whilst a DAPM
      sequence is running which is attempting to configure the FLL. In this
      case the FLL completion can't be completed as as the IRQ handler is
      ONE_SHOT, which cause the FLL lock to use the full time out (250mS) and
      report that the process timed out.

      It is not really practical to make the extcon driver not take the DAPM
      mutex from within the interrupt thread, at least not without extensive
      modification. So this patch fixes the issue by switching the wait for
      the FLL lock to polling. A few fast polls are done first as the FLL
      should lock quickly for a good quality reference clock, (indeed it hits
      on the first poll on my system) and it will poll every 20mS after that
      until it times out.

      Signed-off-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit c1713485f9fc06e1f4de9800b43f6486f2527379
  Author: Oder Chiou <oder_chiou@xxxxxxxxxxx>
  Date:   Tue Aug 25 16:03:48 2015 +0800

      ASoC: rt5645: Add struct dmi_system_id "Google Celes" for chrome platform

      Signed-off-by: Oder Chiou <oder_chiou@xxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit b1d42598cb654ce63b55ccf27da09dcd914781f3
  Author: Oder Chiou <oder_chiou@xxxxxxxxxxx>
  Date:   Mon Aug 24 20:32:59 2015 +0800

      ASoC: rt5645: Add the register RT5645_CHARGE_PUMP to readable check 
function

      Signed-off-by: Oder Chiou <oder_chiou@xxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 4aed4c9efb30253483869c58236ab00bdfa45630
  Author: Oder Chiou <oder_chiou@xxxxxxxxxxx>
  Date:   Mon Aug 24 20:32:58 2015 +0800

      ASoC: rt5645: Remove the incorrect setting of the JD mode

      The patch removes the incorrect setting of the JD mode. It will cause pop
      sound in the booting time.

      Signed-off-by: Oder Chiou <oder_chiou@xxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 8db7f56ddf2c4571e33756b70a1a8f492c050449
  Author: Oder Chiou <oder_chiou@xxxxxxxxxxx>
  Date:   Mon Aug 24 20:32:57 2015 +0800

      ASoC: rt5645: Modify the jack detection function to prevent the pop sound 
while the jack plug in

      The patch corrects the sequence of the jack detection. It will prevent the
      pop sound while the jack plug in.

      Signed-off-by: Oder Chiou <oder_chiou@xxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 588cd850f5089cb63e031e8d70e9c081b0d97ab2
  Author: Oder Chiou <oder_chiou@xxxxxxxxxxx>
  Date:   Mon Aug 24 20:32:56 2015 +0800

      ASoC: rt5645: Modify the headphone depop and calibration function to 
prevent the pop sound in the booting time

      Remove the original calibration function and modify the depop and
      calibration function to prevent the pop sound in the booting time.

      Signed-off-by: Oder Chiou <oder_chiou@xxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit a8cfe8cfd0da4502f5fa924f47c7ba6c7047c722
  Author: Chen-Yu Tsai <wens@xxxxxxxx>
  Date:   Tue Aug 18 15:16:45 2015 +0800

      clk: Add missing header for 'bool' definition to clk-conf.h

      of_clk_set_defaults uses the type 'bool', but clk-conf.h does not
      include its definition.

      This results in a compile error when only clk-conf.h is used.

      Signed-off-by: Chen-Yu Tsai <wens@xxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 2ce0acf5673e7ee82506e69109876e037e4a64be
  Author: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
  Date:   Mon Aug 24 11:45:18 2015 +0800

      spi: mediatek: replace *_time name

      This patch replaces *_time name in mtk_spi_prepare_transfer().

      Signed-off-by: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 13da5a0b72ea66c74483966ff91718ae0a9c0703
  Author: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
  Date:   Mon Aug 24 11:45:17 2015 +0800

      spi: mediatek: add PM clk_prepare_enable fail flow

      This patch adds PM clk_prepare_enable fail flow.

      Signed-off-by: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 50f8fec2162db918540d0845481f3f6fffc5b033
  Author: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
  Date:   Mon Aug 24 11:45:16 2015 +0800

      spi: mediatek: replace int with u32, delete TAB and define 
MTK_SPI_PAUSE_INT_STATUS marco

      this patch replaces int with u32, deletes TAB, and defines
      MTK_SPI_PAUSE_INT_STATUS marco.

      Signed-off-by: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit dd69a0a69c9ee3e09da7f3771c1aa420e49464ce
  Author: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
  Date:   Mon Aug 24 11:45:15 2015 +0800

      spi: mediatek: add linux/io.h include file

      mediatek spi driver uses readl/writel, so add linux/io.h,
      even so it's implicitly imported by spi/spi.h

      Signed-off-by: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 9205b797dbe519a629267ec8c5766cd973d35063
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Mon Aug 24 21:49:30 2015 +0100

      ARM: 8421/1: smp: Collapse arch_cpu_idle_dead() into cpu_die()

      The only caller of cpu_die() on ARM is arch_cpu_idle_dead(), so
      let's simplify the code by renaming cpu_die() to
      arch_cpu_idle_dead(). While were here, drop the __ref annotation
      because __cpuinit is gone nowadays.

      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 1ec6f701707e4e97e451ff8b662360f1262a6c59
  Merge: 6be4b0d 2a03c02
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Tue Aug 25 10:16:48 2015 -0700

      Merge tag 'v4.3-rockchip32-soc3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/soc

      Fix for wrong error-codes in rk3288 suspend code.

      * tag 'v4.3-rockchip32-soc3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
        ARM: rockchip: pm: Fix PTR_ERR() argument

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 4c80a00388dd7b9d9e7ebf31e62b96c7b74178b8
  Merge: f4be3c6 467fb18
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Tue Aug 25 10:15:27 2015 -0700

      Merge tag 'v4.3-rockchip32-dts3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/dt

      Fixes for non-standard and inverted regulator-suspend-properties
      on veyron boards.

      * tag 'v4.3-rockchip32-dts3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
        ARM: dts: rockchip: correct regulator power states for suspend
        ARM: dts: rockchip: correct regulator PM properties

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 7d4d443eb4386d6dbd420fa96303dd8fbc1eefc8
  Author: Ben Zhang <benzh@xxxxxxxxxxxx>
  Date:   Fri Aug 21 21:17:00 2015 -0700

      ASoC: rt5677: Allow arbitrary block read/write via SPI

      Added rt5677_spi_read() and refactored rt5677_spi_write() so that
      an arbitrary block in the DSP address space can be read/written
      via SPI. For example, this allows us to load an ELF DSP firmware
      with sparse sections, and stream audio samples from DSP ring buffer.

      Signed-off-by: Ben Zhang <benzh@xxxxxxxxxxxx>
      Acked-by: Oder Chiou <oder_chiou@xxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit f4d86223771533c68f1a6692d499f7ef0025f733
  Author: Jonas Gorski <jogo@xxxxxxxxxxx>
  Date:   Sun Aug 23 22:49:32 2015 +0200

      spi/bcm63xx-hsspi: add support for dual spi read/write

      Add support for dual read/writes on spi-bcm63xx-hsspi. This has been
      tested with a s25fl129p1 dual read capable spi flash, with a nice speed
      improvement:

      serial read:

      root@OpenWrt:/# time dd if=/dev/mtd4 of=/dev/null bs=8192
      2032+0 records in
      2032+0 records out
      real    0m 4.39s
      user    0m 0.00s
      sys     0m 1.55s

      dual read:

      root@OpenWrt:/# time dd if=/dev/mtd4 of=/dev/null bs=8192
      2032+0 records in
      2032+0 records out
      real    0m 3.09s
      user    0m 0.00s
      sys     0m 1.56s

      Signed-off-by: Jonas Gorski <jogo@xxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 126b16e2ad98c46aa0f53dbf62f71c09ba6b1d99
  Author: Mark Rutland <mark.rutland@xxxxxxx>
  Date:   Thu Jul 23 17:52:43 2015 +0100

      Docs: dt: add generic MSI bindings

      Currently msi-parent is used in a couple of drivers despite being fairly
      underspecified. This patch adds a generic binding for MSIs (including
      the existing msi-parent property) enabling the description of platform
      devices capable of using MSIs.

      While MSIs are primarily distinguished by doorbell and payload, some MSI
      controllers (e.g. the GICv3 ITS) also use side-band information
      accompanying the write to identify the master which originated the MSI,
      to allow for sandboxing. This sideband information is non-probeable and
      needs to be described in the DT. Other MSI controllers may have
      additional configuration details which need to be described per-master.

      This patch adds a generic msi-parent binding document, extending the
      de-facto standard with a new (optional) #msi-cells which can be used to
      express any per-master configuration and/or sideband data. This is
      sufficient to describe non-hotpluggable devices.

      For busses where sideband data may be derived from some bus-specific
      master ID scheme, other properties will be required to describe the
      mapping.

      Signed-off-by: Mark Rutland <mark.rutland@xxxxxxx>
      Acked-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit 7f5dcaf1fdf289767a126a0a5cc3ef39b5254b06
  Author: Grant Likely <grant.likely@xxxxxxxxxx>
  Date:   Sun Jun 7 15:20:11 2015 +0100

      drivercore: Fix unregistration path of platform devices

      The unregister path of platform_device is broken. On registration, it
      will register all resources with either a parent already set, or
      type==IORESOURCE_{IO,MEM}. However, on unregister it will release
      everything with type==IORESOURCE_{IO,MEM}, but ignore the others. There
      are also cases where resources don't get registered in the first place,
      like with devices created by of_platform_populate()*.

      Fix the unregister path to be symmetrical with the register path by
      checking the parent pointer instead of the type field to decide which
      resources to unregister. This is safe because the upshot of the
      registration path algorithm is that registered resources have a parent
      pointer, and non-registered resources do not.

      * It can be argued that of_platform_populate() should be registering
        it's resources, and they argument has some merit. However, there are
        quite a few platforms that end up broken if we try to do that due to
        overlapping resources in the device tree. Until that is fixed, we need
        to solve the immediate problem.

      Cc: Pantelis Antoniou <pantelis.antoniou@xxxxxxxxxxxx>
      Cc: Wolfram Sang <wsa@xxxxxxxxxxxxx>
      Cc: Rob Herring <robh@xxxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: Ricardo Ribalda Delgado <ricardo.ribalda@xxxxxxxxx>
      Signed-off-by: Grant Likely <grant.likely@xxxxxxxxxx>
      Tested-by: Ricardo Ribalda Delgado <ricardo.ribalda@xxxxxxxxx>
      Tested-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit 3a496b00b6f90c41bd21a410871dfc97d4f3c7ab
  Author: David Daney <david.daney@xxxxxxxxxx>
  Date:   Wed Aug 19 13:17:47 2015 -0700

      of/address: Don't loop forever in of_find_matching_node_by_address().

      If the internal call to of_address_to_resource() fails, we end up
      looping forever in of_find_matching_node_by_address().  This can be
      caused by a defective device tree, or calling with an incorrect
      matches argument.

      Fix by calling of_find_matching_node() unconditionally at the end of
      the loop.

      Signed-off-by: David Daney <david.daney@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit 068627a5978a885b33f0f49da81860ce78c3ac6f
  Author: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
  Date:   Tue Aug 4 15:11:21 2015 +0200

      of: Add vendor prefix for JEDEC Solid State Technology Association

      Add the "jedec" vendor prefix for the "JEDEC Solid State Technology
      Association" (formerly known as the "Joint Electron Device Engineering
      Council"), which is already in use in several bindings.

      Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Acked-by: Brian Norris <computersforpeace@xxxxxxxxx>
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit 43443ad692cf1d41a90cac2ed7066a10cd67a9c6
  Author: Hauke Mehrtens <hauke@xxxxxxxxxx>
  Date:   Sun Aug 2 19:44:43 2015 +0200

      of/platform: add function to populate default bus

      When a default bus like the simple-bus should be used someone had to
      call of_platform_populate() with the default match table. This match
      table was not exported, so it is impossible for code build as a module
      to use this. Instead of exporting of_default_bus_match_table, add a new
      function which uses this default match table and populates the bus.

      Signed-off-by: Hauke Mehrtens <hauke@xxxxxxxxxx>
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit 5b87af4cca175c4f03f790f2b15be7e4dd436df9
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 25 08:31:17 2015 +0200

      regulator: isl9305: Export OF module alias information

      The I2C core always reports the MODALIAS uevent as "i2c:<modalias>"
      regardless of the mechanism that was used to register the device
      (i.e: OF or board code) and the table that is used later to match
      the driver with the device (i.e: I2C id table or OF match table).

      So drivers needs to export the I2C id table and this be built into
      the module or udev won't have the necessary information to autoload
      the needed driver module when the device is added.

      But this means that OF-only drivers needs to have both OF and I2C id
      tables that have to be kept in sync and also the dev node compatible
      manufacturer prefix is stripped when reporting the MODALIAS. Which can
      lead to issues if two vendors use the same I2C device name for example.

      To avoid the above, the I2C core behavior may be changed in the future
      to not require an SPI device table for OF-only drivers and report the
      OF module alias. So, it's better to also export the OF table even when
      is unused now to prevent breaking module loading when the core changes.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 3fba7e23f754a9a6e639b640fa2a393712ffe1b8
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 11:02:28 2015 +0100

      ARM: uaccess: provide uaccess_save_and_enable() and uaccess_restore()

      Provide uaccess_save_and_enable() and uaccess_restore() to permit
      control of userspace visibility to the kernel, and hook these into
      the appropriate places in the kernel where we need to access
      userspace.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 08446b129bbde34665c423d882f857a45b8c3aed
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Tue Aug 25 14:59:15 2015 +0100

      ARM: mm: improve do_ldrd_abort macro

      Improve the do_ldrd_abort macro code - firstly, it inefficiently checks
      for the LDRD encoding by doing a multi-stage test of various bits.  This
      can be simplified by generating a mask, bitmasking the instruction and
      then comparing the result.

      Secondly, we want to be able to test the result rather than branching
      to do_DataAbort, so remove the branch at the end and rename the macro
      to 'teq_ldrd' to reflect it's new usage.  teq_ldrd macro returns 'eq'
      if the instruction was a LDRD.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 9066b0c318589f47b754a3def4fe8ec4688dc21a
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Aug 25 15:12:26 2015 +0800

      drm/amdgpu: fix no sync_wait in copy_buffer

      when eviction is happening, if don't handle
      dependency, then the fence could be dead off.

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 3c62338c26bf2677c8285b406cd769b92ee0dc10
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Thu Aug 20 18:33:59 2015 +0800

      drm/amdgpu: fix last_vm_update fence is not effetive for sched fence

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit f38fdfddfaab070e3ff2333a79e45169ee33dc28
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Aug 24 11:35:26 2015 +0800

      drm/amdgpu: add priv data to sched

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 84f76ea6b03a766931e5d6d650af5ab980c6c4f4
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Aug 24 12:47:36 2015 +0800

      drm/amdgpu: add owner for sched fence

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit c14692f0a728a9d79fb03c7ce521eb07ec0e2b23
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Fri Aug 21 15:18:47 2015 +0200

      drm/amdgpu: remove entity reference from sched fence

      Entity don't live as long as scheduler fences.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 6c859274f363be9dc13f8849bdc59bb64f922f26
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Aug 20 16:12:50 2015 +0200

      drm/amdgpu: fix and cleanup amd_sched_entity_push_job

      Calling schedule() is probably the worse things we can do.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 87e0a87dabdbe9e1698ef85c620c4110b04992a0
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Aug 20 17:36:28 2015 +0200

      drm/amdgpu: remove amdgpu_bo_list_clone

      Not used any more.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 3a185a33a2d291883bd1d0691d22901c345b12c9
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Aug 20 17:35:34 2015 +0200

      drm/amdgpu: remove the context from amdgpu_job

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 69f7dd652c08bffb267f418ded7b358e74783045
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Aug 20 17:24:40 2015 +0200

      drm/amdgpu: remove unused parameters to amd_sched_create

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 1fca766b24d07e2daed1da0f224f5f395c73e32b
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Aug 20 17:09:54 2015 +0200

      drm/amdgpu: remove sched_lock

      It isn't protecting anything.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit b034b572f2823122d56cd0d235158873f84c7c23
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Aug 20 17:08:25 2015 +0200

      drm/amdgpu: remove prepare_job callback

      Not used any more.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit d54fdb94b2fd4c989d498f69e8bbf4189fde42ef
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Aug 20 17:03:48 2015 +0200

      drm/amdgpu: cleanup a scheduler function name

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit e688b728228b951f41175e3a7c0738708d045969
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Aug 20 17:01:01 2015 +0200

      drm/amdgpu: reorder scheduler functions

      Keep run queue, entity and scheduler handling together.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit f49565982194d601f4f3a99892d0f3c765aec104
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Aug 20 16:59:38 2015 +0200

      drm/amdgpu: fix scheduler thread creation error checking

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit aef4852eed2841892796fb1e9abd7f8468384e62
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Aug 20 14:47:46 2015 +0200

      drm/amdgpu: fix entity wakeup race condition

      That actually didn't worked at all.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit f85a6dd9ebd1bcaeb2f31cca71537e62606a23c2
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Wed Aug 19 17:37:52 2015 +0200

      drm/amdgpu: cleanup entity picking

      Cleanup function name, stop checking scheduler ready twice, but
      check if kernel thread should stop instead.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 9788ec40322ef40d64f6d4276248f40666dc4505
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Wed Aug 19 17:34:20 2015 +0200

      drm/amdgpu: remove some more unused entity members v2

      None of them are used any more.

      v2: fix type in error message

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit eb98d1c54d1e058f406f3f4acf15684ad26f9676
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Aug 20 17:28:36 2015 +0200

      drm/amdgpu: fix user fences when scheduler is enabled

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit f91b3a69418120974c9a416939b903ec86607c52
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Aug 20 14:47:40 2015 +0800

      drm/amdgpu: fix fence wait in sync_fence, instead should be in sync_rings

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit c746ba222363d2e0b0316b1c0bda21e2646b66f2
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Wed Aug 19 16:12:15 2015 +0200

      drm/amdgpu: rework scheduler submission handling.

      Remove active_hw_rq and it's protecting queue_lock, they are unused.

      User 32bit atomic for hw_rq_count, 64bits for counting to three is a bit
      overkill.

      Cleanup the function name and remove incorrect comments.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit ce882e6dc241ab8dded0eeeb33a86482d44a5689
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Wed Aug 19 15:00:55 2015 +0200

      drm/amdgpu: remove v_seq handling from the scheduler v2

      Simply not used any more. Only keep 32bit atomic for fence sequence 
numbering.

      v2: trivial rebase

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx> (v1)
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx> (v1)
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx> (v1)

  commit 4ce9891ee17c6e064cc334e3297f7e992d47f3a6
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Wed Aug 19 16:41:19 2015 +0800

      drm/amdgpu: improve sa_bo->fence by kernel fence

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 1aa4051b7f5474cca6009c13868c59d78d06f983
  Author: Junwei Zhang <Jerry.Zhang@xxxxxxx>
  Date:   Wed Aug 19 16:24:19 2015 +0800

      drm/amdgpu: modify amdgpu_fence_wait_any() to amdgpu_fence_wait_multiple()

      Rename the function and update the related code with this modified 
function.
      Add the new parameter of bool wait_all.

      If wait_all is true, it will return when all fences are signaled or 
timeout.
      If wait_all is false, it will return when any fence is signaled or 
timeout.

      Signed-off-by: Junwei Zhang <Jerry.Zhang@xxxxxxx>
      Reviewed-by: Monk Liu <monk.liu@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit 00133ffbf150bf145a946b3f4ee7031503e9751e
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:20:21 2015 -0300

      pinctrl: imx6ul: Remove .owner field

      platform_driver does not need to set an owner as it will be
      populated by the driver core.

      The semantic patch that makes this change is available
      in scripts/coccinelle/api/platform_no_drv_owner.cocci.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 5e22ec019823b0204720e1ad9a5866c638332b3a
  Author: Julia Lawall <julia.lawall@xxxxxxx>
  Date:   Thu Aug 13 17:41:16 2015 +0200

      gpio: extraxfs: fix returnvar.cocci warnings

      Remove unneeded variable used to store return value.

      Generated by: scripts/coccinelle/misc/returnvar.cocci

      Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Julia Lawall <julia.lawall@xxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 2fe2918fa3294edc9c3d8d1622bb1a07c00463ff
  Author: Mike Looijmans <mike.looijmans@xxxxxxxx>
  Date:   Wed Aug 12 16:22:12 2015 +0200

      pinctrl: zynq: Fix typos in smc0_nand_grp and smc0_nor_grp

      Group names should be smc0_nand_grp and smc0_nor_grp, otherwise you'll
      get errors like this if you try to pinmux them via the devicetree:
      zynq-pinctrl 700.pinctrl: invalid group "smc0_nand_grp" for function 
"smc0_nand"

      Probably a typo while creating these tables.

      Signed-off-by: Mike Looijmans <mike.looijmans@xxxxxxxx>
      Acked-by: Sören Brinkmann <soren.brinkmann@xxxxxxxxxx>
      Acked-by: Moritz Fischer <moritz.fischer@xxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 52293c67f1e7542a6dc61037d83c266e216bef27
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Mon Aug 24 22:46:13 2015 -0400

      drm/amdgpu: fix IH ring allocation for bus addresses (v2)

      Use pci_alloc_consistent rather than kzalloc since we
      need 256 byte aligned memory for the ring buffer.

      v2: fix copy paste typo in free function noticed
      by Jammy.

      bug:
      https://bugs.freedesktop.org/show_bug.cgi?id=91749

      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit bf433416e67597ba105ece55b3136557874945db
  Author: Lars Persson <lars.persson@xxxxxxxx>
  Date:   Tue Aug 25 11:59:15 2015 +0200

      crypto: algif_aead - fix for multiple operations on AF_ALG sockets

      The tsgl scatterlist must be re-initialized after each
      operation. Otherwise the sticky bits in the page_link will corrupt the
      list with pre-mature termination or false chaining.

      Signed-off-by: Lars Persson <larper@xxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit df9e21e100a65618b56971ec8da4975eb60e919d
  Author: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
  Date:   Mon Aug 24 11:56:02 2015 -0700

      crypto: qat - enable legacy VFs

      We need to support legacy VFs as well as VFs running on different OSes.
      To do so the compatibility check need needs to be relaxed.
      This patch moves the logic responsible for VF to PF version and
      compatibility checking from adfsriov.c to adf_pf2vf_msg.c,
      where it belongs, and changes the logic enable legacy VFs.

      Signed-off-by: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 0f74fbf77d457c692e108c91475bb7a46aa6d60c
  Author: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
  Date:   Mon Aug 24 07:52:14 2015 -0700

      MPI: Fix mpi_read_buffer

      Change mpi_read_buffer to return a number without leading zeros
      so that mpi_read_buffer and mpi_get_buffer return the same thing.

      Signed-off-by: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit a8b9774571d46506a0774b1ced3493b1245cf893
  Author: Christian Engelmayer <cengelma@xxxxxx>
  Date:   Fri Aug 21 23:14:26 2015 +0200

      rsi: Fix possible leak when loading firmware

      Commit 5d5cd85ff441 ("rsi: Fix failure to load firmware after memory
      leak fix and fix the leak") also added a check on the allocation of
      DMA-accessible memory that may directly return. In that case the
      already allocated firmware data is leaked. Make sure the data is
      always freed correctly. Detected by Coverity CID 1316519.

      Fixes: 5d5cd85ff441 ("rsi: Fix failure to load firmware after memory leak 
fix and fix the leak")
      Signed-off-by: Christian Engelmayer <cengelma@xxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 4e70f2144db01f7214ed5846e47abf128fbfb5af
  Author: Hante Meuleman <meuleman@xxxxxxxxxxxx>
  Date:   Thu Aug 20 22:06:08 2015 +0200

      brcmfmac: Add support for host platform NVRAM loading.

      Host platforms such as routers supported by OpenWRT can
      support NVRAM reading directly from internal NVRAM store.
      With this patch the nvram load routines will fall back to
      this method when there is no nvram file and support is
      available in the kernel.

      Reviewed-by: Arend Van Spriel <arend@xxxxxxxxxxxx>
      Reviewed-by: Franky (Zhenhui) Lin <frankyl@xxxxxxxxxxxx>
      Reviewed-by: Pieter-Paul Giesberts <pieterpg@xxxxxxxxxxxx>
      Reviewed-by: Daniel (Deognyoun) Kim <dekim@xxxxxxxxxxxx>
      Signed-off-by: Hante Meuleman <meuleman@xxxxxxxxxxxx>
      Signed-off-by: Arend van Spriel <arend@xxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit fc7c3ad5251cf76fc78b7f4701e35a0af6375335
  Author: Arend van Spriel <arend@xxxxxxxxxxxx>
  Date:   Thu Aug 20 22:06:07 2015 +0200

      brcmfmac: bump highest event number for 4339 firmware

      The event mask length is determined by the highest event number
      that is specified in the driver. When this length is shorter than
      firmware expects setting event mask will fail and device becomes
      pretty useless. This issue was reported with bcm4339 firmware that
      was recently released.

      Reported-by: Pontus Fuchs <pontusf@xxxxxxxxxxxx>
      Reviewed-by: Hante Meuleman <meuleman@xxxxxxxxxxxx>
      Reviewed-by: Franky (Zhenhui) Lin <frankyl@xxxxxxxxxxxx>
      Reviewed-by: Pieter-Paul Giesberts <pieterpg@xxxxxxxxxxxx>
      Reviewed-by: Pontus Fuchs <pontusf@xxxxxxxxxxxx>
      Signed-off-by: Arend van Spriel <arend@xxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit b02bf1932a4855dc860ed20cdab94f1ea9b1c56f
  Author: Franky Lin <frankyl@xxxxxxxxxxxx>
  Date:   Thu Aug 20 22:06:06 2015 +0200

      brcmfmac: block the correct flowring when backup queue overflow

      brcmf_flowring_block blocks the last active flowring under the same
      interface instead of the one provided by caller. This could lead to a
      dead lock of netif stop if there are more than one flowring under the
      interface and the traffic is high enough so brcmf_flowring_enqueue can
      not unblock the ring right away.

      Reviewed-by: Pieter-Paul Giesberts <pieterpg@xxxxxxxxxxxx>
      Reviewed-by: Hante Meuleman <meuleman@xxxxxxxxxxxx>
      Signed-off-by: Franky Lin <frankyl@xxxxxxxxxxxx>
      Signed-off-by: Arend van Spriel <arend@xxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 39504a2d21adde4748b5ce8c057e09edf3fe17bb
  Author: Arend van Spriel <arend@xxxxxxxxxxxx>
  Date:   Thu Aug 20 22:06:05 2015 +0200

      brcmfmac: make use of cfg80211_check_combinations()

      Use cfg80211_check_combinations() so we can bail out early when an
      interface add or change results in an invalid combination.

      Reviewed-by: Hante Meuleman <meuleman@xxxxxxxxxxxx>
      Reviewed-by: Franky (Zhenhui) Lin <frankyl@xxxxxxxxxxxx>
      Reviewed-by: Pieter-Paul Giesberts <pieterpg@xxxxxxxxxxxx>
      Signed-off-by: Arend van Spriel <arend@xxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 2bb66a8183d6396babde51e558b1ab35733f275f
  Author: Franky Lin <frankyl@xxxxxxxxxxxx>
  Date:   Thu Aug 20 22:06:04 2015 +0200

      brcmfmac: add debugfs entry for msgbuf statistics

      Expose ring buffer read/write pointers and other useful statistics
      through debugfs.

      Reviewed-by: Arend Van Spriel <arend@xxxxxxxxxxxx>
      Reviewed-by: Hante Meuleman <meuleman@xxxxxxxxxxxx>
      Reviewed-by: Pieter-Paul Giesberts <pieterpg@xxxxxxxxxxxx>
      Signed-off-by: Franky Lin <frankyl@xxxxxxxxxxxx>
      Signed-off-by: Arend van Spriel <arend@xxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 0882dda3bcbb51e63c2fd25705ec8541bf86378e
  Author: Arend van Spriel <arend@xxxxxxxxxxxx>
  Date:   Thu Aug 20 22:06:03 2015 +0200

      brcmfmac: correct interface combination info

      The interface combination provided by brcmfmac did not truly reflect
      the combinations supported by driver and/or firmware.

      Reviewed-by: Hante Meuleman <meuleman@xxxxxxxxxxxx>
      Reviewed-by: Franky (Zhenhui) Lin <frankyl@xxxxxxxxxxxx>
      Reviewed-by: Pieter-Paul Giesberts <pieterpg@xxxxxxxxxxxx>
      Reviewed-by: Pontus Fuchs <pontusf@xxxxxxxxxxxx>
      Signed-off-by: Arend van Spriel <arend@xxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 50f32e2d1044b1f1658a1e40c8831969a30ca6a1
  Author: RafaÅ? MiÅ?ecki <zajec5@xxxxxxxxx>
  Date:   Thu Aug 20 00:16:42 2015 +0200

      brcmfmac: check all combinations when setting wiphy's addresses

      Broadcom is working on better reflection of interface combinations. With
      upcoming patches we may have 1st combination supporting less interfaces
      than others.
      To don't run out of addresses check all combinations to find the one
      with the greatest max_interfaces value.

      Signed-off-by: RafaÅ? MiÅ?ecki <zajec5@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 1642d09fb9b128e8e538b2a4179962a34f38dff9
  Author: Adrien Schildknecht <adrien+dev@xxxxxxxxxxx>
  Date:   Wed Aug 19 17:33:12 2015 +0200

      rtlwifi: rtl8192cu: Add new device ID

      The v2 of NetGear WNA1000M uses a different idProduct: USB ID 0846:9043

      Signed-off-by: Adrien Schildknecht <adrien+dev@xxxxxxxxxxx>
      Cc: Stable <stable@xxxxxxxxxxxxxxx>
      Acked-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 654e2751c9f00491c4622893de59a21784e39ccf
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Tue Aug 25 14:04:44 2015 +0200

      ALSA: ppc: Add missing inclusion of linux/module.h

      Otherwise it triggers a compile warning like:
       sound/ppc/keywest.c:104:1: warning: data definition has no type or 
storage class
       sound/ppc/keywest.c:104:1: error: type defaults to 'int' in declaration 
of 'MODULE_DEVICE_TABLE' [-Werror=implicit-int]

      Fixes: a2bc2af66a5b ('ALSA: ppc: keywest: Export I2C module alias 
information')
      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Reviewed-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 12ff7288bfed9d6d62186f0dd782b7b5a43670cd
  Author: Wu Fengguang <fengguang.wu@xxxxxxxxx>
  Date:   Sat Aug 15 18:36:37 2015 +0800

      rtlwifi: rtl8192ee: fix semicolon.cocci warnings

      drivers/net/wireless/rtlwifi/rtl8192ee/phy.c:856:2-3: Unneeded semicolon
      drivers/net/wireless/rtlwifi/rtl8192ee/phy.c:492:3-4: Unneeded semicolon
      drivers/net/wireless/rtlwifi/rtl8192ee/phy.c:452:3-4: Unneeded semicolon

       Remove unneeded semicolon.

      Generated by: scripts/coccinelle/misc/semicolon.cocci

      CC: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
      Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 14250640cd52bf12831799c35502184c4ae8963b
  Author: Oleksij Rempel <linux@xxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 07:16:39 2015 +0200

      ath9k_htc: do ani shortcalibratio if we got -ETIMEDOUT

      current code will handle -ETIMEDOUT as success which is probalbly wrong.

      According to this comment I assume it is safe to handle -ETIMEDOUT as 
false:
      drivers/net/wireless/ath/ath9k/calib.c
      290         /*
      291          * We timed out waiting for the noisefloor to load, probably 
due to an
      292          * in-progress rx. Simply return here and allow the load 
plenty of time
      293          * to complete before the next calibration interval.  We need 
to avoid
      294          * trying to load -50 (which happens below) while the 
previous load is
      295          * still in progress as this can cause rx deafness. Instead 
by returning
      296          * here, the baseband nf cal will just be capped by our 
present
      297          * noisefloor until the next calibration timer.
      298          */

      Since no other error wariants are present, this patch is checking only
      for (ret <= 0).

      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Oleksij Rempel <linux@xxxxxxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 11c36537056759578f9baae03c4ff9dba95661cc
  Merge: 4a89ba0 5865f36
  Author: Kalle Valo <kvalo@xxxxxxxxxxxxxx>
  Date:   Tue Aug 25 14:54:38 2015 +0300

      Merge tag 'iwlwifi-next-for-kalle-2015-08-23' of 
https://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-next

      * new Tx power firmware API
      * bump max firmware API to 17
      * fix bug in debug prints
      * static checker fix
      * fix unused defines
      * fix command list on newest firmware

  commit a2bc2af66a5b656577fc2d71b6c277b73537777e
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 25 08:31:14 2015 +0200

      ALSA: ppc: keywest: Export I2C module alias information

      The I2C core always reports the MODALIAS uevent as "i2c:<client name"
      regardless if the driver was matched using the I2C id_table or the
      of_match_table. So the driver needs to export the I2C table and this
      be built into the module or udev won't have the necessary information
      to auto load the correct module when the device is added.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit dd9d3843755da95f63dd3a376f62b3e45c011210
  Author: Jan H. Schönherr <jschoenh@xxxxxxxxx>
  Date:   Wed Aug 12 21:35:56 2015 +0200

      sched: Fix cpu_active_mask/cpu_online_mask race

      There is a race condition in SMP bootup code, which may result
      in

          WARNING: CPU: 0 PID: 1 at kernel/workqueue.c:4418
          workqueue_cpu_up_callback()
      or
          kernel BUG at kernel/smpboot.c:135!

      It can be triggered with a bit of luck in Linux guests running
      on busy hosts.

        CPU0                        CPUn
        ====                        ====

        _cpu_up()
          __cpu_up()
                                    start_secondary()
                                      set_cpu_online()
                                        cpumask_set_cpu(cpu,
                                                   to_cpumask(cpu_online_bits));
          cpu_notify(CPU_ONLINE)
            <do stuff, see below>
                                        cpumask_set_cpu(cpu,
                                                   to_cpumask(cpu_active_bits));

      During the various CPU_ONLINE callbacks CPUn is online but not
      active. Several things can go wrong at that point, depending on
      the scheduling of tasks on CPU0.

      Variant 1:

        cpu_notify(CPU_ONLINE)
          workqueue_cpu_up_callback()
            rebind_workers()
              set_cpus_allowed_ptr()

        This call fails because it requires an active CPU; rebind_workers()
        ends with a warning:

          WARNING: CPU: 0 PID: 1 at kernel/workqueue.c:4418
          workqueue_cpu_up_callback()

      Variant 2:

        cpu_notify(CPU_ONLINE)
          smpboot_thread_call()
            smpboot_unpark_threads()
             ..
              __kthread_unpark()
                __kthread_bind()
                wake_up_state()
                 ..
                  select_task_rq()
                    select_fallback_rq()

        The ->wake_cpu of the unparked thread is not allowed, making a call
        to select_fallback_rq() necessary. Then, select_fallback_rq() cannot
        find an allowed, active CPU and promptly resets the allowed CPUs, so
        that the task in question ends up on CPU0.

        When those unparked tasks are eventually executed, they run
        immediately into a BUG:

          kernel BUG at kernel/smpboot.c:135!

      Just changing the order in which the online/active bits are set
      (and adding some memory barriers), would solve the two issues
      above. However, it would change the order of operations back to
      the one before commit 6acbfb96976f ("sched: Fix hotplug vs.
      set_cpus_allowed_ptr()"), thus, reintroducing that particular
      problem.

      Going further back into history, we have at least the following
      commits touching this topic:
      - commit 2baab4e90495 ("sched: Fix select_fallback_rq() vs 
cpu_active/cpu_online")
      - commit 5fbd036b552f ("sched: Cleanup cpu_active madness")

      Together, these give us the following non-working solutions:

        - secondary CPU sets active before online, because active is assumed to
          be a subset of online;

        - secondary CPU sets online before active, because the primary CPU
          assumes that an online CPU is also active;

        - secondary CPU sets online and waits for primary CPU to set active,
          because it might deadlock.

      Commit 875ebe940d77 ("powerpc/smp: Wait until secondaries are
      active & online") introduces an arch-specific solution to this
      arch-independent problem.

      Now, go for a more general solution without explicit waiting and
      simply set active twice: once on the secondary CPU after online
      was set and once on the primary CPU after online was seen.

      set_cpus_allowed_ptr()")

      Signed-off-by: Jan H. Schönherr <jschoenh@xxxxxxxxx>
      Acked-by: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Cc: Anton Blanchard <anton@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Joerg Roedel <jroedel@xxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Matt Wilson <msw@xxxxxxxxxx>
      Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Fixes: 6acbfb96976f ("sched: Fix hotplug vs. set_cpus_allowed_ptr()")
      Link: 
http://lkml.kernel.org/r/1439408156-18840-1-git-send-email-jschoenh@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 4ad79562577a3936b08365260f86eeb83156479f
  Merge: c13dcf9 e203db2 6e6cfbc cf27ec9 54e466f 4df4eab 23d3a98 57fb907 7b0ce72
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Tue Aug 25 11:39:50 2015 +0200

      Merge branches 'arm/omap', 'arm/msm', 'arm/smmu', 'arm/tegra', 
'x86/vt-d', 'x86/amd', 'ppc/pamu' and 'core' into next

  commit 4df4eab168c1c4058603be55a3169d4a45779cc0
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Tue Aug 25 10:54:28 2015 +0200

      iommu/vt-d: Really use upper context table when necessary

      There is a bug in iommu_context_addr() which will always use
      the lower context table, even when the upper context table
      needs to be used. Fix this issue.

      Fixes: 03ecc32c5274 ("iommu/vt-d: support extended root and context 
entries")
      Reported-by: Xiao, Nan <nan.xiao@xxxxxx>
      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 5e9a3fcfa2ca10e3ff76938fe9a12515ffa41003
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Sun Aug 23 10:07:13 2015 +0800

      ASoC: tegra: Fix unused variable 'spdif' warning

      Fix below build warning:
        CC [M]  sound/soc/tegra/tegra20_spdif.o
      sound/soc/tegra/tegra20_spdif.c: In function 
'tegra20_spdif_platform_remove':
      sound/soc/tegra/tegra20_spdif.c:361:24: warning: unused variable 'spdif' 
[-Wunused-variable]

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Reviewed-by: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit e0aa3a665782e29cec752ae667c51ed4ee75d11f
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 17:39:32 2015 +0100

      ARM: entry: ensure that IRQs are enabled when calling syscall_trace_exit()

      The audit code looks like it's been written to cope with being called
      with IRQs enabled.  However, it's unclear whether IRQs should be
      enabled or disabled when calling the syscall tracing infrastructure.

      Right now, sometimes we call this with IRQs enabled, and other times
      with IRQs disabled.  Opt for IRQs being enabled for consistency.

      Acked-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 3302caddf10ad50710dbb7a94ccbdb3ad5bf1412
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 16:13:37 2015 +0100

      ARM: entry: efficiency cleanups

      Make the "fast" syscall return path fast again.  The addition of IRQ
      tracing and context tracking has made this path grossly inefficient.
      We can do much better if these options are enabled if we save the
      syscall return code on the stack - we then don't need to save a bunch
      of registers around every single callout to C code.

      Acked-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 01e09a28167c338684606b70797422da3bbb6650
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 14:22:48 2015 +0100

      ARM: entry: get rid of asm_trace_hardirqs_on_cond

      There's no need for this macro, it can use a default for the
      condition argument.

      Acked-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit b64d1f66517a89b9b0f6bd0bca86b05a55a5e742
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 23:06:25 2015 +0100

      ARM: uaccess: simplify user access assembly

      The user assembly for byte and word accesses was virtually identical.
      Rather than duplicating this, use a macro instead.

      Acked-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 552ef80389ec2567566be1ccc0dd79f08ba32cce
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Mon Aug 24 16:52:30 2015 +0800

      ASoC: SPEAr: Convert to use devm_ioremap_resource

      Use devm_ioremap_resource() instead of open code.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 5aec892a6ebe5a3e2a006d969b5fab59e6c79f63
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Mon Aug 24 16:49:05 2015 +0800

      ASoC: omap-mcbsp: Convert to use devm_ioremap_resource

      Use devm_ioremap_resource() instead of open code.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Acked-by: Peter Ujfalusi <peter.ujfalusi@xxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 508a43fdd73072c959f849b4e9eb60a9b523396f
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Mon Aug 24 16:47:36 2015 +0800

      ASoC: davinci: Convert to use devm_ioremap_resource

      Use devm_ioremap_resource() instead of open code.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Acked-by: Peter Ujfalusi <peter.ujfalusi@xxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit ca30475698696af3a03f6eaee16472ae09d42269
  Author: Xiao, Nan <nan.xiao@xxxxxx>
  Date:   Mon Aug 24 06:22:42 2015 +0000

      x86/vt-d: Fix documentation of DRHD

      According to "Intel Virtualization Technology for Directed
      I/O" specification, DRHD stands for "DMA Remapping Hardware
      Unit Definition" , not "DMA Engine Reporting Structure".

      Signed-off-by: Nan Xiao <nan.xiao@xxxxxx>
      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 39c33704420b147fb7e193a9f406cc8420a1d610
  Author: Luis R. Rodriguez <mcgrof@xxxxxxxx>
  Date:   Mon Aug 24 12:13:31 2015 -0700

      drivers/dma/iop-adma: Use dma_alloc_writecombine() kernel-style

      dma_alloc_writecombine()'s call and return value check is
      tangled in all in one call. Untangle both calls according to
      kernel coding style.

      Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxx>
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Acked-by: Vinod Koul <vinod.koul@xxxxxxxxx>
      Cc: Dan Williams <dan.j.williams@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: airlied@xxxxxxxx
      Cc: benh@xxxxxxxxxxxxxxxxxxx
      Cc: bhelgaas@xxxxxxxxxx
      Cc: daniel.vetter@xxxxxxxx
      Cc: dmaengine@xxxxxxxxxxxxxxx
      Cc: konrad.wilk@xxxxxxxxxx
      Cc: luto@xxxxxxxxxxxxxx
      Cc: mst@xxxxxxxxxx
      Cc: tomi.valkeinen@xxxxxx
      Cc: toshi.kani@xxxxxx
      Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1440443613-13696-10-git-send-email-mcgrof@xxxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 81bdef04d3bc76fc516ca613fa96061ff27bced9
  Author: Luis R. Rodriguez <mcgrof@xxxxxxxx>
  Date:   Mon Aug 24 12:13:30 2015 -0700

      drivers/video/fbdev/vt8623fb: Use arch_phys_wc_add() and pci_iomap_wc()

      This driver uses the same area for MTRR as for the ioremap().

      Convert the driver from using the x86-specific MTRR code to the
      architecture-agnostic arch_phys_wc_add(). It will avoid MTRRs if
      write-combining is available. In order to take advantage of that
      also ensure the ioremapped area is requested as write-combining.

      There are a few motivations for this:

      a) Take advantage of PAT when available.

      b) Help bury MTRR code away, MTRR is architecture-specific and on
         x86 it is being replaced by PAT.

      c) Help with the goal of eventually using _PAGE_CACHE_UC over
         _PAGE_CACHE_UC_MINUS on x86 on ioremap_nocache() (see commit
         de33c442e titled "x86 PAT: fix performance drop for glx,
         use UC minus for ioremap(), ioremap_nocache() and
         pci_mmap_page_range()").

      The conversion done is expressed by the following Coccinelle
      SmPL patch, it additionally required manual intervention to
      address all the ifdeffery and removal of redundant things which
      arch_phys_wc_add() already addresses such as verbose message
      about when MTRR fails and doing nothing when we didn't get an
      MTRR.

      @ mtrr_found @
      expression index, base, size;
      @@

      -index = mtrr_add(base, size, MTRR_TYPE_WRCOMB, 1);
      +index = arch_phys_wc_add(base, size);

      @ mtrr_rm depends on mtrr_found @
      expression mtrr_found.index, mtrr_found.base, mtrr_found.size;
      @@

      -mtrr_del(index, base, size);
      +arch_phys_wc_del(index);

      @ mtrr_rm_zero_arg depends on mtrr_found @
      expression mtrr_found.index;
      @@

      -mtrr_del(index, 0, 0);
      +arch_phys_wc_del(index);

      @ mtrr_rm_fb_info depends on mtrr_found @
      struct fb_info *info;
      expression mtrr_found.index;
      @@

      -mtrr_del(index, info->fix.smem_start, info->fix.smem_len);
      +arch_phys_wc_del(index);

      @ ioremap_replace_nocache depends on mtrr_found @
      struct fb_info *info;
      expression base, size;
      @@

      -info->screen_base = ioremap_nocache(base, size);
      +info->screen_base = ioremap_wc(base, size);

      @ ioremap_replace_default depends on mtrr_found @
      struct fb_info *info;
      expression base, size;
      @@

      -info->screen_base = ioremap(base, size);
      +info->screen_base = ioremap_wc(base, size);

      Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxx>
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Acked-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Antonino Daplas <adaplas@xxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: Dave Airlie <airlied@xxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Jean-Christophe Plagniol-Villard <plagnioj@xxxxxxxxxxxx>
      Cc: Jingoo Han <jg1.han@xxxxxxxxxxx>
      Cc: Juergen Gross <jgross@xxxxxxxx>
      Cc: Lad, Prabhakar <prabhakar.csengg@xxxxxxxxx>
      Cc: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Rob Clark <robdclark@xxxxxxxxx>
      Cc: Suresh Siddha <sbsiddha@xxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: airlied@xxxxxxxx
      Cc: benh@xxxxxxxxxxxxxxxxxxx
      Cc: bhelgaas@xxxxxxxxxx
      Cc: dan.j.williams@xxxxxxxxx
      Cc: konrad.wilk@xxxxxxxxxx
      Cc: linux-fbdev@xxxxxxxxxxxxxxx
      Cc: linux-pci@xxxxxxxxxxxxxxx
      Cc: mst@xxxxxxxxxx
      Cc: toshi.kani@xxxxxx
      Cc: vinod.koul@xxxxxxxxx
      Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1440443613-13696-9-git-send-email-mcgrof@xxxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 4edcd2ab125506516c7de038f6e0a6d19dcc411d
  Author: Luis R. Rodriguez <mcgrof@xxxxxxxx>
  Date:   Mon Aug 24 12:13:29 2015 -0700

      drivers/video/fbdev/s3fb: Use arch_phys_wc_add() and pci_iomap_wc()

      This driver uses the same area for MTRR as for the ioremap().

      Convert the driver from using the x86-specific MTRR code to the
      architecture-agnostic arch_phys_wc_add(). It will avoid MTRRs if
      write-combining is available. In order to take advantage of that
      also ensure the ioremapped area is requested as write-combining.

      There are a few motivations for this:

      a) Take advantage of PAT when available.

      b) Help bury MTRR code away, MTRR is architecture-specific and on
         x86 it is being replaced by PAT.

      c) Help with the goal of eventually using _PAGE_CACHE_UC over
         _PAGE_CACHE_UC_MINUS on x86 on ioremap_nocache() (see commit
         de33c442e titled "x86 PAT: fix performance drop for glx,
         use UC minus for ioremap(), ioremap_nocache() and
         pci_mmap_page_range()").

      The conversion done is expressed by the following Coccinelle
      SmPL patch, it additionally required manual intervention to
      address all the ifdeffery and removal of redundant things which
      arch_phys_wc_add() already addresses such as verbose message
      about when MTRR fails and doing nothing when we didn't get an
      MTRR.

      @ mtrr_found @
      expression index, base, size;
      @@

      -index = mtrr_add(base, size, MTRR_TYPE_WRCOMB, 1);
      +index = arch_phys_wc_add(base, size);

      @ mtrr_rm depends on mtrr_found @
      expression mtrr_found.index, mtrr_found.base, mtrr_found.size;
      @@

      -mtrr_del(index, base, size);
      +arch_phys_wc_del(index);

      @ mtrr_rm_zero_arg depends on mtrr_found @
      expression mtrr_found.index;
      @@

      -mtrr_del(index, 0, 0);
      +arch_phys_wc_del(index);

      @ mtrr_rm_fb_info depends on mtrr_found @
      struct fb_info *info;
      expression mtrr_found.index;
      @@

      -mtrr_del(index, info->fix.smem_start, info->fix.smem_len);
      +arch_phys_wc_del(index);

      @ ioremap_replace_nocache depends on mtrr_found @
      struct fb_info *info;
      expression base, size;
      @@

      -info->screen_base = ioremap_nocache(base, size);
      +info->screen_base = ioremap_wc(base, size);

      @ ioremap_replace_default depends on mtrr_found @
      struct fb_info *info;
      expression base, size;
      @@

      -info->screen_base = ioremap(base, size);
      +info->screen_base = ioremap_wc(base, size);

      Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxx>
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Acked-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Antonino Daplas <adaplas@xxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: Dave Airlie <airlied@xxxxxxxxxx>
      Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Jean-Christophe Plagniol-Villard <plagnioj@xxxxxxxxxxxx>
      Cc: Jingoo Han <jg1.han@xxxxxxxxxxx>
      Cc: Juergen Gross <jgross@xxxxxxxx>
      Cc: Lad, Prabhakar <prabhakar.csengg@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Rickard Strandqvist <rickard_strandqvist@xxxxxxxxxxxxxxxxxx>
      Cc: Suresh Siddha <sbsiddha@xxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: airlied@xxxxxxxx
      Cc: benh@xxxxxxxxxxxxxxxxxxx
      Cc: bhelgaas@xxxxxxxxxx
      Cc: dan.j.williams@xxxxxxxxx
      Cc: konrad.wilk@xxxxxxxxxx
      Cc: linux-fbdev@xxxxxxxxxxxxxxx
      Cc: linux-pci@xxxxxxxxxxxxxxx
      Cc: mst@xxxxxxxxxx
      Cc: toshi.kani@xxxxxx
      Cc: vinod.koul@xxxxxxxxx
      Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1440443613-13696-8-git-send-email-mcgrof@xxxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit c823a48ac47f8e0274fa7c8a3befae4bfa8412e3
  Author: Luis R. Rodriguez <mcgrof@xxxxxxxx>
  Date:   Mon Aug 24 12:13:28 2015 -0700

      drivers/video/fbdev/arkfb.c: Use arch_phys_wc_add() and pci_iomap_wc()

      Convert the driver from using the x86-specific MTRR code to the
      architecture-agnostic arch_phys_wc_add(). It will avoid MTRRs if
      write-combining is available. In order to take advantage of that
      also ensure the ioremapped area is requested as write-combining.

      There are a few motivations for this:

      a) Take advantage of PAT when available.

      b) Help bury MTRR code away, MTRR is architecture-specific and
      on    x86 it is being replaced by PAT.

      c) Help with the goal of eventually using _PAGE_CACHE_UC over
         _PAGE_CACHE_UC_MINUS on x86 on ioremap_nocache() (see commit
         de33c442e titled "x86 PAT: fix performance drop for glx,
         use UC minus for ioremap(), ioremap_nocache() and
         pci_mmap_page_range()").

      The conversion done is expressed by the following Coccinelle
      SmPL patch, it additionally required manual intervention to
      address all the ifdeffery and removal of redundant things which
      arch_phys_wc_add() already addresses such as verbose message
      about when MTRR fails and doing nothing when we didn't get an
      MTRR.

      @ mtrr_found @
      expression index, base, size;
      @@

      -index = mtrr_add(base, size, MTRR_TYPE_WRCOMB, 1);
      +index = arch_phys_wc_add(base, size);

      @ mtrr_rm depends on mtrr_found @
      expression mtrr_found.index, mtrr_found.base, mtrr_found.size;
      @@

      -mtrr_del(index, base, size);
      +arch_phys_wc_del(index);

      @ mtrr_rm_zero_arg depends on mtrr_found @
      expression mtrr_found.index;
      @@

      -mtrr_del(index, 0, 0);
      +arch_phys_wc_del(index);

      @ mtrr_rm_fb_info depends on mtrr_found @
      struct fb_info *info;
      expression mtrr_found.index;
      @@

      -mtrr_del(index, info->fix.smem_start, info->fix.smem_len);
      +arch_phys_wc_del(index);

      @ ioremap_replace_nocache depends on mtrr_found @
      struct fb_info *info;
      expression base, size;
      @@

      -info->screen_base = ioremap_nocache(base, size);
      +info->screen_base = ioremap_wc(base, size);

      @ ioremap_replace_default depends on mtrr_found @
      struct fb_info *info;
      expression base, size;
      @@

      -info->screen_base = ioremap(base, size);
      +info->screen_base = ioremap_wc(base, size);

      Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxx>
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Acked-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Antonino Daplas <adaplas@xxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: Dave Airlie <airlied@xxxxxxxxxx>
      Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Jean-Christophe Plagniol-Villard <plagnioj@xxxxxxxxxxxx>
      Cc: Juergen Gross <jgross@xxxxxxxx>
      Cc: Lad, Prabhakar <prabhakar.csengg@xxxxxxxxx>
      Cc: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Suresh Siddha <sbsiddha@xxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: airlied@xxxxxxxx
      Cc: benh@xxxxxxxxxxxxxxxxxxx
      Cc: bhelgaas@xxxxxxxxxx
      Cc: dan.j.williams@xxxxxxxxx
      Cc: konrad.wilk@xxxxxxxxxx
      Cc: linux-fbdev@xxxxxxxxxxxxxxx
      Cc: linux-pci@xxxxxxxxxxxxxxx
      Cc: mst@xxxxxxxxxx
      Cc: toshi.kani@xxxxxx
      Cc: vinod.koul@xxxxxxxxx
      Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1440443613-13696-7-git-send-email-mcgrof@xxxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 1b3d4200c1e00a3fb5e0aea428de5b07079a37e3
  Author: Luis R. Rodriguez <mcgrof@xxxxxxxx>
  Date:   Mon Aug 24 12:13:27 2015 -0700

      PCI: Add pci_iomap_wc() variants

      PCI BARs tell us whether prefetching is safe, but they don't say
      anything about write combining (WC). WC changes ordering rules
      and allows writes to be collapsed, so it's not safe in general
      to use it on a prefetchable region.

      Add pci_iomap_wc() and pci_iomap_wc_range() so drivers can take
      advantage of write combining when they know it's safe.

      On architectures that don't fully support WC, e.g., x86 without
      PAT, drivers for legacy framebuffers may get some of the benefit
      by using arch_phys_wc_add() in addition to pci_iomap_wc().  But
      arch_phys_wc_add() is unreliable and should be avoided in
      general.  On x86, it uses MTRRs, which are limited in number and
      size, so the results will vary based on driver loading order.

      The goals of adding pci_iomap_wc() are to:

      - Give drivers an architecture-independent way to use WC so they can stop
        using interfaces like mtrr_add() (on x86, pci_iomap_wc() uses
        PAT when available).

      - Move toward using _PAGE_CACHE_MODE_UC, not _PAGE_CACHE_MODE_UC_MINUS,
        on x86 on ioremap_nocache() (see de33c442ed2a ("x86 PAT: fix
        performance drop for glx, use UC minus for ioremap(), ioremap_nocache()
        and pci_mmap_page_range()").

      Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxx>
      [ Move IORESOURCE_IO check up, space out statements for better 
readability. ]
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Acked-by: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: <roger.pau@xxxxxxxxxx>
      Cc: <syrjala@xxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Antonino Daplas <adaplas@xxxxxxxxx>
      Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: Dave Airlie <airlied@xxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: Davidlohr Bueso <dbueso@xxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Jean-Christophe Plagniol-Villard <plagnioj@xxxxxxxxxxxx>
      Cc: Juergen Gross <jgross@xxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Michael S. Tsirkin <mst@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Roger Pau Monné <roger.pau@xxxxxxxxxx>
      Cc: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
      Cc: Stefan Bader <stefan.bader@xxxxxxxxxxxxx>
      Cc: Suresh Siddha <sbsiddha@xxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
      Cc: Toshi Kani <toshi.kani@xxxxxx>
      Cc: Ville Syrjälä <syrjala@xxxxxx>
      Cc: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: airlied@xxxxxxxx
      Cc: benh@xxxxxxxxxxxxxxxxxxx
      Cc: dan.j.williams@xxxxxxxxx
      Cc: david.vrabel@xxxxxxxxxx
      Cc: jbeulich@xxxxxxxx
      Cc: konrad.wilk@xxxxxxxxxx
      Cc: linux-arch@xxxxxxxxxxxxxxx
      Cc: linux-fbdev@xxxxxxxxxxxxxxx
      Cc: linux-pci@xxxxxxxxxxxxxxx
      Cc: venkatesh.pallipadi@xxxxxxxxx
      Cc: vinod.koul@xxxxxxxxx
      Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1440443613-13696-6-git-send-email-mcgrof@xxxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit f3adccbd75831f3651ca6e2cbb83f27cd68a27c9
  Author: Luis R. Rodriguez <mcgrof@xxxxxxxx>
  Date:   Mon Aug 24 12:13:26 2015 -0700

      drivers/video/fbdev/gxt4500: Use pci_ioremap_wc_bar() to map framebuffer

      The driver doesn't use mtrr_add() or arch_phys_wc_add() but
      since we know the framebuffer is isolated already on an
      ioremap() we can take advantage of write combining for
      performance where possible.

      In this case there are a few motivations for this:

      a) Take advantage of PAT when available.

      b) Help with the goal of eventually using _PAGE_CACHE_UC over
         _PAGE_CACHE_UC_MINUS on x86 on ioremap_nocache() (see commit
         de33c442e titled "x86 PAT: fix performance drop for glx,
         use UC minus for ioremap(), ioremap_nocache() and
         pci_mmap_page_range()").

      Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxx>
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Acked-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Antonino Daplas <adaplas@xxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: Dave Airlie <airlied@xxxxxxxxxx>
      Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Jean-Christophe Plagniol-Villard <plagnioj@xxxxxxxxxxxx>
      Cc: Juergen Gross <jgross@xxxxxxxx>
      Cc: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Rob Clark <robdclark@xxxxxxxxx>
      Cc: Suresh Siddha <sbsiddha@xxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: airlied@xxxxxxxx
      Cc: benh@xxxxxxxxxxxxxxxxxxx
      Cc: bhelgaas@xxxxxxxxxx
      Cc: dan.j.williams@xxxxxxxxx
      Cc: konrad.wilk@xxxxxxxxxx
      Cc: linux-fbdev@xxxxxxxxxxxxxxx
      Cc: linux-pci@xxxxxxxxxxxxxxx
      Cc: mst@xxxxxxxxxx
      Cc: toshi.kani@xxxxxx
      Cc: vinod.koul@xxxxxxxxx
      Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1440443613-13696-5-git-send-email-mcgrof@xxxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 9e517ac88b2443bebc0499c0b477b155d63648a7
  Author: Luis R. Rodriguez <mcgrof@xxxxxxxx>
  Date:   Mon Aug 24 12:13:25 2015 -0700

      drivers/video/fbdev/kyrofb: Use arch_phys_wc_add() and 
pci_ioremap_wc_bar()

      Convert the driver from using the x86-specific MTRR code to the
      architecture-agnostic arch_phys_wc_add(). It will avoid MTRR if
      write-combining is available, in order to take advantage of that
      also ensure the ioremapped area is requested as write-combining.

      There are a few motivations for this:

      a) Take advantage of PAT when available

      b) Help bury MTRR code away, MTRR is architecture-specific and on
         x86 it is being replaced by PAT.

      c) Help with the goal of eventually using _PAGE_CACHE_UC over
         _PAGE_CACHE_UC_MINUS on x86 on ioremap_nocache() (see commit
         de33c442e titled "x86 PAT: fix performance drop for glx,
         use UC minus for ioremap(), ioremap_nocache() and
         pci_mmap_page_range()")

      The conversion done is expressed by the following Coccinelle
      SmPL patch, it additionally required manual intervention to
      address all the ifdeffery and removal of redundant things which
      arch_phys_wc_add() already addresses such as verbose message
      about when MTRR fails and doing nothing when we didn't get an
      MTRR.

      @ mtrr_found @
      expression index, base, size;
      @@

      -index = mtrr_add(base, size, MTRR_TYPE_WRCOMB, 1);
      +index = arch_phys_wc_add(base, size);

      @ mtrr_rm depends on mtrr_found @
      expression mtrr_found.index, mtrr_found.base, mtrr_found.size;
      @@

      -mtrr_del(index, base, size);
      +arch_phys_wc_del(index);

      @ mtrr_rm_zero_arg depends on mtrr_found @
      expression mtrr_found.index;
      @@

      -mtrr_del(index, 0, 0);
      +arch_phys_wc_del(index);

      @ mtrr_rm_fb_info depends on mtrr_found @
      struct fb_info *info;
      expression mtrr_found.index;
      @@

      -mtrr_del(index, info->fix.smem_start, info->fix.smem_len);
      +arch_phys_wc_del(index);

      @ ioremap_replace_nocache depends on mtrr_found @
      struct fb_info *info;
      expression base, size;
      @@

      -info->screen_base = ioremap_nocache(base, size);
      +info->screen_base = ioremap_wc(base, size);

      @ ioremap_replace_default depends on mtrr_found @
      struct fb_info *info;
      expression base, size;
      @@

      -info->screen_base = ioremap(base, size);
      +info->screen_base = ioremap_wc(base, size);

      Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxx>
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Acked-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Antonino Daplas <adaplas@xxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: Dave Airlie <airlied@xxxxxxxxxx>
      Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Jean-Christophe Plagniol-Villard <plagnioj@xxxxxxxxxxxx>
      Cc: Jingoo Han <jg1.han@xxxxxxxxxxx>
      Cc: Juergen Gross <jgross@xxxxxxxx>
      Cc: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Suresh Siddha <sbsiddha@xxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: airlied@xxxxxxxx
      Cc: benh@xxxxxxxxxxxxxxxxxxx
      Cc: bhelgaas@xxxxxxxxxx
      Cc: dan.j.williams@xxxxxxxxx
      Cc: konrad.wilk@xxxxxxxxxx
      Cc: linux-fbdev@xxxxxxxxxxxxxxx
      Cc: linux-pci@xxxxxxxxxxxxxxx
      Cc: mst@xxxxxxxxxx
      Cc: toshi.kani@xxxxxx
      Cc: vinod.koul@xxxxxxxxx
      Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1440443613-13696-4-git-send-email-mcgrof@xxxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit c112709809b2ca1e8ff2841a1958503e548b81e4
  Author: Luis R. Rodriguez <mcgrof@xxxxxxxx>
  Date:   Mon Aug 24 12:13:24 2015 -0700

      drivers/video/fbdev/i740fb: Use arch_phys_wc_add() and 
pci_ioremap_wc_bar()

      Convert the driver from using the x86-specific MTRR code to the
      architecture-agnostic arch_phys_wc_add(). It will avoid MTRR if
      write-combining is available, in order to take advantage of that
      also ensure the ioremapped area is requested as write-combining.

      There are a few motivations for this:

      a) Take advantage of PAT when available

      b) Help bury MTRR code away, MTRR is architecture-specific and
      on    x86 it is being replaced by PAT.

      c) Help with the goal of eventually using _PAGE_CACHE_UC over
         _PAGE_CACHE_UC_MINUS on x86 on ioremap_nocache() (see commit
         de33c442e titled "x86 PAT: fix performance drop for glx,
         use UC minus for ioremap(), ioremap_nocache() and
         pci_mmap_page_range()")

      The conversion done is expressed by the following Coccinelle
      SmPL patch, it additionally required manual intervention to
      address all the ifdeffery and removal of redundant things which
      arch_phys_wc_add() already addresses such as verbose message
      about when MTRR fails and doing nothing when we didn't get an
      MTRR.

      @ mtrr_found @
      expression index, base, size;
      @@

      -index = mtrr_add(base, size, MTRR_TYPE_WRCOMB, 1);
      +index = arch_phys_wc_add(base, size);

      @ mtrr_rm depends on mtrr_found @
      expression mtrr_found.index, mtrr_found.base, mtrr_found.size;
      @@

      -mtrr_del(index, base, size);
      +arch_phys_wc_del(index);

      @ mtrr_rm_zero_arg depends on mtrr_found @
      expression mtrr_found.index;
      @@

      -mtrr_del(index, 0, 0);
      +arch_phys_wc_del(index);

      @ mtrr_rm_fb_info depends on mtrr_found @
      struct fb_info *info;
      expression mtrr_found.index;
      @@

      -mtrr_del(index, info->fix.smem_start, info->fix.smem_len);
      +arch_phys_wc_del(index);

      @ ioremap_replace_nocache depends on mtrr_found @
      struct fb_info *info;
      expression base, size;
      @@

      -info->screen_base = ioremap_nocache(base, size);
      +info->screen_base = ioremap_wc(base, size);

      @ ioremap_replace_default depends on mtrr_found @
      struct fb_info *info;
      expression base, size;
      @@

      -info->screen_base = ioremap(base, size);
      +info->screen_base = ioremap_wc(base, size);

      Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxx>
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Acked-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Antonino Daplas <adaplas@xxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Benoit Taine <benoit.taine@xxxxxxx>
      Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: Dave Airlie <airlied@xxxxxxxxxx>
      Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Jean-Christophe Plagniol-Villard <plagnioj@xxxxxxxxxxxx>
      Cc: Jingoo Han <jg1.han@xxxxxxxxxxx>
      Cc: Juergen Gross <jgross@xxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Rob Clark <robdclark@xxxxxxxxx>
      Cc: Suresh Siddha <sbsiddha@xxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: airlied@xxxxxxxx
      Cc: benh@xxxxxxxxxxxxxxxxxxx
      Cc: dan.j.williams@xxxxxxxxx
      Cc: konrad.wilk@xxxxxxxxxx
      Cc: linux-fbdev@xxxxxxxxxxxxxxx
      Cc: linux-pci@xxxxxxxxxxxxxxx
      Cc: mst@xxxxxxxxxx
      Cc: toshi.kani@xxxxxx
      Cc: vinod.koul@xxxxxxxxx
      Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1440443613-13696-3-git-send-email-mcgrof@xxxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit c43996f4001de629af4a4d6713782e883677e5b9
  Author: Luis R. Rodriguez <mcgrof@xxxxxxxx>
  Date:   Mon Aug 24 12:13:23 2015 -0700

      PCI: Add pci_ioremap_wc_bar()

      This lets drivers take advantage of PAT when available. It
      should help with the transition of converting video drivers over
      to ioremap_wc() to help with the goal of eventually using
      _PAGE_CACHE_UC over _PAGE_CACHE_UC_MINUS on x86 on
      ioremap_nocache(), see:

        de33c442ed2a ("x86 PAT: fix performance drop for glx, use UC minus for 
ioremap(), ioremap_nocache() and pci_mmap_page_range()")

      Signed-off-by: Luis R. Rodriguez <mcgrof@xxxxxxxx>
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Acked-by: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: <syrjala@xxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Antonino Daplas <adaplas@xxxxxxxxx>
      Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: Dave Airlie <airlied@xxxxxxxxxx>
      Cc: Davidlohr Bueso <dbueso@xxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Jean-Christophe Plagniol-Villard <plagnioj@xxxxxxxxxxxx>
      Cc: Juergen Gross <jgross@xxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Mel Gorman <mgorman@xxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Suresh Siddha <sbsiddha@xxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
      Cc: Toshi Kani <toshi.kani@xxxxxx>
      Cc: Ville Syrjälä <syrjala@xxxxxx>
      Cc: Vlastimil Babka <vbabka@xxxxxxx>
      Cc: airlied@xxxxxxxx
      Cc: benh@xxxxxxxxxxxxxxxxxxx
      Cc: dan.j.williams@xxxxxxxxx
      Cc: konrad.wilk@xxxxxxxxxx
      Cc: linux-fbdev@xxxxxxxxxxxxxxx
      Cc: linux-pci@xxxxxxxxxxxxxxx
      Cc: mst@xxxxxxxxxx
      Cc: vinod.koul@xxxxxxxxx
      Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1440443613-13696-2-git-send-email-mcgrof@xxxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 8d58b66ed2b000f27658c88a4ed70e8042e86a58
  Merge: 13fe86f4 c13dcf9
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Tue Aug 25 09:59:19 2015 +0200

      Merge tag 'v4.2-rc8' into x86/mm, before applying new changes

      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 13fe86f465b72fc9328d4f5ebc33223c011852ae
  Author: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
  Date:   Mon Aug 24 19:34:55 2015 -0400

      x86/mm: Make kernel/check.c explicitly non-modular

      The Kconfig currently controlling compilation of this code is:

        arch/x86/Kconfig:config X86_CHECK_BIOS_CORRUPTION
        arch/x86/Kconfig:       bool "Check for low memory corruption"

      ...meaning that it currently is not being built as a module by
      anyone.

      Lets remove the couple traces of modularity so that when reading
      the code there is no doubt it is builtin-only.

      Since module_init translates to device_initcall in the
      non-modular case, the init ordering remains unchanged with this
      commit.

      Signed-off-by: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440459295-21814-4-git-send-email-paul.gortmaker@xxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 8f45fe441a9836011672436ef007654969b28ccc
  Author: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
  Date:   Mon Aug 24 19:34:54 2015 -0400

      x86/mm/pat: Make mm/pageattr[-test].c explicitly non-modular

      The file pageattr.c is obj-y and it includes pageattr-test.c
      based on CPA_DEBUG (a bool), meaning that no code here is
      currently being built as a module by anyone.

      Lets remove the couple traces of modularity so that when reading
      the code there is no doubt it is builtin-only.

      Since module_init translates to device_initcall in the
      non-modular case, the init ordering remains unchanged with this
      commit.

      Signed-off-by: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440459295-21814-3-git-send-email-paul.gortmaker@xxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit e971aa2cbac02363a29e9358de3b688001191ffd
  Author: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
  Date:   Mon Aug 24 19:34:53 2015 -0400

      x86/platform: Make atom/pmc_atom.c explicitly non-modular

      The Kconfig currently controlling compilation of this code is:

      config PMC_ATOM
              def_bool y

      ...meaning that it currently is not being built as a module by
      anyone.

      Lets remove the couple traces of modularity so that when reading
      the driver there is no doubt it is builtin-only.

      Since module_init() translates to device_initcall() in the
      non-modular case, the init ordering remains unchanged with this
      commit.

      We leave some tags like MODULE_AUTHOR() for documentation
      purposes.

      Also note that MODULE_DEVICE_TABLE() is a no-op for non-modular
      code. We correct a comment that indicates the data was only used
      by that macro, as it actually is used by the code directly.

      Signed-off-by: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
      Cc: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440459295-21814-2-git-send-email-paul.gortmaker@xxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit f612a7b1a7f1b5139f228724ce340aac24720591
  Merge: 9b9412d 12d560f
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Tue Aug 25 09:44:49 2015 +0200

      Merge branch 'for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/rcu

      Pull RCU cleanup from Paul E. McKenney:

       "Privatize smp_mb__after_unlock_lock().  This commit moves the
        definition of smp_mb__after_unlock_lock() to kernel/rcu/tree.h,
        in recognition of the fact that RCU is the only thing using
        this, that nothing else is likely to use it, and that it is
        likely to go away completely."

      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 33fef662d20a8a98bafa6b2430b845def30f616a
  Author: Sasha Levin <sasha.levin@xxxxxxxxxx>
  Date:   Tue Aug 25 01:19:45 2015 -0400

      tools/liblockdep: Use the rbtree header provided by common tools headers

      Recent changes to rbtree.h may break compilation. There is no
      reason to use a liblockdep specific header to begin with, so
      we'll use the one shared with all other tools/.

      Signed-off-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440479985-6696-3-git-send-email-sasha.levin@xxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 62b989de598c486df65a14dfd9bb4a9953c75568
  Author: Sasha Levin <sasha.levin@xxxxxxxxxx>
  Date:   Tue Aug 25 01:19:44 2015 -0400

      tools/liblockdep: Correct macro for WARN

      As Peter Zijlstra pointed out, the varargs for WARN() are
      optional, so we need to correctly handle the case where they
      don't exist.

      This would cause a compilation error.

      Signed-off-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440479985-6696-2-git-send-email-sasha.levin@xxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 92e25fd9be82a37247e587415ff9a9e773008d56
  Author: Sasha Levin <sasha.levin@xxxxxxxxxx>
  Date:   Tue Aug 25 01:19:43 2015 -0400

      tools: Restore export.h

      Commit 3f735377b ("tools: Copy lib/rbtree.c to tools/lib/") has
      removed export.h, which was still in use by liblockdep. Restore
      it.

      Signed-off-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440479985-6696-1-git-send-email-sasha.levin@xxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 13d20b3b618adc43168b034792eec57063b5ec6f
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 25 08:31:12 2015 +0200

      backlight: tosa: Export I2C module alias information

      The I2C core always reports the MODALIAS uevent as "i2c:<modalias>"
      regardless of the mechanism that was used to register the device
      (i.e: OF or board code) and the table that is used later to match
      the driver with the device (i.e: I2C id table or OF match table).

      So drivers needs to export the I2C id table and this be built into
      the module or udev won't have the necessary information to autoload
      the needed driver module when the device is added.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>

  commit 85463d8ed1ffae0eb0bd070e400f33918a6696ef
  Author: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Jul 1 12:08:31 2015 +0200

      backlight: lp8788_bl: Delete a check before backlight_device_unregister()

      The backlight_device_unregister() function tests whether its argument
      is NULL and then returns immediately. Thus the test around the call is
      not needed.

      This issue was detected by using the Coccinelle software.

      Signed-off-by: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
      Acked-by: Jingoo Han <jingoohan1@xxxxxxxxx>
      Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>

  commit 047ffbb27115b57759767145803b752518399d90
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Mon Aug 17 15:59:17 2015 +0800

      backlight: sky81452: Remove unneeded use of IS_ERR_VALUE() macro

      IS_ERR_VALUE() makes sense only *if* there could be valid values in
      negative error range.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>

  commit 7ddbc2423c3301280b883bbb04b998203f30312c
  Author: Bjorn Andersson <bjorn.andersson@xxxxxxxxxxxxxx>
  Date:   Tue Jul 21 17:44:49 2015 -0700

      backlight: pm8941-wled: Move PM8941 WLED driver to backlight

      The Qualcomm PM8941 WLED block is used for backlight and should therefor
      be in the backlight framework and not in the LED framework. This moves
      the driver and adapts to the backlight api instead.

      Signed-off-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxxxxxx>
      Tested-by: Rob Clark <robdclark@xxxxxxxxx>
      Acked-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>
      Acked-by: Jingoo Han <jingoohan1@xxxxxxxxx>
      Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>

  commit fe009175ae3ec3724c1414440e22a1d32d806ec5
  Author: Milo Kim <milo.kim@xxxxxx>
  Date:   Mon Jul 20 15:45:38 2015 +0900

      backlight: lp855x: Use private data for regulator control

      LP855x backlight device can be enabled by external VDD input. The
      'supply' data is used for this purpose. It's kind of private data
      which runs internally, so there is no reason to expose to the
      platform data.

      And devm_regulator_get() is moved from _parse_dt() to _probe().
      Regulator consumer(lp855x) can control regulator not only from DT
      but also from platform data configuration in a source file such
      like board-*.c.

      Signed-off-by: Milo Kim <milo.kim@xxxxxx>
      Acked-by: Sean Paul <seanpaul@xxxxxxxxxxxx>
      Acked-by: Jingoo Han <jingoohan1@xxxxxxxxx>
      Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>

  commit db56176025cee5e242dfeed5f4e304d095d29fa3
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Tue Aug 25 17:23:36 2015 +1000

      Revert "drm/atomic: Call ww_acquire_done after check phase is complete"

      This reverts commit 992cbf19b32900efa17850b9fa0031fd623edd4d.

      Until we make fbdev layer atomic we can't call this.

      Requested-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx?
      Acked-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit f755d114cba98708932cba89d8c98c4ab89a83b0
  Author: kbuild test robot <fengguang.wu@xxxxxxxxx>
  Date:   Sun Aug 23 00:30:19 2015 +0800

      ASoC: cs4349: fix platform_no_drv_owner.cocci warnings

      sound/soc/codecs/cs4349.c:389:3-8: No need to set .owner here. The core 
will do it.

       Remove .owner field if calls are used which set it automatically

      Generated by: scripts/coccinelle/api/platform_no_drv_owner.cocci

      CC: Tim Howe <tim.howe@xxxxxxxxxx>
      Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 9dcc144b1f91c4fe33422518e401e9c624e2c64f
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Tue Aug 25 08:52:55 2015 +0200

      ALSA: hda - Refresh sysfs at snd_hda_codec_update_widgets()

      In the commit [fa4f18b4f402: ALSA: hda - Refresh widgets sysfs at
      probing Haswell+ HDMI codecs], snd_hdac_refresh_widget_sysfs() is
      explicitly called in the codec driver.  But this results in refreshing
      twice, as snd_hdac_refresh_widget_sysfs() itself calls
      snd_hdac_refresh_widgets() function.

      Instead, we can replace the call in snd_hda_codec_update_widgets()
      with snd_hdac_refresh_widget_sysfs().  This also fixes the missing
      sysfs update for ca0132, too.

      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit c4a91e173ac671e81ea6fc9d0951b7527e2ae13d
  Merge: 4308c9b c7cd0ef
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Tue Aug 25 08:01:41 2015 +0200

      Merge branch 'for-linus' into for-next

  commit 5f05586c609dfc737e2e00c757a51c7dbb415e51
  Author: Ashwin Chaugule <ashwin.chaugule@xxxxxxxxxx>
  Date:   Wed Aug 5 09:40:26 2015 -0400

      ACPI: Decouple ACPI idle and ACPI processor drivers

      This patch introduces a new Kconfig symbol, ACPI_PROCESSOR_IDLE,
      which is auto selected by architectures which support the ACPI
      based C states for CPU Idle management.

      The processor_idle driver in its present form contains declarations
      specific to X86 and IA64. Since there are no reasonable defaults
      for other architectures e.g. ARM64, the driver is selected only for
      X86 or IA64.

      This helps in decoupling the ACPI processor_driver from the ACPI
      processor_idle driver which is useful for the upcoming alternative
      patchwork for controlling CPU Performance (CPPC) and CPU Idle (LPI).

      Signed-off-by: Ashwin Chaugule <ashwin.chaugule@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 239708a3af44064366f1af0eea02dc1e8991c11b
  Author: Ashwin Chaugule <ashwin.chaugule@xxxxxxxxxx>
  Date:   Wed Aug 5 09:40:25 2015 -0400

      ACPI: Split out ACPI PSS from ACPI Processor driver

      The ACPI processor driver is currently tied too closely
      to the ACPI P-states (PSS) and other related constructs
      for controlling CPU performance.

      The newer ACPI specification (v5.1 onwards) introduces
      alternative methods to PSS. These new mechanisms are
      described within each ACPI Processor object and so they
      need to be scanned whenever a new Processor object is detected.
      This patch introduces a new Kconfig symbol to allow for
      finer configurability among the two options for controlling
      performance states. There is no change in functionality and
      the option is auto-selected by the architectures which support it.

      A future commit will introduce support for CPPC: A newer method of
      controlling CPU performance. The OS is not expected to support
      CPPC and PSS at the same time, so the Kconfig option lets us make
      the two mutually exclusive at compile time.

      Signed-off-by: Ashwin Chaugule <ashwin.chaugule@xxxxxxxxxx>
      [ rjw: Changelog ]
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit d3c68f218f927bd4b14b586ea2dcecee54cf09ad
  Author: Ashwin Chaugule <ashwin.chaugule@xxxxxxxxxx>
  Date:   Wed Aug 5 09:40:24 2015 -0400

      PCC: Initialize PCC Mailbox earlier at boot

      This change initializes the PCC Mailbox earlier than
      the ACPI processor driver. This enables drivers introduced
      in follow up patches (e.g. CPPC) to be probed via the ACPI
      processor driver interface. The CPPC probe requires the PCC
      channel to be initialized for it to query each CPUs performance
      capabilities.

      Signed-off-by: Ashwin Chaugule <ashwin.chaugule@xxxxxxxxxx>
      Reviewed-by: Al Stone <al.stone@xxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 3277b4ea216e5cd7d3f6095ff40f1a9e574f37b3
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 17:28:46 2015 +0300

      ACPI / osl: replace custom implementation of readq / writeq

      The readq() and writeq() helpers are available in the
      asm-generic/io-64-nonatomic-hi-lo.h and 
asm-generic/io-64-nonatomic-lo-hi.h
      headers. Replace custom implementation by the generic helpers.

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Reviewed-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 02b771b64b73226052d6e731a0987db3b47281e9
  Author: Lv Zheng <lv.zheng@xxxxxxxxx>
  Date:   Wed Aug 12 11:12:02 2015 +0800

      ACPI / EC: Fix an issue caused by the serialized _Qxx evaluations

      It is proven that Windows evaluates _Qxx handlers in a parallel way. This
      patch follows this fact, splits _Qxx evaluations from the NOTIFY queue to
      form a separate queue, so that _Qxx evaluations can be queued up on
      different CPUs rather than being queued up on a CPU0 bound queue.
      Event handling related callbacks are also renamed and sorted in this 
patch.

      Link: https://bugzilla.kernel.org/show_bug.cgi?id=94411
      Reported-and-tested-by: Gabriele Mazzotta <gabriele.mzt@xxxxxxxxx>
      Signed-off-by: Lv Zheng <lv.zheng@xxxxxxxxx>
      Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

  commit 70b33a7466baac62103e04c916b8915665b79d80
  Merge: aa49338 f79af0b
  Author: Dave Chinner <david@xxxxxxxxxxxxx>
  Date:   Tue Aug 25 10:13:35 2015 +1000

      Merge branch 'xfs-misc-fixes-for-4.3-3' into for-next

  commit f79af0b9090895520c69fbe1939184c4f8ed8426
  Author: Dave Chinner <dchinner@xxxxxxxxxx>
  Date:   Tue Aug 25 10:05:13 2015 +1000

      xfs: fix non-debug build warnings

      There seem to be a couple of new set-but-unused build warnings
      that gcc 4.9.3 is now warning about. These are not regressions, just
      the compiler being more picky.

      Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Reviewed-by: Brian Foster <bfoster@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 2ccf4a9b18868b0900072e6d5d15a04254a07345
  Author: Eric Sandeen <sandeen@xxxxxxxxxx>
  Date:   Tue Aug 25 10:05:13 2015 +1000

      xfs: collapse allocsize and biosize mount option handling

      The allocsize and biosize mount options are handled identically,
      other than allocsize accepting suffixes.  suffix_kstrtoint handles
      bare numbers just fine too, so these can be collapsed.

      Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 037542345a82aaaa228ec280fe6ddff1568d169f
  Author: Jan Kara <jack@xxxxxxxx>
  Date:   Tue Aug 25 10:05:13 2015 +1000

      xfs: Fix file type directory corruption for btree directories

      Users have occasionally reported that file type for some directory
      entries is wrong. This mostly happened after updating libraries some
      libraries. After some debugging the problem was traced down to
      xfs_dir2_node_replace(). The function uses args->filetype as a file type
      to store in the replaced directory entry however it also calls
      xfs_da3_node_lookup_int() which will store file type of the current
      directory entry in args->filetype. Thus we fail to change file type of a
      directory entry to a proper type.

      Fix the problem by storing new file type in a local variable before
      calling xfs_da3_node_lookup_int().

      cc: <stable@xxxxxxxxxxxxxxx> # 3.16 - 4.x
      Reported-by: Giacomo Comes <comes@xxxxxxxx>
      Signed-off-by: Jan Kara <jack@xxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit b6a9947efdbe0c9135d94b26b2f912f5b0b9dc45
  Author: Dave Chinner <dchinner@xxxxxxxxxx>
  Date:   Tue Aug 25 10:05:13 2015 +1000

      xfs: lockdep annotations throw warnings on non-debug builds

      SO, now if we enable lockdep without enabling CONFIG_XFS_DEBUG,
      the lockdep annotations throw a warning because the assert that uses
      the lockdep define is not built in:

      fs/xfs/xfs_inode.c:367:1: warning: 'xfs_lockdep_subclass_ok' defined but 
not used [-Wunused-function]
          xfs_lockdep_subclass_ok(

      So now we need to create an ifdef mess to sort this all out, because
      we need to handle all the combinations of CONFIG_XFS_DEBUG=[y|n],
      CONFIG_XFS_WARNING=[y|n] and CONFIG_LOCKDEP=[y|n] appropriately.

      Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Reviewed-by: Brian Foster <bfoster@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit c184f855c483428027d6ec937e4a9d5f15b2cbad
  Author: Jan Kara <jack@xxxxxxxx>
  Date:   Tue Aug 25 10:05:13 2015 +1000

      xfs: Fix uninitialized return value in xfs_alloc_fix_freelist()

      xfs_alloc_fix_freelist() can sometimes jump to out_agbp_relse
      without ever setting value of 'error' variable which is then
      returned. This can happen e.g. when pag->pagf_init is set but AG is
      for metadata and we want to allocate user data.

      Fix the problem by initializing 'error' to 0, which is the desired
      return value when we decide to skip this group.

      CC: xfs@xxxxxxxxxxx
      Coverity-id: 1309714
      Signed-off-by: Jan Kara <jack@xxxxxxxx>
      Reviewed-by: Brian Foster <bfoster@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit e3ee276a5a62a1cd06de46aa0c808000d3fef00e
  Author: Nicolas Pitre <nicolas.pitre@xxxxxxxxxx>
  Date:   Tue Jul 28 19:43:20 2015 -0400

      drivers/clk: appropriate __init annotation for const data

      Init data marked const should be annotated with __initconst for
      correctness and not __initdata.  This also fixes LTO builds that
      otherwise fail with section mismatch errors.

      Signed-off-by: Nicolas Pitre <nico@xxxxxxxxxx>
      Signed-off-by: Michael Turquette <mturquette@xxxxxxxxxxxx>
      [sboyd@xxxxxxxxxxxxxx: Dropped hunks that moved const char *
      arrays to const char * const]
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 10897370345b792c00ccba6aa7ea86ae6bfa2c7a
  Author: Heiko Stuebner <heiko@xxxxxxxxx>
  Date:   Wed Aug 19 15:06:55 2015 +0200

      clk: rockchip: register pll mux before pll itself

      The structure is xin24m -> pll -> pll-mux (xin24m,pll,xin32k). The pll
      does have an init callback to make sure the boot-selected frequency is
      using the expected pll settings and resets the same frequency using
      the values provided in the driver if necessary.

      The setting itself also involves remuxing the pll-mux temporarily to
      the xin24m source to let the new pll rate settle. Until now this worked
      flawlessly, even when it had the flaw of accessing the mux settings
      before the mux actually got registered.

      With the recent clock-core conversions this flaw became apparent in
      null pointer dereference in
      [<c03fc400>] (clk_hw_get_num_parents) from [<c0400df0>] 
(clk_mux_get_parent+0x14/0xc8)
      [<c0400ddc>] (clk_mux_get_parent) from [<c040246c>] 
(rockchip_rk3066_pll_set_rate+0xd8/0x320)

      So to fix that, simply register the pll-mux before the pll, so that
      it will be fully initialized when the pll clock executes its init-
      callback and possibly touches the pll-mux clock.

      Signed-off-by: Heiko Stuebner <heiko@xxxxxxxxx>
      Signed-off-by: Michael Turquette <mturquette@xxxxxxxxxxxx>

  commit 67c9a1b5dadf05e22d7e2d32604fb2b21bf3f666
  Author: Linus Walleij <linus.walleij@xxxxxxxxxx>
  Date:   Thu Jul 30 15:20:00 2015 +0200

      clk: add bindings for the Ux500 clocks

      These Ux500 clocks have been around for years and were never
      properly documented. Add the proper binding documentation.

      Cc: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Acked-by: Michael Turquette <mturquette@xxxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 5dc0fe199b358966021b015c71ca4049d0f42aa6
  Author: Linus Walleij <linus.walleij@xxxxxxxxxx>
  Date:   Thu Jul 30 15:19:25 2015 +0200

      clk/ARM: move Ux500 PRCC bases to the device tree

      The base addresses for the Ux500 PRCC controllers are hardcoded,
      let's move them to the clock node in the device tree and delete
      the constants.

      Cc: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Acked-by: Olof Johansson <olof@xxxxxxxxx>
      Acked-by: Michael Turquette <mturquette@xxxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit c660b2ebb25be5668a4ed333539f34b05841e17a
  Author: Dong Aisheng <aisheng.dong@xxxxxxxxxxxxx>
  Date:   Tue Jul 28 21:19:41 2015 +0800

      clk: remove duplicated code with __clk_set_parent_after

      __clk_set_parent_after() actually used the second argument then we
      could put this duplicate logic in there and call it with a different
      order of arguments in the success vs. error paths in this function.

      Cc: Mike Turquette <mturquette@xxxxxxxxxx>
      Suggested-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
      Signed-off-by: Dong Aisheng <aisheng.dong@xxxxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 836ee0f7d95c3feb742bd4b3a02fea3fe75bdef3
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Wed Aug 12 11:42:23 2015 -0700

      clk: Convert __clk_get_name(hw->clk) to clk_hw_get_name(hw)

      Use the provider based method to get a clock's name so that we
      can get rid of the clk member in struct clk_hw one day. Mostly
      converted with the following coccinelle script.

      @@
      struct clk_hw *E;
      @@

      -__clk_get_name(E->clk)
      +clk_hw_get_name(E)

      Acked-by: Heiko Stuebner <heiko@xxxxxxxxx>
      Cc: Sylwester Nawrocki <s.nawrocki@xxxxxxxxxxx>
      Cc: Tomasz Figa <tomasz.figa@xxxxxxxxx>
      Cc: Peter De Schrijver <pdeschrijver@xxxxxxxxxx>
      Cc: Prashant Gaikwad <pgaikwad@xxxxxxxxxx>
      Cc: Stephen Warren <swarren@xxxxxxxxxxxxx>
      Acked-by: Thierry Reding <treding@xxxxxxxxxx>
      Cc: Thierry Reding <thierry.reding@xxxxxxxxx>
      Cc: Alexandre Courbot <gnurou@xxxxxxxxx>
      Cc: Tero Kristo <t-kristo@xxxxxx>
      Cc: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
      Acked-by: Sebastian Hesselbarth <sebastian.hesselbarth@xxxxxxxxx>
      Acked-by: Andrew Bresticker <abrestic@xxxxxxxxxxxx>
      Cc: Ezequiel Garcia <ezequiel.garcia@xxxxxxxxxx>
      Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
      Cc: Kevin Cernekee <cernekee@xxxxxxxxxxxx>
      Acked-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Cc: Ulrich Hecht <ulrich.hecht+renesas@xxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: linux-rockchip@xxxxxxxxxxxxxxxxxxx
      Cc: linux-samsung-soc@xxxxxxxxxxxxxxx
      Cc: linux-tegra@xxxxxxxxxxxxxxx
      Cc: linux-omap@xxxxxxxxxxxxxxx
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit e7df6f6e21883d7e8b3ad4641c911da8314ef283
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:04:56 2015 -0700

      clk: Constify clk_hw argument to provider APIs

      We don't modify the clk_hw argument in these functions, so it's
      safe to mark it as const.

      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit c1628a2c416da947f5afac615d53189250fa49cb
  Author: Leo Yan <leo.yan@xxxxxxxxxx>
  Date:   Tue Aug 4 15:27:28 2015 +0800

      clk: Hi6220: add stub clock driver

      On Hi6220, there have some clocks which can use mailbox channel to send
      messages to power controller to change frequency; this includes CPU, GPU
      and DDR clocks.

      For dynamic frequency scaling, firstly need write the frequency value to
      SRAM region, and then send message to mailbox to trigger power controller
      to handle this requirement. This driver will use syscon APIs to pass SRAM
      memory region and use common mailbox APIs for channels accessing.

      This init driver will support cpu frequency change firstly.

      Signed-off-by: Leo Yan <leo.yan@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 832446e8aaaeaf9365da18f95f01a42e6da27279
  Author: Leo Yan <leo.yan@xxxxxxxxxx>
  Date:   Tue Aug 4 15:27:27 2015 +0800

      dt-bindings: clk: Hi6220: Document stub clock driver

      Document the new compatible for stub clock driver which is used for CPU
      and DDR's dynamic frequency scaling.

      Signed-off-by: Leo Yan <leo.yan@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 7e2a51e0cf75028888e5c670b3a3963e1716bdff
  Author: Leo Yan <leo.yan@xxxxxxxxxx>
  Date:   Tue Aug 4 15:27:26 2015 +0800

      dt-bindings: arm: Hi6220: add doc for SRAM controller

      Document "hisilicon,hi6220-sramctrl" for SRAM controller.

      Signed-off-by: Leo Yan <leo.yan@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit b32a7cc63bee7bffbd61f88b157b78a9b2101de0
  Author: Guo Zeng <guo.zeng@xxxxxxx>
  Date:   Tue Aug 4 14:45:32 2015 +0000

      clk: atlas7: fix pll missed divide NR in fraction mode

      PLL VCO frequency is given by Fvco = Fref * 2 * NF / NR
      in integer-N mode, or by Fvco = Fref * SSN / NR in Spread
      Spectrum (fractional-N) mode. Thus fix the missing part
      of NR

      Signed-off-by: Guo Zeng <guo.zeng@xxxxxxx>
      Signed-off-by: Barry Song <Baohua.Song@xxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit cf8709eabc07c4681eb0bfd63139142c9bef8b59
  Author: Guo Zeng <guo.zeng@xxxxxxx>
  Date:   Tue Aug 4 14:45:31 2015 +0000

      clk: atlas7: fix bit field and its root clk for coresight_tpiu

      bit4 thcpum_cpudiv4_clken         r/w
      thcpum_cpudiv4_clk clock enable (default: 1)
      Root clock CPU_CLK must be enabled for this clock to be enabled

      bit3 coresight_tpiu_clken         r/w
      coresight_tpiu_clk clock enable (default: 0)
      Root clock TPIU_CLK must be enabled for this clock to be enabled

      Signed-off-by: Guo Zeng <guo.zeng@xxxxxxx>
      Signed-off-by: Barry Song <Baohua.Song@xxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit d1ccbddd090b74b8027727cb543b9c23d7f0f23e
  Author: Yibo Cai <yibo.cai@xxxxxxx>
  Date:   Tue Aug 4 14:45:29 2015 +0000

      clk: atlas7: replace dto resolution magic number by macro

      Signed-off-by: Yibo Cai <yibo.cai@xxxxxxx>
      Signed-off-by: Barry Song <Baohua.Song@xxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 6132e89aef51df044246b5aef822144217794ae1
  Author: Yibo Cai <yibo.cai@xxxxxxx>
  Date:   Tue Aug 4 14:45:28 2015 +0000

      clk: atlas7: fix integer overflow in dto rate calculation

      I cannot believe that I spend quite a lot time in finding this bug.
      It seems a pitfall people tend to fall in.

      In "int64 = int32 * int32", conversion from 32-bits to 64-bits comes
      after the multiplication. So this statement may not work as expected.

      Signed-off-by: Yibo Cai <yibo.cai@xxxxxxx>
      Signed-off-by: Barry Song <Baohua.Song@xxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit b1062298fea59dca23cdbcafaa5bed79c273d88f
  Author: Guo Zeng <guo.zeng@xxxxxxx>
  Date:   Tue Aug 4 14:45:27 2015 +0000

      clk: atlas7: export mux clks so that consumers can get them

      this patch makes mux clks can be referenced by device drivers.

      Signed-off-by: Guo Zeng <guo.zeng@xxxxxxx>
      Signed-off-by: Barry Song <Barry.Song@xxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 3922107c796164560b797ae8dece697b5b5e4c24
  Author: Guo Zeng <Guo.Zeng@xxxxxxx>
  Date:   Tue Aug 4 14:45:26 2015 +0000

      clk: atlas7: add lost pwm unit clks

      Signed-off-by: Guo Zeng <Guo.Zeng@xxxxxxx>
      Signed-off-by: Barry Song <Baohua.Song@xxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 34d5003bfba44a73fe9fbcf75e1d41d130d59bd1
  Author: Dinh Nguyen <dinguyen@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Jul 24 22:30:18 2015 -0500

      clk: socfpga: Add a second parent option for the dbg_base_clk

      The debug base clock can be bypassed from the main PLL to the OSC1 clock.
      The bypass register is the staysoc1(0x10) register that is in the clock
      manager.

      This patch adds the option to get the correct parent for the debug base
      clock.

      Signed-off-by: Dinh Nguyen <dinguyen@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 0f350f063eb62212a701a512f74e63ae4714441c
  Author: Linus Walleij <linus.walleij@xxxxxxxxxx>
  Date:   Thu Jul 30 15:19:12 2015 +0200

      clk: ux500: delete the non-DT U8500 clock implementation

      This code is unused and not coming back. Let's kill it off.

      Cc: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit fc4a05d4b0eb1a0110ef11201bf563cd4b53fbce
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jun 25 17:24:15 2015 -0700

      clk: Remove unused provider APIs

      Remove these APIs now that we've converted all users to the
      replacement struct clk_hw based versions.

      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 44f22a5d671ad8b3bcef7a72059fe1c00139e199
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Fri Aug 7 16:32:34 2015 -0700

      clk: si5351: Convert __clk_get_name() to clk_hw_get_name()

      This driver uses __clk_get_name() when it's dealing with struct
      clk_hw pointers. Use the simpler form so that we can get rid of
      the clk member in struct clk_hw one day.

      Acked-by: Sebastian Hesselbarth <sebastian.hesselbarth@xxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 203e118bd58c48905a82b4161db5441e5c5041f2
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      drm/msm/dsi: Convert to clk_hw based provider APIs

      We're removing struct clk from the clk provider API, so switch
      this code to using the clk_hw based provider APIs.

      Cc: Wentao Xu <wentaox@xxxxxxxxxxxxxx>
      Cc: Rob Clark <robdclark@xxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 62f477119834d912a8471e775d2aeaca0166ab29
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      clk: versatile: Switch to assigned clock parents

      We're removing struct clk from the clk provider API. This code is
      calling the consumer APIs to change the parent to a 1 MHz fixed
      rate clock for each of the clocks that the driver provides. Move
      to using the assigned-clock-parents DT property for this instead.
      Because this is an ABI break, detect if the property is missing
      and fall back to setting the parent explicitly before the clocks
      are registered.

      Acked-by: Pawel Moll <pawel.moll@xxxxxxx>
      Cc: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Tested-by: Sudeep Holla <sudeep.holla@xxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 32ecaf89bdfd842c9669b3f38ff82907e3cd60d0
  Author: Pawel Moll <pawel.moll@xxxxxxx>
  Date:   Thu Aug 6 16:05:13 2015 +0100

      clk: versatile: Add SP810 device tree bindings document

      Signed-off-by: Pawel Moll <pawel.moll@xxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit a53ad8ef3dccb0c5482c60a3f6b8c0cbd498efe5
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      clk: ti: Convert to clk_hw based provider APIs

      We're removing struct clk from the clk provider API, so switch
      this code to using the clk_hw based provider APIs.

      Acked-by: Tero Kristo <t-kristo@xxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 5cdb1dc50be615aa26f8952e4b6f67b483849e97
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      clk: tegra: Convert to clk_hw based provider APIs

      We're removing struct clk from the clk provider API, so switch
      this code to using the clk_hw based provider APIs.

      Cc: Tomeu Vizoso <tomeu.vizoso@xxxxxxxxxxxxx>
      Cc: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 1b14afa64d2ef36f228e9540664586fd7ad67a81
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      clk: sunxi: Convert to clk_hw based provider APIs

      We're removing struct clk from the clk provider API, so switch
      this code to using the clk_hw based provider APIs.

      Cc: Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx>
      Cc: "Emilio López" <emilio@xxxxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit b73d616d5bd0bb94b3fe1374edad05253fe3684f
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      clk: spear: Convert to clk_hw based provider APIs

      We're removing struct clk from the clk provider API, so switch
      this code to using the clk_hw based provider APIs.

      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit b17dbff418f62e87fdb3d683d532c139c4f1bf31
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      clk: sirf: Convert to clk_hw based provider APIs

      We're removing struct clk from the clk provider API, so switch
      this code to using the clk_hw based provider APIs.

      Cc: Barry Song <Baohua.Song@xxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 0454159fa91b91c0baa63ded5ce425a8519a9613
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      clk: samsung: Convert to clk_hw based provider APIs

      We're removing struct clk from the clk provider API, so switch
      this code to using the clk_hw based provider APIs.

      Cc: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>
      Acked-by: Sylwester Nawrocki <s.nawrocki@xxxxxxxxxxx>
      Cc: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Cc: Kukjin Kim <kgene.kim@xxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 4c34875059fa025be671108de1b0993cc14c9256
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      clk: rockchip: Convert to clk_hw based provider APIs

      We're removing struct clk from the clk provider API, so switch
      this code to using the clk_hw based provider APIs.

      Reviewed-by: Heiko Stuebner <heiko@xxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit ac269395cdd80b9b088d9b5306015bd4b8bc176d
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      clk: qcom: Convert to clk_hw based provider APIs

      We're removing struct clk from the clk provider API, so switch
      this code to using the clk_hw based provider APIs.

      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 17ae4b40b475e2de5a0b0b475539624b7162a931
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      clk: stm32f4: Convert to clk_hw based provider APIs

      We're removing struct clk from the clk provider API, so switch
      this code to using the clk_hw based provider APIs.

      Cc: Daniel Thompson <daniel.thompson@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit eca61c9ff2588e1df373e61078e1874976315839
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      clk: mvebu: Convert to clk_hw based provider APIs

      We're removing struct clk from the clk provider API, so switch
      this code to using the clk_hw based provider APIs. This also
      removes a clk_get() in this driver that can just as easily use
      of_clk_get_parent_name() instead.

      Cc: Gregory CLEMENT <gregory.clement@xxxxxxxxxxxxxxxxxx>
      Cc: Thomas Petazzoni <thomas.petazzoni@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit aef28cb6b3b22fb5a6718650340d2efcfe10dd20
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      clk: mmp: Convert to clk_hw based provider APIs

      We're removing struct clk from the clk provider API, so switch
      this code to using the clk_hw based provider APIs.

      Cc: Chao Xie <chao.xie@xxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 2f508a955a671e095d5c8a629de1c8c32bc420c2
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      clk: Convert basic types to clk_hw based provider APIs

      We're removing struct clk from the clk provider API, so switch
      this code to using the clk_hw based provider APIs.

      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 6f220c22438ab846c824a042746a54058cf22af7
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      clk: bcm: Convert to clk_hw based provider APIs

      We're removing struct clk from the clk provider API, so switch
      this code to using the clk_hw based provider APIs.

      Reviewed-by: Alex Elder <elder@xxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit d0979335c329bad3b924b9d74fd0b86d57815c8f
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      clk: at91: Convert to clk_hw based provider APIs

      We're removing struct clk from the clk provider API, so switch
      this code to using the clk_hw based provider APIs.

      Acked-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 617b8272a63c9f60bd4b1e33d56318402b0b84be
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      MIPS: alchemy: Convert to clk_hw based provider APIs

      We're removing struct clk from the clk provider API, so switch
      this code to using the clk_hw based provider APIs.

      Cc: Manuel Lauss <manuel.lauss@xxxxxxxxx>
      Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
      Cc: Linux-MIPS <linux-mips@xxxxxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 7819189779aab580145edcc94771cb8dd10485a3
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jul 30 17:20:57 2015 -0700

      ARM: OMAP: Convert __clk_get_rate() to provider/consumer APIs

      We're removing struct clk from the clk provider API, so switch to
      clk_get_rate() and clk_hw_get_rate() here appropriately.

      Acked-by: Tero Kristo <t-kristo@xxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit b137b4507c55f2aa80aed03c56c28dd34d35c619
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Mon Jul 20 17:23:54 2015 -0700

      clk: ti: Remove CLK_IS_BASIC check

      This code is never called with a basic clock type, so the check
      here is not doing anything useful and is blocking the removal of
      __clk_get_flags(). Remove the check so we can delete the
      __clk_get_flags() API.

      Acked-by: Tero Kristo <t-kristo@xxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 98d8a60eccee74165793379f1f8a3b1cef3131c7
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Mon Jun 29 16:56:30 2015 -0700

      clk: Convert __clk_get_flags() to clk_hw_get_flags()

      Mostly converted with the following snippet:

      @@
      struct clk_hw *E;
      @@

      -__clk_get_flags(E->clk)
      +clk_hw_get_flags(E)

      Acked-by: Tero Kristo <t-kristo@xxxxxx>
      Cc: Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx>
      Cc: Max Filippov <jcmvbkbc@xxxxxxxxx>
      Acked-by: Sebastian Hesselbarth <sebastian.hesselbarth@xxxxxxxxx>
      Cc: Daniel Thompson <daniel.thompson@xxxxxxxxxx>
      Cc: Coquelin <mcoquelin.stm32@xxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 497295afb5ab070211a9963c80a89bc6fbfd6197
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jun 25 16:53:23 2015 -0700

      clk: Replace __clk_get_num_parents with clk_hw_get_num_parents()

      Mostly converted with the following semantic patch:

      @@
      struct clk_hw *E;
      @@

      -__clk_get_num_parents(E->clk)
      +clk_hw_get_num_parents(E)

      Acked-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
      Cc: Chao Xie <chao.xie@xxxxxxxxxxx>
      Cc: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Cc: Javier Martinez Canillas <javier.martinez@xxxxxxxxxxxxxxx>
      Cc: Tomasz Figa <tomasz.figa@xxxxxxxxx>
      Cc: Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx>
      Cc: "Emilio López" <emilio@xxxxxxxxxxxxx>
      Acked-by: Tero Kristo <t-kristo@xxxxxx>
      Cc: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Acked-by: Sylwester Nawrocki <s.nawrocki@xxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 1a9c069cb2d28bb72fefee509e0d26f92d7f7166
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Thu Jun 25 15:55:14 2015 -0700

      clk: Add clk_hw_*() APIs for use by clk providers

      clk providers shouldn't need to use the consumer APIs (clk.h).
      Add provider APIs to replace the __clk_*() APIs that take a
      struct clk_hw as their first argument instead of a struct clk.

      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>

  commit 13ec7297e5331f2754d7629a068c619c41f20e56
  Author: Chao Yu <chao2.yu@xxxxxxxxxxx>
  Date:   Mon Aug 24 17:40:45 2015 +0800

      f2fs: fix to release inode correctly

      In following call stack, if unfortunately we lose all chances to truncate
      inode page in remove_inode_page, eventually we will add the nid allocated
      previously into free nid cache, this nid is with NID_NEW status and with
      NEW_ADDR in its blkaddr pointer:

       - f2fs_create
        - f2fs_add_link
         - __f2fs_add_link
          - init_inode_metadata
           - new_inode_page
            - new_node_page
             - set_node_addr(, NEW_ADDR)
           - f2fs_init_acl   failed
           - remove_inode_page  failed
        - handle_failed_inode
         - remove_inode_page  failed
         - iput
          - f2fs_evict_inode
           - remove_inode_page  failed
           - alloc_nid_failed   cache a nid with valid blkaddr: NEW_ADDR

      This may not only cause resource leak of previous inode, but also may 
cause
      incorrect use of the previous blkaddr which is located in NO.nid node 
entry
      when this nid is reused by others.

      This patch tries to add this inode to orphan list if we fail to truncate
      inode, so that we can obtain a second chance to release it in orphan
      recovery flow.

      Signed-off-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 854d2a63de86a769db4dbed75b660f544b3c0c7a
  Author: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
  Date:   Fri Jul 17 22:25:59 2015 +0800

      batman-adv: beautify supported routing algorithm list

      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 87b40f534d2a266eec55a897e9a93f3b022c901d
  Author: Sven Eckelmann <sven@xxxxxxxxxxxxx>
  Date:   Fri Jul 17 10:03:42 2015 +0200

      batman-adv: Fix conditional statements indentation

      commit 29b9256e6631 ("batman-adv: consider outgoing interface in OGM
      sending") incorrectly indented the interface check code.

      Signed-off-by: Sven Eckelmann <sven@xxxxxxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 5274cd68d744b4bc59b32d87cbde70803130eb3f
  Author: Sven Eckelmann <sven@xxxxxxxxxxxxx>
  Date:   Sun Jun 21 14:45:15 2015 +0200

      batman-adv: Add lockdep_asserts for documented external locks

      Some functions already have documentation about locks they require inside
      their kerneldoc header. These can be directly tested during runtime using
      the lockdep asserts.

      Signed-off-by: Sven Eckelmann <sven@xxxxxxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 2c72d655b04450056566bcbfe89c2427376b60b4
  Author: Sven Eckelmann <sven@xxxxxxxxxxxxx>
  Date:   Sun Jun 21 14:45:14 2015 +0200

      batman-adv: Annotate deleting functions with external lock via lockdep

      Functions which use (h)list_del* are requiring correct locking when they
      operate on global lists. Most of the time the search in the list and the
      delete are done in the same function. All other cases should have it
      visible that they require a special lock to avoid race conditions.

      Lockdep asserts can be used to check these problem during runtime when the
      lockdep functionality is enabled.

      Signed-off-by: Sven Eckelmann <sven@xxxxxxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 7c26a53ba5e7e4bf2be3cb93f2fffaefccff2e3b
  Author: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
  Date:   Sun Jun 28 22:16:06 2015 +0800

      batman-adv: convert bat_priv->tt.req_list to hlist

      Since the list's tail is never accessed using a double linked list head
      wastes memory.

      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 0b8336f5fc26f263821534d7a9a3633748692207
  Author: Sven Eckelmann <sven@xxxxxxxxxxxxx>
  Date:   Sun Jun 21 19:40:09 2015 +0200

      batman-adv: Fix gw_bandwidth calculation on 32 bit systems

      The TVLV for the gw_bandwidth stores everything as u32. But the
      gw_bandwidth reads the signed long which limits the maximum value to
      (2 ** 31 - 1) on systems with 4 byte long. Also the input value is always
      converted from either Mibit/s or Kibit/s to 100Kibit/s. This reduces the
      values even further when the user sets it via the default unit Kibit/s. It
      may even cause an integer overflow and end up with a value the user never
      intended.

      Instead read the values as u64, check for possible overflows, do the unit
      adjustments and then reduce the size to u32.

      Signed-off-by: Sven Eckelmann <sven@xxxxxxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 77927b7d9dd6c9c5f59f0f49c76cda54b908090e
  Author: Sven Eckelmann <sven@xxxxxxxxxxxxx>
  Date:   Sun Jun 21 14:42:49 2015 +0200

      batman-adv: Return EINVAL on invalid gw_bandwidth change

      Invalid speed settings by the user are currently acknowledged as correct
      but not stored. Instead the return of the store operation of the file
      "gw_bandwidth" should indicate that the given value is not acceptable.

      Signed-off-by: Sven Eckelmann <sven@xxxxxxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit a121048a89f8186fa2c8388d5b41528466013857
  Author: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
  Date:   Mon Jun 22 00:30:23 2015 +0800

      batman-adv: prevent potential hlist double deletion

      The hlist_del_rcu() call in batadv_tt_global_size_mod() does not check
      if the element still is part of the list prior to deletion. The atomic
      list counter should prevent the worst but converting to
      hlist_del_init_rcu() ensures the element can't be deleted more than
      once.

      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit d0fa4f3f5b0419a016ff27eea2fa615e4c0d1713
  Author: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
  Date:   Mon Jun 22 00:30:22 2015 +0800

      batman-adv: convert orig_node->vlan_list to hlist

      Since the list's tail is never accessed using a double linked list head
      wastes memory.

      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 2bdd1888f147576fb870a926a4d015305b5bbeee
  Author: Sven Eckelmann <sven@xxxxxxxxxxxxx>
  Date:   Thu Jun 18 18:53:19 2015 +0200

      batman-adv: Remove batadv_ types forward declarations

      main.h is included in every file and is the only way to access types.h.
      This makes forward declarations for all types defined in types.h
      unnecessary.

      Signed-off-by: Sven Eckelmann <sven@xxxxxxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 383b863620aa5127200bff591f7465d593290997
  Author: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
  Date:   Thu Jun 18 16:24:24 2015 +0800

      batman-adv: rename batadv_new_tt_req_node to batadv_tt_req_node_new

      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 433ff98f3f1d6baa56e23f6b50370a5ab16c0e66
  Author: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
  Date:   Thu Jun 18 16:11:07 2015 +0800

      batman-adv: update kernel doc of batadv_tt_global_del_orig_entry()

      The updated kernel doc & additional comment shall prevent accidental
      copy & paste errors or calling the function without the required
      precautions.

      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 4f248cff9e21720bd5f057661f752fba067f3779
  Author: Sven Eckelmann <sven@xxxxxxxxxxxxx>
  Date:   Tue Jun 9 20:50:49 2015 +0200

      batman-adv: Remove multiple assignment per line

      The Linux CodingStyle disallows multiple assignments in a single line.
      (see chapter 1)

      Reported-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Sven Eckelmann <sven@xxxxxxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 34473822da06510d708087bb76d9ad757ac09567
  Author: Sven Eckelmann <sven@xxxxxxxxxxxxx>
  Date:   Sun May 31 10:10:20 2015 +0200

      batman-adv: Fix kerneldoc over 80 column lines

      Kerneldoc required single line documentation in the past (before 2009).
      Therefore, the 80 columns limit per line check of checkpatch was disabled
      for kerneldoc. But kerneldoc is not excluded anymore from it and 
checkpatch
      now enabled the check again.

      Signed-off-by: Sven Eckelmann <sven@xxxxxxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 6b5e971a282c0e7b18b47823103d695352b5a3c2
  Author: Sven Eckelmann <sven@xxxxxxxxxxxxx>
  Date:   Tue May 26 18:34:26 2015 +0200

      batman-adv: Replace C99 int types with kernel type

      (s|u)(8|16|32|64) are the preferred types in the kernel. The use of the
      standard C99 types u?int(8|16|32|64)_t are objected by some people and 
even
      checkpatch now warns about using them.

      Signed-off-by: Sven Eckelmann <sven@xxxxxxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 82bb70c599d81e6b2535f887b02e1719cc4856ac
  Merge: 2e5e8fd bd6906e
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Mon Aug 24 23:10:02 2015 +0200

      Merge branch 'turbostat' of 
https://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux into pm-tools

      Pull turbostat changes for v4.3 from Len Brown.

      * 'turbostat' of 
https://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux:
        tools/power turbostat: fix typo on DRAM column in Joules-mode
        tools/power turbostat: fix parameter passing for forked command
        tools/power turbostat: dump CONFIG_TDP
        tools/power turbostat: cpu0 is no longer hard-coded, so  update output
        tools/power turbostat: update turbostat(8)

  commit c75b89ebff52f758e2559664b2ae3ceed410da30
  Merge: c13dcf9 493f133
  Author: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
  Date:   Mon Aug 24 23:09:17 2015 +0200

      Merge branch 'cpuidle' of 
https://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux into pm-cpuidle

      Pull intel_idle changes for v4.3 from Len Brown.

      * 'cpuidle' of https://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux:
        intel_idle: Skylake Client Support
        intel_idle: allow idle states to be freeze-mode specific

  commit 56fff0a01fa056502a28d67cb5a2714d64780415
  Merge: 4a89ba0 786eec2
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Aug 24 14:06:37 2015 -0700

      Merge branch 'fjes'

      Taku Izumi says:

      ====================
      FUJITSU Extended Socket network device driver

      This patchsets adds FUJITSU Extended Socket network device driver.
      Extended Socket network device is a shared memory based high-speed
      network interface between Extended Partitions of PRIMEQUEST 2000 E2
      series.

      You can get some information about Extended Partition and Extended
      Socket by referring the following manual.

      http://globalsp.ts.fujitsu.com/dmsp/Publications/public/CA92344-0537.pdf
          3.2.1 Extended Partitioning
          3.2.2 Extended Socke

      v2.2 -> v3:
         - Fix up according to David's comment (No functional change)
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 786eec27cbb1713caf3b33538a877a21e779d3bc
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:38 2015 +0900

      fjes: ethtool support

      This patch adds implementation for ethtool support.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit cb79eaaec4c1046e4b3d55c27aee48774c5ff936
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:37 2015 +0900

      fjes: handle receive cancellation request interrupt

      This patch adds implementation of handling IRQ
      of other receiver's receive cancellation request.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b5a9152d993a4f08d6e08ac0dde3a09993dc9c45
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:36 2015 +0900

      fjes: epstop_task

      This patch adds epstop_task.
      This task is used to process other receiver's
      cancellation request.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 785f28e061a870eba937cb2a860cbcf631f5ebb0
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:35 2015 +0900

      fjes: update_zone_task

      This patch adds update_zone_task.
      Zoning information can be changed by user.
      This task is used to monitor if zoning information is
      changed or not.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8fc4cadb98c6a0f1eecde678271fcc957258af3e
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:34 2015 +0900

      fjes: unshare_watch_task

      This patch adds unshare_watch_task.
      Shared buffer's status can be changed into unshared.
      This task is used to monitor shared buffer's status.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ff5b42103227c01c4082f27b06a43758efbf5ab8
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:33 2015 +0900

      fjes: force_close_task

      This patch adds force_close_task.
      This task is used to close network device forcibly.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8edb62a8131ca5b5ecbb29e45d812d9583585afb
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:32 2015 +0900

      fjes: interrupt_watch_task

      This patch adds interrupt_watch_task.
      This task is used to prevent delay of interrupts.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3e3fedda31798cff2cb5358e15263b8799c1e72c
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:31 2015 +0900

      fjes: net_device_ops.ndo_vlan_rx_add/kill_vid

      This patch adds net_device_ops.ndo_vlan_rx_add_vid and
      net_device_ops.ndo_vlan_rx_kill_vid callback.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4393e767aee706944dbdf3aa91810a0c981b6710
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:30 2015 +0900

      fjes: net_device_ops.ndo_tx_timeout

      This patch adds net_device_ops.ndo_tx_timeout callback.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b9e23a67d52f956d75e6327a7fccbb53fbdc540b
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:29 2015 +0900

      fjes: net_device_ops.ndo_change_mtu

      This patch adds net_device_ops.ndo_change_mtu.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 879bc9a3ea3b9015833b53f6ec114bb602a663a8
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:28 2015 +0900

      fjes: net_device_ops.ndo_get_stats64

      This patch adds net_device_ops.ndo_get_stats64 callback.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 265859309a761b4eec36620b324c9eb27a3cfee1
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:27 2015 +0900

      fjes: NAPI polling function

      This patch adds NAPI polling function and receive related work.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ac63b947085d8297bed10063cdf1ed6374d04b73
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:26 2015 +0900

      fjes: tx_stall_task

      This patch adds tx_stall_task.
      When receiver's buffer is full, sender stops
      its tx queue. This task is used to monitor
      receiver's status and when receiver's buffer
      is avairable, it resumes tx queue.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b772b9dc63df0ca8a750ceac9ab356376022f0b6
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:25 2015 +0900

      fjes: raise_intr_rxdata_task

      This patch add raise_intr_rxdata_task.
      Extended Socket Network Device is shared memory
      based, so someone's transmission denotes other's
      reception. In order to notify receivers, sender
      has to raise interruption of receivers.
      raise_intr_rxdata_task does this work.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9acf51cbf73de8952e3df75200d7a7755c16d0f6
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:24 2015 +0900

      fjes: net_device_ops.ndo_start_xmit

      This patch adds net_device_ops.ndo_start_xmit callback,
      which is called when sending packets.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e5d486dcaa45dd365970c09395ae24df5a0e3f77
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:23 2015 +0900

      fjes: net_device_ops.ndo_open and .ndo_stop

      This patch adds net_device_ops.ndo_open and .ndo_stop
      callback. These function is called when network device
      activation and deactivation.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7950e6c5da55715debef9fa06b5ac87fb3eb4355
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:22 2015 +0900

      fjes: buffer address regist/unregistration routine

      This patch adds buffer address regist/unregistration routine.

      This function is mainly invoked when network device's
      activation (open) and deactivation (close)
      in order to retist/unregist shared buffer address.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3bb025d4f756049d297f2bed605241d4d43a15fe
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:21 2015 +0900

      fjes: ES information acquisition routine

      This patch adds ES information acquisition routine.
      ES information can be retrieved issuing information
      request command. ES information includes which
      receiver is same zone.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2fcbca687702163ae3a37ec4eac5905d6f119296
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:20 2015 +0900

      fjes: platform_driver's .probe and .remove routine

      This patch implements platform_driver's .probe and .remove
      routine, and also adds board specific private data structure.

      This driver registers net_device at platform_driver's .probe
      routine and unregisters net_device at its .remove routine.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a18aaec21ec8f4d2a4e09ad590437777a1ebf691
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:19 2015 +0900

      fjes: Hardware cleanup routine

      This patch adds hardware cleanup routine to be
      invoked at driver's .remove routine.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8cdc3f6c5d22dd059fe8127be7b5cae113e79afb
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:18 2015 +0900

      fjes: Hardware initialization routine

      This patch adds hardware initialization routine to be
      invoked at driver's .probe routine.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 658d439b22924796d00f03282135a356f47cc64e
  Author: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:29:17 2015 +0900

      fjes: Introduce FUJITSU Extended Socket Network Device driver

      This patch adds the basic code of FUJITSU Extended Socket
      Network Device driver.

      When "PNP0C02" is found in ACPI DSDT, it evaluates "_STR"
      to check if "PNP0C02" is for Extended Socket device driver
      and retrieves ACPI resource information. Then creates
      platform_device.

      Signed-off-by: Taku Izumi <izumi.taku@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9d1bf02ac3d41367896b38793db6f8f30bb9a295
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:34:00 2015 +0300

      perf tools: Update Intel PT documentation

      Update Intel PT documentation to describe new features.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-26-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 7eacca3ebb03a4ee7bb41284aafeb19a54242621
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:59 2015 +0300

      perf tools: Add Intel PT support for decoding TRACESTOP packets

      A TRACESTOP packet is produced when an Intel PT trace enters a defined
      region of the address space at which point the tracing stops.

      This patch just adds decoder support.

      Support for specifying TRACESTOP regions is left until later.

      For details refer to the June 2015 or later Intel 64 and IA-32
      Architectures SDM Chapter 36 Intel Processor Trace.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-25-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 0de802abd14abdf8cbbba28b421a1a00fa0939d5
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:58 2015 +0300

      perf tools: Add Intel PT support for using CYC packets

      CYC packets are a new Intel PT feature.

      CYC packets provide even finer grain timestamp information than MTC and
      TSC packets.  A CYC packet contains the number of CPU cycles since the
      last CYC packet. Unlike MTC and TSC packets, CYC packets are only sent
      when another packet is also sent.

      Support for this feature is indicated by:

      /sys/bus/event_source/devices/intel_pt/caps/psb_cyc

      which contains "1" if the feature is supported and "0" otherwise.

      CYC packets can be requested using a PMU config term e.g. perf record -e
      intel_pt/cyc/u sleep 1

      The frequency of CYC packets can also be specified.  e.g. perf record -e
      intel_pt/cyc,cyc_thresh=2/u sleep 1

      CYC packets are not requested by default.

      Valid cyc_thresh values are given by:

      /sys/bus/event_source/devices/intel_pt/caps/cycle_thresholds

      which contains a hexadecimal value, the bits of which represent valid
      values e.g. bit 2 set means value 2 is valid.

      The value represents the minimum number of CPU cycles that must have
      passed before a CYC packet can be sent.  The number of CPU cycles is:

          2 ^ (value - 1)

      e.g. value 4 means 8 CPU cycles must pass before a CYC packet can be
      sent.  Note a CYC packet is still only sent when another packet is sent,
      not at, e.g. every 8 CPU cycles.

      If an invalid value is entered, the error message will give a list of
      valid values e.g.

          $ perf record -e intel_pt/cyc,cyc_thresh=15/u uname
          Invalid cyc_thresh for intel_pt. Valid values are: 0-12

      tools/perf/Documentation/intel-pt.txt is updated in a later patch as
      there are a number of new features being added.

      For more information refer to the June 2015 or later Intel 64 and IA-32
      Architectures SDM Chapter 36 Intel Processor Trace.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-24-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit cc33618619cefc6d730cca3bb8e15311016a4da7
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:57 2015 +0300

      perf tools: Add Intel PT support for decoding CYC packets

      CYC packets provide even finer grain timestamp information than MTC and
      TSC packets.  A CYC packet contains the number of CPU cycles since the
      last CYC packet.

      This patch just adds decoder support.  The CPU frequency can be related
      to TSC using the Maximum Non-Turbo Ratio in combination with the CBR
      (core-to-bus ratio) packet.  However more accuracy is achieved by simply
      interpolating the number of cycles between other timing packets like MTC
      or TSC.  This patch takes the latter approach.

      Support for a default value and validation of values is provided by a
      later patch. Also documentation is updated in a separate patch.

      For details refer to the June 2015 or later Intel 64 and IA-32
      Architectures SDM Chapter 36 Intel Processor Trace.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-23-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit b45fc0bfaf4a0b60ce2deda222f8ef2a23b89a5f
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:56 2015 +0300

      perf tools: Add Intel PT support for using MTC packets

      MTC packets are a new Intel PT feature.

      MTC packets provide finer grain timestamp information than TSC packets.

      Support for this feature is indicated by:

        /sys/bus/event_source/devices/intel_pt/caps/mtc

      which contains "1" if the feature is supported and "0" otherwise.

      MTC packets can be requested using a PMU config term e.g. perf record -e
      intel_pt/mtc/u sleep 1

      The frequency of MTC packets can also be specified.  e.g. perf record -e
      intel_pt/mtc,mtc_period=2/u sleep 1

      The default value is 3 or the nearest lower value that is supported.  0
      is always supported.

      Valid values are given by:

      /sys/bus/event_source/devices/intel_pt/caps/mtc_periods

      which contains a hexadecimal value, the bits of which represent valid
      values e.g. bit 2 set means value 2 is valid.

      The value is converted to the MTC frequency as:

        CTC-frequency / (2 ^ value)

      e.g. value 3 means one eighth of CTC-frequency

      Where CTC is the hardware crystal clock, the frequency of which can be
      related to TSC via values provided in cpuid leaf 0x15.

      If an invalid value is entered, the error message will give a list of
      valid values e.g.

        $ perf record -e intel_pt/mtc_period=15/u uname
        Invalid mtc_period for intel_pt. Valid values are: 0,3,6,9

      tools/perf/Documentation/intel-pt.txt is updated in a later patch as
      there are a number of new features being added.

      For more information refer to the June 2015 or later Intel 64 and IA-32
      Architectures SDM Chapter 36 Intel Processor Trace.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-22-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 79b58424b821c651a4b4df9018a14684e3670f42
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:55 2015 +0300

      perf tools: Add Intel PT support for decoding MTC packets

      MTC packets provide finer grain timestamp information than TSC packets.
      MTC packets record time using the hardware crystal clock (CTC) which is
      related to TSC packets using a TMA packet.

      This patch just adds decoder support.

      Support for a default value and validation of values is provided by a
      later patch. Also documentation is updated in a separate patch.

      For details refer to the June 2015 or later Intel 64 and IA-32
      Architectures SDM Chapter 36 Intel Processor Trace.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-21-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 11fa7cb86b56d3610043ba2ac6cbd81feab4b7c4
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:54 2015 +0300

      perf tools: Pass Intel PT information for decoding MTC and CYC

      Record additional information in the AUXTRACE_INFO event in preparation
      for decoding MTC and CYC packets.  Pass the information to the decoder.

      The AUXTRACE_INFO record can be extended by using the size to indicate
      the presence of new members.

      The additional information includes PMU config bit positions and the TSC
      to CTC (hardware crystal clock) ratio needed to decode MTC packets.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-20-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 3d49807870f08d6f3406b77efd94bb3788372162
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:53 2015 +0300

      perf tools: Add new Intel PT packet definitions

      New features have been added to Intel PT which include a number of new
      packet definitions.

      This patch adds packet definitions for new packets: TMA, MTC, CYC, VMCS,
      TRACESTOP and MNT.  Also another bit in PIP is defined.

      This patch only adds support for the definitions. Later patches add
      support for decoding TMA, MTC, CYC and TRACESTOP which is where those
      packets are explained.

      VMCS and the newly defined bit in PIP are used with virtualization which
      is not supported yet.  MNT is a maintenance packet which the decoder
      should ignore.

      For details, refer to the June 2015 or later Intel 64 and IA-32
      Architectures SDM Chapter 36 Intel Processor Trace.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-19-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit bc9b6bf07c8b3f4e85509f9b3a552c86e567b4ae
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:52 2015 +0300

      perf tools: Add Intel PT support for PSB periods

      The PSB packet is a synchronization packet that provides a starting
      point for decoding or recovery from errors.

      This patch adds support for a new Intel PT feature that allows the
      frequency of PSB packets to be specified.

      Support for this feature is indicated by
      /sys/bus/event_source/devices/intel_pt/caps/psb_cyc which contains "1"
      if the feature is supported and "0" otherwise.

      The PSB period can be specified as a PMU config term e.g. perf record -e
      intel_pt/psb_period=2/u sleep 1

      The default value is 3 or the nearest lower value that is supported.  0
      is always supported.

      Valid values are given by:

      /sys/bus/event_source/devices/intel_pt/caps/psb_periods

      which contains a hexadecimal value, the bits of which represent valid
      values e.g. bit 2 set means value 2 is valid.

      The value is converted to the approximate number of trace bytes between
      PSB packets as:

        2 ^ (value + 11)

      e.g. value 3 means 16KiB bytes between PSBs

      If an invalid value is entered, the error message will give a list of
      valid values e.g.

        $ perf record -e intel_pt/psb_period=15/u uname
        Invalid psb_period for intel_pt. Valid values are: 0-5

      tools/perf/Documentation/intel-pt.txt is updated in a later patch as
      there are a number of new features being added.

      For more information about PSB periods refer to the Intel 64 and IA-32
      Architectures SDM Chapter 36 Intel Processor Trace from June 2015 or
      later.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-18-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 2a21d03686881331b0af0471588674e7e896eeb2
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:48 2015 +0300

      perf tools: Fix Intel PT 'instructions' sample period

      The period on synthesized 'instructions' samples was being set to a
      fixed value, whereas the correct value is the number of instructions
      since the last sample, which is a value that the decoder can provide.
      So do it that way.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-14-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit f8bcbe62acd0e1ce9004b83e98a4af87ae385dcf
  Author: Robert Jarzmik <robert.jarzmik@xxxxxxx>
  Date:   Sat Aug 8 10:44:10 2015 +0200

      lib: scatterlist: add sg splitting function

      Sometimes a scatter-gather has to be split into several chunks, or sub
      scatter lists. This happens for example if a scatter list will be
      handled by multiple DMA channels, each one filling a part of it.

      A concrete example comes with the media V4L2 API, where the scatter list
      is allocated from userspace to hold an image, regardless of the
      knowledge of how many DMAs will fill it :
       - in a simple RGB565 case, one DMA will pump data from the camera ISP
         to memory
       - in the trickier YUV422 case, 3 DMAs will pump data from the camera
         ISP pipes, one for pipe Y, one for pipe U and one for pipe V

      For these cases, it is necessary to split the original scatter list into
      multiple scatter lists, which is the purpose of this patch.

      The guarantees that are required for this patch are :
       - the intersection of spans of any couple of resulting scatter lists is
         empty.
       - the union of spans of all resulting scatter lists is a subrange of
         the span of the original scatter list.
       - streaming DMA API operations (mapping, unmapping) should not happen
         both on both the resulting and the original scatter list. It's either
         the first or the later ones.
       - the caller is reponsible to call kfree() on the resulting
         scatterlists.

      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 91f15fb30c77d4a0d0d9b97e5cec647650853145
  Author: Zhang Rui <rui.zhang@xxxxxxxxx>
  Date:   Mon Aug 24 15:27:11 2015 -0500

      PCI: Disable async suspend/resume for JMicron multi-function SATA/AHCI

      On multi-function JMicron SATA/PATA/AHCI devices, the PATA controller at
      function 1 doesn't work if it is powered on before the SATA controller at
      function 0.  The result is that PATA doesn't work after resume, and we
      print messages like this:

        pata_jmicron 0000:02:00.1: Refused to change power state, currently in 
D3
        irq 17: nobody cared (try booting with the "irqpoll" option)

      Async resume was introduced in v3.15 by 76569faa62c4 ("PM / sleep:
      Asynchronous threads for resume_noirq").  Prior to that, we powered on
      the functions in order, so this problem shouldn't happen.

      e6b7e41cdd8c ("ata: Disabling the async PM for JMicron chip 363/361")
      solved the problem for JMicron 361 and 363 devices.  With async suspend
      disabled, we always power on function 0 before function 1.

      Barto then reported the same problem with a JMicron 368 (see comment #57 
in
      the bugzilla).

      Rather than extending the blacklist piecemeal, disable async suspend for
      all JMicron multi-function SATA/PATA/AHCI devices.

      This quirk could stay in the ahci and pata_jmicron drivers, but it's 
likely
      the problem will occur even if pata_jmicron isn't loaded until after the
      suspend/resume.  Making it a PCI quirk ensures that we'll preserve the
      power-on order even if the drivers aren't loaded.

      [bhelgaas: changelog, limit to multi-function, limit to IDE/ATA]
      Link: https://bugzilla.kernel.org/show_bug.cgi?id=81551
      Reported-and-tested-by: Barto <mister.freeman@xxxxxxxxxxx>
      Signed-off-by: Zhang Rui <rui.zhang@xxxxxxxxx>
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      CC: stable@xxxxxxxxxxxxxxx        # v3.15+

  commit 5c9ce1e644c1919ac4bff4394a4c372f47a89b4e
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Mon Aug 24 17:16:22 2015 -0300

      perf ordered_events: Clear the progress bar at the end of a flush

      We were depending on the next screen operation after a flush() being
      one that would redraw the whole screen so that the progress bar would
      be overwritten, when that didn't happen a screen artifact of, say, a
      error dialog window would be overlaid on top of the progress bar, fix
      it by calling ui_browser__finish(), that now has a TUI implementation.

      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Link: http://lkml.kernel.org/n/tip-el0fyw6duemnx62lydjzhs8c@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit e324c4dc4a5991d5b1171f434884a4026345e4b4
  Author: Shenwei Wang <shenwei.wang@xxxxxxxxxxxxx>
  Date:   Mon Aug 24 14:04:15 2015 -0500

      irqchip/imx-gpcv2: IMX GPCv2 driver for wakeup sources

      IMX7D contains a new version of GPC IP block (GPCv2). It has two major
      functions: power management and wakeup source management.

      When the system is in WFI (wait for interrupt) mode, the GPC block
      will be the first block on the platform to be activated and signaled.

      In normal wait mode during cpu idle, the system can be woken up by any
      enabled interrupts. In standby or suspend mode, the system can only be
      wokem up by the pre-defined wakeup sources.

      Based-on-patch-by: Anson Huang <b20788@xxxxxxxxxxxxx>
      Signed-off-by: Shenwei Wang <shenwei.wang@xxxxxxxxxxxxx>
      Cc: <linux-arm-kernel@xxxxxxxxxxxxxxxxxxx>
      Cc: <shawn.guo@xxxxxxxxxx>
      Cc: <jason@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440443055-7291-1-git-send-email-shenwei.wang@xxxxxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 4a89ba04ecc6377696e4e26c1abc1cb5764decb9
  Author: Loganaden Velvindron <logan@xxxxxxxxxxxx>
  Date:   Thu Aug 20 19:22:18 2015 -0700

      3c59x: Add BQL support for 3c59x ethernet driver.

      This BQL patch is based on work done by Tino Reichardt.

      Tested on 0000:05:00.0: 3Com PCI 3c905C Tornado at ffffc90000e6e000 by 
running
      Flent several times.

      Signed-off-by: Loganaden Velvindron <logan@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1e259ad4a25e37eb298bb5772b9a51e70bed7782
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Mon Aug 24 16:18:26 2015 -0300

      perf ui tui progress: Implement the ui_progress_ops->finish() method

      So that we can erase the progress bar after we're done with it, avoiding
      things like:

      -------------------------------------------------------------------

                
â??â??Error:â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??
                â??Can't annotate unmapped_area_topdown:                        
â??
                â??                                                             
â??
                â??No vmlinux file with build id 
a826726b5ddacfab1f0bade868f1a79â??
                â??was found in the path.                                       
â??
                â??                                                             
â??
                â??Note that annotation using /proc/kcore requires 
CAP_SYS_RAWIOâ??
      â??Processinâ??                                                           
  â??â??â??â??
      â??         â??Please use:                                                
  â??  â??
      â??â??â??â??â??â??â??â??â??â??â??                                         
                    â??â??â??â??
                â??  perf buildid-cache -vu vmlinux                             
â??
                â??                                                             
â??
                â??or:                                                          
â??
                â??                                                             
â??
                â??  --vmlinux vmlinux                                          
â??
                â??                                                             
â??
                â??                                                             
â??
                â??Press any key...                                             
â??
                
â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??â??

      Can't annotate unmapped_area_topdown:
      -------------------------------------------------------------------

      I.e. that finished progress bar behind the error window. It is not a
      problem when we end up redrawing the whole screen, but its ugly when
      we present such error windows, provide a TUI method so that code like
      the above may avoid this situation, as will be done with the annotation
      code in the next cset.

      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Link: http://lkml.kernel.org/n/tip-qvktnojzwwe37pweging058t@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 2fc32c92593dd7900c0635398800214733b8b397
  Merge: f0d9ac7 d3f4caa 8d1ceb5 68ebb7c
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Mon Aug 24 14:15:05 2015 -0500

      Merge branches 'pci/host-dra7xx', 'pci/host-imx6' and 'pci/host-spear' 
into next

      * pci/host-dra7xx:
        PCI: dra7xx: Remove unneeded use of IS_ERR_VALUE()

      * pci/host-imx6:
        PCI: imx6: Simplify a trivial if-return sequence

      * pci/host-spear:
        PCI: spear: Use BUG_ON() instead of condition followed by BUG()

  commit 534fcb3bdaab801636d2146079462f7fdf52be0a
  Author: Michele Curti <michele.curti@xxxxxxxxx>
  Date:   Mon Aug 24 10:49:29 2015 -0700

      Input: elan_i2c - enable ELAN0100 acpi panels

      Enable ELAN0100 touchpad driver, found on a Asus X205TA laptop, to
      gai 2,3 fingers tap and 2 fingers scroll.

      Signed-off-by: Michele Curti <michele.curti@xxxxxxxxx>
      Reviewed-by: Duson Lin <dusonlin@xxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 4ea14a53d8f881034fa9e186653821c4e3d9a8fb
  Author: Peng Fan <van.freenix@xxxxxxxxx>
  Date:   Mon Aug 24 10:42:25 2015 -0700

      Input: gpio-keys - report error when disabling unsupported key

      When trying to disable a key that is not supported by the device we should
      report error, not do nothing and report success:

      root@yocto:/sys/devices/soc0/gpio-keys# cat keys
      114-116
      root@yocto:/sys/devices/soc0/gpio-keys# echo 77 > keys
      root@yocto:/sys/devices/soc0/gpio-keys#

      We want 'echo 77 > keys' to report an error, but silence to give us an
      illusion that all is 'ok'.

      Signed-off-by: Peng Fan <van.freenix@xxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit ff89de6ba1d41ad4dea2c59531c5b4038ae43e8c
  Author: Julia Lawall <Julia.Lawall@xxxxxxx>
  Date:   Mon Aug 24 10:51:04 2015 -0700

      Input: sur40 - fix error return code

      Propagate error code on failure, or upper layers will be confused by
      returned 0 (success) code.

      Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 0fe0965e63c80dbc4bb005253ecff3494cbefc04
  Author: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
  Date:   Fri Aug 21 15:19:06 2015 +0600

      Documentation/x86: Rename IRQSTACKSIZE to IRQ_STACK_SIZE

      The IRQSTACKSIZE was renamed to the IRQ_STACK_SIZE in the
      (26f80bd6a9 x86-64: Convert irqstacks to per-cpu) commit,
      but it still named IRQSTACKSIZE in the documentation. This
      patch fixes this.

      Signed-off-by: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
      Signed-off-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 61a88a76b43ce35254415821047aeefde3f656a9
  Author: Nan Xiao <xiaonan830818@xxxxxxxxx>
  Date:   Thu Aug 20 18:17:10 2015 +0800

      Documentation/Intel-IOMMU.txt: Modify definition of DRHD

      Hi all,

      According to "Intel Virtualization Technology for Directed I/O" 
specification,
      DRHD stands for "DMA Remapping Hardware Unit Definition" , not "DMA
      Engine Reporting Structure".

      Signed-off-by: Nan Xiao <nan@xxxxxxxxxxxxxxx>

  commit b17f29646dfabe147a7a4d54cc628e8046be3761
  Merge: 54cf7be 92b78af
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Aug 24 10:34:40 2015 -0700

      Merge branch 'ila-precompute'

      Tom Herbert says:

      ====================
      ila: Precompute checksums

      This patch set:
       - Adds argument ot LWT build_state that holds a pointer to the fib
         configuration being applied to the new route
       - Adds support in ILA to precompute checksum difference for
         performance optimization

      v2:
       - Move return argument in build_state to end of arguments

      v3:
       - Update the signature for ip6_tun_build_state()
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 92b78aff855a4815afe5311e3473ec829d3f2a9e
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 24 09:45:42 2015 -0700

      ila: Precompute checksum difference for translations

      In the ILA build state for LWT compute the checksum difference to apply
      to transport checksums that include the IPv6 pseudo header. The
      difference is between the route destination (from fib6_config) and the
      locator to write.

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 127eb7cd3c210afead788991a30950a9e36759ea
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 24 09:45:41 2015 -0700

      lwt: Add cfg argument to build_state

      Add cfg and family arguments to lwt build state functions. cfg is a void
      pointer and will either be a pointer to a fib_config or fib6_config
      structure. The family parameter indicates which one (either AF_INET
      or AF_INET6).

      LWT encpasulation implementation may use the fib configuration to build
      the LWT state.

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e4144fe5d47c91c92d36cdbd5f31ed8d6e3a57ab
  Author: Mario Carrillo <mario.alfredo.c.arevalo@xxxxxxxxx>
  Date:   Mon Aug 24 09:33:09 2015 -0500

      docs: update HOWTO for 3.x -> 4.x versioning

      The HOWTO document needed updating for the new kernel versioning.

      Signed-off-by: Mario Carrillo <mario.alfredo.c.arevalo@xxxxxxxxx>
      Signed-off-by: Jonathan Corbet <corbet@xxxxxxx>

  commit b01548919c33767bc457390fa3c41aedc273bfff
  Author: Chao Yu <chao2.yu@xxxxxxxxxxx>
  Date:   Mon Aug 24 17:39:42 2015 +0800

      f2fs: handle f2fs_truncate error correctly

      This patch fixes to return error number of f2fs_truncate, so that we
      can handle the error correctly in callers.

      Signed-off-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 4ec17d688d74b6b7cb10043c57ff4818cde2b0ca
  Author: Chao Yu <chao2.yu@xxxxxxxxxxx>
  Date:   Mon Aug 24 17:36:25 2015 +0800

      f2fs: avoid unneeded initializing when converting inline dentry

      When converting inline dentry, we will zero out target dentry page before
      duplicating data of inline dentry into target page, it become overhead
      since inline dentry size is not small.

      So this patch tries to remove unneeded initializing in the space of target
      dentry page.

      Signed-off-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 6a6788576dac56135bf98ad974a038b0afb1a499
  Author: Zhang Zhen <zhenzhang.zhang@xxxxxxxxxx>
  Date:   Mon Aug 24 10:41:32 2015 +0800

      f2fs: atomically set inode->i_flags

      According to commit 5f16f3225b06 ("ext4: atomically set inode->i_flags in
      ext4_set_inode_flags()").

      Signed-off-by: Zhang Zhen <zhenzhang.zhang@xxxxxxxxxx>
      Reviewed-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit f7409d0fae7a02ea6c8195f75ad73866d5dea617
  Author: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
  Date:   Fri Aug 21 23:37:18 2015 -0700

      f2fs: fix wrong pointer access during try_to_free_nids

      If we release the lock in list_for_each_entry_safe, we can lose the tmp
      pointer by alloc_nid.

      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 80c545055dc7c1f7f487176fe0aac17896a4b7af
  Author: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
  Date:   Thu Aug 20 08:51:56 2015 -0700

      f2fs: use __GFP_NOFAIL to avoid infinite loop

      __GFP_NOFAIL can avoid retrying the whole path of kmem_cache_alloc and
      bio_alloc.
      And, it also fixes the use cases of GFP_ATOMIC correctly.

      Suggested-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Reviewed-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit c0b4dffbc529244d3e4e3bd392f2bffa2d8531a7
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Mon Aug 24 13:33:14 2015 -0300

      perf annotate: Reset the dso find_symbol cache when removing symbols

      The 'annotate' tool does some filtering in the entries in a DSO but
      forgot to reset the cache done in dso__find_symbol(), cauxing a SEGV:

        [root@zoo ~]# perf annotate netlink_poll
        perf: Segmentation fault
        -------- backtrace --------
        perf[0x526ceb]
        /lib64/libc.so.6(+0x34960)[0x7faedfbe0960]
        perf(rb_erase+0x223)[0x499d63]
        perf[0x4213e9]
        perf[0x4bc123]
        perf[0x4bc621]
        perf[0x4bf26b]
        perf[0x4bc855]
        perf(perf_session__process_events+0x340)[0x4bddc0]
        perf(cmd_annotate+0x6bb)[0x421b5b]
        perf[0x479063]
        perf(main+0x60a)[0x42098a]
        /lib64/libc.so.6(__libc_start_main+0xf0)[0x7faedfbcbfe0]
        perf[0x420aa9]
        [0x0]
        [root@zoo ~]#

      Fix it by reseting the find cache when removing symbols.

      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Fixes: b685ac22b436 ("perf symbols: Add front end cache for DSO symbol 
lookup")
      Link: http://lkml.kernel.org/n/tip-b2y9x46y0t8yem1ive41zqyp@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit cebb053bd144d88a4c24b14dd8ac775d8e5972d5
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Fri Aug 1 15:50:44 2014 +0200

      of: Add vendor prefix for Sharp Corporation

      Use "sharp" as the vendor prefix for Sharp Corporation in device
      tree compatible strings.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      [robh: fix name to Sharp Corporation]
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>

  commit d179e22762fd38414c4108acedd5feca4cf7e0d8
  Author: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
  Date:   Fri Jul 24 14:18:46 2015 +0900

      kbuild: fixdep: drop meaningless hash table initialization

      The clear_config() is called just once at the beginning of this
      program, but the global variable hashtab[] is already zero-filled
      at the start-up.

      Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit d721109611fb94aff53c2397859046e5f92f55ae
  Author: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
  Date:   Fri Jul 24 14:18:45 2015 +0900

      kbuild: fixdep: optimize code slightly

      If the target string matches "CONFIG_", move the pointer p
      forward.  This saves several 7-chars adjustments.

      Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit 5a688c455066c21c133bc8ffa7b11f8c66b7fe0b
  Author: Matt Redfearn <matt.redfearn@xxxxxxxxxx>
  Date:   Thu Aug 20 11:30:32 2015 +0100

      mfd: jz4740-adc: Init mask cache in generic IRQ chip

      The mask cache must be initialised in the generic IRQ chip,
      otherwise enabling one channel will actually enable all
      channels when the empty mask cache is written.

      Signed-off-by: Matt Redfearn <matt.redfearn@xxxxxxxxxx>
      Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>

  commit a78ea195f77a8ed2c5f3108a8cdb9a26ebd474d8
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 09:07:22 2015 +0200

      mfd: cros_ec: spi: Add OF match table

      The Documentation/devicetree/bindings/mfd/cros-ec.txt DT binding doc lists
      "google,cros-ec-spi" as a compatible string but the corresponding driver
      does not have an OF match table. Add the table to the driver so the SPI
      core can do an OF style match.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>

  commit 1e955bece28f0f464c2db03c7e12951cea65fab6
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 09:07:25 2015 +0200

      mfd: stmpe: Add OF match table

      The Documentation/devicetree/bindings/mfd/stmpe.txt DT binding doc lists
      "st,stmpe[610|801|811|1601|2401|2403]" as valid compatible strings but
      the corresponding driver does not have an OF match table. Add the table
      to the driver so the SPI core can do an OF style match.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>

  commit aa60a8391337aa0f14ed890b237f5b8e6cadfbbf
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 24 10:47:21 2015 +0200

      mfd: max77686: Split out regulator part from the DT binding

      The Maxim MAX77686 PMIC is a multi-function device with regulators,
      clocks and a RTC. The DT bindings for the clocks are in a separate
      file but the bindings for the regulators are inside the mfd part.

      To make it consistent with the clocks portion of the binding and
      because is more natural to look for regulator bindings under the
      bindings/regulator sub-directory, split the regulator portion of
      the DT binding and add it as a separate file.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>

  commit 00f1493e9e0c875f16623bdb088108ada6e7647e
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 24 10:47:20 2015 +0200

      mfd: Add DT binding for Maxim MAX77802 IC

      The MAX77802 is a chip that contains regulators, 2 32kHz clocks,
      a RTC and an I2C interface to program the individual components.

      The are already DT bindings for the regulators and clocks and
      these reference to a bindings/mfd/max77802.txt file, that didn't
      exist, for the details about the PMIC.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>

  commit 00d689169dd088257de7ed218ff2c638bc5ad3b5
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 24 10:47:19 2015 +0200

      mfd: max77686: Use a generic name for the PMIC node in the example

      The ePAPR standard says that: "the name of a node should be somewhat
      generic, reflecting the function of the device and not its precise
      programming model."

      So, change the max77686 binding document example to use a generic
      node name instead of using the chip's name.

      Suggested-by: Sergei Shtylyov <sergei.shtylyov@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>

  commit 89bd794cf60760ef053d3694c6749f651c034e02
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 24 10:47:18 2015 +0200

      mfd: max77686: Don't suggest in binding to use a deprecated property

      The regulator-compatible property from the regulator DT binding was
      deprecated. But the max77686 DT binding doc still suggest to use it
      instead of the regulator node name's which is the correct approach.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>

  commit b9124a523017a53cce071451f5c38a0b77761534
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 13:19:53 2015 +0200

      mfd: Add MFD_CROS_EC dependencies

      The MFD_CROS_EC symbol select CHROME_PLATFORMS and CROS_EC_PROTO but
      that caused a Kconfig unmet direct dependencies warning since these
      symbols could only be selected for X86 || ARM.

      The fix it, the CHROME_PLATFORMS dependencies were relexed on commit
      d12bbcd3ea44 ("platform/chrome: Don't make CHROME_PLATFORMS depends
      on X86 || ARM") but that was found to be wrong and the correct fix
      is to add the needed dependencies to the MFD_CROS_EC config symbol.

      There are only x86 and ARM based Chromebooks so to avoid showing up
      the config option on unsupported platforms, make the symbol depend on
      these architectures. Also add a || COMPILE_TEST so it can have build
      coverage on other platforms.

      Suggested-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>

  commit da935c0b6eeeac16de0a82cc1152fb0a9b5a11ef
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 13:19:56 2015 +0200

      mfd: cros_ec: Remove CROS_EC_PROTO dependency for SPI and I2C drivers

      The ChromeOS EC SPI and I2C transport drivers depends on CROS_EC_PROTO
      but MFD_CROS_EC select CROS_EC_PROTO instead. Mixing select and depends
      on is bad practice as it may lead to circular Kconfig dependencies.

      Since these drivers already depend on MFD_CROS_EC and that config option
      already selects CROS_EC_PROTO, there is no need to make them explicitly
      depend on CROS_EC_PROTO since that dependency is already met.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx>

  commit 55e8dba1acc2e3e9d77226c3b08b25a02a0e3a3a
  Author: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
  Date:   Sat Aug 22 08:29:30 2015 -0700

      crypto: qat - silence a static checker warning

      Add range check for ring number.

      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 73613a8159ddbf5a9ead0c03174458fa8210bdf7
  Author: Leonidas Da Silva Barbosa <leosilva@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 17:27:43 2015 -0300

      crypto: vmx - Fixing opcode issue

      In build time vadduqm opcode  is not being mapped
      correctly.

      Adding a new map in ppc-xlate to do this.

      Signed-off-by: Leonidas S Barbosa <leosilva@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 9c4f9733e26f0d6977096fcafe71ea2ba9f0cd7c
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Fri Aug 21 13:52:00 2015 -0300

      crypto: caam - Use the preferred style for memory allocations

      "The preferred form for passing a size of a struct is the following:

              p = kmalloc(sizeof(*p), ...);
      ....

      The preferred form for allocating a zeroed array is the following:

              p = kcalloc(n, sizeof(...), ...); "

      ,so do as suggested.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Reviewed-by: Horia Geant? <horia.geanta@xxxxxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit a3c09550f0cbd9965e44a2dc62c85ff5db91f8ff
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Fri Aug 21 13:51:59 2015 -0300

      crypto: caam - Propagate the real error code in caam_probe

      Instead of propagating a 'fake' error code, just propagate the real
      one in the case of caam_drv_identify_clk() failure.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Reviewed-by: Horia Geant? <horia.geanta@xxxxxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 31f44d150791c3fe923399a1159320acc4a9b3b4
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Fri Aug 21 13:51:58 2015 -0300

      crypto: caam - Fix the error handling in caam_probe

      In the error path we should disable the resources that were previously
      acquired, so fix the error handling accordingly.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Reviewed-by: Horia Geant? <horia.geanta@xxxxxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 9f587fa29f7e8ed6b8885cff51a51ace3ad85152
  Author: Horia Geant? <horia.geanta@xxxxxxxxxxxxx>
  Date:   Fri Aug 21 18:53:20 2015 +0300

      crypto: caam - fix writing to JQCR_MS when using service interface

      Most significant part of JQCR (Job Queue Control Register) contains
      bits that control endianness: ILE - Immediate Little Endian,
      DWS - Double Word Swap.
      The bits are automatically set by the Job Queue Controller HW.

      Unfortunately these bits are cleared in SW when submitting descriptors
      via the register-based service interface.
      >From LS1021A:
      JQCR_MS = 08080100 - before writing: ILE | DWS | SRC (JR0)
      JQCR_MS = 30000100 - after writing: WHL | FOUR | SRC (JR0)

      This would cause problems on little endian caam for descriptors
      containing immediata data or double-word pointers.
      Currently there is no problem since the only descriptors ran through
      this interface are the ones that (un)instantiate RNG.

      Signed-off-by: Horia Geant? <horia.geanta@xxxxxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 27d868b5e6cfaee4fec66b388e4085ff94050fa7
  Author: Keith Busch <keith.busch@xxxxxxxxx>
  Date:   Mon Aug 24 08:48:16 2015 -0500

      PCI: Set MPS to match upstream bridge

      Firmware typically configures the PCIe fabric with a consistent Max 
Payload
      Size setting based on the devices present at boot.  A hot-added device
      typically has the power-on default MPS setting (128 bytes), which may not
      match the fabric.

      The previous Linux default, in the absence of any "pci=pcie_bus_*" 
options,
      was PCIE_BUS_TUNE_OFF, in which we never touch MPS, even for hot-added
      devices.

      Add a new default setting, PCIE_BUS_DEFAULT, in which we make sure every
      device's MPS setting matches the upstream bridge.  This makes it more
      likely that a hot-added device will work in a system with optimized MPS
      configuration.

      Note that if we hot-add a device that only supports 128-byte MPS, it still
      likely won't work because we don't reconfigure the rest of the fabric.
      Booting with "pci=pcie_bus_peer2peer" is a workaround for this because it
      sets MPS to 128 for everything.

      [bhelgaas: changelog, new default, rework for pci_configure_device() path]
      Tested-by: Keith Busch <keith.busch@xxxxxxxxx>
      Tested-by: Jordan Hargrave <jharg93@xxxxxxxxx>
      Signed-off-by: Keith Busch <keith.busch@xxxxxxxxx>
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Acked-by: Yinghai Lu <yinghai@xxxxxxxxxx>

  commit 5166c20ef95be89d10ffe0140e74df5cf26e9786
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Mon Aug 24 13:35:51 2015 +0100

      arm64: makefile: fix perf_callchain.o kconfig dependency

      Commit 4b3dc9679cf7 ("arm64: force CONFIG_SMP=y and remove redundant
      #ifdefs") incorrectly resolved a conflict on arch/arm64/kernel/Makefile
      which resulted in a partial revert of 52da443ec4d0 ("arm64: perf: factor
      out callchain code"), leading to perf_callchain.o depending on
      CONFIG_HW_PERF_EVENTS instead of CONFIG_PERF_EVENTS.

      This patch restores the kconfig dependency for perf_callchain.o.

      Reported-by: Mark Rutland <mark.rutland@xxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit a4a9a8cb3248b3b48a6049acaeaf23d4ad3712b9
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Tue Aug 18 12:12:19 2015 +0300

      i2c: xgene-slimpro: dma_mapping_error() doesn't return an error code

      The dma_mapping_error() function returns true if there is an error, it
      doesn't return an error code.  We should return -ENOMEM.

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Reviewed-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxx

  commit 480b141abf7ffe630016dd4ced0fc57f105a05a9
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 13:19:57 2015 +0200

      i2c: Replace I2C_CROS_EC_TUNNEL dependency

      The ChromeOS EC tunnel I2C bus driver depend on CROS_EC_PROTO but
      MFD_CROS_EC select CROS_EC_PROTO instead. Mixing select and depends
      on is bad practice as it may lead to circular Kconfig dependencies.

      Since the platform device that is matched with the I2C bus driver
      is registered by the ChromeOS EC mfd driver, I2C_CROS_EC_TUNNEL
      really depends on MFD_CROS_EC. And because this config option
      selects CROS_EC_PROTO, that dependency is met as well. So make the
      driver to depend on MFD_CROS_EC instead of CROS_EC_PROTO.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit 2cd9fbd0ed5ef12bf550c06126ebbe720574fc0e
  Author: Irina Tirdea <irina.tirdea@xxxxxxxxx>
  Date:   Wed Aug 12 17:31:34 2015 +0300

      eeprom: at24: use i2c_smbus_read_i2c_block_data_or_emulated

      For i2c busses that support only SMBUS extensions, the eeprom at24
      driver reads data from the device using the SMBus block, word or byte
      read protocols depending on availability.

      Replace the block read emulation from the driver with the
      i2c_smbus_read_i2c_block_data_or_emulated call from i2c core.

      Signed-off-by: Irina Tirdea <irina.tirdea@xxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit 01eef96e37d77cd89156e5f51aab81a9d5c96539
  Author: Irina Tirdea <irina.tirdea@xxxxxxxxx>
  Date:   Wed Aug 12 17:31:33 2015 +0300

      i2c: core: Add support for best effort block read emulation

      There are devices that need to handle block transactions
      regardless of the capabilities exported by the adapter.
      For performance reasons, they need to use i2c read blocks
      if available, otherwise emulate the block transaction with word
      or byte transactions.

      Add support for a helper function that would read a data block
      using the best transfer available: I2C_FUNC_SMBUS_READ_I2C_BLOCK,
      I2C_FUNC_SMBUS_READ_WORD_DATA or I2C_FUNC_SMBUS_READ_BYTE_DATA.

      Signed-off-by: Irina Tirdea <irina.tirdea@xxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit 3f9c37a0c9a59db97ca5712eca7838b842949047
  Author: Joachim Eastwood <manabian@xxxxxxxxx>
  Date:   Sun Aug 16 20:10:16 2015 +0200

      i2c: lpc2k: add driver

      Add support for the I2C controller found on several NXP devices
      including LPC2xxx, LPC178x/7x and LPC18xx/43xx. The controller
      is implemented as a state machine and the driver act upon the
      state changes when the bus is accessed.

      The I2C controller supports master/slave operation, bus
      arbitration, programmable clock rate, and speeds up to 1 Mbit/s.

      Signed-off-by: Joachim Eastwood <manabian@xxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit b3fdd32799d834e2626fae087906e886037350c6
  Author: York Sun <yorksun@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 11:53:48 2015 -0700

      i2c: mux: Add register-based mux i2c-mux-reg

      Based on i2c-mux-gpio driver, similarly the register-based mux
      switch from one bus to another by setting a single register.
      The register can be on PCIe bus, local bus, or any memory-mapped
      address. The endianness of such register can be specified in device
      tree if used, or in platform data.

      Signed-off-by: York Sun <yorksun@xxxxxxxxxxxxx>
      Acked-by: Alexander Sverdlin <alexander.sverdlin@xxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit 7a59b00a0906945f7fe25a10332ac0820491a0c3
  Author: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Aug 8 13:35:18 2015 +0200

      i2c: dt: describe generic bindings

      Start a new file which describes the generic bindings used for I2C with
      device tree. So we have a central place to look for them, increase
      visibility of them, and hopefully reduce the amount of custom properties
      introduced.

      Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Vaibhav Hiremath <vaibhav.hiremath@xxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit c6909d6f6f1082b8bb4c1b0ef3460a005c9dcb4d
  Author: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 21:12:54 2015 +0200

      i2c: slave: print warning if slave flag not set

      Address collisions will be rare, but we should let the user know that
      slaves have their own address space nonetheless.

      Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit cfa0327b0d03091e0c47249c080e50e287be762d
  Author: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 14:03:38 2015 +0200

      i2c: support 10 bit and slave addresses in sysfs 'new_device'

      We now have seperate address spaces for 10 bit and we-are-slave clients.
      Update the sysfs device instantiation method to support these types by
      accepting the address offsets that are assigned to the extra address
      spaces. Update the documentation, too.

      Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit 9bccc70a127cfe2a13e34d6b6e7300caae113f8f
  Author: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Jul 17 14:48:56 2015 +0200

      i2c: take address space into account when checking for used addresses

      It is not enough to compare the plain address value, we also need to
      check the flags enabling a different address space. E.g. it is valid to
      have address 0x50 as a 7-bit address and 0x050 as 10-bit address on the
      same bus. Same for addresses when we are the slave.

      Tested-by: Andrey Danin <danindrey@xxxxxxx>
      Acked-by: Stephen Warren <swarren@xxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit b4e2f6ac1281cd3e066919cc762eef4924e9fcc5
  Author: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue May 19 21:04:40 2015 +0200

      i2c: apply DT flags when probing

      Check for slave and 10-bit flags when probing and mark the client when
      found. Improve the address validity check, too

      Tested-by: Andrey Danin <danindrey@xxxxxxx>
      Acked-by: Stephen Warren <swarren@xxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit c4019b7040eaf88f440ce5212e055a4f19b1b541
  Author: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Jul 17 12:50:06 2015 +0200

      i2c: make address check indpendent from client struct

      We want to use this function with struct boardinfo soon, so let's just
      pass the parameters really needed. We also extend the type of addr, so
      more types can be input. Remove a superfluous dangling comment while
      here.

      Tested-by: Andrey Danin <danindrey@xxxxxxx>
      Acked-by: Stephen Warren <swarren@xxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit 66be6056eba80690bb7fa3d983c21494e1950bea
  Author: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Jul 17 12:43:22 2015 +0200

      i2c: rename address check functions

      The current naming is based on the arguments of the functions and not on
      what they do. Even I as the maintainer find this confusing, so let's
      rename them to something more descriptive.

      Tested-by: Andrey Danin <danindrey@xxxxxxx>
      Acked-by: Stephen Warren <swarren@xxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit da899f55b359225f85e154765baaddb13ec436ca
  Author: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon May 18 21:09:12 2015 +0200

      i2c: apply address offset for slaves, too

      We want a separate address range for being an I2C slave. Add an offset
      of 0x1000, so it can be combined with ten bit addresses as well. Add a
      separate function to create the address value, we will need it later in
      other places.

      Tested-by: Andrey Danin <danindrey@xxxxxxx>
      Acked-by: Stephen Warren <swarren@xxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit c5ebb387f4e6b2dd7c74d71caf7b696834d0c887
  Author: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue May 19 17:44:31 2015 +0200

      i2c: add a flag to mark clients as slaves

      And update indentation with one more tab, sigh...

      Tested-by: Andrey Danin <danindrey@xxxxxxx>
      Acked-by: Stephen Warren <swarren@xxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit f5005f7835e0da9ea6f203f8acc356bef9b331da
  Author: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue May 19 17:40:55 2015 +0200

      dt-bindings: add header for generic I2C flags in bindings

      Tested-by: Andrey Danin <danindrey@xxxxxxx>
      Acked-by: Stephen Warren <swarren@xxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa+renesas@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxxxxx>

  commit c9b57724b38d4c1555ee49418be3d76801e3327c
  Author: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>
  Date:   Fri Aug 21 10:18:08 2015 -0400

      HID: quirks: add QUIRK_NOGET for an other TPV touchscreen

      Looks like 0x8882 needs the same quirk than 0x8883.
      Given that both devices claim they are "TPV OpticalTouchScreen" rename
      the 0x8883 to add its PID in the #define.

      Reported-by: Blaine Lee <blaine.j.lee@xxxxxxxxxxxxx>
      Signed-off-by: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>
      Signed-off-by: Jiri Kosina <jkosina@xxxxxxx>

  commit 2a03c025fdea25a491c359b31d8a8c8d452b06d0
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 23:43:19 2015 -0300

      ARM: rockchip: pm: Fix PTR_ERR() argument

      PTR_ERR should access the value just tested by IS_ERR.

      The semantic patch that makes this change is available
      in scripts/coccinelle/tests/odd_ptr_err.cocci.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Reviewed-by: Matthias Brugger <matthias.bgg@xxxxxxxxx>
      Signed-off-by: Heiko Stuebner <heiko@xxxxxxxxx>

  commit 0df9d2eae5e1092b07eaab6b989c2ff14115cab5
  Author: Takeshi Kihara <takeshi.kihara.df@xxxxxxxxxxx>
  Date:   Mon Jul 20 01:39:59 2015 +0900

      mmc: tmio: Fix timeout value for command request

      Fix the problem which timeout occurs at the time of command request with
      several cards.

      The timeout value was insufficient as a verification of several cards,
      so it was changed 5 seconds from 2 seconds.

      Signed-off-by: Takeshi Kihara <takeshi.kihara.df@xxxxxxxxxxx>
      Signed-off-by: Yoshihiro Kaneko <ykaneko0929@xxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 05c441efcc9796dd27451b9d87f5b22b8ebcdb2b
  Author: ludovic.desroches@xxxxxxxxx <ludovic.desroches@xxxxxxxxx>
  Date:   Wed Jul 29 16:22:48 2015 +0200

      MAINTAINERS: add entry for Atmel sdhci-of-at91 driver

      Add an entry for Atmel SDMMC device.

      Signed-off-by: Ludovic Desroches <ludovic.desroches@xxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit bb5f8ea4d5149f3dec6f7cd24c040c52bfc0cdbd
  Author: ludovic.desroches@xxxxxxxxx <ludovic.desroches@xxxxxxxxx>
  Date:   Wed Jul 29 16:22:47 2015 +0200

      mmc: sdhci-of-at91: introduce driver for the Atmel SDMMC

      Introduce driver for he Atmel SDMMC available on sama5d2. It is a sdhci
      compliant controller.

      Signed-off-by: Ludovic Desroches <ludovic.desroches@xxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 5497159c460fadf0d8190b6ef144ec22fa26aa6b
  Author: ludovic.desroches@xxxxxxxxx <ludovic.desroches@xxxxxxxxx>
  Date:   Wed Jul 29 16:22:46 2015 +0200

      mmc: sdhci: switch from programmable clock mode to divided one if needed

      In programmable mode, if the clock frequency is too high, the divider
      can be too small to meet the clock frequency requirement especially to
      init the SD card. In this case, switch to the divided clock mode.

      Signed-off-by: Ludovic Desroches <ludovic.desroches@xxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 34ba2c4247e5c4b1542b1106e156af324660c4f0
  Author: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
  Date:   Tue Aug 18 10:34:42 2015 +0100

      arm64: set MAX_MEMBLOCK_ADDR according to linear region size

      The linear region size of a 39-bit VA kernel is only 256 GB, which
      may be insufficient to cover all of system RAM, even on platforms
      that have much less than 256 GB of memory but which is laid out
      very sparsely.

      So make sure we clip the memory we will not be able to map before
      installing it into the memblock memory table, by setting
      MAX_MEMBLOCK_ADDR accordingly.

      Reviewed-by: Catalin Marinas <catalin.marinas@xxxxxxx>
      Tested-by: Stuart Yoder <stuart.yoder@xxxxxxxxxxxxx>
      Signed-off-by: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit 8eafeb48022816513abc4f440bdad4c350fe81a3
  Author: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
  Date:   Tue Aug 18 10:34:41 2015 +0100

      of/fdt: make memblock maximum physical address arch configurable

      When parsing the memory nodes to populate the memblock memory
      table, we check against high and low limits and clip any memory
      that exceeds either one of them.

      However, for arm64, the high limit of (phys_addr_t)~0 is not very
      meaningful, since phys_addr_t is 64 bits (i.e., no limit) but there
      may be other constraints that limit the memory ranges that we can
      support.

      So rename MAX_PHYS_ADDR to MAX_MEMBLOCK_ADDR (for clarity) and only
      define it if the arch does not supply a definition of its own.

      Acked-by: Rob Herring <robh@xxxxxxxxxx>
      Reviewed-by: Catalin Marinas <catalin.marinas@xxxxxxx>
      Tested-by: Stuart Yoder <stuart.yoder@xxxxxxxxxxxxx>
      Signed-off-by: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit 5d3c2c352998fdefdc62795249cfc7311cf36df9
  Author: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
  Date:   Sun Aug 23 14:24:44 2015 +0100

      arm64: Fix source code file path in comments

      Architecture specific code for i386 and x86_64 was unified and merged to
      the arch/x86. This patch fix old path of x86 architecture in a comment
      from the arch/arm64/include/asm/fixmap.h.

      Signed-off-by: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit 5b9eaa5659b32cf6c85a492d2e3bfa7a3a413144
  Author: Ben Hutchings <ben.hutchings@xxxxxxxxxxxxxxx>
  Date:   Tue Jun 30 17:53:59 2015 +0100

      pinctrl: sh-pfc: Implement pinconf power-source param for voltage 
switching

      The pfc in the R8A7790 (and probably others in the R-Car gen 2 family)
      supports switching SDHI signals between 3.3V and 1.8V nominal voltage,
      and the SD driver should do that when switching to and from UHS modes.

      Add a flag for pins that have configurable I/O voltage and SoC
      operations to get and set the nominal voltage.  Implement the pinconf
      power-source parameter using these operations.

      Signed-off-by: Ben Hutchings <ben.hutchings@xxxxxxxxxxxxxxx>
      Acked-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 6c310c46efeae99a1569947b8c60d4aab36bd61c
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Mon Aug 24 13:43:14 2015 +0530

      dmaengine: sort the dw Kconfig

      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 3c21619077beb40ae3e49eb868798377e69dd940
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Mon Aug 24 13:43:14 2015 +0530

      dmaengine: sort the Kconfig

      dmaengine Kconfig grew over the years, unfortunately without any
      order to it. So order by core, driver and client sections, and
      sort these sections alphabetically

      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 7e97229b3920568067feefc8b49a98534c1a908c
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Mon Aug 24 13:43:14 2015 +0530

      dmaengine: sort the makefile

      dmaengine makefile grew over the years, unfortunately without any
      order to it. So order by core, dmatest and driver sections and
      sort these sections alphabetically

      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit e2d6cf7f3696c87546f7fefe9bac79ee09db4bef
  Author: David Weinehall <david.weinehall@xxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 16:52:01 2015 +0300

      drm/i915: Allow parsing of variable size child device entries from VBT

      VBT version 196 increased the size of common_child_dev_config. The
      parser code assumed that the size of this structure would not change.

      The modified code now copies the amount needed based on the VBT version,
      and emits a debug message if the VBT version is unknown (too new); since
      the struct config block won't shrink in newer versions it should be
      harmless to copy the maximum known size in such cases, so that's what we
      do, but emitting the warning is probably sensible anyway.

      In the longer run it might make sense to modify the parser code to use a
      version/feature mapping, rather than hardcoding things like this, but
      for now the variants are fairly manageable.

      This fixes a regression introduced in

      commit 75067ddecf21271631bc018d2fb23ddd09b66aae
      Author: Antti Koskipaa <antti.koskipaa@xxxxxxxxxxxxxxx>
      Date:   Fri Jul 10 14:10:55 2015 +0300

          drm/i915: Per-DDI I_boost override

      since that commit changed the child device config size without updating
      the checks and memcpy.

      v2: Stricter size checks

      v3 by Jani:
      - Keep the checks strict, and warnigns verbose, but keep going anyway.
      - Take care to copy the max amount of child device config we can.
      - Fix the messages.

      Signed-off-by: David Weinehall <david.weinehall@xxxxxxxxxxxxxxx>
      Reviewed-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit af7080f555e556094762c03c31cabdbe072b16b6
  Author: Thulasimani,Sivakumar <sivakumar.thulasimani@xxxxxxxxx>
  Date:   Tue Aug 18 11:07:59 2015 +0530

      drm/i915: fix link rates reported for SKL

      This patch fixes the bug that SKL SKUs before B0 might return
      HBR2 as supported even though it is not supposed to be enabled
      on such platforms.

      v2: optimize if else condition (Jani)

      Reviewed-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Signed-off-by: Sivakumar Thulasimani <sivakumar.thulasimani@xxxxxxxxx>
      [Jani: minor whitespace fix.]
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 6cc38acaaa995ad229447d87a3c5a181ba0cc161
  Author: Jani Nikula <jani.nikula@xxxxxxxxx>
  Date:   Tue Aug 18 14:28:55 2015 +0300

      drm/i915: fix VBT parsing for SDVO child device mapping

      commit 75067ddecf21271631bc018d2fb23ddd09b66aae
      Author: Antti Koskipaa <antti.koskipaa@xxxxxxxxxxxxxxx>
      Date:   Fri Jul 10 14:10:55 2015 +0300

          drm/i915: Per-DDI I_boost override

      increased size of union child_device_config without taking into account
      the size check in parse_sdvo_device_mapping(). Switch the function over
      to using the legacy struct only.

      Fixes: 75067ddecf21 ("drm/i915: Per-DDI I_boost override")
      Cc: Antti Koskipaa <antti.koskipaa@xxxxxxxxxxxxxxx>
      Cc: David Weinehall <david.weinehall@xxxxxxxxxxxxxxx>
      Reviewed-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Tested-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>

  commit 3732ce72b45a2a145803558758821bf198751276
  Merge: e829d7e c13dcf9
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Mon Aug 24 16:36:42 2015 +1000

      Merge tag 'v4.2-rc8' into drm-next

      Linux 4.2-rc8

      Backmerge required for Intel so they can fix their -next tree up properly.

  commit 54cf7be992fe86571a3f07b96446cd5334b014ab
  Author: Shaohui Xie <Shaohui.Xie@xxxxxxxxxxxxx>
  Date:   Fri Aug 21 15:29:29 2015 +0800

      net: phy: add interrupt support for aquantia phy

      By implementing config_intr & ack_interrupt, now the phy can support
      link connect/disconnect interrupt.

      Signed-off-by: Shaohui Xie <Shaohui.Xie@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 50e48bd0673180311874d0c1bd88505eefd75c4e
  Author: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
  Date:   Wed Aug 12 13:14:59 2015 +0600

      m68k/coldfire: use PFN_DOWN macro

      Replace ((x) >> PAGE_SHIFT) with the predefined PFN_DOWN macro.

      Signed-off-by: Alexander Kuleshov <kuleshovmail@xxxxxxxxx>
      Signed-off-by: Greg Ungerer <gerg@xxxxxxxxxxx>

  commit 5bbc08fb0f1457ceef388739b48c72675246639c
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Thu Jul 16 16:56:20 2015 +0530

      m68k/coldfire/pit: Migrate to new 'set-state' interface

      Migrate m68k driver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      We weren't doing anything in ->set_mode(RESUME) and so tick_resume()
      isn't implemented.

      Cc: Greg Ungerer <gerg@xxxxxxxxxxx>
      Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Cc: linux-m68k@xxxxxxxxxxxxxxxxxxxx
      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Greg Ungerer <gerg@xxxxxxxxxxx>

  commit e829d7ef9f17d7b84d4c3d110ecd4b7b2bcba865
  Author: Mathieu Larouche <mathieu.larouche@xxxxxxxxxx>
  Date:   Fri Aug 21 09:24:13 2015 -0400

      drm/mgag200: Add support for a new rev of G200e

      - Added PLL algorithm for a new rev of G200e
      - Removed the bandwidth limitation for the new G200e

      Signed-off-by: Mathieu Larouche <mathieu.larouche@xxxxxxxxxx>
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit 6d857c18aefdec782ba1db578a390fbac5145107
  Author: Mathieu Larouche <mathieu.larouche@xxxxxxxxxx>
  Date:   Fri Aug 21 09:24:05 2015 -0400

      drm/mgag200: Add support for a new G200eW3 chipset

      - Added support for the new deviceID for G200eW3
      - Added PLL algorithm for the G200eW3
      - Added some initialization code for G200eW3

      Signed-off-by: Mathieu Larouche <mathieu.larouche@xxxxxxxxxx>
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit d9893d1351e11f565940df6cd6f9bf13aac27a3a
  Merge: 751a587 29e7692
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Sun Aug 23 20:42:57 2015 -0700

      Merge tag 'nfc-next-4.3-1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/sameo/nfc-next

      Samuel Ortiz says:

      ====================
      NFC 4.3 pull request

      This is the NFC pull request for 4.3.
      With this one we have:

      - A new driver for Samsung's S3FWRN5 NFC chipset. In order to
        properly support this driver, a few NCI core routines needed
        to be exported. Future drivers like Intel's Fields Peak will
        benefit from this.

      - SPI support as a physical transport for STM st21nfcb.

      - An additional netlink API for sending replies back to userspace
        from vendor commands.

      - 2 small fixes for TI's trf7970a

      - A few st-nci fixes.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 751a587ac9f9a8bf314590fbac32d9e418060c5a
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Fri Aug 21 12:41:14 2015 +0200

      route: fix breakage after moving lwtunnel state

      __recnt and related fields need to be in its own cacheline for performance
      reasons. Commit 61adedf3e3f1 ("route: move lwtunnel state to dst_entry")
      broke that on 32bit archs, causing BUILD_BUG_ON in dst_hold to be 
triggered.

      This patch fixes the breakage by moving the lwtunnel state to the end of
      dst_entry on 32bit archs. Unfortunately, this makes it share the cacheline
      with __refcnt and may affect performance, thus further patches may be
      needed.

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Fixes: 61adedf3e3f1 ("route: move lwtunnel state to dst_entry")
      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 31fbde9967330404175a06df15bdb24d671d4475
  Merge: c5f98b5 7a4b6c8
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Sun Aug 23 16:28:18 2015 -0700

      Merge tag 'linux-can-next-for-4.3-20150820' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mkl/linux-can-next

      Marc Kleine-Budde says:

      ====================
      this is a pull request of a two patches for net-next.

      The first patch is by Nik Nyby and fixes a typo in a function name. The
      second patch by Lucas Stach demotes register output to debug level.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c5f98b5669b875564f992e1398f5a4407dba8b07
  Merge: 7f629be 2be80c2
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Sun Aug 23 16:14:46 2015 -0700

      Merge branch 'tipc-failover-fixes'

      Jon Maloy says:

      ====================
      tipc: fix link failover/synch problems

      We fix three problems with the new link failover/synch implementation,
      which was introduced earlier in this release cycle. They are all related
      to situations where there is a very short interval between the disabling
      and enabling of interfaces.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2be80c2d87de789550982e74a11e9f9ff5940845
  Author: Jon Paul Maloy <jon.maloy@xxxxxxxxxxxx>
  Date:   Thu Aug 20 02:12:56 2015 -0400

      tipc: fix stale link problem during synchronization

      Recent changes to the link synchronization means that we can now just
      drop packets arriving on the synchronizing link before the synch point
      is reached. This has lead to significant simplifications to the
      implementation, but also turns out to have a flip side that we need
      to consider.

      Under unlucky circumstances, the two endpoints may end up
      repeatedly dropping each other's packets, while immediately
      asking for retransmission of the same packets, just to drop
      them once more. This pattern will eventually be broken when
      the synch point is reached on the other link, but before that,
      the endpoints may have arrived at the retransmission limit
      (stale counter) that indicates that the link should be broken.
      We see this happen at rare occasions.

      The fix for this is to not ask for retransmissions when a link is in
      state LINK_SYNCHING. The fact that the link has reached this state
      means that it has already received the first SYNCH packet, and that it
      knows the synch point. Hence, it doesn't need any more packets until the
      other link has reached the synch point, whereafter it can go ahead and
      ask for the missing packets.

      However, because of the reduced traffic on the synching link that
      follows this change, it may now take longer to discover that the
      synch point has been reached. We compensate for this by letting all
      packets, on any of the links, trig a check for synchronization
      termination. This is possible because the packets themselves don't
      contain any information that is needed for discovering this condition.

      Reviewed-by: Ying Xue <ying.xue@xxxxxxxxxxxxx>
      Signed-off-by: Jon Maloy <jon.maloy@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 5ae2f8e6857968d6dddbd3879ed0a32b860e02d1
  Author: Jon Paul Maloy <jon.maloy@xxxxxxxxxxxx>
  Date:   Thu Aug 20 02:12:55 2015 -0400

      tipc: interrupt link synchronization when a link goes down

      When we introduced the new link failover/synch mechanism
      in commit 6e498158a827fd515b514842e9a06bdf0f75ab86
      ("tipc: move link synch and failover to link aggregation level"),
      we missed the case when the non-tunnel link goes down during the link
      synchronization period. In this case the tunnel link will remain in
      state LINK_SYNCHING, something leading to unpredictable behavior when
      the failover procedure is initiated.

      In this commit, we ensure that the node and remaining link goes
      back to regular communication state (SELF_UP_PEER_UP/LINK_ESTABLISHED)
      when one of the parallel links goes down. We also ensure that we don't
      re-enter synch mode if subsequent SYNCH packets arrive on the remaining
      link.

      Reviewed-by: Ying Xue <ying.xue@xxxxxxxxxxxxx>
      Signed-off-by: Jon Maloy <jon.maloy@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 17b2063077a7478e5fd3c34b04a059dbb8474638
  Author: Jon Paul Maloy <jon.maloy@xxxxxxxxxxxx>
  Date:   Thu Aug 20 02:12:54 2015 -0400

      tipc: eliminate risk of premature link setup during failover

      When a link goes down, and there is still a working link towards its
      destination node, a failover is initiated, and the failed link is not
      allowed to re-establish until that procedure is finished. To ensure
      this, the concerned link endpoints are set to state LINK_FAILINGOVER,
      and the node endpoints to NODE_FAILINGOVER during the failover period.

      However, if the link reset is due to a disabled bearer, the corres-
      ponding link endpoint is deleted, and only the node endpoint knows
      about the ongoing failover. Now, if the disabled bearer is re-enabled
      during the failover period, the discovery mechanism may create a new
      link endpoint that is ready to be established, despite that this is not
      permitted. This situation may cause both the ongoing failover and any
      subsequent link synchronization to fail.

      In this commit, we ensure that a newly created link goes directly to
      state LINK_FAILINGOVER if the corresponding node state is
      NODE_FAILINGOVER. This eliminates the problem described above.

      Furthermore, we tighten the criteria for which packets are allowed
      to end a failover state in the function tipc_node_check_state().
      By checking that the receiving link is up and running, instead of just
      checking that it is not in failover mode, we eliminate the risk that
      protocol packets from the re-created link may cause the failover to
      be prematurely terminated.

      Reviewed-by: Ying Xue <ying.xue@xxxxxxxxxxxxx>
      Signed-off-by: Jon Maloy <jon.maloy@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7f629be158a93e1b8f882c13c098d043f68cad9c
  Merge: 1728369 4149379
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Sun Aug 23 16:08:54 2015 -0700

      Merge branch 'nps_enet_fixes'

      Noam Camus says:

      ====================
      *** nps_enet fixups ***

      Change v2
      TX done is handled back with NAPI poll.

      Change v1
      This patch set is a bunch of fixes to make nps_enet work correctly with
      all platforms, i.e. real device, emulation system, and simulation system.
      The main trigger for this patch set was that in our emulation system
      the TX end interrupt is "edge-sensitive" and therefore we cannot use the
      cause register since it is not sticky.
      Also:
      TX is handled during HW interrupt context and not NAPI job.
      race with TX done was fixed.
      added acknowledge for TX when device is "level sensitive".
      enable drop of control frames which is not needed for regular usage.

      So most of this patch set is about TX handling, which is now more 
complete.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 41493795a4c18170fdf27c0373d386b4039b24df
  Author: Noam Camus <noamc@xxxxxxxxxx>
  Date:   Thu Aug 20 08:00:05 2015 +0300

      NET: nps_enet: minor namespace cleanup

      We define buf_int_enable in the minimal namespace it is used.
      Signed-off-by: Noam Camus <noamc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3d99b74ab3c4b7e529d5820ccadabfb81085f020
  Author: Noam Camus <noamc@xxxxxxxxxx>
  Date:   Thu Aug 20 08:00:04 2015 +0300

      NET: nps_enet: TX done acknowledge.

      This is needed for when TX done interrupt is in
      "level mode".
      For example it is true for some simulators of this device.

      Signed-off-by: Noam Camus <noamc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit de6715677aaa5e9ed27dab1f6ca6597b74a3f7bc
  Author: Noam Camus <noamc@xxxxxxxxxx>
  Date:   Thu Aug 20 08:00:03 2015 +0300

      NET: nps_enet: drop control frames

      We set controller to drop control frames and not trying
      to pass them on. This is only needed for debug reasons.

      Signed-off-by: Noam Camus <noamc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 93fcf83eb953d9ca2d3c51ff7f87095f0dd43511
  Author: Noam Camus <noamc@xxxxxxxxxx>
  Date:   Thu Aug 20 08:00:02 2015 +0300

      NET: nps_enet: TX done race condition

      We need to set tx_skb pointer before send frame.
      If we receive interrupt before we set pointer we will try
      to free SKB with wrong pointer.
      Now we are sure that SKB pointer will never be NULL during
      handling TX done and check is removed.

      Signed-off-by: Noam Camus <noamc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0dd20f3ce04e75521bd3f9867ecbc852ab348912
  Author: Noam Camus <noamc@xxxxxxxxxx>
  Date:   Thu Aug 20 08:00:01 2015 +0300

      NET: nps_enet: replace use of cause register

      When interrupt is received we read directly from control
      register for RX/TX instead of reading cause register
      since this register fails to indicate TX done when
      TX interrupt is "edge mode".

      Signed-off-by: Noam Camus <noamc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1728369e8c57f27e0374f4702cbfdb9196bc586b
  Merge: 9a873c7 2701366
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Sun Aug 23 15:59:57 2015 -0700

      Merge branch 'gro_tunnels'

      Tom Herbert says:

      ====================
      gro: Fixes for tunnels and GRO

      This patch set addresses some issue related to tunneling and GRO:

      - Fix remote checksum offload to properly deal with frag0 in GRO.
      - Add support for GRO at VXLAN tunnel (call gro_cells)

      Testing: Ran one netperf TCP_STREAM to highlight impact of different
      configurations:

      GUE
        Zero UDP checksum
          4628.42 MBps
        UDP checksums enabled
          6800.51 MBps
        UDP checksums and remote checksum offload
          7663.82 MBps
        UDP checksums and remote checksum offload using no-partial
          7287.25 MBps

      VXLAN
        Zero UDP checksum
          4112.02
        UDP checksums enabled
          6785.80 MBps
        UDP checksums and remote checksum offload
          7075.56 MBps

      v2:
        - Drop "gro: Pull headers into skb head for 1st skb in gro list"
          from patch set
        - In vxlan_remcsum and gue_remcsum return immediately if remcsum
          processing was already done
        - Add gro callbacks for sit offload
        - Use WARN_ON_ONCE if we get a GUE protocol that does not have
          GRO offload support

      v3:
        - Don't restore gro callbacks for sit offload
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 270136613bf7306e2b83457628e2b2f6c6be3989
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 17:07:34 2015 -0700

      fou: Do WARN_ON_ONCE in gue_gro_receive for bad proto callbacks

      Do WARN_ON_ONCE instead of WARN_ON in gue_gro_receive when the offload
      callcaks are bad (either don't exist or gro_receive is not specified).

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 58ce31cca1ffe057f4744c3f671e3e84606d3d4a
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 17:07:33 2015 -0700

      vxlan: GRO support at tunnel layer

      Add calls to gro_cells infrastructure to do GRO when receiving on a 
tunnel.

      Testing:

      Ran 200 netperf TCP_STREAM instance

        - With fix (GRO enabled on VXLAN interface)

          Verify GRO is happening.

          9084 MBps tput
          3.44% CPU utilization

        - Without fix (GRO disabled on VXLAN interface)

          Verified no GRO is happening.

          9084 MBps tput
          5.54% CPU utilization

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b7fe10e5ebac2a3f37e95535e616494b65fa020f
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 17:07:32 2015 -0700

      gro: Fix remcsum offload to deal with frags in GRO

      The remote checksum offload GRO did not consider the case that frag0
      might be in use. This patch fixes that by accessing headers using the
      skb_gro functions and not saving offsets relative to skb->head.

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9a873c71e91cabf4c10fd9bbd8358c22deaf6c9e
  Author: Chas Williams <3chas3@xxxxxxxxx>
  Date:   Wed Aug 19 19:14:20 2015 -0400

      net/xen-netfront: only clean up queues if present

      If you simply load and unload the module without starting the interfaces,
      the queues are never created and you get a bad pointer dereference.

      Signed-off-by: Chas Williams <3chas3@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f5117ce4f6a16fa2a02ceff9c337cfffca8b75f2
  Author: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 18:54:55 2015 -0400

      net: dsa: mv88e6xxx: set 802.1Q mode to Fallback

      The current Secure port mode requires the port-based VLANs to also be
      valid in the 802.1Q VLAN Table Unit. The current hardware bridging
      support only configures the port-based VLANs, thus is broken.

      A new patchset is required to adapt the hardware bridging code to fully
      support the Secure port mode.

      In the meantime, change the 802.1Q mode of every ports to Fallback,
      which filtering is more permissive, and doesn't add this restriction to
      handle port-based and tagged-based VLANs.

      Fixes: 8efdda4a1b60 ("net: dsa: mv88e6xxx: use port 802.1Q mode Secure")
      Signed-off-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f007492964c125cb3e88a51ba2e50c3b44d33ae0
  Author: Jonathan Corbet <corbet@xxxxxxx>
  Date:   Sun Aug 23 13:35:23 2015 -0600

      kernel-doc: ignore unneeded attribute information

      The kernel-doc script gets confused by __attribute__(()) strings in
      structures, so just clean the out.  Also ignore the CRYPTO_MINALIGN_ATTR
      macro used in the crypto subsystem.

      Signed-off-by: Jonathan Corbet <corbet@xxxxxxx>

  commit b5ac1fb2717e48177d3f73f9e4c9b556c0a24c6b
  Author: Vincent Bernat <vincent@xxxxxxxxx>
  Date:   Sat Aug 15 14:07:44 2015 +0200

      9p: fix return code of read() when count is 0

      When reading 0 bytes from an empty file on a 9P filesystem, the return
      code of read() was not 0 as expected due to an unitialized err variable.

      Tested with this simple program:

          #include <assert.h>
          #include <sys/types.h>
          #include <sys/stat.h>
          #include <fcntl.h>
          #include <unistd.h>

          int main(int argc, const char **argv)
          {
              assert(argc == 2);
              char buffer[256];
              int fd = open(argv[1], O_RDONLY|O_NOCTTY);
              assert(fd >= 0);
              assert(read(fd, buffer, 0) == 0);
              return 0;
          }

      Signed-off-by: Vincent Bernat <vincent@xxxxxxxxx>
      Signed-off-by: Eric Van Hensbergen <ericvh@xxxxxxxxx>

  commit cb9af418598b8f388844e1849014c689a048ce54
  Author: Fabian Frederick <fabf@xxxxxxxxx>
  Date:   Fri Jun 5 19:09:35 2015 +0200

      9p: remove unused option Opt_trans

      Commit 8a0dc95fd976
      ("9p: transport API reorganization")
      removed Opt_trans in tokens not in enum.

      Signed-off-by: Fabian Frederick <fabf@xxxxxxxxx>
      Signed-off-by: Eric Van Hensbergen <ericvh@xxxxxxxxx>

  commit 25cf68da08389bb107e5cba2cbfb3b6e4a246095
  Author: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
  Date:   Fri Aug 21 16:27:49 2015 -0400

      drivers/dma: make mv_xor.c driver explicitly non-modular

      The Kconfig for this driver is currently:

      config MV_XOR
              bool "Marvell XOR engine support"

      ...meaning that it currently is not being built as a module by anyone.
      Lets remove the modular code that is essentially orphaned, so that
      when reading the driver there is no doubt it is builtin-only.

      Since module_init translates to device_initcall in the non-modular
      case, the init ordering remains unchanged with this commit.

      We leave some tags like MODULE_AUTHOR for documentation purposes.
      Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code.

      Cc: Vinod Koul <vinod.koul@xxxxxxxxx>
      Cc: Dan Williams <dan.j.williams@xxxxxxxxx>
      Cc: dmaengine@xxxxxxxxxxxxxxx
      Signed-off-by: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 0e3b67b348b838d519b5d9ff30261f471d6371f2
  Author: Lars-Peter Clausen <lars@xxxxxxxxxx>
  Date:   Thu Aug 20 17:39:13 2015 +0200

      dmaengine: Add support for the Analog Devices AXI-DMAC DMA controller

      Add support for the Analog Devices AXI-DMAC DMA controller. This 
controller
      is a soft peripheral that can be instantiated in a FPGA and is often used
      in Analog Devices' reference designs for FPGA platforms.

      The peripheral has various configuration options that can be selected at
      synthesis time and influence the supported features of the instantiated
      peripheral, those options are represented as device-tree properties to
      allow the driver to behave accordingly.

      The peripheral has a zero latency architecture, which means it is possible
      to switch from one to the next descriptor without any delay. This is
      archived by having a internal queue which can hold multiple descriptors.
      The driver supports this, which means it will submit new descriptors
      directly to the hardware until the queue is full and not wait for a
      descriptor to complete before the next one is submitted. Interrupts are
      used for the descriptor queue flow control.

      Currently the driver supports SG, cyclic and interleaved slave DMA.

      Signed-off-by: Lars-Peter Clausen <lars@xxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 43bcad2bb485f053661e5cfe306c34178c6651c7
  Author: Lars-Peter Clausen <lars@xxxxxxxxxx>
  Date:   Thu Aug 20 17:39:12 2015 +0200

      devicetree: Add bindings documentation for Analog Devices AXI-DMAC

      Add the devicetree descriptor for the Analog Devices AXI-DMAC DMA
      controller. This is a soft peripheral used in FPGAs and the bindings
      describe how it is connected to the system (clock, interrupt, memory map)
      as well as the configuration options that were used when the peripheral 
was
      instantiated.

      Signed-off-by: Lars-Peter Clausen <lars@xxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit b2b48ac4c584ae31eb23ad1f86964cc6e52eaa54
  Merge: 76891cc ed9c87b
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Sun Aug 23 18:54:39 2015 +0530

      Merge branch 'topic/zxdma' into for-linus

  commit 76891cc8c4930e21b9bce226524f1b57756bc25e
  Merge: 59b0fbd 28eb232
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Sun Aug 23 18:54:31 2015 +0530

      Merge branch 'topic/ti-xbar' into for-linus

  commit 59b0fbdf15900abc57bd90f1cca1f6ff28b470c0
  Merge: 005ce70 35ca0ee
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Sun Aug 23 18:54:22 2015 +0530

      Merge branch 'topic/at_xdmac' into for-linus

  commit 47edb65178cb7056c2eea0b6c41a7d8c84547192
  Author: Andy Lutomirski <luto@xxxxxxxxxx>
  Date:   Thu Jul 23 12:14:40 2015 -0700

      x86/asm/msr: Make wrmsrl() a function

      As of cf991de2f614 ("x86/asm/msr: Make wrmsrl_safe() a
      function"), wrmsrl_safe is a function, but wrmsrl is still a
      macro.  The wrmsrl macro performs invalid shifts if the value
      argument is 32 bits. This makes it unnecessarily awkward to
      write code that puts an unsigned long into an MSR.

      To make this work, syscall_init needs tweaking to stop passing
      a function pointer to wrmsrl.

      Signed-off-by: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Brian Gerst <brgerst@xxxxxxxxx>
      Cc: Denys Vlasenko <dvlasenk@xxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Willy Tarreau <w@xxxxxx>
      Link: 
http://lkml.kernel.org/r/690f0c629a1085d054e2d1ef3da073cfb3f7db92.1437678821.git.luto@xxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 5865f3658ba37c54e346b0fdee08a1c7a152681b
  Author: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>
  Date:   Sun Aug 23 12:54:16 2015 +0300

      iwlwifi: mvm: bump firmware API to 17

      The driver is now able to handle -17.ucode.

      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit 4308c9b083fbab1a442e68a03de099841791df27
  Author: Jeeja KP <jeeja.kp@xxxxxxxxx>
  Date:   Sun Aug 23 11:52:51 2015 +0530

      ALSA: hdac: Add snd_hdac_get_hdac_stream()

      Add a helper to find the stream using stream tag and direction.
      This is useful for drivers to query stream based on stream tag
      and direction, fox example while downloading FW thru DSP loader
      code

      Signed-off-by: Jeeja KP <jeeja.kp@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 54d1d2f5f0886f7c31512c83a6ed87bbcd0d2b3a
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Sun Aug 23 11:52:50 2015 +0530

      ALSA: hdac: fix the spbmaxfifo API

      spbmaxfifo API is actually a query function not a set function so
      name it snd_hdac_ext_stream_get_spbmaxfifo()

      Reported-by: Pierre-Louis Bossart <pierre-louis.bossart@xxxxxxxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit e57690b1aeb208642d00f9b378830b26c9585caf
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Sun Aug 23 11:52:49 2015 +0530

      ALSA: hdac: Fix size allocation for ext device allocation

      While creating hdac_ext_device, we used hdev for sizeof insteadof
      edev, which resulted in eventual crash of the system Fix the size
      here

      Fixes: a512f5611646 ('ALSA: hdac: add hdac extended device')
      Reported-by: Subhransu S. Prusty <subhransu.s.prusty@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit da03f0296c0c122cb91ed3c87a7efa4ea5127f22
  Author: Johannes Berg <johannes.berg@xxxxxxxxx>
  Date:   Tue Aug 18 15:15:36 2015 +0200

      iwlwifi: mvm: support new TX power command

      Add support for the new (bigger) TX power command. This doesn't
      actually take advantage of the new capabilities (to set per-chain
      TX power limits) but makes the code compatible with newer firmware
      images expecting the larger command.

      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit a7b3bc91c5b0a6a7eecfd33ac71e266c6fe897f8
  Author: Ayala Beker <ayala.beker@xxxxxxxxx>
  Date:   Thu Aug 20 04:00:38 2015 +0300

      iwlwifi: mvm: split debug message to avoid exceeding 110 characters

      split long debug messages that may result warning in tracing.

      Fixes: 1a84e7716086 ("iwlwifi: mvm: add debug info to schedule scan 
complete message.")
      Signed-off-by: Ayala Beker <ayala.beker@xxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit 32c93a7057d600a06f96ff8997da1fadca65795a
  Author: Johannes Berg <johannes.berg@xxxxxxxxx>
  Date:   Wed Aug 19 16:51:33 2015 +0200

      iwlwifi: correctly size command string arrays

      The command string array is assumed to be indexable by a full u8, so it
      must have 256 entries (0-255), not just 255. A recent firmware change
      (apparently) started using the command 0xff for a notification to the
      host, causing the driver to crash in debug message/tracing code.

      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit ba537f98b5296cdb08ea98c23963201b3db14ed9
  Author: Sara Sharon <sara.sharon@xxxxxxxxx>
  Date:   Wed Aug 19 16:29:31 2015 +0300

      iwlwifi: mvm: update wakeup reason enum

      when waking from d0i3 there is a wakeup reason.
      Enum in driver is not up to date with FW api - fix it.

      Signed-off-by: Sara Sharon <sara.sharon@xxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit 8e8114dee2a9a767ca8abc1c2d6a94a3ca5d4c7f
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Fri Aug 21 11:48:21 2015 +0300

      iwlwifi: mvm: catch underflow error earlier

      My static checker complains that we don't check for underflows in
      iwl_dbgfs_fw_dbg_conf_write().  This is harmless because we have a
      sanity check in iwl_mvm_start_fw_dbg_conf(), but we may as well make
      this unsigned and silence the underflow warning.

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit d071c833a0d30e7aae0ea565d92ef83c79106d6f
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 19:39:38 2015 -0300

      [media] dvbdev: document most of the functions/data structs

      Document the most relevant functions and data structs for
      developers that are working with the DVB subsystem.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit e3dbc572fe11a5231568e106fa3dcedd1d1bec0f
  Merge: ce8c669 c63517c
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Sat Aug 22 14:57:59 2015 -0700

      Merge tag 'signed-kvm-ppc-next' of git://github.com/agraf/linux-2.6 into 
kvm-queue

      Patch queue for ppc - 2015-08-22

      Highlights for KVM PPC this time around:

        - Book3S: A few bug fixes
        - Book3S: Allow micro-threading on POWER8

  commit ce8c669e446371c1eb21b0566f6dfcb70ef3a435
  Merge: bc0195a 054167b
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Sat Aug 22 14:53:22 2015 -0700

      Merge tag 'kvm-arm-for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into kvm-queue

      KVM/ARM changes for 4.3

      - Full debug support for arm64
      - Active state switching for timer interrupts
      - Lazy FP/SIMD save/restore for arm64
      - Generic ARMv8 target

  commit 35848bf0aa6ba677458adfbde49ef73d10c9f381
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 14:20:25 2015 -0300

      [media] dvb_frontend.h: document the struct dvb_frontend

      That struct is used on every DVB Front End driver, as it
      contains what's needed to register/use a frontend at the
      Kernel.

      Document it.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit a3cccb2411a634b751771596bf21afc2d2bd5990
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 14:10:31 2015 -0300

      [media] dvb-frontend.h: document struct dtv_frontend_properties

      Most of the parameters here are already well defined at
      the userspace documentation. Yet, it is good to add some
      documentation, for the developers to be sure that they
      are the same as the ones at userspace API.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 0cfcc493a50ef6d8b2ceda3390be0306f319ed18
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 13:28:02 2015 -0300

      [media] dvb-frontend.h: document struct dvb_frontend_ops

      This is one of the most important functions of the DVB
      frontend, containing the logic needed to set the parameters
      at the demux and to send commands via SEC.

      Document it.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 27460adc07a3f84e671dec71ac553818d5988003
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 12:48:09 2015 -0300

      [media] dvb: Use DVBFE_ALGO_HW where applicable

      The dvb_frontend.c core defines a FE_ALGO_HW symbol that it is
      never used. Also, both cx24123 returns 1 to get_algo() callback
      instead of using DVBFE_ALGO_HW.

      Probably, those are some left overs from some code cleanup.

      Let's stop returning magic numbers and use the proper macro
      value.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 0bf6cd7bc5d6751386d5f092e8d3fd2537aac954
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 11:35:50 2015 -0300

      [media] dvb_frontend.h: document struct analog_demod_ops

      Add documentation for struct analog_demod_info and
      struct analog_demod_ops.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 465291a0eba9662a2ec597b96881dd92b034c30c
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 11:13:37 2015 -0300

      [media] dvb_frontend.h: Document struct dvb_tuner_ops

      The struct dvb_tuner_ops contains lots of callbacks used
      by tuners. Document them.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 1a77763428c7647e74347c1c5760440fe0cd0aea
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 09:58:26 2015 -0300

      [media] Docbook: Document struct analog_parameters

      That struct inside dvb-frontend.h stores some parameters
      from V4L2 API (videodev2.h), in order to be used by the
      hybrid analog/digital TV tuners.

      Document it.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 0c68b1ce850592fb5812e425cba6ab92951955a4
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 09:48:57 2015 -0300

      [media] dvb_frontend.h: get rid of dvbfe_modcod

      This enum is not used anymore, as drivers use the
      modulation definitions from the public API. It is probably
      a left over from some DVB core cleanup.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 8bcbc2f32e3388c6b899fd8c662be471ef609b2a
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 09:48:05 2015 -0300

      [media] add documentation for struct dvb_tuner_info

      Despite being used everywhere at DVB frontends, the
      struct dvb_tuner_info were never documented.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit d6e9b704d9553ee9d54baddcc6d9b63a4574f272
  Author: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
  Date:   Sat Aug 22 09:04:50 2015 +0530

      ata: pata_arasam_cf: Use devm_clk_get

      This patch introduces the use of managed resource function
      devm_clk_get instead of clk_get and removes corresponding call
      to clk_put in the remove function.

      To be compatible with the change various gotos are replaced with
      direct returns, and unneeded label is dropped.

      Signed-off-by: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>

  commit 5839a5506de30c23d4cfaf49755cd294f5c48368
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Aug 21 22:05:58 2015 +0300

      perf tools: Fix tarball build broken by pt/bts

      Fix some include paths and add missing inat_types.h.

      Reported-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: http://lkml.kernel.org/r/55D77696.60102@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 69786cdb379bbc6eab14cf2393c1abd879316e85
  Author: Andrey Ryabinin <ryabinin.a.a@xxxxxxxxx>
  Date:   Thu Aug 13 08:37:24 2015 +0300

      x86/kasan, mm: Introduce generic kasan_populate_zero_shadow()

      Introduce generic kasan_populate_zero_shadow(shadow_start,
      shadow_end). This function maps kasan_zero_page to the
      [shadow_start, shadow_end] addresses.

      This replaces x86_64 specific populate_zero_shadow() and will
      be used for ARM64 in follow on patches.

      The main changes from original version are:

       * Use p?d_populate*() instead of set_p?d()
       * Use memblock allocator directly instead of vmemmap_alloc_block()
       * __pa() instead of __pa_nodebug(). __pa() causes troubles
         iff we use it before kasan_early_init(). kasan_populate_zero_shadow()
         will be used later, so we ok with __pa() here.

      Signed-off-by: Andrey Ryabinin <ryabinin.a.a@xxxxxxxxx>
      Acked-by: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: Alexander Potapenko <glider@xxxxxxxxxx>
      Cc: Alexey Klimov <klimov.linux@xxxxxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Aneesh Kumar K.V <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: David Keitel <dkeitel@xxxxxxxxxxxxxx>
      Cc: Dmitry Vyukov <dvyukov@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Cc: Yury <yury.norov@xxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: linux-mm@xxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1439444244-26057-3-git-send-email-ryabinin.a.a@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 920e277e17f12870188f4564887a95ae9ac03e31
  Author: Andrey Ryabinin <ryabinin.a.a@xxxxxxxxx>
  Date:   Thu Aug 13 08:37:23 2015 +0300

      x86/kasan: Define KASAN_SHADOW_OFFSET per architecture

      Current definition of  KASAN_SHADOW_OFFSET in
      include/linux/kasan.h will not work for upcomming arm64, so move
      it to the arch header.

      Signed-off-by: Andrey Ryabinin <ryabinin.a.a@xxxxxxxxx>
      Cc: Alexander Potapenko <glider@xxxxxxxxxx>
      Cc: Alexey Klimov <klimov.linux@xxxxxxxxx>
      Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Cc: Aneesh Kumar K.V <aneesh.kumar@xxxxxxxxxxxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Catalin Marinas <catalin.marinas@xxxxxxx>
      Cc: David Keitel <dkeitel@xxxxxxxxxxxxxx>
      Cc: Dmitry Vyukov <dvyukov@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Cc: Yury <yury.norov@xxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: linux-mm@xxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1439444244-26057-2-git-send-email-ryabinin.a.a@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit b466bdb614823aaaa7188e85516177d2850f4782
  Author: Huang Rui <ray.huang@xxxxxxx>
  Date:   Mon Aug 10 12:19:54 2015 +0200

      x86/asm/delay: Introduce an MWAITX-based delay with a configurable timer

      MWAITX can enable a timer and a corresponding timer value
      specified in SW P0 clocks. The SW P0 frequency is the same as
      TSC. The timer provides an upper bound on how long the
      instruction waits before exiting.

      This way, a delay function in the kernel can leverage that
      MWAITX timer of MWAITX.

      When a CPU core executes MWAITX, it will be quiesced in a
      waiting phase, diminishing its power consumption. This way, we
      can save power in comparison to our default TSC-based delays.

      A simple test shows that:

        $ cat /sys/bus/pci/devices/0000\:00\:18.4/hwmon/hwmon0/power1_acc
        $ sleep 10000s
        $ cat /sys/bus/pci/devices/0000\:00\:18.4/hwmon/hwmon0/power1_acc

      Results:

        * TSC-based default delay:      485115 uWatts average power
        * MWAITX-based delay:           252738 uWatts average power

      Thus, that's about 240 milliWatts less power consumption. The
      test method relies on the support of AMD CPU accumulated power
      algorithm in fam15h_power for which patches are forthcoming.

      Suggested-by: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Suggested-by: Borislav Petkov <bp@xxxxxxx>
      Suggested-by: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Signed-off-by: Huang Rui <ray.huang@xxxxxxx>
      [ Fix delay truncation. ]
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Cc: Aaron Lu <aaron.lu@xxxxxxxxx>
      Cc: Andreas Herrmann <herrmann.der.user@xxxxxxxxx>
      Cc: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@xxxxxxx>
      Cc: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Cc: Frédéric Weisbecker <fweisbec@xxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Hector Marco-Gisbert <hecmargi@xxxxxx>
      Cc: Jacob Shin <jacob.w.shin@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: John Stultz <john.stultz@xxxxxxxxxx>
      Cc: Len Brown <lenb@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
      Cc: Rafael J. Wysocki <rjw@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tony Li <tony.li@xxxxxxx>
      Link: 
http://lkml.kernel.org/r/1438744732-1459-3-git-send-email-ray.huang@xxxxxxx
      Link: 
http://lkml.kernel.org/r/1439201994-28067-4-git-send-email-bp@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit f96756746c7909de37db3d03ac5fd5cfb2757f38
  Author: Huang Rui <ray.huang@xxxxxxx>
  Date:   Mon Aug 10 12:19:53 2015 +0200

      x86/asm: Add MONITORX/MWAITX instruction support

      AMD Carrizo processors (Family 15h, Models 60h-6fh) added a new
      feature called MWAITX (MWAIT with extensions) as an extension to
      MONITOR/MWAIT.

      This new instruction controls a configurable timer which causes
      the core to exit wait state on timer expiration, in addition to
      "normal" MWAIT condition of reading from a monitored VA.

      Compared to MONITOR/MWAIT, there are minor differences in opcode
      and input parameters:

      MWAITX ECX[1]: enable timer if set
      MWAITX EBX[31:0]: max wait time expressed in SW P0 clocks ==
      TSC. The software P0 frequency is the same as the TSC frequency.

                      MWAIT                           MWAITX
      opcode          0f 01 c9           |            0f 01 fb
      ECX[0]                  value of RFLAGS.IF seen by instruction
      ECX[1]          unused/#GP if set  |            enable timer if set
      ECX[31:2]                     unused/#GP if set
      EAX                           unused (reserve for hint)
      EBX[31:0]       unused             |            max wait time (SW P0 == 
TSC)

                      MONITOR                         MONITORX
      opcode          0f 01 c8           |            0f 01 fa
      EAX                     (logical) address to monitor
      ECX                     #GP if not zero

      Max timeout = EBX/(TSC frequency)

      Signed-off-by: Huang Rui <ray.huang@xxxxxxx>
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Cc: Aaron Lu <aaron.lu@xxxxxxxxx>
      Cc: Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx>
      Cc: Andreas Herrmann <herrmann.der.user@xxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: Dirk Brandewie <dirk.j.brandewie@xxxxxxxxx>
      Cc: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Cc: Frédéric Weisbecker <fweisbec@xxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: John Stultz <john.stultz@xxxxxxxxxx>
      Cc: Josh Triplett <josh@xxxxxxxxxxxxxxxx>
      Cc: Len Brown <lenb@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Mike Galbraith <bitbucket@xxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Rafael J. Wysocki <rjw@xxxxxxxxxxxxx>
      Cc: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tony Li <tony.li@xxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439201994-28067-3-git-send-email-bp@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit b9de1726b52d0c1dc07d90fd6a63fca49ea8b5b9
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 09:47:04 2015 -0300

      [media] dvb_frontend: document dvb_frontend_tune_settings

      Add Documentation for dvb_frontend_tune_settings struct.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 04ffb9c126d6d887b08b68bbe0c0842ec9def78d
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 09:22:25 2015 -0300

      [media] DocBook: Better organize media devices

      Instead of putting all media devices on a flat structure,
      split them on 4 types, just like we do with the userspace API:
        Video2Linux devices
        Digital TV (DVB) devices
        Remote Controller devices
        Media Controller devices

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 98d00bd7a2477ffce8010458938425095345f470
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 09:04:46 2015 -0300

      [media] v4l2-mediabus: Add to DocBook

      Fix the format of the comments and add to DocBook.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit b6836a6fbc4b7e35679bf7bb8b54bad294ae0b10
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 09:01:58 2015 -0300

      [media] videobuf2-memops.h: add to device-drivers DocBook

      The comment metadata was wrong:

      Warning(.//include/media/videobuf2-memops.h:25): cannot understand 
function prototype: 'struct vb2_vmarea_handler '
      Warning(.//include/media/videobuf2-memops.h): no structured comments found

      Fix and add to DocBook.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit d78757e780f1845dd5c9615169f7401c7d0d1a66
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 08:57:02 2015 -0300

      [media] videobuf2-core: Add it to device-drivers DocBook

      Most of the stuff at videobuf2-core are ok for adding it to
      DocBook.

      Two notes here:
      1) As videobuf2-core will be soon be changed, better to
         not spend too much efforts right now, as things will
         change soon;

      2) struct vb2_queue has a number of private elements that are
         documented. As Kernel nano documentation format handles
         "private:" arguments, we need to put them on a separate
         comment block or to remove. Keeping the comments is
         obviously better ;)

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 506bb54bdb0898e046e62751d761a5592966a637
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 08:36:13 2015 -0300

      [media] v4l-dv-timings.h: Add to device-drivers DocBook

      There are already markups for documentation at v4l-dv-timings.h,
      however, they're not properly formatted.

      Convert them to the right format and add this file to
      the device-drivers DocBook.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit b6fce850d9fa46eefdaa7ef28ac1f3fce7c803d2
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 08:28:39 2015 -0300

      [media] v4l2-event.h: fix comments and add to DocBook

      The comments there are good enough for DocBook, however they're
      using a wrong format. Fix and add to device-drivers.xml.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 7dc879190f55f4ecb12c754fb0f11a596e478fd1
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 08:22:03 2015 -0300

      [media] v4l2-ctrls.h: Document a few missing arguments

      Warning(.//include/media/v4l2-ctrls.h:217): No description found for 
parameter 'p_new'
      Warning(.//include/media/v4l2-ctrls.h:217): No description found for 
parameter 'p_cur'
      Warning(.//include/media/v4l2-ctrls.h:217): Excess 
struct/union/enum/typedef member 'val64' description in 'v4l2_ctrl'
      Warning(.//include/media/v4l2-ctrls.h:314): No description found for 
parameter 'qmenu_int'

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 276ce3a860d3c119e472abcfa75351c703f8722f
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 08:21:10 2015 -0300

      [media] v4l2-ctls: don't document v4l2_ctrl_fill()

      This is an obsolete function that has several missing
      arguments:
        Warning(.//include/media/v4l2-ctrls.h:340): No description found for 
parameter 'id'
        Warning(.//include/media/v4l2-ctrls.h:340): No description found for 
parameter 'name'
        Warning(.//include/media/v4l2-ctrls.h:340): No description found for 
parameter 'type'
        Warning(.//include/media/v4l2-ctrls.h:340): No description found for 
parameter 'min'
        Warning(.//include/media/v4l2-ctrls.h:340): No description found for 
parameter 'max'
        Warning(.//include/media/v4l2-ctrls.h:340): No description found for 
parameter 'step'
        Warning(.//include/media/v4l2-ctrls.h:340): No description found for 
parameter 'def'
        Warning(.//include/media/v4l2-ctrls.h:340): No description found for 
parameter 'flags'

      However, this is an obsolete function that should be
      removed soon. And are not meant to be used anymore. So,
      instead of documenting those stuff, let's just make
      DocBook to not handle it, by replacing "/**" by "/*".

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 8c2721d57a4bac055ae7bb1874a13a928277d5ff
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 08:03:49 2015 -0300

      [media] v4l2-ctrls.h: add to device-drivers DocBook

      The comments there are using a wrong format. Due to that,
      DocBook were unable to parse it.

      Fix the tags format, and add it to device-drivers.xml.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 2a86e373e0cf926f5cb41725f1b0ce3874e7b1cf
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 07:38:51 2015 -0300

      [media] DocBook: add dvb_ringbuffer.h to documentation

      There are already some comments at dvb_ringbuffer.h that are ready
      for DocBook, although not properly formatted.

      Convert them, fix some issues and add this file to
      the device-drivers DocBook.

      While here, put multi-line comments on the right format.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit e08bb6f79fa0b9bf94ea44a306d1528172d788af
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 07:37:28 2015 -0300

      [media] DocBook: add dvb_math.h to documentation

      There are already some comments at dvb_math.h that are ready
      for DocBook, although not properly formatted.

      Convert them, fix some issues and add this file to
      the device-drivers DocBook.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 4f1c1868e8d4e493d66b8e11eebbc95abdbaf444
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 07:19:20 2015 -0300

      [media] DocBook: add dvb_frontend.h to documentation

      There are already some comments at dvb_frontend.h that are ready
      for DocBook, although not properly formatted.

      Convert them, and add this file to the device-drivers DocBook.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit f47f966fbe0aaff4ebbdb83d95acdfa5d3c20477
  Author: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
  Date:   Sun Jul 19 22:53:52 2015 +0530

      cxl: Remove use of macro DEFINE_PCI_DEVICE_TABLE

      Macro DEFINE_PCI_DEVICE_TABLE is deprecated. So, here use
      struct pci_device_id instead of DEFINE_PCI_DEVICE_TABLE with
      the goal of getting rid of this macro completely.

      The Coccinelle semantic patch that performs this transformation
      is as follows:

      @@
      identifier a;
      declarer name DEFINE_PCI_DEVICE_TABLE;
      initializer i;
      @@
      - DEFINE_PCI_DEVICE_TABLE(a)
      + const struct pci_device_id a[]
      = i;

      Signed-off-by: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
      Acked-by: Michael Neuling <mikey@xxxxxxxxxxx>
      Acked-by: Ian Munsie <imunsie@xxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 5d53be7d8c7ccf8eec1ce66c6b3573c01d16b755
  Author: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
  Date:   Sat Aug 22 09:33:55 2015 +1000

      powerpc/powernv: Fix mis-merge of OPAL support for LEDS driver

      When I merged the OPAL support for the powernv LEDS driver I missed a
      hunk.

      This is slightly modified from the original patch, as the original added
      code to opal-api.h which is not in the skiboot version, which is
      discouraged.

      Instead those values are moved into the driver, which is the only place
      they are used.

      Fixes: 8a8d91817aec ("powerpc/powernv: Add OPAL interfaces for accessing 
and modifying system LED states")
      Reviewed-by: Vasant Hegde <hegdevasant@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit fbefb1a87c7e6e24df6ca5b42b42985e2680c2ea
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 07:09:29 2015 -0300

      [media] DocBook: add dvb_ca_en50221.h to documentation

      There are already some tags at dvb_ca_en50221.h, but using a
      different format. Convert them, fix a few entries and add
      to the device-drivers DocBook.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 1d8955b2c3fa476a1222b020349937c93a8e4762
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 06:59:26 2015 -0300

      [media] v4l2-subdev: add remaining argument descriptions

      Warning(.//include/media/v4l2-subdev.h:203): No description found for 
parameter 'ioctl'
      Warning(.//include/media/v4l2-subdev.h:203): No description found for 
parameter 'compat_ioctl32'
      Warning(.//include/media/v4l2-subdev.h:203): No description found for 
parameter 'subscribe_event'
      Warning(.//include/media/v4l2-subdev.h:203): No description found for 
parameter 'unsubscribe_event'
      Warning(.//include/media/v4l2-subdev.h:273): No description found for 
parameter 's_stream'
      Warning(.//include/media/v4l2-subdev.h:407): No description found for 
parameter 's_stream'
      Warning(.//include/media/v4l2-subdev.h:623): No description found for 
parameter 'link_validate'
      Warning(.//include/media/v4l2-subdev.h:623): No description found for 
parameter 'set_frame_desc'

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit e44cc20a1d0952835e2fc01706b609ee8a3d9d92
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 06:34:06 2015 -0300

      [media] v4l2_subdev: describe ioctl parms at the remaining structs

      Fixes the following warnings:

      Warning(.//include/media/v4l2-subdev.h:445): No description found for 
parameter 'g_sliced_vbi_cap'
      Warning(.//include/media/v4l2-subdev.h:589): No description found for 
parameter 'enum_mbus_code'
      Warning(.//include/media/v4l2-subdev.h:589): No description found for 
parameter 'enum_frame_size'
      Warning(.//include/media/v4l2-subdev.h:589): No description found for 
parameter 'enum_frame_interval'
      Warning(.//include/media/v4l2-subdev.h:589): No description found for 
parameter 'get_fmt'
      Warning(.//include/media/v4l2-subdev.h:589): No description found for 
parameter 'set_fmt'
      Warning(.//include/media/v4l2-subdev.h:589): No description found for 
parameter 'get_selection'
      Warning(.//include/media/v4l2-subdev.h:589): No description found for 
parameter 'set_selection'
      Warning(.//include/media/v4l2-subdev.h:589): No description found for 
parameter 'get_edid'
      Warning(.//include/media/v4l2-subdev.h:589): No description found for 
parameter 'set_edid'
      Warning(.//include/media/v4l2-subdev.h:589): No description found for 
parameter 'dv_timings_cap'
      Warning(.//include/media/v4l2-subdev.h:589): No description found for 
parameter 'enum_dv_timings'

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 914728ab609f7160a1b6d2a3be1edd8f6b2cf88e
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 06:18:13 2015 -0300

      [media] v4l2_subdev: describe ioctl parms at v4l2_subdev_video_ops

      Warning(.//include/media/v4l2-subdev.h:381): No description found for 
parameter 'g_std'
      Warning(.//include/media/v4l2-subdev.h:381): No description found for 
parameter 's_std'
      Warning(.//include/media/v4l2-subdev.h:381): No description found for 
parameter 'querystd'
      Warning(.//include/media/v4l2-subdev.h:381): No description found for 
parameter 'cropcap'
      Warning(.//include/media/v4l2-subdev.h:381): No description found for 
parameter 'g_crop'
      Warning(.//include/media/v4l2-subdev.h:381): No description found for 
parameter 's_crop'
      Warning(.//include/media/v4l2-subdev.h:381): No description found for 
parameter 'g_parm'
      Warning(.//include/media/v4l2-subdev.h:381): No description found for 
parameter 's_parm'
      Warning(.//include/media/v4l2-subdev.h:381): No description found for 
parameter 'g_frame_interval'
      Warning(.//include/media/v4l2-subdev.h:381): No description found for 
parameter 's_frame_interval'
      Warning(.//include/media/v4l2-subdev.h:381): No description found for 
parameter 's_dv_timings'
      Warning(.//include/media/v4l2-subdev.h:381): No description found for 
parameter 'g_dv_timings'
      Warning(.//include/media/v4l2-subdev.h:381): No description found for 
parameter 'query_dv_timings'

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit b84aeb03a886beef39f80e30b76d30a833dd8161
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 06:12:35 2015 -0300

      [media] v4l2-subdev: reorder the v4l2_subdev_video_ops comments

      The comments for struct v4l2_subdev_video_ops are out of the
      order as the parameter would appear at struct. This is not
      a problem for DocBook, but humans find harder to mentally
      reorder ;)

      So, put them at the right order. That makes easier to check
      what's missing, and to put the comments in the right place.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 91963aae9a65286eea30ca810027ddc09b26e779
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 06:07:29 2015 -0300

      [media] v4l2-subdev: Add description for radio ioctl handlers

      Warning(.//include/media/v4l2-subdev.h:224): No description found for 
parameter 's_radio'
      Warning(.//include/media/v4l2-subdev.h:224): No description found for 
parameter 's_frequency'
      Warning(.//include/media/v4l2-subdev.h:224): No description found for 
parameter 'enum_freq_bands'
      Warning(.//include/media/v4l2-subdev.h:224): No description found for 
parameter 'g_tuner'
      Warning(.//include/media/v4l2-subdev.h:224): No description found for 
parameter 'g_modulator'
      Warning(.//include/media/v4l2-subdev.h:224): No description found for 
parameter 's_modulator'

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 783001adf99b432a31acb2a4c198da8846d8dcc3
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 06:00:22 2015 -0300

      [media] v4l2-subdev: Add description for core ioctl handlers

      Warning(.//include/media/v4l2-subdev.h:183): No description found for 
parameter 'queryctrl'
      Warning(.//include/media/v4l2-subdev.h:183): No description found for 
parameter 'g_ctrl'
      Warning(.//include/media/v4l2-subdev.h:183): No description found for 
parameter 's_ctrl'
      Warning(.//include/media/v4l2-subdev.h:183): No description found for 
parameter 'g_ext_ctrls'
      Warning(.//include/media/v4l2-subdev.h:183): No description found for 
parameter 's_ext_ctrls'
      Warning(.//include/media/v4l2-subdev.h:183): No description found for 
parameter 'try_ext_ctrls'
      Warning(.//include/media/v4l2-subdev.h:183): No description found for 
parameter 'querymenu'
      Warning(.//include/media/v4l2-subdev.h:183): No description found for 
parameter 'g_register'
      Warning(.//include/media/v4l2-subdev.h:183): No description found for 
parameter 's_register'

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit a3b3a9db5d26bef1e62054c95c3d7701de5110d5
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Sat Aug 22 12:24:13 2015 +0300

      ALSA: hdsp: silence a sprinft() overflow warning

      card->shortname is a 32 char string so the sprintf() can theoretically
      overflow.  snd_rawmidi_new() can accept strings up to 64 bytes long.

      I have made the temporay buf[] array 40 bytes long and changed the
      sprintf() to snprintf().

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 488ca7d72d974e3c00ae73ed9f947590680bdf00
  Author: Tim Chen <tim.c.chen@xxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 14:56:46 2015 -0700

      x86/cpufeatures: Enable cpuid for Intel SHA extensions

      Add Intel CPUID for Intel Secure Hash Algorithm Extensions. This feature
      provides new instructions for accelerated computation of SHA-1 and 
SHA-256.
      This allows the feature to be shown in the /proc/cpuinfo for cpus that
      support it.

      Refer to SHA extension programming guide in chapter 8.2 of the Intel
      Architecture Instruction Set Extensions Programming reference
      for definition of this feature's cpuid: CPUID.(EAX=07H, ECX=0):EBX.SHA 
[bit 29] = 1
      
https://software.intel.com/sites/default/files/managed/07/b7/319433-023.pdf

      Originally-by: Chandramouli Narayanan <mouli_7982@xxxxxxxxx>
      Signed-off-by: Tim Chen <tim.c.chen@xxxxxxxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
      Cc: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
      Link: http://lkml.kernel.org/r/1440194206.3940.6.camel@schen9-mobl2
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit c63517c2e3810071359af926f621c1f784388c3f
  Author: Sam bobroff <sam.bobroff@xxxxxxxxxxx>
  Date:   Wed May 27 09:56:57 2015 +1000

      KVM: PPC: Book3S: correct width in XER handling

      In 64 bit kernels, the Fixed Point Exception Register (XER) is a 64
      bit field (e.g. in kvm_regs and kvm_vcpu_arch) and in most places it is
      accessed as such.

      This patch corrects places where it is accessed as a 32 bit field by a
      64 bit kernel.  In some cases this is via a 32 bit load or store
      instruction which, depending on endianness, will cause either the
      lower or upper 32 bits to be missed.  In another case it is cast as a
      u32, causing the upper 32 bits to be cleared.

      This patch corrects those places by extending the access methods to
      64 bits.

      Signed-off-by: Sam Bobroff <sam.bobroff@xxxxxxxxxxx>
      Reviewed-by: Laurent Vivier <lvivier@xxxxxxxxxx>
      Reviewed-by: Thomas Huth <thuth@xxxxxxxxxx>
      Tested-by: Thomas Huth <thuth@xxxxxxxxxx>
      Signed-off-by: Alexander Graf <agraf@xxxxxxx>

  commit 563a1e93afac4d2c135072461fbab418b9dff43f
  Author: Paul Mackerras <paulus@xxxxxxxxx>
  Date:   Thu Jul 16 17:11:14 2015 +1000

      KVM: PPC: Book3S HV: Fix preempted vcore stolen time calculation

      Whenever a vcore state is VCORE_PREEMPT we need to be counting stolen
      time for it.  This currently isn't the case when we have a vcore that
      no longer has any runnable threads in it but still has a runner task,
      so we do an explicit call to kvmppc_core_start_stolen() in that case.

      Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>
      Signed-off-by: Alexander Graf <agraf@xxxxxxx>

  commit 402813fe39db66e8f3be2a1b5b62dd664e33f6b8
  Author: Paul Mackerras <paulus@xxxxxxxxx>
  Date:   Thu Jul 16 17:11:13 2015 +1000

      KVM: PPC: Book3S HV: Fix preempted vcore list locking

      When a vcore gets preempted, we put it on the preempted vcore list for
      the current CPU.  The runner task then calls schedule() and comes back
      some time later and takes itself off the list.  We need to be careful
      to lock the list that it was put onto, which may not be the list for the
      current CPU since the runner task may have moved to another CPU.

      Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>
      Signed-off-by: Alexander Graf <agraf@xxxxxxx>

  commit cdeee51842b55acb3e699a4083fa97e82384e456
  Author: Paul Mackerras <paulus@xxxxxxxxx>
  Date:   Wed Jun 24 21:18:07 2015 +1000

      KVM: PPC: Book3S HV: Implement H_CLEAR_REF and H_CLEAR_MOD

      This adds implementations for the H_CLEAR_REF (test and clear reference
      bit) and H_CLEAR_MOD (test and clear changed bit) hypercalls.

      When clearing the reference or change bit in the guest view of the HPTE,
      we also have to clear it in the real HPTE so that we can detect future
      references or changes.  When we do so, we transfer the R or C bit value
      to the rmap entry for the underlying host page so that kvm_age_hva_hv(),
      kvm_test_age_hva_hv() and kvmppc_hv_get_dirty_log() know that the page
      has been referenced and/or changed.

      These hypercalls are not used by Linux guests.  These implementations
      have been tested using a FreeBSD guest.

      Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>
      Signed-off-by: Alexander Graf <agraf@xxxxxxx>

  commit 08fe1e7bd216339501c4eb0d0df0f413d715327a
  Author: Paul Mackerras <paulus@xxxxxxxxx>
  Date:   Wed Jun 24 21:18:06 2015 +1000

      KVM: PPC: Book3S HV: Fix bug in dirty page tracking

      This fixes a bug in the tracking of pages that get modified by the
      guest.  If the guest creates a large-page HPTE, writes to memory
      somewhere within the large page, and then removes the HPTE, we only
      record the modified state for the first normal page within the large
      page, when in fact the guest might have modified some other normal
      page within the large page.

      To fix this we use some unused bits in the rmap entry to record the
      order (log base 2) of the size of the page that was modified, when
      removing an HPTE.  Then in kvm_test_clear_dirty_npages() we use that
      order to return the correct number of modified pages.

      The same thing could in principle happen when removing a HPTE at the
      host's request, i.e. when paging out a page, except that we never
      page out large pages, and the guest can only create large-page HPTEs
      if the guest RAM is backed by large pages.  However, we also fix
      this case for the sake of future-proofing.

      The reference bit is also subject to the same loss of information.  We
      don't make the same fix here for the reference bit because there isn't
      an interface for userspace to find out which pages the guest has
      referenced, whereas there is one for userspace to find out which pages
      the guest has modified.  Because of this loss of information, the
      kvm_age_hva_hv() and kvm_test_age_hva_hv() functions might incorrectly
      say that a page has not been referenced when it has, but that doesn't
      matter greatly because we never page or swap out large pages.

      Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>
      Signed-off-by: Alexander Graf <agraf@xxxxxxx>

  commit 1e5bf454f58731e360e504253e85bae7aaa2d298
  Author: Paul Mackerras <paulus@xxxxxxxxx>
  Date:   Wed Jun 24 21:18:05 2015 +1000

      KVM: PPC: Book3S HV: Fix race in reading change bit when removing HPTE

      The reference (R) and change (C) bits in a HPT entry can be set by
      hardware at any time up until the HPTE is invalidated and the TLB
      invalidation sequence has completed.  This means that when removing
      a HPTE, we need to read the HPTE after the invalidation sequence has
      completed in order to obtain reliable values of R and C.  The code
      in kvmppc_do_h_remove() used to do this.  However, commit 6f22bd3265fb
      ("KVM: PPC: Book3S HV: Make HTAB code LE host aware") removed the
      read after invalidation as a side effect of other changes.  This
      restores the read of the HPTE after invalidation.

      The user-visible effect of this bug would be that when migrating a
      guest, there is a small probability that a page modified by the guest
      and then unmapped by the guest might not get re-transmitted and thus
      the destination might end up with a stale copy of the page.

      Fixes: 6f22bd3265fb
      Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>
      Signed-off-by: Alexander Graf <agraf@xxxxxxx>

  commit b4deba5c41e9f6d3239606c9e060853d9decfee1
  Author: Paul Mackerras <paulus@xxxxxxxxx>
  Date:   Thu Jul 2 20:38:16 2015 +1000

      KVM: PPC: Book3S HV: Implement dynamic micro-threading on POWER8

      This builds on the ability to run more than one vcore on a physical
      core by using the micro-threading (split-core) modes of the POWER8
      chip.  Previously, only vcores from the same VM could be run together,
      and (on POWER8) only if they had just one thread per core.  With the
      ability to split the core on guest entry and unsplit it on guest exit,
      we can run up to 8 vcpu threads from up to 4 different VMs, and we can
      run multiple vcores with 2 or 4 vcpus per vcore.

      Dynamic micro-threading is only available if the static configuration
      of the cores is whole-core mode (unsplit), and only on POWER8.

      To manage this, we introduce a new kvm_split_mode struct which is
      shared across all of the subcores in the core, with a pointer in the
      paca on each thread.  In addition we extend the core_info struct to
      have information on each subcore.  When deciding whether to add a
      vcore to the set already on the core, we now have two possibilities:
      (a) piggyback the vcore onto an existing subcore, or (b) start a new
      subcore.

      Currently, when any vcpu needs to exit the guest and switch to host
      virtual mode, we interrupt all the threads in all subcores and switch
      the core back to whole-core mode.  It may be possible in future to
      allow some of the subcores to keep executing in the guest while
      subcore 0 switches to the host, but that is not implemented in this
      patch.

      This adds a module parameter called dynamic_mt_modes which controls
      which micro-threading (split-core) modes the code will consider, as a
      bitmap.  In other words, if it is 0, no micro-threading mode is
      considered; if it is 2, only 2-way micro-threading is considered; if
      it is 4, only 4-way, and if it is 6, both 2-way and 4-way
      micro-threading mode will be considered.  The default is 6.

      With this, we now have secondary threads which are the primary thread
      for their subcore and therefore need to do the MMU switch.  These
      threads will need to be started even if they have no vcpu to run, so
      we use the vcore pointer in the PACA rather than the vcpu pointer to
      trigger them.

      It is now possible for thread 0 to find that an exit has been
      requested before it gets to switch the subcore state to the guest.  In
      that case we haven't added the guest's timebase offset to the
      timebase, so we need to be careful not to subtract the offset in the
      guest exit path.  In fact we just skip the whole path that switches
      back to host context, since we haven't switched to the guest context.

      Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>
      Signed-off-by: Alexander Graf <agraf@xxxxxxx>

  commit ec257165082616841a354dd915801ed43e3553be
  Author: Paul Mackerras <paulus@xxxxxxxxx>
  Date:   Wed Jun 24 21:18:03 2015 +1000

      KVM: PPC: Book3S HV: Make use of unused threads when running guests

      When running a virtual core of a guest that is configured with fewer
      threads per core than the physical cores have, the extra physical
      threads are currently unused.  This makes it possible to use them to
      run one or more other virtual cores from the same guest when certain
      conditions are met.  This applies on POWER7, and on POWER8 to guests
      with one thread per virtual core.  (It doesn't apply to POWER8 guests
      with multiple threads per vcore because they require a 1-1 virtual to
      physical thread mapping in order to be able to use msgsndp and the
      TIR.)

      The idea is that we maintain a list of preempted vcores for each
      physical cpu (i.e. each core, since the host runs single-threaded).
      Then, when a vcore is about to run, it checks to see if there are
      any vcores on the list for its physical cpu that could be
      piggybacked onto this vcore's execution.  If so, those additional
      vcores are put into state VCORE_PIGGYBACK and their runnable VCPU
      threads are started as well as the original vcore, which is called
      the master vcore.

      After the vcores have exited the guest, the extra ones are put back
      onto the preempted list if any of their VCPUs are still runnable and
      not idle.

      This means that vcpu->arch.ptid is no longer necessarily the same as
      the physical thread that the vcpu runs on.  In order to make it easier
      for code that wants to send an IPI to know which CPU to target, we
      now store that in a new field in struct vcpu_arch, called thread_cpu.

      Reviewed-by: David Gibson <david@xxxxxxxxxxxxxxxxxxxxx>
      Tested-by: Laurent Vivier <lvivier@xxxxxxxxxx>
      Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>
      Signed-off-by: Alexander Graf <agraf@xxxxxxx>

  commit 845ac985cf8e3d52939dbe2446d91e47e91a07b6
  Author: Tudor Laurentiu <b10716@xxxxxxxxxxxxx>
  Date:   Mon May 18 15:44:27 2015 +0300

      KVM: PPC: add missing pt_regs initialization

      On this switch branch the regs initialization
      doesn't happen so add it.
      This was found with the help of a static
      code analysis tool.

      Signed-off-by: Laurentiu Tudor <Laurentiu.Tudor@xxxxxxxxxxxxx>
      Signed-off-by: Alexander Graf <agraf@xxxxxxx>

  commit 5358a96341a7fba23cbf0eaf01ce1ab4d738fc90
  Author: Thomas Huth <thuth@xxxxxxxxxx>
  Date:   Fri May 22 09:25:02 2015 +0200

      KVM: PPC: Fix warnings from sparse

      When compiling the KVM code for POWER with "make C=1", sparse
      complains about functions missing proper prototypes and a 64-bit
      constant missing the ULL prefix. Let's fix this by making the
      functions static or by including the proper header with the
      prototypes, and by appending a ULL prefix to the constant
      PPC_MPPE_ADDRESS_MASK.

      Signed-off-by: Thomas Huth <thuth@xxxxxxxxxx>
      Signed-off-by: Alexander Graf <agraf@xxxxxxx>

  commit 129fd4233b62159d50c35fb6489cb22ee9c27415
  Author: Thomas Huth <thuth@xxxxxxxxxx>
  Date:   Fri May 22 11:41:01 2015 +0200

      KVM: PPC: Remove PPC970 from KVM_BOOK3S_64_HV text in Kconfig

      Since the PPC970 support has been removed from the kvm-hv kernel
      module recently, we should also reflect this change in the help
      text of the corresponding Kconfig option.

      Signed-off-by: Thomas Huth <thuth@xxxxxxxxxx>
      Signed-off-by: Alexander Graf <agraf@xxxxxxx>

  commit f5ffe330f5e63325000f58ed982a159c512f6db3
  Author: Tudor Laurentiu <b10716@xxxxxxxxxxxxx>
  Date:   Mon May 25 11:48:39 2015 +0300

      KVM: PPC: fix suspicious use of conditional operator

      This was signaled by a static code analysis tool.

      Signed-off-by: Laurentiu Tudor <Laurentiu.Tudor@xxxxxxxxxxxxx>
      Reviewed-by: Scott Wood <scottwood@xxxxxxxxxxxxx>
      Signed-off-by: Alexander Graf <agraf@xxxxxxx>

  commit f0a97af83f6287357dcc100c859ec0066f164f32
  Author: Andy Lutomirski <luto@xxxxxxxxxx>
  Date:   Thu Aug 20 22:03:21 2015 -0700

      x86/traps: Weaken context tracking entry assertions

      We were asserting that we were all the way in CONTEXT_KERNEL
      when exception handlers were called.  While having this be true
      is, I think, a nice goal (or maybe a variant in which we assert
      that we're in CONTEXT_KERNEL or some new IRQ context), we're not
      quite there.

      In particular, if an IRQ interrupts the SYSCALL prologue and the
      IRQ handler in turn causes an exception, the exception entry
      will be called in RCU IRQ mode but with CONTEXT_USER.

      This is okay (nothing goes wrong), but until we fix up the
      SYSCALL prologue, we need to avoid warning.

      Signed-off-by: Andy Lutomirski <luto@xxxxxxxxxx>
      Acked-by: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Brian Gerst <brgerst@xxxxxxxxx>
      Cc: Denys Vlasenko <dvlasenk@xxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Oleg Nesterov <oleg@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/c81faf3916346c0e04346c441392974f49cd7184.1440133286.git.luto@xxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 5c6629847cf6641984b1808707b43772db4e4403
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 05:40:29 2015 -0300

      [media] v4l2-subdev: convert documentation to the right format

      struct v4l2_subdev_core_ops has some kernel-doc-nano documentation
      using a wrong format, with affects the number of stuff reported at
      the DocBook device-drivers.xml.

      Properly mark the such comment blocks using the right notation.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 85e1cd6e769dfc84995270d0a4838021fcb8602d
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Sat Aug 22 01:10:47 2015 -0700

      hrtimer: Handle failure of tick_init_highres() gracefully

      Commit 75e3b37d0598 ("hrtimer: Drop return code of 
hrtimer_switch_to_hres()")
      drops the return code of hrtimer_switch_to_hres(). While doing so, it also
      drops the return statement itself on failure. This may cause a system 
hang.
      Seen when running arm:multi_v7_defconfig in qemu with devicetree file
      vexpress-v2p-ca9.

      Fixes: 75e3b37d0598 ("hrtimer: Drop return code of 
hrtimer_switch_to_hres()")
      Cc: Luiz Capitulino <lcapitulino@xxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440231047-16256-1-git-send-email-linux@xxxxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 62c0d016dab0ffd3cd28f10236186ef341ddece8
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 05:34:40 2015 -0300

      [media] Docbook: Fix comments at v4l2-mem2mem.h

      Warning(.//include/media/v4l2-mem2mem.h:50): No description found for 
parameter 'lock'
      Warning(.//include/media/v4l2-mem2mem.h:50): No description found for 
parameter 'unlock'
      Warning(.//include/media/v4l2-mem2mem.h:167): No description found for 
parameter 'm2m_ctx'
      Warning(.//include/media/v4l2-mem2mem.h:177): No description found for 
parameter 'm2m_ctx'
      Warning(.//include/media/v4l2-mem2mem.h:188): No description found for 
parameter 'm2m_ctx'
      Warning(.//include/media/v4l2-mem2mem.h:197): No description found for 
parameter 'm2m_ctx'
      Warning(.//include/media/v4l2-mem2mem.h:206): No description found for 
parameter 'm2m_ctx'
      Warning(.//include/media/v4l2-mem2mem.h:215): No description found for 
parameter 'm2m_ctx'
      Warning(.//include/media/v4l2-mem2mem.h:226): No description found for 
parameter 'm2m_ctx'
      Warning(.//include/media/v4l2-mem2mem.h:235): No description found for 
parameter 'm2m_ctx'

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 62ba6b22f4bb99dbf53c5a0ac43b24c00c0fc86a
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 05:28:44 2015 -0300

      [media] Docbook: fix comments at v4l2-flash-led-class.h

      Warning(.//include/media/v4l2-flash-led-class.h:51): bad line:            
                unique in the system
      Warning(.//include/media/v4l2-flash-led-class.h:56): bad line:            
                definitions are available in the header file
      Warning(.//include/media/v4l2-flash-led-class.h:57): bad line:            
                <linux/led-class-flash.h>
      Warning(.//include/media/v4l2-flash-led-class.h:122): No description 
found for parameter 'ops'
      Warning(.//include/media/v4l2-flash-led-class.h:122): Excess function 
parameter 'flash_ops' description in 'v4l2_flash_init'
      Warning(.//include/media/v4l2-flash-led-class.h:130): No description 
found for parameter 'v4l2_flash'
      Warning(.//include/media/v4l2-flash-led-class.h:130): Excess function 
parameter 'flash' description in 'v4l2_flash_release'

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit fa810845efc4d3c0f159a3e7a35f009e0249c857
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 05:25:45 2015 -0300

      [media] Docbook: Fix s_rx_carrier_range parameter description

      Warning(.//include/media/rc-core.h:178): No description found for 
parameter 's_rx_carrier_range'
      Warning(.//include/media/rc-core.h:178): Excess struct/union/enum/typedef 
member 's_rx_carrier' description in 'rc_dev'

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit f8b27377076e4405a25bdb40ee32ef7a0b261573
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 05:16:24 2015 -0300

      [media] Docbook: Fix  comments at v4l2-async.h

      Warning(.//include/media/v4l2-async.h:62): No description found for 
parameter 'match_type'
      Warning(.//include/media/v4l2-async.h:62): Excess 
struct/union/enum/typedef member 'bus_type' description in 'v4l2_async_subdev'
      Warning(.//include/media/v4l2-async.h:76): cannot understand function 
prototype: 'struct v4l2_async_notifier '

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 5240f4e68d4209588194ea1db60f7c822e2a1c6f
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 05:02:21 2015 -0300

      [media] DocBook/media/Makefile: Avoid make htmldocs to fail

      If make is called twice like that:
        make V=1 DOCBOOKS=device-drivers.xml htmldocs

      Make will fail with:

        make -f ./scripts/Makefile.build obj=scripts/basic
        rm -f .tmp_quiet_recordmcount
        make -f ./scripts/Makefile.build obj=scripts build_docproc
        make -f ./scripts/Makefile.build obj=Documentation/DocBook htmldocs
        rm -rf Documentation/DocBook/index.html; echo '<h1>Linux Kernel HTML 
Documentation</h1>' >> Documentation/DocBook/index.html && echo '<h2>Kernel 
Version: 4.2.0-rc2</h2>' >> Documentation/DocBook/index.html && cat 
Documentation/DocBook/device-drivers.html >> Documentation/DocBook/index.html
        cp ./Documentation/DocBook//bayer.png 
./Documentation/DocBook//constraints.png ./Documentation/DocBook//crop.gif 
./Documentation/DocBook//dvbstb.png ./Documentation/DocBook//fieldseq_bt.gif 
./Documentation/DocBook//fieldseq_tb.gif ./Documentation/DocBook//nv12mt.gif 
./Documentation/DocBook//nv12mt_example.gif 
./Documentation/DocBook//pipeline.png ./Documentation/DocBook//selection.png 
./Documentation/DocBook//vbi_525.gif ./Documentation/DocBook//vbi_625.gif 
./Documentation/DocBook//vbi_hsync.gif ./Documentation/DocBook/media/*.svg 
./Documentation/DocBook/media/v4l/*.svg ./Documentation/DocBook//media_api
        cp: target './Documentation/DocBook//media_api' is not a directory
        Documentation/DocBook/Makefile:53: recipe for target 'htmldocs' failed

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit ec0255cad2dace5be54cc52010bb07fdb5628e1e
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 22 04:45:03 2015 -0300

      [media] Docbook: Fix description of struct media_devnode

      Warning(.//include/media/media-devnode.h:80): No description found for 
parameter 'fops'
      Warning(.//include/media/media-devnode.h:80): No description found for 
parameter 'dev'
      Warning(.//include/media/media-devnode.h:80): No description found for 
parameter 'cdev'
      Warning(.//include/media/media-devnode.h:80): No description found for 
parameter 'release'

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit dc2c8bd3c9a44ed38d9af6c7243fdddc42ec391a
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 14:17:13 2015 -0300

      [media] DocBook/device-drivers: Add drivers/media core stuff

      There are lots of docbook marks at the media subsystem, but
      those aren't used.

      Add the core headers/code in order to start generating docs.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 88c25dcb1185f2c7041550976430e27fa9d8dcca
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 13:37:54 2015 -0300

      [media] DocBook: fix an unbalanced <para> tag

      The </para> got lost on some change at the DVB docbook, making
      the tag unbalanced and causing a warning. Fix it.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 0e53909a1cf0153736fb52c216558a65530d8c40
  Merge: 82819ff 1c0bd0e
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Sat Aug 22 08:45:46 2015 +0200

      Merge tag 'perf-core-for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core

      Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:

      User visible changes:

        - Fix segfault using 'perf script --show-mmap-events', affects
          only current perf/core. (Adrian Hunter)

        - /proc/kcore requires CAP_SYS_RAWIO message too noisy, make it
          debug only. (Adrian Hunter)

        - Fix Intel PT timestamp handling. (Adrian Hunter)

        - Add Intel BTS support, with a call-graph script to show it and
          PT in use in a GUI using 'perf script' python scripting with
          postgresql and Qt. (Adrian Hunter)

        - Add checks for returned EVENT_ERROR type in libtraceevent, fixing
          a bug that surfaced on arm64 systems. (Dean Nelson)

        - Fallback to using kallsyms when libdw fails to handle a vmlinux file,
          that can happen, for instance, when perf is statically linked and
          then libdw fails to load libebl_{arch}.so. (Wang Nan)

      Infrastructure changes:

        - Initialize reference counts in map__clone(). (Arnaldo Carvalho de 
Melo)

      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit dac2ddefe62841efc0b6cdcb0bbf3e3594aa01bf
  Author: Chao Yu <chao2.yu@xxxxxxxxxxx>
  Date:   Wed Aug 19 19:16:09 2015 +0800

      f2fs: lookup neighbor extent nodes for merging later

      In __lookup_extent_tree_ret we will not try to find neighbor nodes if
      we find the target node, in this condition, we will lost the chance to
      merge the new mapping with exist extent node later.

      So our extent cache of inode will be fragmented after overwrite exist
      file, we can see the number of extent node increases intensively in
      following test case:

      dd if=/dev/zero of=/mnt/f2fs/4m bs=4K count=1024

      Extent Cache:
        - Hit Count: L1-1:0 L1-2:0 L2:0
        - Hit Ratio: 0% (0 / 3072)
        - Inner Struct Count: tree: 1, node: 1

      dd if=/dev/zero of=/mnt/f2fs/4m bs=4K count=1024 conv=notrunc

      Extent Cache:
        - Hit Count: L1-1:2048 L1-2:0 L2:0
        - Hit Ratio: 33% (2048 / 6144)
        - Inner Struct Count: tree: 1, node: 961

      This patch fixes to lookup neighbors of target node for further
      merging.

      Signed-off-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit ef05e221995057a8588cad675992ca2cb47e9891
  Author: Chao Yu <chao2.yu@xxxxxxxxxxx>
  Date:   Wed Aug 19 19:15:09 2015 +0800

      f2fs: split __insert_extent_tree_ret for readability

      This patch splits __insert_extent_tree_ret into __try_merge_extent_node &
      __insert_extent_tree for code readability.

      Signed-off-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit a6f7834594a284316b38d0885b2ee1ab47899dbc
  Author: Chao Yu <chao2.yu@xxxxxxxxxxx>
  Date:   Wed Aug 19 19:14:15 2015 +0800

      f2fs: kill dead code in __insert_extent_tree

      After commit 0f825ee6e873 ("f2fs: add new interfaces for extent tree"),
      f2fs_init_extent_tree becomes the only caller of __insert_extent_tree, and
      in f2fs_init_extent_tree, we will only insert extent node in an empty 
tree,
      so __try_{back,front}_merge in __insert_extent_tree will never be called.

      This patch removes these dead codes, besides, rename __insert_extent_tree
      to __init_extent_tree for readability.

      Signed-off-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 029e13cc3221be4bc46909225142277fee52c37e
  Author: Chao Yu <chao2.yu@xxxxxxxxxxx>
  Date:   Wed Aug 19 19:13:25 2015 +0800

      f2fs: adjust showing of extent cache stat

      This patch alters to replace total hit stat with rbtree hit stat,
      and then adjust showing of extent cache stat:

      Hit Count:
      L1-1: for largest node hit count;
      L1-2: for last cached node hit count;
      L2: for extent node hit after lookuping in rbtree.

      Hit Ratio:
      ratio (hit count / total lookup count)

      Inner Struct Count:
      tree count, node count.

      Before:
      Extent Hit Ratio: 0 / 2

      Extent Tree Count: 3

      Extent Node Count: 2

      Patched:
      Exten Cacache:
        - Hit Count: L1-1:4871 L1-2:2074 L2:208
        - Hit Ratio: 1% (7153 / 550751)
        - Inner Struct Count: tree: 26560, node: 11824

      Signed-off-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 91c481fff92c705dd382f1f53c01e6b6b88507d0
  Author: Chao Yu <chao2.yu@xxxxxxxxxxx>
  Date:   Wed Aug 19 19:12:20 2015 +0800

      f2fs: add largest/cached stat in extent cache

      This patch adds to stat the hit count of largest/cached node for showing
      in debugfs.

      Signed-off-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit e2b4e2bc8865e03eecd49caa9713a2402a96bba9
  Author: Chao Yu <chao2.yu@xxxxxxxxxxx>
  Date:   Wed Aug 19 19:11:19 2015 +0800

      f2fs: fix incorrect mapping for bmap

      The test step is like below:
      1. touch file
      2. truncate -s $((1024*1024)) file
      3. fallocate -o 0 -l $((1024*1024)) file
      4. fibmap.f2fs file

      Our result of fibmap.f2fs showed below is not correct:

      file_pos   start_blk     end_blk        blks
             0    -937166132    -937166132           1
          4096    -937166132    -937166132           1
          8192    -937166132    -937166132           1
         12288    -937166132    -937166132           1
         16384    -937166132    -937166132           1
         20480    -937166132    -937166132           1
      ...
       1040384    -937166132    -937166132           1
       1044480    -937166132    -937166132           1

      This is because f2fs_map_blocks will return with no error when meeting
      a hole or preallocated block, the caller __get_data_block will map the
      uninitialized variable value to bh->b_blocknr.

      Unfortunately generic_block_bmap will neither check the return value of
      get_data() nor check mapping info of buffer_head, result in returning
      the random block address.

      After fixing the issue, our result shows correctly:

      file_pos   start_blk     end_blk        blks
             0           0           0         256

      Signed-off-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit c031f6a904975d5fa84c541333cce444a21ca713
  Author: Chao Yu <chao2.yu@xxxxxxxxxxx>
  Date:   Wed Aug 19 19:02:02 2015 +0800

      f2fs: add annotation for space utilization of regular/inline dentry

      Add annotation to let us know more clearly about space utilization
      information of regular dentry and inline dentry.

      Signed-off-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit f8b703da2c23f9bfda7299bd14e4f7201c2be3c8
  Author: Fan Li <fanofcode.li@xxxxxxxxxxx>
  Date:   Tue Aug 18 17:13:13 2015 +0800

      f2fs: fix to update cached_en of extent tree properly

      In f2fs_lookup_extent_tree, et->cached_en was read and updated with only
      read lock held,
      it could cause __lookup_extent_tree within return entirely wrong
      extent_node, if other
      thread update et->cached_en just before __lookup_extent_tree return.

      However, there are two things about this patch that need to be noticed:
      1. It does no good to arrange the order of concurrent read/write, the 
result
      would still
      be random in such case.
      2. It's built on this assumption: the mix up of reads and writes on a 
single
      pointer would
      not make the pointer partially wrong at any time. Please let me know if 
I'm
      wrong, thx.

      Signed-off-by: Fan li <fanofcode.li@xxxxxxxxxxx>
      Reviewed-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 217940d4f0c4ec4f0852f7046fa419d0edf65c17
  Author: Junesung Lee <junesoung412@xxxxxxxxx>
  Date:   Tue Aug 18 22:42:15 2015 +0900

      f2fs: fix typo

      Fix typo.

      Signed-off-by: Junesung Lee <junesoung412@xxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit d1d97b76c4af41c8e836e73742c91cbf97d7483c
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 09:07:16 2015 +0200

      mtd: dataflash: Export OF module alias information

      The SPI core currently reports the MODALIAS uevent as "spi:<modalias>"
      even for SPI devices that were registered by OF.

      That means the OF module alias exported by MODULE_OF_TABLE(of,...) is
      currently not used and user-space has no way to autoload this module.

      But it is still a good practice to add the OF module alias information
      into the kernel module even when it currently is unused so once the SPI
      core is changed to report a correct OF modalias uevent, module
      autoloading will be working for this driver.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 1a3232d2f61d2853a848464b7bde2d54960c58bb
  Author: Mengdong Lin <mengdong.lin@xxxxxxxxx>
  Date:   Tue Aug 18 18:12:20 2015 +0800

      ASoC: topology: Add support for TLV bytes controls

      Allow vendor drivers to define bespoke bytes ext handlers and IDs for
      TLV bytes controls. And the topology core will bind these handlers by
      matching IDs defined by the vendor driver and user space topology
      data file.

      And TLV callback binding is moved to soc_tplg_kcontrol_bind_io(). This
      function process all handler binding now.

      Signed-off-by: Mengdong Lin <mengdong.lin@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 2b5cdb9156f76162d5302e2847f84a79de8a3ad1
  Author: Mengdong Lin <mengdong.lin@xxxxxxxxx>
  Date:   Tue Aug 18 18:12:01 2015 +0800

      ASoC: topology: Reduce arguments of soc_tplg_kcontrol_bind_io()

      Add the pointer of struct soc_tplg as one argument, so no need to
      pass standard/vendor specific kcontrol handlers and their count.

      Signed-off-by: Mengdong Lin <mengdong.lin@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 88a17d8fb7c4a156ec13e6668b46dbbedf670ff7
  Author: Mengdong Lin <mengdong.lin@xxxxxxxxx>
  Date:   Tue Aug 18 18:11:51 2015 +0800

      ASoC: topology: Bind vendor specific kcontrol handlers before standard 
ones

      Vendor specific handlers should override standard handlers. So we can
      handle things in the order from specific to generic.

      Signed-off-by: Mengdong Lin <mengdong.lin@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit d033de5ceee8333e4fee3d59a956244d3736102a
  Merge: 1a8e7fa f7644cb
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Fri Aug 21 15:26:37 2015 -0700

      Merge tag 'v4.2-rc6' into asoc-topology

      Linux 4.2-rc6

  commit a887adadb7b9ef9eb4ee48e4ad575aefcfd1db14
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Fri Aug 21 18:07:38 2015 -0400

      drm/amdgpu: Don't link train DisplayPort on HPD until we get the dpcd

      This is a port of:
      DRM - radeon: Don't link train DisplayPort on HPD until we get the dpcd
      to amdgpu.

      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 924f92bf12bfbef3662619e3ed24a1cea7c1cbcd
  Author: Stephen Chandler Paul <cpaul@xxxxxxxxxx>
  Date:   Fri Aug 21 14:16:12 2015 -0400

      DRM - radeon: Don't link train DisplayPort on HPD until we get the dpcd

      Most of the time this isn't an issue since hotplugging an adaptor will
      trigger a crtc mode change which in turn, causes the driver to probe
      every DisplayPort for a dpcd. However, in cases where hotplugging
      doesn't cause a mode change (specifically when one unplugs a monitor
      from a DisplayPort connector, then plugs that same monitor back in
      seconds later on the same port without any other monitors connected), we
      never probe for the dpcd before starting the initial link training. What
      happens from there looks like this:

        - GPU has only one monitor connected. It's connected via
          DisplayPort, and does not go through an adaptor of any sort.

        - User unplugs DisplayPort connector from GPU.

        - Change in HPD is detected by the driver, we probe every
          DisplayPort for a possible connection.

        - Probe the port the user originally had the monitor connected
          on for it's dpcd. This fails, and we clear the first (and only
          the first) byte of the dpcd to indicate we no longer have a
          dpcd for this port.

        - User plugs the previously disconnected monitor back into the
          same DisplayPort.

        - radeon_connector_hotplug() is called before everyone else,
          and tries to handle the link training. Since only the first
          byte of the dpcd is zeroed, the driver is able to complete
          link training but does so against the wrong dpcd, causing it
          to initialize the link with the wrong settings.

        - Display stays blank (usually), dpcd is probed after the
          initial link training, and the driver prints no obvious
          messages to the log.

      In theory, since only one byte of the dpcd is chopped off (specifically,
      the byte that contains the revision information for DisplayPort), it's
      not entirely impossible that this bug may not show on certain monitors.
      For instance, the only reason this bug was visible on my ASUS PB238
      monitor was due to the fact that this monitor using the enhanced framing
      symbol sequence, the flag for which is ignored if the radeon driver
      thinks that the DisplayPort version is below 1.1.

      Signed-off-by: Stephen Chandler Paul <cpaul@xxxxxxxxxx>
      Reviewed-by: Jerome Glisse <jglisse@xxxxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 116984a316c3a3200f8a7912110cc4a6d6c0989e
  Author: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>
  Date:   Fri Aug 21 21:34:08 2015 +0200

      netfilter: xt_TEE: use IS_ENABLED(CONFIG_NF_DUP_IPV6)

      Instead of IS_ENABLED(CONFIG_IPV6), otherwise we hit:

      et/built-in.o: In function `tee_tg6':
      >> xt_TEE.c:(.text+0x6cd8c): undefined reference to `nf_dup_ipv6'

      when:

       CONFIG_IPV6=y
       CONFIG_NF_DUP_IPV4=y
       # CONFIG_NF_DUP_IPV6 is not set
       CONFIG_NETFILTER_XT_TARGET_TEE=y

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit 59e26423e00263b6b06b39d219147f22610ce5d6
  Author: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>
  Date:   Fri Aug 21 21:28:10 2015 +0200

      netfilter: nf_dup: fix sparse warnings

      >> net/ipv4/netfilter/nft_dup_ipv4.c:29:37: sparse: incorrect type in 
initializer (different base types)
         net/ipv4/netfilter/nft_dup_ipv4.c:29:37:    expected restricted __be32 
[user type] s_addr
         net/ipv4/netfilter/nft_dup_ipv4.c:29:37:    got unsigned int 
[unsigned] <noident>

      >> net/ipv6/netfilter/nf_dup_ipv6.c:48:23: sparse: incorrect type in 
assignment (different base types)
         net/ipv6/netfilter/nf_dup_ipv6.c:48:23:    expected restricted __be32 
[addressable] [assigned] [usertype] flowlabel
         net/ipv6/netfilter/nf_dup_ipv6.c:48:23:    got int

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit dc25b25897289bad4907f30151ffe5baf75ff369
  Merge: 1a69205 0bad909
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Fri Aug 21 11:44:04 2015 -0700

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

      Conflicts:
        drivers/net/usb/qmi_wwan.c

      Overlapping additions of new device IDs to qmi_wwan.c

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1a69205c471221a7f9101df164642611e37c52e4
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Fri Aug 21 11:38:41 2015 -0700

      enic: Fix build failure with SRIOV disabled.

      err_out_vnic_unregister is used regardless of whether
      SRIOV is enabled or not.

      Reported-by: Jesse Brandeburg <jesse.brangeburg@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c5f58f2d700ef484fc2fbaa9c624c6076109f989
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 10:26:40 2015 +0200

      regmap: Add missing comments about struct regmap_bus

      There are some fields of this struct undocumented or old. This patch
      updates the missing comments.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit f09d4f26f6192ec9b060047cc7126e01980bb36c
  Author: Jeeja KP <jeeja.kp@xxxxxxxxx>
  Date:   Fri Aug 21 21:36:21 2015 +0530

      ALSA: hdac: Remove the usage of key for host stream

      hdac_ext_stream assign doesn't require key mapping as in case of
      hdac_stream. So for host stream, the key to device mapping needs
      to be removed.

      Signed-off-by: Jeeja KP <jeeja.kp@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit ee8bc4df1b5a9df1ede13975c40dec7009214595
  Author: Jeeja KP <jeeja.kp@xxxxxxxxx>
  Date:   Fri Aug 21 21:36:20 2015 +0530

      ALSA: hdac: Add support to enable SPIB for hdac ext stream

      The drivers need to set the spib and maxfifios values, so add
      these new APIs snd_hdac_ext_stream_set_spib() and
      snd_hdac_ext_stream_set_spbmaxfifo() APIs

      For these APIs we also need to have spib and fifos pointer, so
      add these to hdac_ext_stream and initialize them at stream init

      Signed-off-by: Jeeja KP <jeeja.kp@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit c5b0c09b8fa3e02d9cbfd9445fb4114becdd3390
  Author: Jeeja KP <jeeja.kp@xxxxxxxxx>
  Date:   Fri Aug 21 21:36:18 2015 +0530

      ALSA: hdac: Add snd_hdac_ext_bus_link_power_down_all()

      New HDA controllers like Skylake sport multiple HDA links, so we need a
      helper to turn off all the links in one go while suspending the device so
      add snd_hdac_ext_bus_link_power_down_all() API

      Signed-off-by: Jeeja KP <jeeja.kp@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit a7e3dd85cab1c6990cafd0bedb0b8809f15149b0
  Author: Jeeja KP <jeeja.kp@xxxxxxxxx>
  Date:   Fri Aug 21 21:36:17 2015 +0530

      ALSA: hdac: Fix to read the correct offset of spcap/link register

      SPCAP and Mutilink register offset were incorrect as offset needs
      to be based on capability offset. So correct the offset for
      read/write of spcap/link register.

      Signed-off-by: Jeeja KP <jeeja.kp@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 9bc07dfbcde5b6f3aefa06b902b47eef9769d260
  Author: Lars-Peter Clausen <lars@xxxxxxxxxx>
  Date:   Fri Aug 21 09:48:33 2015 +0200

      ALSA: ac97: Switch to dev_pm_ops

      Convert the ac97_bus from legacy suspend/resume callbacks to dev_pm_ops.

      Since there isn't anything special to do at the bus level the bus driver
      does not have to implement any callbacks. The device driver core will
      automatically pick up and execute the device's PM ops.

      As there is only a single AC'97 driver implementing suspend and resume,
      update both the core and driver at the same time to avoid unnecessary code
      churn.

      While we are at it also drop the ifdefs around the suspend/resume 
functions
      to increase compile test coverage.

      Signed-off-by: Lars-Peter Clausen <lars@xxxxxxxxxx>
      Acked-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 00833d70ca29a9d60c694b9475a9d3327ed9461e
  Merge: fa4f18b f6b28e4
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Fri Aug 21 19:26:48 2015 +0200

      Merge branch 'for-linus' into for-next

  commit c4fe57f76269dbb2af135071513f260ca40229a3
  Author: Michael van der Westhuizen <michael@xxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 22:21:53 2015 +0200

      spi: dw: Allow interface drivers to limit data I/O to word sizes

      The commit dd11444327ce ("spi: dw-spi: Convert 16bit accesses to 32bit
      accesses") changed all 16bit accesses in the DW_apb_ssi driver to 32bit.
      This, unfortunately, breaks data register access on picoXcell, where the
      DW IP needs data register accesses to be word accesses (all other
      accesses appear to be OK).

      This change introduces a new master variable to allow interface drivers
      to specify that 16bit data transfer I/O is required.  This change also
      introduces the ability to set this variable via device tree bindings in
      the MMIO interface driver.  Both the core and the MMIO interface driver
      default to the current 32bit behaviour.

      Before this change, on a picoXcell pc3x3:
       spi_master spi32766: interrupt_transfer: fifo overrun/underrun
       m25p80 spi32766.0: error -5 reading 9f
       m25p80: probe of spi32766.0 failed with error -5

      After this change:
       m25p80 spi32766.0: m25p40 (512 Kbytes)

      Fixes: dd11444327ce ("spi: dw-spi: Convert 16bit accesses to 32bit 
accesses")
      Signed-off-by: Michael van der Westhuizen <michael@xxxxxxxxxxxxxxxx>
      Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 4b226fbde68b8bfb66452067523a677b8e6492fa
  Author: Michael van der Westhuizen <michael@xxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 22:21:52 2015 +0200

      dt: snps,dw-apb-ssi: Document new I/O data register width property

      This change documents a new property for the snps,dw-apb-ssi device,
      allowing an implementer to specify either four byte or two bytes
      access to the SPI controller data register.

      This supports a change that unbreaks this driver on picoXcell
      platforms.

      Signed-off-by: Michael van der Westhuizen <michael@xxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 7dc9fbc342deb2e2658ebdecb5ffd7ff57945a66
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Thu Aug 20 11:52:18 2015 -0700

      spi: Fall back to master maximum speed if no slave speed specified

      If a slave appears with no maximum transfer speed specified fall back to
      using the maximum for the master instead.  It's questionable if we
      should let slaves do this but let's be defensive.

      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit f4be3c67ed5829462f53e225edd95029bb0793c4
  Merge: 99650c2 17cdddf
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Fri Aug 21 10:15:29 2015 -0700

      Merge tag 'tegra-for-4.3-dt' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/dt

      ARM: tegra: Devicetree changes for v4.3-rc1

      Enables CPU frequency scaling on Jetson TK1 and enables the GK20A GPU on
      Venice2 and Jetson TK1. This also enables support for the PMU hardware
      found on Tegra124, which among other things, can be used for performance
      measurements.

      * tag 'tegra-for-4.3-dt' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
        ARM: tegra: Add gpio-ranges property
        ARM: tegra: Fix AHB base address on Tegra20, Tegra30 and Tegra114
        ARM: tegra: Add Tegra124 PMU support
        ARM: tegra: jetson-tk1: Add GK20A GPU DT node
        ARM: tegra: venice2: Add GK20A GPU DT node
        ARM: tegra: Add IOMMU node to GK20A
        ARM: tegra: Add CPU regulator to the Jetson TK1 device tree
        ARM: tegra: Add entries for cpufreq on Tegra124
        ARM: tegra: Enable the DFLL on the Jetson TK1
        ARM: tegra: Add the DFLL to Tegra124 device tree
        pinctrl: tegra: Only set the gpio range if needed
        clk: tegra: Add the DFLL as a possible parent of the cclk_g clock
        clk: tegra: Save/restore CCLKG_BURST_POLICY on suspend
        clk: tegra: Add Tegra124 DFLL clocksource platform driver
        clk: tegra: Add DFLL DVCO reset control for Tegra124
        clk: tegra: Introduce ability for SoC-specific reset control callbacks
        clk: tegra: Add functions for parsing CVB tables
        clk: tegra: Add closed loop support for the DFLL
        clk: tegra: Add library for the DFLL clock source (open-loop mode)
        clk: tegra: Add binding for the Tegra124 DFLL clocksource

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 3a9508b0221dfd290b95fb0ab199958fe078bbdf
  Author: Chris Mason <clm@xxxxxx>
  Date:   Fri Aug 21 10:05:39 2015 -0700

      btrfs: fix compile when block cgroups are not enabled

      bio->bi_css and bio->bi_ioc don't exist when block cgroups are not on.
      This adds an ifdef around them.  It's not perfect, but our
      use of bi_ioc is being removed in the 4.3 merge window.

      The bi_css usage really should go into bio_clone, but I want to make
      sure that doesn't introduce problems for other bio_clone use cases.

      Signed-off-by: Chris Mason <clm@xxxxxx>

  commit 17cdddf0fb684f5456c1af3aa2c10aca3b68b8de
  Author: Tomeu Vizoso <tomeu.vizoso@xxxxxxxxxxxxx>
  Date:   Tue Jul 14 10:29:56 2015 +0200

      ARM: tegra: Add gpio-ranges property

      Specify how the GPIOs map to the pins in Tegra SoCs, so the dependency is
      explicit.

      Signed-off-by: Tomeu Vizoso <tomeu.vizoso@xxxxxxxxxxxxx>
      Acked-by: Stephen Warren <swarren@xxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 0d5ccb38d19574fecfa471205317d37221ec59a7
  Author: Nicolas Chauvet <kwizart@xxxxxxxxx>
  Date:   Sat Aug 8 15:58:12 2015 +0200

      ARM: tegra: Fix AHB base address on Tegra20, Tegra30 and Tegra114

      Current base address is wrong by 0x04 bytes for AHB bus device as shown
      in dmesg:

        tegra-ahb 6000c004.ahb: incorrect AHB base address in DT data - 
enabling workaround

      To correct old DTBs, commit ce7a10b0ff3d ("ARM: 8334/1: amba: tegra-ahb:
      detect and correct bogus base address") checks for the low bit of the
      base address and removes theses 0x04 bytes at runtime.

      This patch fixes the original DTS, so upstream version doesn't need the
      workaround of the base address.

      As both addresses are valid, this patch doesn't break compatibility.

      Tested on tegra20-paz00 (aka ac100).

      Signed-off-by: Nicolas Chauvet <kwizart@xxxxxxxxx>
      Reviewed-by: Paul Walmsley <paul@xxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 82fe42f5d7b01848a6fc2aee150a4050ca56b1e0
  Author: Kyle Huey <me@xxxxxxxxxxxx>
  Date:   Mon Jul 13 10:35:45 2015 -0700

      ARM: tegra: Add Tegra124 PMU support

      This patch modifies the device tree for Tegra124 based devices to enable
      the Cortex A15 PMU. The interrupt numbers are taken from NVIDIA Tegra K1
      TRM (DP-06905-001_v03p). This patch was tested on a Jetson TK1.

      Signed-off-by: Kyle Huey <khuey@xxxxxxxxxxxx>
      Acked-by: Mark Rutland <mark.rutland@xxxxxxx>
      Acked-by: Jon Hunter <jonathanh@xxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 21fa196fc0f4b79abb923042cb89651ca47b4b92
  Author: Alexandre Courbot <acourbot@xxxxxxxxxx>
  Date:   Wed Jul 1 18:13:47 2015 +0900

      ARM: tegra: jetson-tk1: Add GK20A GPU DT node

      Add the device-tree node for the GK20A GPU and leave it disabled.
      It is the responsibility of the bootloader to enable it if the
      VPR registers have been programmed such that the GPU can operate.

      Signed-off-by: Alexandre Courbot <acourbot@xxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit e34cc1b6b7115de2320c2acdb62c82ebeb502c01
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Jul 1 18:13:46 2015 +0900

      ARM: tegra: venice2: Add GK20A GPU DT node

      Add the device-tree node for the GK20A GPU and leave it disabled.
      It is the responsibility of the bootloader to enable it if the
      VPR registers have been programmed such that the GPU can operate.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Alexandre Courbot <acourbot@xxxxxxxxxx>

  commit c96cd17708cfcffc9ccf2132fdcb360fa04f092f
  Author: Alexandre Courbot <acourbot@xxxxxxxxxx>
  Date:   Wed Jul 1 18:13:45 2015 +0900

      ARM: tegra: Add IOMMU node to GK20A

      Nouveau can make use of the IOMMU to make physical appear linear in the
      GPU address space.

      Signed-off-by: Alexandre Courbot <acourbot@xxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit ee9f106feafcf73dd56872718ec20ee1f787da1b
  Author: Mikko Perttunen <mikko.perttunen@xxxxxxxx>
  Date:   Wed May 13 17:58:50 2015 +0300

      ARM: tegra: Add CPU regulator to the Jetson TK1 device tree

      Specify the CPU voltage regulator for the cpufreq driver.

      Signed-off-by: Tuomas Tynkkynen <ttynkkynen@xxxxxxxxxx>
      Signed-off-by: Mikko Perttunen <mikko.perttunen@xxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 0de088cc3463d451ca96439c723cc58932430820
  Author: Tuomas Tynkkynen <ttynkkynen@xxxxxxxxxx>
  Date:   Wed May 13 17:58:49 2015 +0300

      ARM: tegra: Add entries for cpufreq on Tegra124

      The Tegra124 cpufreq driver relies on certain clocks being present
      in the /cpus/cpu@0 node.

      Signed-off-by: Tuomas Tynkkynen <ttynkkynen@xxxxxxxxxx>
      Signed-off-by: Mikko Perttunen <mikko.perttunen@xxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 9be1e477c31437907d0db4fa72d7c2920dfdeec8
  Author: Tuomas Tynkkynen <ttynkkynen@xxxxxxxxxx>
  Date:   Wed May 13 17:58:45 2015 +0300

      ARM: tegra: Enable the DFLL on the Jetson TK1

      Add the board-specific properties of the DFLL for the Jetson TK1 board.
      On this board, the DFLL will take control of the sd0 regulator on the
      on-board AS3722 PMIC.

      Signed-off-by: Tuomas Tynkkynen <ttynkkynen@xxxxxxxxxx>
      Signed-off-by: Mikko Perttunen <mikko.perttunen@xxxxxxxx>
      Acked-by: Michael Turquette <mturquette@xxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit bf9d026775796bec30895cab080baf37b70bc3b3
  Author: Tuomas Tynkkynen <ttynkkynen@xxxxxxxxxx>
  Date:   Wed May 13 17:58:44 2015 +0300

      ARM: tegra: Add the DFLL to Tegra124 device tree

      The DFLL clocksource is a separate IP block from the usual
      clock-and-reset controller, so it gets its own device tree node.

      Signed-off-by: Tuomas Tynkkynen <ttynkkynen@xxxxxxxxxx>
      Signed-off-by: Mikko Perttunen <mikko.perttunen@xxxxxxxx>
      Acked-by: Michael Turquette <mturquette@xxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 233da3b1c620b10a70c019b2134e7b1276b57695
  Merge: 7292ba6 79cf95c
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Fri Aug 21 18:44:15 2015 +0200

      Merge branch 'for-4.3/clk' into for-4.3/dt

  commit 7292ba64bd56d39c3b1fe4cbe8559e6c95858180
  Merge: d770e55 9462510
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Fri Aug 21 18:44:05 2015 +0200

      Merge branch 'for-4.3/pinctrl' into for-4.3/dt

  commit 6be4b0da4ecf1472cb4a064c752214dcb2ba4be2
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Wed Aug 19 15:31:30 2015 -0300

      ARM: imx: mach-imx6ul: Fix allmodconfig build

      We should call phy_register_fixup_for_uid() only when CONFIG_PHYLIB
      is built-in, otherwise we get the following link error when building
      allmodconfig:

      arch/arm/mach-imx/built-in.o: In function `imx6ul_init_machine':
      :(.init.text+0xa714): undefined reference to `phy_register_fixup_for_uid'

      This is the same approach done in mach-imx6q.c and mach-imx6sx.c.

      Reported-by: Olof Johansson <olof@xxxxxxxxx>
      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Acked-by: Shawn Guo <shawnguo@xxxxxxxxxx>
      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 9c9f7f675970ba1b888272f016157de21f69e7e2
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 10:26:43 2015 +0200

      regmap: No multi_write support if bus->write does not exist

      There is no multi_write support available if we cannot use raw_write.
      This is the case if bus->write is not implemented.

      This patch adds a condition that we need bus and bus->write so that
      can_multi_write is true.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 67921a1a6660d32cc2770d05d656a1187b6d94d5
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 10:26:42 2015 +0200

      regmap: Split use_single_rw internally into use_single_read/write

      use_single_rw currently reflects the capabilities of the connected
      device. The capabilities of the bus are currently missing for this
      variable.

      As there are read only and write only buses we need seperate values for
      use_single_rw to also reflect tha capabilities of the bus.

      This patch splits use_single_rw into use_single_read and
      use_single_write. The initialization is changed to check the
      configuration for use_single_rw and to check the capabilities of the
      used bus.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 9c8f55798a9d716daed4de6d7038a21c3ca6e673
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Fri Aug 21 09:29:50 2015 -0700

      Input: sentelic - silence some underflow warnings

      I have a static checker that complains when we check for an upper bound
      but don't have a corresponding check for a lower bound.  With this code,
      the upper bound check seems not really required, so it is not a bug to
      leave the lower bound check out as well.  But let's silence the warning
      by making these variables unsigned.

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit c594b7f21d7d02115e828db46fddbba1da7ed1b8
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Fri Aug 21 10:26:41 2015 +0200

      regmap: Fix regmap_bulk_write for bus writes

      The regmap config does not prohibit val_bytes that are not powers of
      two. But the current code of regmap_bulk_write for use_single_rw does
      limit the possible val_bytes to 1, 2 and 4.

      This patch fixes the behaviour to allow bus writes with non-standard
      val_bytes sizes.

      Cc: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 330349fae46f8400e86ef98ee05af4ba13466f49
  Merge: efd16bd 5be9fc2
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Fri Aug 21 09:10:50 2015 -0700

      Merge tag 'mvebu-fixes-4.2-1' of git://git.infradead.org/linux-mvebu into 
next/fixes-non-critical

      mvebu fixes changes for v4.2

      Fix legacy orion5x IRQ numbers broken since 3.18

      * tag 'mvebu-fixes-4.2-1' of git://git.infradead.org/linux-mvebu:
        ARM: orion5x: fix legacy orion5x IRQ numbers

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit d33288172e72c4729e8b9f2243fb40601afabc8f
  Author: Julian Anastasov <ja@xxxxxx>
  Date:   Sun Jul 26 15:03:28 2015 +0300

      ipvs: add more mcast parameters for the sync daemon

      - mcast_group: configure the multicast address, now IPv6
      is supported too

      - mcast_port: configure the multicast port

      - mcast_ttl: configure the multicast TTL/HOP_LIMIT

      Signed-off-by: Julian Anastasov <ja@xxxxxx>
      Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx>

  commit e4ff67513096e6e196ca58043fce04d0f87babbe
  Author: Julian Anastasov <ja@xxxxxx>
  Date:   Sun Jul 26 15:03:27 2015 +0300

      ipvs: add sync_maxlen parameter for the sync daemon

      Allow setups with large MTU to send large sync packets by
      adding sync_maxlen parameter. The default value is now based
      on MTU but no more than 1500 for compatibility reasons.

      To avoid problems if MTU changes allow fragmentation by
      sending packets with DF=0. Problem reported by Dan Carpenter.

      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Julian Anastasov <ja@xxxxxx>
      Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx>

  commit 99650c258a4bbe7e62754c734c3888f29b59f72a
  Author: Moritz Fischer <moritz.fischer@xxxxxxxxx>
  Date:   Thu Jul 30 18:13:55 2015 -0700

      ARM: dts: zynq: Add devicetree entry for Xilinx Zynq reset controller.

      Signed-off-by: Moritz Fischer <moritz.fischer@xxxxxxxxx>
      Signed-off-by: Michal Simek <michal.simek@xxxxxxxxxx>
      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit e0b26cc997d57305b4097711e12e13992580ae34
  Author: Julian Anastasov <ja@xxxxxx>
  Date:   Sun Jul 26 14:57:34 2015 +0300

      ipvs: call rtnl_lock early

      When the sync damon is started we need to hold rtnl
      lock while calling ip_mc_join_group. Currently, we have
      a wrong locking order because the correct one is
      rtnl_lock->__ip_vs_mutex. It is implied from the usage
      of __ip_vs_mutex in ip_vs_dst_event() which is called
      under rtnl lock during NETDEV_* notifications.

      Fix the problem by calling rtnl_lock early only for the
      start_sync_thread call. As a bonus this fixes the usage
      __dev_get_by_name which was not called under rtnl lock.

      This patch actually extends and depends on commit 54ff9ef36bdf
      ("ipv4, ipv6: kill ip_mc_{join, leave}_group and
      ipv6_sock_mc_{join, drop}").

      Signed-off-by: Julian Anastasov <ja@xxxxxx>
      Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx>

  commit eefa32d3f3c54bc7f9704968bc78adf0439c6c2a
  Author: Raducu Deaconu <rhadoo.io88@xxxxxxxxx>
  Date:   Fri Jul 17 08:45:40 2015 +0300

      ipvs: Add ovf scheduler

      The weighted overflow scheduling algorithm directs network connections
      to the server with the highest weight that is currently available
      and overflows to the next when active connections exceed the node's 
weight.

      Signed-off-by: Raducu Deaconu <rhadoo.io88@xxxxxxxxx>
      Acked-by: Julian Anastasov <ja@xxxxxx>
      Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx>

  commit ee3010d0ab288d1c307464c1bd1dc3bf16aca7e4
  Author: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
  Date:   Fri Aug 21 14:38:39 2015 +0200

      regulators: max77693: register driver earlier to avoid deferred probe

      MAX77693 based regulators are used by USB gadget subsystem, which
      doesn't support deferred probe, so the driver should be registered
      before USB gadget drivers get probed.

      Signed-off-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 54d8697fa5036df0e27f8d62edb7ebc35c3f73d6
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Fri Aug 21 20:59:21 2015 +0800

      ASoC: Set missing card owner field

      Set the card owner field to prevent the module from being removed from
      underneath its users.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 1c0bd0e891aaed0219010bfe79b32e1b0b82d662
  Author: Wang Nan <wangnan0@xxxxxxxxxx>
  Date:   Fri Aug 21 10:09:02 2015 +0000

      perf probe: Try to use symbol table if searching debug info failed

      A problem can occur in a statically linked perf when vmlinux can be found:

       # perf probe --add sys_epoll_pwait
       probe-definition(0): sys_epoll_pwait
       symbol:sys_epoll_pwait file:(null) line:0 offset:0 return:0 lazy:(null)
       0 arguments
       Looking at the vmlinux_path (7 entries long)
       Using /lib/modules/4.2.0-rc1+/build/vmlinux for symbols
       Open Debuginfo file: /lib/modules/4.2.0-rc1+/build/vmlinux
       Try to find probe point from debuginfo.
       Symbol sys_epoll_pwait address found : ffffffff8122bd40
       Matched function: SyS_epoll_pwait
       Failed to get call frame on 0xffffffff8122bd40
       An error occurred in debuginfo analysis (-2).
         Error: Failed to add events. Reason: No such file or directory (Code: 
-2)

      The reason is caused by libdw that, if libdw is statically linked, it
      can't load libebl_{arch}.so reliable.

      In this case it is still possible to get the address from
      /proc/kalksyms.  However, perf tries that only when libdw returns
      -EBADF.

      This patch gives it another chance to utilize symbol table, even if
      libdw returns an error code other than -EBADF.

      After applying this patch:

       # perf probe -nv --add sys_epoll_pwait
       probe-definition(0): sys_epoll_pwait
       symbol:sys_epoll_pwait file:(null) line:0 offset:0 return:0 lazy:(null)
       0 arguments
       Looking at the vmlinux_path (7 entries long)
       Using /lib/modules/4.2.0-rc1+/build/vmlinux for symbols
       Open Debuginfo file: /lib/modules/4.2.0-rc1+/build/vmlinux
       Try to find probe point from debuginfo.
       Symbol sys_epoll_pwait address found : ffffffff8122bd40
       Matched function: SyS_epoll_pwait
       Failed to get call frame on 0xffffffff8122bd40
       An error occurred in debuginfo analysis (-2).
       Trying to use symbols.
       Opening /sys/kernel/debug/tracing/kprobe_events write=1
       Added new event:
       Writing event: p:probe/sys_epoll_pwait _text+2276672
         probe:sys_epoll_pwait (on sys_epoll_pwait)

       You can now use it in all perf tools, such as:

        perf record -e probe:sys_epoll_pwait -aR sleep 1

      Although libdw returns an error (Failed to get call frame), perf tries
      symbol table and finally gets correct address.

      Signed-off-by: Wang Nan <wangnan0@xxxxxxxxxx>
      Cc: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Cc: Brendan Gregg <brendan.d.gregg@xxxxxxxxx>
      Cc: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: He Kuang <hekuang@xxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Kaixu Xia <xiakaixu@xxxxxxxxxx>
      Cc: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Zefan Li <lizefan@xxxxxxxxxx>
      Cc: pi3orama@xxxxxxx
      Link: 
http://lkml.kernel.org/r/1440151770-129878-2-git-send-email-wangnan0@xxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 66671d001aeb525b9101e0ccb9062627539de555
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Tue Aug 18 15:19:50 2015 -0300

      perf tools: Initialize reference counts in map__clone()

      Map clone was written before we introduced reference counts for
      maps and dsos, so all that was needed was just a copy and then we
      would insert it into the new map_groups instance.

      Fix it by, after copying, initializing the map->refcnt, grabbing
      a struct dso refcount and resetting pointers that may be used
      to determine if a map, when deleted, is in a rb_tree.

      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Link: http://lkml.kernel.org/n/tip-pd4mr80o5b9gvk50iineacec@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 5be9fc23cdb42e1d383ecc8eae8a8ff70a752708
  Author: Benjamin Cama <benoar@xxxxxxxx>
  Date:   Tue Jul 14 16:25:58 2015 +0200

      ARM: orion5x: fix legacy orion5x IRQ numbers

      Since v3.18, attempts to deliver IRQ0 are rejected, breaking orion5x.
      Fix this by increasing all interrupts by one, as did 5d6bed2a9c8b for
      dove. Also, force MULTI_IRQ_HANDLER for all orion platforms (including
      dove) as the specific handler is needed to shift back IRQ numbers by
      one.

      [gregory.clement@xxxxxxxxxxxxxxxxxx]: moved the select
      MULTI_IRQ_HANDLER from PLAT_ORION_LEGACY to ARCH_ORION5X as it broke
      the build for dove.

      Fixes: a71b092a9c68 ("ARM: Convert handle_IRQ to use __handle_domain_irq")
      Signed-off-by: Benjamin Cama <benoar@xxxxxxxx>
      Signed-off-by: Gregory CLEMENT <gregory.clement@xxxxxxxxxxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>
      Tested-by: Detlef Vollmann <dv@xxxxxxxxxxx>

  commit 4b715d24f4f14731c7b553cbb8604fe865cb8d3c
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:45 2015 +0300

      perf tools: Add example call-graph script

      Add a script to produce a call-graph from data exported to a postgresql
      database and derived from a processor trace event like intel_pt or 
intel_bts.

      Refer to comments in the scripts call-graph-from-postgresql.py and
      export-to-postgresql.py for more details on how to set up the environment,
      install the required packages, etc.

      Committer note:

      From the scripts, for convenience while reading 'git log':

        An example of using this script with Intel PT:

        $ perf record -e intel_pt//u ls
        $ perf script -s 
~/libexec/perf-core/scripts/python/export-to-postgresql.py pt_example branches 
calls
        2015-05-29 12:49:23.464364 Creating database...
        2015-05-29 12:49:26.281717 Writing to intermediate files...
        2015-05-29 12:49:27.190383 Copying to database...
        2015-05-29 12:49:28.140451 Removing intermediate files...
        2015-05-29 12:49:28.147451 Adding primary keys
        2015-05-29 12:49:28.655683 Adding foreign keys
        2015-05-29 12:49:29.365350 Done
        $ python tools/perf/scripts/python/call-graph-from-postgresql.py 
pt_example
        # The result is a GUI window with a tree representing a 
context-sensitive
        # call-graph.  Expanding a couple of levels of the tree and adjusting 
column
        # widths to suit will display something like:

                                               Call Graph: pt_example
        Call Path                        |Object     
|Count|Time(ns)|Time(%)|Branch Count|Branch Count(%)
        v- ls
           v- 2638:2638
               v- _start                  ld-2.19.so    1   10074071  100.0     
   211135          100.0
                 |- unknown               unknown       1      13198    0.1     
        1            0.0
                 >- _dl_start             ld-2.19.so    1    1400980   13.9     
    19637            9.3
                 >- _d_linit_internal     ld-2.19.so    1     448152    4.4     
    11094            5.3
                 v-__libc_start_main@plt  ls            1    8211741   81.5     
   180397           85.4
                    >- _dl_fixup          ld-2.19.so    1       7607    0.1     
      108            0.1
                    >- __cxa_atexit       libc-2.19.so  1      11737    0.1     
       10            0.0
                    >- __libc_csu_init    ls            1      10354    0.1     
       10            0.0
                    |- _setjmp            libc-2.19.so  1          0    0.0     
        4            0.0
                    v- main               ls            1    8182043   99.6     
   180254           99.9

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Tested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-11-git-send-email-adrian.hunter@xxxxxxxxx
      [ Added 'python-pyside qt-postgresql' to the yum cmdline installing 
required packages ]
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit b68c3161430a4c7c0a001e658188bfea6a2fe5bd
  Author: Pali Rohár <pali.rohar@xxxxxxxxx>
  Date:   Tue Aug 11 13:22:19 2015 +0200

      bq2415x_charger: Allow to load and use driver even if notify device is 
not registered yet

      Driver bq2415x_charger works also without notify power supply device for
      charger detection. But when charger detection is specified in DT, then
      bq2415x_charger refused to loaded with -EPROBE_DEFER.

      This patch rewrites code so that notify device for charger detection is
      checked when power supply event is received and not when registering power
      supply device. So this patch allows to use bq2415x_charger driver also 
when
      kernel is compiled without driver for notify power supply device.

      Now after this patch scheduled workqueue is called after 
INIT_DELAYED_WORK,
      so it also fix problem when scheduled workqueue was called before init.

      Signed-off-by: Pali Rohár <pali.rohar@xxxxxxxxx>
      Signed-off-by: Sebastian Reichel <sre@xxxxxxxxxx>

  commit 60b88d8743892218f82048a3df624f5fc5460843
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:44 2015 +0300

      perf tools: Put itrace options into an asciidoc include

      perf script, report and inject all have the same itrace options. Put
      them into an asciidoc include file.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-10-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit d0170af7004dce9cd90b749842c37e379476cbc8
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:43 2015 +0300

      perf tools: Add Intel BTS support

      Intel BTS support fits within the new auxtrace infrastructure.  Recording 
is
      supporting by identifying the Intel BTS PMU, parsing options and setting 
up
      events.

      Decoding is supported by queuing up trace data by thread and then decoding
      synchronously delivering synthesized event samples into the session 
processing
      for tools to consume.

      Committer note:

      E.g:

        [root@felicio ~]# perf record --per-thread -e intel_bts// ls
        anaconda-ks.cfg  apctest.output  bin  
kernel-rt-3.10.0-298.rt56.171.el7.x86_64.rpm  libexec  lock_page.bpf.c  
perf.data  perf.data.old
        [ perf record: Woken up 3 times to write data ]
        [ perf record: Captured and wrote 4.367 MB perf.data ]
        [root@felicio ~]# perf evlist -v
        intel_bts//: type: 6, size: 112, { sample_period, sample_freq }: 1, 
sample_type: IP|TID|IDENTIFIER, read_format: ID, disabled: 1, enable_on_exec: 
1, sample_id_all: 1, exclude_guest: 1
        dummy:u: type: 1, size: 112, config: 0x9, { sample_period, sample_freq 
}: 1, sample_type: IP|TID|IDENTIFIER, read_format: ID, disabled: 1, 
exclude_kernel: 1, exclude_hv: 1, mmap: 1, comm: 1, enable_on_exec: 1, task: 1, 
sample_id_all: 1, mmap2: 1, comm_exec: 1
        [root@felicio ~]# perf script # the navigate in the pager to some 
interesting place:
          ls 1843 1 branches: ffffffff810a60cb flush_signal_handlers 
([kernel.kallsyms]) => ffffffff8121a522 setup_new_exec ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8121a529 setup_new_exec 
([kernel.kallsyms]) => ffffffff8122fa30 do_close_on_exec ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8122fa5d do_close_on_exec 
([kernel.kallsyms]) => ffffffff81767ae0 _raw_spin_lock ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff81767af4 _raw_spin_lock 
([kernel.kallsyms]) => ffffffff8122fa62 do_close_on_exec ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8122fa8e do_close_on_exec 
([kernel.kallsyms]) => ffffffff8122faf0 do_close_on_exec ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8122faf7 do_close_on_exec 
([kernel.kallsyms]) => ffffffff8122fa8b do_close_on_exec ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8122fa8e do_close_on_exec 
([kernel.kallsyms]) => ffffffff8122faf0 do_close_on_exec ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8122faf7 do_close_on_exec 
([kernel.kallsyms]) => ffffffff8122fa8b do_close_on_exec ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8122fa8e do_close_on_exec 
([kernel.kallsyms]) => ffffffff8122faf0 do_close_on_exec ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8122faf7 do_close_on_exec 
([kernel.kallsyms]) => ffffffff8122fa8b do_close_on_exec ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8122fa8e do_close_on_exec 
([kernel.kallsyms]) => ffffffff8122faf0 do_close_on_exec ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8122faf7 do_close_on_exec 
([kernel.kallsyms]) => ffffffff8122fa8b do_close_on_exec ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8122fa8e do_close_on_exec 
([kernel.kallsyms]) => ffffffff8122faf0 do_close_on_exec ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8122faf7 do_close_on_exec 
([kernel.kallsyms]) => ffffffff8122fa8b do_close_on_exec ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8122fa8e do_close_on_exec 
([kernel.kallsyms]) => ffffffff8122faf0 do_close_on_exec ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8122faf7 do_close_on_exec 
([kernel.kallsyms]) => ffffffff8122fa8b do_close_on_exec ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8122fac9 do_close_on_exec 
([kernel.kallsyms]) => ffffffff8122fad2 do_close_on_exec ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8122fadd do_close_on_exec 
([kernel.kallsyms]) => ffffffff8120fc80 filp_close ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8120fcaf filp_close ([kernel.kallsyms]) 
=> ffffffff8120fcb6 filp_close ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8120fcc2 filp_close ([kernel.kallsyms]) 
=> ffffffff812547f0 dnotify_flush ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff81254823 dnotify_flush 
([kernel.kallsyms]) => ffffffff8120fcc7 filp_close ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8120fccd filp_close ([kernel.kallsyms]) 
=> ffffffff81261790 locks_remove_posix ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff812617a3 locks_remove_posix 
([kernel.kallsyms]) => ffffffff812617b9 locks_remove_posix ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff812617b9 locks_remove_posix 
([kernel.kallsyms]) => ffffffff8120fcd2 filp_close ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8120fcd5 filp_close ([kernel.kallsyms]) 
=> ffffffff812142c0 fput ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff812142d6 fput ([kernel.kallsyms]) => 
ffffffff812142df fput ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff8121430c fput ([kernel.kallsyms]) => 
ffffffff810b6580 task_work_add ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff810b65ad task_work_add 
([kernel.kallsyms]) => ffffffff810b65b1 task_work_add ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff810b65c1 task_work_add 
([kernel.kallsyms]) => ffffffff810bc710 kick_process ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff810bc725 kick_process ([kernel.kallsyms]) 
=> ffffffff810bc742 kick_process ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff810bc742 kick_process ([kernel.kallsyms]) 
=> ffffffff810b65c6 task_work_add ([kernel.kallsyms])
          ls 1843 1 branches: ffffffff810b65c9 task_work_add 
([kernel.kallsyms]) => ffffffff81214311 fput ([kernel.kallsyms])

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Tested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-9-git-send-email-adrian.hunter@xxxxxxxxx
      [ Merged sample->time fix for bug found after first round of testing on 
slightly older kernel ]
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit d4421c54c45f643731c92daa8e268ce74dcdf5a2
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 17:02:40 2015 +0800

      crypto: hash - Add AHASH_REQUEST_ON_STACK

      This patch adds the helper AHASH_REQUEST_ON_STACK for those users
      of ahash that are synchronous only.

      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 12773d932fc22c60e0d5a20660d564542fab811b
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 15:21:46 2015 +0800

      crypto: testmgr - Use new skcipher interface

      This patch replaces uses of blkcipher and ablkcipher with the
      new skcipher interface.

      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 7a7ffe65c8c5fbf272b132d8980b2511d5e5fc98
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 15:21:45 2015 +0800

      crypto: skcipher - Add top-level skcipher interface

      This patch introduces the crypto skcipher interface which aims
      to replace both blkcipher and ablkcipher.

      It's very similar to the existing ablkcipher interface.  The
      main difference is the removal of the givcrypt interface.  In
      order to make the transition easier for blkcipher users, there
      is a helper SKCIPHER_REQUEST_ON_STACK which can be used to place
      a request on the stack for synchronous transforms.

      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 412fcb6cebd758d080cacd5a41a0cbc656ea5fce
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Wed Aug 19 15:57:09 2015 +0100

      arm64: entry: always restore x0 from the stack on syscall return

      We have a micro-optimisation on the fast syscall return path where we
      take care to keep x0 live with the return value from the syscall so that
      we can avoid restoring it from the stack. The benefit of doing this is
      fairly suspect, since we will be restoring x1 from the stack anyway
      (which lives adjacent in the pt_regs structure) and the only additional
      cost is saving x0 back to pt_regs after the syscall handler, which could
      be seen as a poor man's prefetch.

      More importantly, this causes issues with the context tracking code.

      The ct_user_enter macro ends up branching into C code, which is free to
      use x0 as a scratch register and consequently leads to us returning junk
      back to userspace as the syscall return value. Rather than special case
      the context-tracking code, this patch removes the questionable
      optimisation entirely.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Cc: Larry Bassel <larry.bassel@xxxxxxxxxx>
      Cc: Kevin Hilman <khilman@xxxxxxxxxx>
      Reviewed-by: Catalin Marinas <catalin.marinas@xxxxxxx>
      Reported-by: Hanjun Guo <hanjun.guo@xxxxxxxxxx>
      Tested-by: Hanjun Guo <hanjun.guo@xxxxxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit 6f56e9cf581c6cedcaea3eb69444b169867ccf3d
  Author: Dean Nelson <dnelson@xxxxxxxxxx>
  Date:   Thu Aug 20 11:16:32 2015 -0400

      tools lib traceevent: Add checks for returned EVENT_ERROR type

      Running the following perf-stat command on an arm64 system produces the
      following result...

        [root@aarch64 ~]# perf stat -e kmem:mm_page_alloc -a sleep 1
          Warning: [kmem:mm_page_alloc] function sizeof not defined
          Warning: Error: expected type 4 but read 0
        Segmentation fault
        [root@aarch64 ~]#

      The second warning was a result of the first warning not stopping
      processing after it detected the issue.

      That is, code that found the issue reported the first problem, but
      because it did not exit out of the functions smoothly, it caused the
      other warning to appear and not only that, it later caused the SIGSEGV.

      Signed-off-by: Dean Nelson <dnelson@xxxxxxxxxx>
      Reviewed-by: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Acked-by: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/20150820151632.13927.13791.email-sent-by-dnelson@teal
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 81cd60cc29a9c3e92ad6ca167a4764b2c2d2fc04
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Thu Aug 20 11:51:32 2015 +0300

      perf tools: Fix Intel PT timestamp handling

      Events that don't sample the timestamp have a timestamp value of -1.

      Intel PT processing wasn't taking that into account.

      This is particularly noticeable with Intel BTS because timestamps are
      not requested by default.

      Then, if the conversion of -1 to TSC results in a small number, the
      processing is unaffected.

      However if the conversion results in a big number, then the data is
      processed prematurely before relevant sideband data like mmap events,
      which in turn results in samples with unknown dsos.

      Commiter note:

      Since BTS wasn't upstream, I split the patch to fold the BTS part with
      the patch introducing it, to avoid having this bug in the commit
      history. PT was already upstream, so this patch contains that part.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440060692-5585-1-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 133de940435493266acd4100b0dae8ba7eaa7c71
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Thu Aug 20 13:07:40 2015 +0300

      perf tools: /proc/kcore requires CAP_SYS_RAWIO message too noisy

      The "/proc/kcore requires CAP_SYS_RAWIO" message comes up all the time
      for 'perf script' if vmlinux is not found and the user isn't root, even
      when the kernel is not being traced and even though the message is only
      really relevant for annotation.

      Change it to pr_debug and instead put a note in the message displayed if
      annotation is not possible.

      Also, the file being accessed might not be /proc/kcore.  Tools can be
      directed to a different location using the --kallsyms option in which
      case kcore is expected to be in the same directory.  Adjust the message
      so it is not misleading in that case.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Li Zhang <zhlcindy@xxxxxxxxxxxxxxxxxx>
      Cc: Sukadev Bhattiprolu <sukadev@xxxxxxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440065260-8802-1-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 05169df5561363ff04ac04d6aad0be3b45c26ac1
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Thu Aug 20 11:26:45 2015 +0300

      perf script: Fix segfault using --show-mmap-events

      Patch "perf script: Don't assume evsel position of tracking events"
      changed 'perf script' to use 'perf_evlist__id2evsel()'. That results
      in a segfault if there is more than 1 event and there are
      synthesized mmap events e.g.

        $ perf record -e cycles,instructions -p$$ sleep 1
        $ perf script --show-mmap-events
        Segmentation fault (core dumped)

      That happens because these synthesized events have an 'id' of zero
      which does not match any 'evsel'.

      Currently, these synthesized events use the sample type of the first
      evsel.

      Change 'perf_evlist__id2evsel()' to reflect that which also makes
      it consistent with 'perf_evlist__event2evsel()'.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Fixes: 06b234ec26fd ("perf script: Don't assume evsel position of 
tracking events")
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1440059205-1765-1-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit fa4f18b4f402d3654415935511d8e0bb51a102b7
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Fri Aug 21 15:05:20 2015 +0200

      ALSA: hda - Refresh widgets sysfs at probing Haswell+ HDMI codecs

      Intel Haswell (and later) codec refreshes the widgets tree to expose
      the whole widget nodes at probing.  However, this refresh was missing
      for sysfs tree.

      This patch adds the missing piece, as we have now a proper API.

      Reported-by: Vinod Koul <vinod.koul@xxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 1fb6755f16872ad256c18cce2830f9087502dffd
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 09:42:10 2015 +0100

      ARM: domains: remove DOMAIN_TABLE

      DOMAIN_TABLE is not used; in any case, it aliases to the kernel domain.
      Remove this definition.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit a02d8dfd54cdf3b1b0464ccc2c1c4afe2c003a35
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 09:38:31 2015 +0100

      ARM: domains: keep vectors in separate domain

      Keep the machine vectors in its own domain to avoid software based
      user access control from making the vector code inaccessible, and
      thereby deadlocking the machine.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 3c2aed5b28819564e1a07b4686bd89802bcc4d6b
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 09:30:16 2015 +0100

      ARM: domains: get rid of manager mode for user domain

      Since we switched to early trap initialisation in 94e5a85b3be0
      ("ARM: earlier initialization of vectors page") we haven't been writing
      directly to the vectors page, and so there's no need for this domain
      to be in manager mode.  Switch it to client mode.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 0171356a7708af01ad3224702b7f0aaa5b7a1399
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 09:23:26 2015 +0100

      ARM: domains: move initial domain setting value to asm/domains.h

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 8e798706f7e9cd7f096aa194de90269dde83773e
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 22:36:24 2015 +0100

      ARM: domains: provide domain_mask()

      Provide a macro to generate the mask for a domain, rather than using
      domain_val(, DOMAIN_MANAGER) which won't work when CPU_USE_DOMAINS
      is turned off.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 1eef5d2f1b461c120bcd82077edee5ec706ac53b
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 21:23:48 2015 +0100

      ARM: domains: switch to keeping domain value in register

      Rather than modifying both the domain access control register and our
      per-thread copy, modify only the domain access control register, and
      use the per-thread copy to save and restore the register over context
      switches.  We can also avoid the explicit initialisation of the
      init thread_info structure.

      This allows us to avoid needing to gain access to the thread information
      at the uaccess control sites.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 9e46aedab389122948144713ee5b8bae2658fb1b
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Fri Aug 21 14:25:34 2015 +0300

      ALSA: hdsp: silence and underflow warning

      I believe this probably cannot happen, as the code suggests.  There
      would have to be an kcontrol->index.id which was zero, otherwise this
      would be prevented in snd_ctl_find_id().  But snd_BUG_ON() is just a
      WARN() or a no-op so static checkers complain that we keep on going with
      a negative offset.  Let's just handle the error as well as printing
      a warning.

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 18dfd79d92e5292611ac4944a67bd837dd7632c9
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Fri Aug 21 15:47:43 2015 +0530

      ALSA: hdac: add snd_hdac_refresh_widget_sysfs()

      Some codecs like Intel HDMI by default do not show up all the pins, they
      have to be manually enabled, so we need to refresh the codec widgets and
      then recreate the sysfs tree. So add new API 
snd_hdac_refresh_widget_sysfs()
      to do this. It should be be used by codec driver after sending magic verbs
      to codec

      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit d51783c15f7548229e49331d254a738be8ac865c
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Fri Aug 21 15:47:42 2015 +0530

      ALSA: hdac: add extended device driver registration

      This adds new extended driver objects and API for registering the
      extended devices.

      Signed-off-by: Subhransu S. Prusty <subhransu.s.prusty@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit a512f5611646ab12f3f8fea2a3d2582adabe5157
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Fri Aug 21 15:47:41 2015 +0530

      ALSA: hdac: add hdac extended device

      This adds based hdac extended device object which will be used by
      ASoC HDAC codecs

      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit ee2d51b3d4c940cd34dbc83eb10bb24205c56ebf
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Fri Aug 21 15:47:40 2015 +0530

      ALSA: hdac: Add API for removing hdac extended device

      The HDAC extended device objects are created by HDAC extended bus on 
probe.
      When controller is removed they should be removed as well, so add API
      snd_hdac_ext_bus_device_remove for this

      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 005ce70b9448ed86c9a12e6504f1f9896a826e3d
  Author: Rameshwar Prasad Sahu <rsahu@xxxxxxx>
  Date:   Fri Aug 21 14:33:34 2015 +0530

      dmaengine: xgene-dma: Fix the lock to allow client for further submission 
of requests

      This patch provides the fix in the cleanup routing such that client can 
perform
      further submission by releasing the lock before calling client's callback 
function.

      Signed-off-by: Rameshwar Prasad Sahu <rsahu@xxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit fd0881a24ac9ab2be6c052d30ca779597c0bd3bc
  Author: Vineet Gupta <vgupta@xxxxxxxxxxxx>
  Date:   Fri Aug 21 15:06:43 2015 +0530

      ARC: Eliminate some ARCv2 specific code for ARCompact build

      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit 64f1d0ffbaaccf2ddaf02d3ebf67bf9044cb4db4
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Thu Aug 20 08:44:14 2015 -0700

      dmaengine: ioatdma: fix coccinelle warning

      Simplifying the end return. This existed in the original code but was
      flagged when refactoring of the code made it appear it's new.

      coccinelle warnings: (new ones prefixed by >>)

      >> drivers/dma/ioat/init.c:1018:1-3: WARNING: end returns can be simpified

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit aaecdebc5855b77e2120d11c750630a3e60ffb10
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Thu Aug 20 08:44:09 2015 -0700

      dmaengine: ioatdma: fix zero day warning on incompatible pointer type

      The 32bit build is creating this warning. Since we don't expect anyone
      actually use this on 32bit, restrict ioatdma to be built only on x86_64.
      This issue has long existed and only reason it's surfacing due to code
      refactoring.

         drivers/dma/ioat/dma.c: In function 'ioat_timer_event':
      >> drivers/dma/ioat/dma.c:870:39: warning: passing argument 2 of 
'ioat_cleanup_preamble' from incompatible pointer type
           if (ioat_cleanup_preamble(ioat_chan, &phys_complete))
                                                ^
         drivers/dma/ioat/dma.c:577:13: note: expected 'u64 *' but argument is 
of type 'dma_addr_t *'
          static bool ioat_cleanup_preamble(struct ioatdma_chan *ioat_chan,
                      ^

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 36d4e87b497d9cb3bf8e1bb2f803c7aa41dfb463
  Author: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
  Date:   Wed Aug 19 03:19:47 2015 -0700

      drm/vmwgfx: Remove duplicate ttm_bo_device_release

      No need to try to call ttm_bo_device_release twice during module unload.

      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
      Reviewed-by: Sinclair Yeh <syeh@xxxxxxxxxx>

  commit 772269f970129a7b9b50d68684b2568a41850111
  Author: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
  Date:   Tue Aug 18 09:07:38 2015 -0700

      drm/vmwgfx: Fix a circular locking dependency in the fbdev code

      When a user-space process writes directly to the fbdev framebuffer,
      we hit a circular locking dependency. Fix this by introducing a local
      delayed work callback so that the defio lock can be released before
      calling into the modesetting code for a dirty update.

      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
      Reviewed-by: Sinclair Yeh <syeh@xxxxxxxxxx>

  commit 397d425dc26da728396e66d392d5dcb8dac30c37
  Author: Eric W. Biederman <ebiederm@xxxxxxxxxxxx>
  Date:   Sat Aug 15 20:27:13 2015 -0500

      vfs: Test for and handle paths that are unreachable from their mnt_root

      In rare cases a directory can be renamed out from under a bind mount.
      In those cases without special handling it becomes possible to walk up
      the directory tree to the root dentry of the filesystem and down
      from the root dentry to every other file or directory on the filesystem.

      Like division by zero .. from an unconnected path can not be given
      a useful semantic as there is no predicting at which path component
      the code will realize it is unconnected.  We certainly can not match
      the current behavior as the current behavior is a security hole.

      Therefore when encounting .. when following an unconnected path
      return -ENOENT.

      - Add a function path_connected to verify path->dentry is reachable
        from path->mnt.mnt_root.  AKA to validate that rename did not do
        something nasty to the bind mount.

        To avoid races path_connected must be called after following a path
        component to it's next path component.

      Signed-off-by: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>
      Signed-off-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx>

  commit 88c9281a9fba67636ab26c1fd6afbc78a632374f
  Author: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>
  Date:   Wed Aug 19 09:54:24 2015 -0700

      x86/hyperv: Mark the Hyper-V TSC as unstable

      The Hyper-V top-level functional specification states, that
      "algorithms should be resilient to sudden jumps forward or
      backward in the TSC value", this means that we should consider
      TSC as unstable. In some cases tsc tests are able to detect the
      instability, it was detected in 543 out of 646 boots in my
      testing:

       Measured 6277 cycles TSC warp between CPUs, turning off TSC clock.
       tsc: Marking TSC unstable due to check_tsc_sync_source failed

      This is, however, just a heuristic. On Hyper-V platform there
      are two good clocksources: MSR-based hyperv_clocksource and
      recently introduced TSC page.

      Signed-off-by: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>
      Cc: Haiyang Zhang <haiyangz@xxxxxxxxxxxxx>
      Cc: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: devel@xxxxxxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1440003264-9949-1-git-send-email-vkuznets@xxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 99770737ca7e3ebc14e66460a69b7032de9421e1
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Fri Aug 21 08:33:53 2015 +0200

      x86/asm/tsc: Add rdtscll() merge helper

      Some in-flight code makes use of the old rdtscll() (now removed), provide 
a wrapper
      for a kernel cycle to smooth the transition to rdtsc().

      ( We use the safest variant, rdtsc_ordered(), which has barriers - this 
adds another
        incentive to remove the wrapper in the future. )

      Cc: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Brian Gerst <brgerst@xxxxxxxxx>
      Cc: Denys Vlasenko <dvlasenk@xxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Huang Rui <ray.huang@xxxxxxx>
      Cc: John Stultz <john.stultz@xxxxxxxxxx>
      Cc: Len Brown <lenb@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Ralf Baechle <ralf@xxxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: kvm ML <kvm@xxxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/dddbf98a2af53312e9aa73a5a2b1622fe5d6f52b.1434501121.git.luto@xxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit a03e283bf5c3d4851b4998122196ce9f849e6dfb
  Author: Eric W. Biederman <ebiederm@xxxxxxxxxxxx>
  Date:   Sat Aug 15 13:36:41 2015 -0500

      dcache: Reduce the scope of i_lock in d_splice_alias

      i_lock is only needed until __d_find_any_alias calls dget on the alias
      dentry.  After that the reference to new ensures that dentry_kill and
      d_delete will not remove the inode from the dentry, and remove the
      dentry from the inode->d_entry list.

      The inode i_lock came to be held over the the __d_move calls in
      d_splice_alias through a series of introduction of locks with
      increasing smaller scope.  First it was the dcache_lock, then
      it was the dcache_inode_lock, and finally inode->i_lock.

      Furthermore inode->i_lock is not held over any other calls
      to d_move or __d_move so it can not provide any meaningful
      rename protection.

      Signed-off-by: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>
      Signed-off-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx>

  commit cde93be45a8a90d8c264c776fab63487b5038a65
  Author: Eric W. Biederman <ebiederm@xxxxxxxxxxxx>
  Date:   Sat Aug 15 13:36:12 2015 -0500

      dcache: Handle escaped paths in prepend_path

      A rename can result in a dentry that by walking up d_parent
      will never reach it's mnt_root.  For lack of a better term
      I call this an escaped path.

      prepend_path is called by four different functions __d_path,
      d_absolute_path, d_path, and getcwd.

      __d_path only wants to see paths are connected to the root it passes
      in.  So __d_path needs prepend_path to return an error.

      d_absolute_path similarly wants to see paths that are connected to
      some root.  Escaped paths are not connected to any mnt_root so
      d_absolute_path needs prepend_path to return an error greater
      than 1.  So escaped paths will be treated like paths on lazily
      unmounted mounts.

      getcwd needs to prepend "(unreachable)" so getcwd also needs
      prepend_path to return an error.

      d_path is the interesting hold out.  d_path just wants to print
      something, and does not care about the weird cases.  Which raises
      the question what should be printed?

      Given that <escaped_path>/<anything> should result in -ENOENT I
      believe it is desirable for escaped paths to be printed as empty
      paths.  As there are not really any meaninful path components when
      considered from the perspective of a mount tree.

      So tweak prepend_path to return an empty path with an new error
      code of 3 when it encounters an escaped path.

      Signed-off-by: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>
      Signed-off-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx>

  commit 6f179af88f60b32c2855e7f3e16ea8e336a7043f
  Author: Hugh Dickins <hughd@xxxxxxxxxx>
  Date:   Mon Aug 17 17:34:27 2015 -0700

      mm: fix potential data race in SyS_swapon

      While running KernelThreadSanitizer (ktsan) on upstream kernel with
      trinity, we got a few reports from SyS_swapon, here is one of them:

      Read of size 8 by thread T307 (K7621):
       [<     inlined    >] SyS_swapon+0x3c0/0x1850 SYSC_swapon 
mm/swapfile.c:2395
       [<ffffffff812242c0>] SyS_swapon+0x3c0/0x1850 mm/swapfile.c:2345
       [<ffffffff81e97c8a>] ia32_do_call+0x1b/0x25

      Looks like the swap_lock should be taken when iterating through the
      swap_info array on lines 2392 - 2401: q->swap_file may be reset to
      NULL by another thread before it is dereferenced for f_mapping.

      But why is that iteration needed at all?  Doesn't the claim_swapfile()
      which follows do all that is needed to check for a duplicate entry -
      FMODE_EXCL on a bdev, testing IS_SWAPFILE under i_mutex on a regfile?

      Well, not quite: bd_may_claim() allows the same "holder" to claim the
      bdev again, so we do need to use a different holder than "sys_swapon";
      and we should not replace appropriate -EBUSY by inappropriate -EINVAL.

      Index i was reused in a cpu loop further down: renamed cpu there.

      Reported-by: Andrey Konovalov <andreyknvl@xxxxxxxxxx>
      Signed-off-by: Hugh Dickins <hughd@xxxxxxxxxx>
      Signed-off-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx>

  commit 061f98e959ea025a5d87c3e089d59ec2ec5f5d6d
  Merge: b5f5914 ac05fbb
  Author: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 02:31:20 2015 -0400

      Merge branch 'superblock-scaling' of 
git://git.kernel.org/pub/scm/linux/kernel/git/josef/btrfs-next into for-next

      Conflicts:
        include/linux/fs.h

  commit 82819ffb42fb45197bacf3223191deca31d3eb91
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Fri Aug 21 08:14:46 2015 +0200

      perf/x86/msr: Fix the MSR driver build

      The new MSR PMU driver made use of rdtsc() which does not exist (yet) in
      this tree:

        arch/x86/kernel/cpu/perf_event_msr.c:91:3: error: implicit declaration 
of function 'rdtsc'

      Use the old rdtscll() primitive for now.

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit b06ece93cf96b430587e77e01053b2b8f99cb750
  Author: Krzysztof Kozlowski <k.kozlowski.k@xxxxxxxxx>
  Date:   Tue Jul 7 22:00:47 2015 +0900

      video: fbdev: s3c-fb: Constify platform_device_id

      The platform_device_id is not modified by the driver and core uses it as
      const.

      Signed-off-by: Krzysztof Kozlowski <k.kozlowski.k@xxxxxxxxx>
      Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>

  commit a9e01ed986aa80d3092134428f453072752da223
  Merge: 08617f4 81bf1c6
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 20 22:18:45 2015 -0700

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next

      Pablo Neira Ayuso says:

      ====================
      Netfilter updates for net-next

      This is second pull request includes the conflict resolution patch that
      resulted from the updates that we got for the conntrack template through
      kmalloc. No changes with regards to the previously sent 15 patches.

      The following patchset contains Netfilter updates for your net-next tree, 
they
      are:

      1) Rework the existing nf_tables counter expression to make it per-cpu.

      2) Prepare and factor out common packet duplication code from the TEE 
target so
         it can be reused from the new dup expression.

      3) Add the new dup expression for the nf_tables IPv4 and IPv6 families.

      4) Convert the nf_tables limit expression to use a token-based approach 
with
         64-bits precision.

      5) Enhance the nf_tables limit expression to support limiting at packet 
byte.
         This comes after several preparation patches.

      6) Add a burst parameter to indicate the amount of packets or bytes that 
can
         exceed the limiting.

      7) Add netns support to nfacct, from Andreas Schultz.

      8) Pass the nf_conn_zone structure instead of the zone ID in nf_tables to 
allow
         accessing more zone specific information, from Daniel Borkmann.

      9) Allow to define zone per-direction to support netns containers with
         overlapping network addressing, also from Daniel.

      10) Extend the CT target to allow setting the zone based on the skb->mark 
as a
         way to support simple mappings from iptables, also from Daniel.

      11) Make the nf_tables payload expression aware of the fact that VLAN 
offload
          may have removed a vlan header, from Florian Westphal.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 81bf1c64e7fe08f956c74fe2b0f1fa6eb163bd91
  Merge: 8cfd23e 938049e
  Author: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>
  Date:   Fri Aug 21 01:10:19 2015 +0200

      Merge branch 'master' of 
git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next

      Resolve conflicts with conntrack template fixes.

      Conflicts:
        net/netfilter/nf_conntrack_core.c
        net/netfilter/nf_synproxy_core.c
        net/netfilter/xt_CT.c

      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit 44790462d041d3037d60b3bf88f30837a72006ff
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Tue Jul 14 11:33:31 2015 +1000

      drm/dp/mst: dump branch OUI in debugfs (v2)

      It appears some MST docks are worse than other, but the only
      way to know is to see the sw revisions in here, so dump
      the branch OUI so we can look at the sw revision.

      v2: Thierry made me feel guilty, so I parsed the branch
      OUI.

      Reviewed-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>

  commit ba5d183bced6cb60b2838a0bf04665c1c1e4bff1
  Merge: ff2d920 258d9bc
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 20 18:59:45 2015 -0700

      Merge tag 'tegra-for-4.3-defconfig' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/defconfig

      ARM: tegra: Default configuration updates for v4.3-rc1

      Enable the GK20A GPU (via the Nouveau driver) and CPU frequency scaling
      on Tegra124.

      * tag 'tegra-for-4.3-defconfig' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
        ARM: tegra: Update multi_v7_defconfig
        ARM: tegra: Update default configuration

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 21815b9a24c6e6d3488703609561bd2892d3d9f3
  Merge: 420f262 588c43a
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 20 18:50:17 2015 -0700

      Merge tag 'tegra-for-4.3-memory' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/drivers

      ARM: tegra: Memory controller updates for v4.3-rc1

      Adds support for Tegra210, which allows the SMMU to be used on this new
      SoC generation.

      * tag 'tegra-for-4.3-memory' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
        memory: tegra: Add Tegra210 support
        memory: tegra: Add support for a variable-size client ID bitfield
        memory: tegra: Expose supported rates via debugfs

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 420f2629fa041ed92f7e687b3bc8020d80b209bb
  Merge: 5378e46 9eb15db
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 20 18:47:04 2015 -0700

      Merge tag 'tegra-for-4.3-cpufreq' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/drivers

      ARM: tegra: CPU frequency scaling for v4.3-rc1

      This adds CPU frequency scaling support for Tegra124.

      * tag 'tegra-for-4.3-cpufreq' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
        cpufreq: Add cpufreq driver for Tegra124
        cpufreq: tegra: Rename tegra-cpufreq to tegra20-cpufreq
        cpufreq: tegra124: Add device tree bindings

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 5378e4665f226e3b5b460793397eff32b4de9daa
  Merge: bd90f11 1ec0e11
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 20 18:43:15 2015 -0700

      Merge tag 'tegra-for-4.3-soc' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/drivers

      ARM: tegra: Core SoC changes for v4.3-rc1

      This contains a bit more of Tegra210 support, which is shaping up pretty
      nicely. Other than that there are a couple of cleanup patches here, too.

      * tag 'tegra-for-4.3-soc' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
        ARM: tegra: cpuidle: implement cpuidle_state.enter_freeze()
        ARM: tegra: Disable cpuidle if PSCI is available
        soc/tegra: pmc: Use existing pclk reference
        soc/tegra: pmc: Remove unnecessary return statement
        soc: tegra: Remove redundant $(CONFIG_ARCH_TEGRA) in Makefile
        soc/tegra: fuse: Add spare bit offset for Tegra210
        soc/tegra: fuse: Add spare bit offset for Tegra124
        soc/tegra: fuse: Add spare bit offset for Tegra114
        soc/tegra: fuse: Rename core_* to soc_*
        soc/tegra: fuse: Add Tegra210 support
        soc/tegra: fuse: Unify Tegra20 and Tegra30 drivers
        soc/tegra: fuse: Restrict legacy code to 32-bit ARM
        soc/tegra: pmc: Add Tegra210 support
        soc/tegra: pmc: Restrict legacy code to 32-bit ARM
        soc/tegra: pmc: Avoid usage of uninitialized variable
        soc/tegra: Add Tegra210 support
        soc/tegra: Add Tegra132 support

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 97a2482d9891f0ad6a3710e0b6ae9949c140c7f1
  Merge: 16478b6 5cf4af3
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 20 18:41:42 2015 -0700

      Merge tag 'tegra-for-4.3-cleanup' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into next/cleanup

      ARM: tegra: Cleanup patches for v4.3-rc1

      Just a couple of trivial cleanups to make the HDA controller driver code
      match the device tree binding.

      * tag 'tegra-for-4.3-cleanup' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux:
        ALSA: hda/tegra: Order clock and reset names consistently
        ALSA: hda/tegra - Fix hda2codec_2x clock and reset names

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 7c4ecc72d82f2908b9fe70dbd49c1cd35738f995
  Merge: deb1436 2b347c6
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 20 18:39:57 2015 -0700

      Merge tag 'samsung-defconfig-new' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/late

      Samsung defconfig updates for v4.3

      - for exynos_defconfig
        : enable SND_SOC_ODROIDX2 and SND_SIMPLE_CARD for
          Odroid-XU3 to use max98090 audio codec
        : enalbe SENSORS_NTC_THERMISTOR for Peach boards
        : enable cpufreq-dt driver with ONDEMAND governor
          for Exynos SoCs 3250, 4210, 4212, 4412 and 5250

      - for multi_v7_defconfig:
        : remove SAMSUNG_USB2PHY and SAMSUNG_USB3PHY are not used now
        : enable SENSORS_NTC_THERMISTOR and EXYNOS_ADC for Peach boards
        : enable REGULATOR_MAX77802 for Peach boards

      * tag 'samsung-defconfig-new' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
        ARM: exynos_defconfig: Enable cpufreq-dt driver
        ARM: multi_v7_defconfig: Enable max77802 regulator
        ARM: exynos_defconfig: Enable NTC Thermistors support
        ARM: multi_v7_defconfig: Enable NTC Thermistors support
        ARM: multi_v7_defconfig: Remove old Samsung USB PHY configs
        ARM: exynos_defconfig: Enable CONFIG_SND_SOC_ODROIDX2 for Odroid-XU3

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit deb14362a5268a094efb0534f2999bc8ea97ce2f
  Merge: 418012f 5e3863a
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 20 18:38:39 2015 -0700

      Merge tag 'samsung-late-cpufreq-driver' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/late

      Samsung cpufreq driver updates for v4.3

      - remove exynos4 SoCs and exynos5250 specific cpufreq driver support
        and unselectable rule for arm-exynos-cpufreq.o because of supporting
        generic cpufreq driver for the exynos SoCs

      * Note this is depending on tags/samsung-clk-driver, tags/samsung-soc
        and tags/samsung-late-dt

      * tag 'samsung-late-cpufreq-driver' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
        cpufreq: exynos: Remove unselectable rule for arm-exynos-cpufreq.o
        cpufreq: exynos: remove Exynos4x12 specific cpufreq driver support
        cpufreq: exynos: remove exynos5250 specific cpufreq driver support

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 418012fbe5e6ef83424a8233b29c11159acd4af9
  Merge: 819167e bdd2648
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 20 18:37:55 2015 -0700

      Merge tag 'samsung-soc' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/late

      Samsung SoC updates for v4.3

      - add compatible string to exynos_cpufreq_matchs to switch for
        supporting generic cpufreq driver for exynos3250, 4210, 4212
        and 5250 SoCs in mach-exynos/

      * tag 'samsung-soc' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
        ARM: EXYNOS: switch to using generic cpufreq driver for exynos4x12
        ARM: EXYNOS: Add exynos3250 compatible to use generic cpufreq driver
        ARM: EXYNOS: switch to using generic cpufreq driver for exynos5250

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 819167e7a0808891048ef45a8933fdeb1f04899f
  Merge: 6b07705 ba03279
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 20 18:35:34 2015 -0700

      Merge tag 'samsung-late-dt' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/late

      Samsung 2nd DT updates for v4.3

      - for exynos3250, 4212, 4412 and 5250
        : add CPU OPP and regulator supply property

      - for exynos3250
        : add CPU cooling binding for exynos3250 boards

      - for exynos4 SoCs
        : add iommu property to JPEG device

      - for exynos4412-odroidu3
        : enable SPI1

      - for exynos5250-snow
        : add SPI CS

      - for exynos5422
        : add exynos5422-cpus.dtsi to correct cpu order

      * Note this branch is depending on tags/samsung-clk-driver

      * tag 'samsung-late-dt' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung: (22 commits)
        ARM: dts: add iommu property to JPEG device for exynos4
        ARM: dts: enable SPI1 for exynos4412-odroidu3
        ARM: dts: Add SPI CS on exynos5250-snow
        ARM: dts: Add CPU cooling binding for exynos3250 boards
        ARM: dts: add exynos5422-cpus.dtsi to correct cpu order
        ARM: dts: add CPU OPP and regulator supply property for exynos4x12
        ARM: dts: Add CPU OPP and regulator supply property for exynos3250
        ARM: dts: add CPU OPP and regulator supply property for exynos5250
        ARM: dts: Extend exynos5420-pinctrl nodes using labels instead of paths
        ARM: dts: Include exynos5420-pinctrl after the nodes were defined for 
exynos5420
        ARM: dts: Extend exynos5250-pinctrl nodes using labels instead of paths
        ARM: dts: Include exynos5250-pinctrl after the nodes were defined for 
exynos5250
        ARM: dts: Enable thermal-zones for exynos5422-odroidxu3
        ARM: dts: Define default thermal-zones for exynos5422
        ARM: dts: Enable TMU for exynos5422-odroidxu3
        ARM: dts: Add pwm-fan node for exynos5422-odroidxu3
        ARM: dts: Use labels for overriding nodes for exynos4210-universal_c210
        ARM: dts: Set max17047 over heat and voltage thresholds for 
exynos4412-trats2
        ARM: dts: Enable USB3 regulators for exynos5422-odroidxu3
        ARM: dts: Clean up indentation for exynos5410-smdk5410
        ...

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 6b0770582d3b1c60172bc515d658fa12a72e1faf
  Merge: bc0195a cd6acee
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 20 18:35:02 2015 -0700

      Merge tag 'samsung-clk-driver' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/late

      Samsung clk driver updates for v4.3

      - add cpu clock configuration data and instantiate cpu clock
        for exynos3250, 4210, 4412 and 5250 SoCs to support Samsung
        specific cpu-clock type

      * Note this branch has been provided to clk tree as a topic branch

      * tag 'samsung-clk-driver' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
        clk: exynos4x12: add cpu clock configuration data and instantiate cpu 
clock
        clk: exynos3250: Add cpu clock configuration data and instaniate cpu 
clock
        clk: exynos5250: add cpu clock configuration data and instantiate cpu 
clock

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit bd90f11589181adad1b32b16a34df52d17dd4961
  Merge: a005bc6 5d44595
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 20 18:30:09 2015 -0700

      Merge tag 'reset-for-4.3' of git://git.pengutronix.de/git/pza/linux into 
next/drivers

      Reset controller changes for v4.3

      - moved the DT reset binding includes from
        include/dt-bindings/reset-controller to include/dt-bindings/reset
      - new driver for LPC18xx Reset Generation Unit (RGU)
      - of_device_id array in the STi driver changed to const.
      - extend SoCFPGA reset driver to support Arria10
      - new ath79 reset controller driver for AR71XX/AR9XXX
      - new driver for Xilinx Zynq reset controller

      * tag 'reset-for-4.3' of git://git.pengutronix.de/git/pza/linux:
        reset: reset-zynq: Adding support for Xilinx Zynq reset controller.
        docs: dts: Added documentation for Xilinx Zynq Reset Controller 
bindings.
        MIPS: ath79: Add the reset controller to the AR9132 dtsi
        reset: Add a driver for the reset controller on the AR71XX/AR9XXX
        devicetree: Add bindings for the ATH79 reset controller
        reset: socfpga: Update reset-socfpga to read the altr,modrst-offset 
property
        doc: dt: add documentation for lpc1850-rgu reset driver
        reset: add driver for lpc18xx rgu
        reset: sti: constify of_device_id array
        ARM: STi: DT: Move reset controller constants into common location
        MAINTAINERS: add include/dt-bindings/reset path to reset controller 
entry

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit f2032f24c0e51487d88c3555db12e27d561e4f14
  Author: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
  Date:   Wed Aug 19 14:49:26 2015 +0900

      ARM: dts: UniPhier: fix PPI interrupt CPU mask of timer nodes

      This SoC is integrated with 4 Cortex-A9 cores.  The GIC bindings
      document says that the bits[15:8] of the 3rd cell of the interrupts
      property represents PPI interrupt CPU mask.  Because the timer
      interrupts are wired to all of the 4 cores, bits[15:8] should be set
      to 0xf.

      Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 012bd2a533cd665c9961c5905f144170b16f61e4
  Author: Yalin Wang <yalin.wang2010@xxxxxxxxx>
  Date:   Thu Aug 20 17:41:42 2015 -0700

      Input: zhenhua - switch to using bitrev8()

      Instead of custom zhenhua_bitreverse() let's use generic bitrev8().

      Signed-off-by: Yalin Wang <yalin.wang2010@xxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 467fb18a8d538be6548ef4093003b63aebbb07b9
  Author: Brian Norris <briannorris@xxxxxxxxxxxx>
  Date:   Wed Aug 19 15:18:41 2015 -0700

      ARM: dts: rockchip: correct regulator power states for suspend

      When getting translated from a downstream device tree that used slightly
      different DT bindings, these regulators got labeled with the
      "on-in-suspend" state, when they were actually supposed to be turned off
      for S3 suspend. This was harmless, but not intentional, AFAICT.

      Let's turn them off to get the optimal power state.

      Signed-off-by: Brian Norris <briannorris@xxxxxxxxxxxx>
      Reviewed-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Heiko Stuebner <heiko@xxxxxxxxx>

  commit 6a414e462a7c493ed83535f388b07a34446f33f4
  Author: Brian Norris <briannorris@xxxxxxxxxxxx>
  Date:   Wed Aug 19 15:18:40 2015 -0700

      ARM: dts: rockchip: correct regulator PM properties

      This DTS file was submitted with non-upstream bindings. I happened
      across this while reviewing the jaq DTS.

      Signed-off-by: Brian Norris <briannorris@xxxxxxxxxxxx>
      Reviewed-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Heiko Stuebner <heiko@xxxxxxxxx>

  commit dd52128afddecade1dcd0767aec124c13c8a40bb
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 17:59:49 2015 -0500

      NFSv4.1/pnfs Ensure flexfiles reports all connection related errors

      Make sure that we also handle RPC level connection and protocol
      negotiation errors.

      Reported-by: Tom Haynes <loghyr@xxxxxxxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 08617f47eaf8c70b4c236dee2014c6141aa282bf
  Merge: 938049e 32a2b00
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 20 15:42:38 2015 -0700

      Merge branch 'lwt-ipv6'

      Jiri Benc says:

      ====================
      lwtunnel: per route ipv6 support for vxlan

      v3: Moved LWTUNNEL_ENCAP_IP6 definition in patch 13.
      v2: Fixed issues in patch 4 pointed out by Alexei.

      This series enables IPv6 tunnels based on lwtunnel infrastructure. Only
      vxlan is supported for now.

      Tested in all combinations of IPv4 over IPv6, IPv6 over IPv4 and IPv6 over
      IPv6.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 32a2b002ce615eadd3bfaddabde290f70a1dd17b
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Aug 20 13:56:32 2015 +0200

      ipv6: route: per route IP tunnel metadata via lightweight tunnel

      Allow specification of per route IP tunnel instructions also for IPv6.
      This complements commit 3093fbe7ff4b ("route: Per route IP tunnel metadata
      via lightweight tunnel").

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      CC: YOSHIFUJI Hideaki <hideaki.yoshifuji@xxxxxxxxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 904af04d30f303d96902584206457128c3051d8d
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Aug 20 13:56:31 2015 +0200

      ipv6: route: extend flow representation with tunnel key

      Use flowi_tunnel in flowi6 similarly to what is done with IPv4.
      This complements commit 1b7179d3adff ("route: Extend flow representation
      with tunnel key").

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a725e514dbb444f2a39c2bc5de72eb5efbeb7d5e
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Aug 20 13:56:30 2015 +0200

      vxlan: metadata based tunneling for IPv6

      Support metadata based (formerly flow based) tunneling also for IPv6.
      This complements commit ee122c79d422 ("vxlan: Flow based tunneling").

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Acked-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6f264e47d4dbbe590ac1131587933bb87ded296d
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Aug 20 13:56:29 2015 +0200

      vxlan: do not shadow flags variable

      The 'flags' variable is already defined in the outer scope.

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 705cc62f6728c5a23e3c82465aa94e652e0b50e4
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Aug 20 13:56:28 2015 +0200

      vxlan: provide access function for vxlan socket address family

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ab450605b35caa768ca33e86db9403229bf42be4
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Aug 20 13:56:27 2015 +0200

      ipv6: ndisc: inherit metadata dst when creating ndisc requests

      If output device wants to see the dst, inherit the dst of the original skb
      in the ndisc request.

      This is an IPv6 counterpart of commit 0accfc268f4d ("arp: Inherit metadata
      dst when creating ARP requests").

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 06e9d040ba08b0f645783ff958384d5837b3fa3a
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Aug 20 13:56:26 2015 +0200

      ipv6: drop metadata dst in ip6_route_input

      The fix in commit 48fb6b554501 is incomplete, as now ip6_route_input can 
be
      called with non-NULL dst if it's a metadata dst and the reference is 
leaked.
      Drop the reference.

      Fixes: 48fb6b554501 ("ipv6: fix crash over flow-based vxlan device")
      Fixes: ee122c79d422 ("vxlan: Flow based tunneling")
      CC: Wei-Chun Chao <weichunc@xxxxxxxxxxxx>
      CC: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 61adedf3e3f1d3f032c5a6a299978d91eff6d555
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Aug 20 13:56:25 2015 +0200

      route: move lwtunnel state to dst_entry

      Currently, the lwtunnel state resides in per-protocol data. This is
      a problem if we encapsulate ipv6 traffic in an ipv4 tunnel (or vice 
versa).
      The xmit function of the tunnel does not know whether the packet has been
      routed to it by ipv4 or ipv6, yet it needs the lwtstate data. Moving the
      lwtstate data to dst_entry makes such inter-protocol tunneling possible.

      As a bonus, this brings a nice diffstat.

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Roopa Prabhu <roopa@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7c383fb2254c44e096427470da6a36380169b548
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Aug 20 13:56:24 2015 +0200

      ip_tunnels: use tos and ttl fields also for IPv6

      Rename the ipv4_tos and ipv4_ttl fields to just 'tos' and 'ttl', as 
they'll
      be used with IPv6 tunnels, too.

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c1ea5d672aaff08da337dee735dbb548e3415585
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Aug 20 13:56:23 2015 +0200

      ip_tunnels: add IPv6 addresses to ip_tunnel_key

      Add the IPv6 addresses as an union with IPv4 ones. When using IPv4, the
      newly introduced padding after the IPv4 addresses needs to be zeroed out.

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Acked-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 376534a3d17002d608985bd67c3b0880eacadd14
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Aug 20 13:56:22 2015 +0200

      ip_tunnels: use offsetofend

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6b8847c5a2bafbbf92f4b779f87165093457ea68
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Aug 20 13:56:21 2015 +0200

      ip_tunnels: use u8/u16/u32

      The ip_tunnels.h include file uses mixture of __u16 and u16 (etc.) types.
      Unify it to the non-underscore variants.

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ac1cf3990c99802eae3aa735b35c94a2131eb9fe
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Thu Aug 20 13:56:20 2015 +0200

      ip_tunnels: remove custom alignment and packing

      The custom alignment of struct ip_tunnel_key is unnecessary. In struct
      sw_flow_key, it starts at offset 256, in struct ip_tunnel_info it's the
      first field.

      The structure is also packed even without the __packed keyword.

      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 938049e18dca57bcd2f93986fc1cbb5a83cdf027
  Author: Jeremy Linton <jeremy.linton@xxxxxxx>
  Date:   Wed Aug 19 13:56:42 2015 -0500

      net: xgene Remove xgene specific phy and MAC lookup functions

      Convert the xgene_get_mac_address to device_get_mac_address(), and
      xgene_get_phy_mode() to device_get_phy_mode().

      Signed-off-by: Jeremy Linton <jeremy.linton@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4c9bcd117918ba6096d01194565e9d1814e5ef22
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 11:40:31 2015 -0700

      net: Fix nexthop lookups

      Andreas reported breakage adding routes with local nexthops:
      $ ip route show table main
      ...
      172.28.0.0/24 dev vnf-xe1p0  proto kernel  scope link  src 172.28.0.16

      $ ip route add 10.0.0.0/8 via 172.28.0.32 table 100 dev vnf-xe1p0
      RTNETLINK answers: Resource temporarily unavailable

      3bfd847203c changed the lookup to use the passed in table but for cases 
like
      this the nexthop is in the local table rather than the passed in table.

      Fixes: 3bfd847203c ("net: Use passed in table for nexthop lookups")
      Reported-by: Andreas Schultz <aschultz@xxxxxxxx>
      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit eb4cb85180cd3baee4a01fd32e296fc28c2cffc1
  Author: Scott Feldman <sfeldma@xxxxxxxxx>
  Date:   Wed Aug 19 11:29:35 2015 -0700

      bridge: fix netlink max attr size

      .maxtype should match .policy.  Probably just been getting lucky here
      because IFLA_BRPORT_MAX > IFLA_BR_MAX.

      Fixes: 13323516 ("bridge: implement rtnl_link_ops->changelink")
      Signed-off-by: Scott Feldman <sfeldma@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4d14a63400dd3e353acb6547831fe465f85864b1
  Author: Jeremy Linton <jeremy.linton@xxxxxxx>
  Date:   Wed Aug 19 11:46:43 2015 -0500

      smsc911x: Remove dev==NULL check.

      The dev==NULL check in smsc911x_probe_config is useless
      and isn't providing any additional protection. If a fwnode
      doesn't exist then an appropriate error should be returned
      by device_get_phy_mode() covering the original case
      of a missing of/fwnode.

      Signed-off-by: Jeremy Linton <jeremy.linton@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2f710a3a8089c12dfe3c0cf04bb0a3dee3dea019
  Author: Jeremy Linton <jeremy.linton@xxxxxxx>
  Date:   Wed Aug 19 11:46:42 2015 -0500

      device property: Add ETH_ALEN check, update comments.

      This patch adds MAC address length check back into
      the device_get_mac_addr() function before calling
      is_valid_ether_addr() similar to the way the OF
      routine does it.

      Update the comments for the two new functions.

      Signed-off-by: Jeremy Linton <jeremy.linton@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ef09242f3997f5fa063bcfa918d3ce4c4485376c
  Merge: e01286e a6bf49d
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 20 14:13:25 2015 -0700

      Merge tag 'wireless-drivers-next-for-davem-2015-08-19' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/wireless-drivers-next

      Kalle Valo says:

      ====================
      Major changes:

      ath10k:

      * add support for qca99x0 family of devices
      * improve performance of tx_lock
      * add support for raw mode (802.11 frame format) and software crypto
        engine enabled via a module parameter

      ath9k:

      * add fast-xmit support

      wil6210:

      * implement TSO support
      * support bootloader v1 and onwards

      iwlwifi:

      * Deprecate -10.ucode
      * Clean ups towards multiple Rx queues
      * Add support for longer CMD IDs. This will be required by new
        firmwares since we are getting close to the u8 limit.
      * bugfixes for the D0i3 power state
      * Add basic support for FTM
      * polish the Miracast operation
      * fix a few power consumption issues
      * scan cleanup
      * fixes for D0i3 system state
      * add paging for devices that support it
      * add again the new RBD allocation model
      * add more options to the firmware debug system
      * add support for frag SKBs in Tx
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e01286ef03a9c7b1d4937309f923c226ab05bc4d
  Author: Ying Xue <ying.xue@xxxxxxxxxxxxx>
  Date:   Wed Aug 19 16:04:51 2015 +0800

      ipv4: Make fib_encap_match static

      Make fib_encap_match() static as it isn't used outside the file.

      Signed-off-by: Ying Xue <ying.xue@xxxxxxxxxxxxx>
      Reviewed-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 84b6714e54e5199e76f845be70295ccaab924872
  Merge: 0f8f27d f4e774f
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 20 14:10:23 2015 -0700

      Merge branch 'ewma'

      Johannes Berg says:

      ====================
      average: convert users to inline implementation

      Since there's very little benefit of the out-of-line implementation
      (a single byte of .text in one driver as far as I've seen), convert
      all drivers to the inline implementation, saving memory, and remove
      the out-of-line implementation.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f4e774f55fe0bb568a0877b2eb9e1b4b5a6f5cbc
  Author: Johannes Berg <johannes.berg@xxxxxxxxx>
  Date:   Wed Aug 19 09:46:22 2015 +0200

      average: remove out-of-line implementation

      Since all users are now converted to the inline implementation,
      remove the out-of-line implementation entirely.

      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 11ab35ed0457a4b7914358986a67064ecb467e7d
  Author: Johannes Berg <johannes.berg@xxxxxxxxx>
  Date:   Wed Aug 19 09:46:21 2015 +0200

      rt2x00: use DECLARE_EWMA

      Instead of using the out-of-line EWMA calculation, use DECLARE_EWMA()
      to create static inlines. On x86/64 this results in code that's one
      byte larger (for me), but reduces struct link_ant and struct link
      size by the two unsigned long values that store the parameters each.

      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 46f26ddf562e7495ffa37144be5e447aeb13795e
  Author: Johannes Berg <johannes.berg@xxxxxxxxx>
  Date:   Wed Aug 19 09:46:20 2015 +0200

      ath5k: use DECLARE_EWMA

      This reduces code size slightly (at least on x86/64) while also
      removing memory consumption by two unsigned long values for each
      ath5k device.

      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 5377d75823ff90c0d5d52d69087707b2e54be21b
  Author: Johannes Berg <johannes@xxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 09:48:40 2015 +0200

      virtio_net: use DECLARE_EWMA

      Instead of using the out-of-line EWMA calculation, use DECLARE_EWMA()
      to create static inlines. On x86/64 this results in no change in code
      size for me, but reduces the struct receive_queue size by the two
      unsigned long values that store the parameters.

      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9dae3a97297f71e884ed8e7664955bcacb86f010
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Thu Aug 20 16:08:27 2015 -0500

      PCI: Move MPS configuration check to pci_configure_device()

      Previously we checked for invalid MPS settings, i.e., a device with MPS
      different than its upstream bridge, in pcie_bus_detect_mps().  We only did
      this if the arch or hotplug driver called pcie_bus_configure_settings(),
      and then only if PCIe bus tuning was disabled (PCIE_BUS_TUNE_OFF).

      Move the MPS checking code to pci_configure_device(), so we do it in the
      pci_device_add() path for every device.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>

  commit 0f8f27de19667075591eaffbf435dd78c73a2df4
  Author: Yuval Mintz <Yuval.Mintz@xxxxxxxxxx>
  Date:   Wed Aug 19 10:21:58 2015 +0300

      bnx2x: Fix vxlan endianity issue

      Commit f34fa14cc033 ("bnx2x: Add vxlan RSS support") has introduced an
      endianity issue when passing the vxlan UDP port to the HW.

      Reported-by: <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Yuval Mintz <Yuval.Mintz@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 26a6980cf40c67182bc36fa0b088ebed79796110
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Aug 18 21:09:33 2015 +0200

      drm/amdgpu: fix CS error handling v2

      Stop double freeing the the BO list by pulling the content
      of amdgpu_cs_parser_prepare_job() into the IOCTL function again.

      v2: better commit message

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx> (v1)
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit b203dd95949ec8d5e30d53446408eb9a4d1bdc62
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Aug 18 18:23:16 2015 +0200

      drm/amdgpu: fix zeroing all IB fields manually v2

      The problem now is that we don't necessarily call amdgpu_ib_get()
      in some error paths and so work with uninitialized data.

      Better require that the memory is already zeroed.

      v2: better commit message

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx> (v1)
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit bf7ebaeed4dca7c0a7f9d9a44efbd9f74cf22c5d
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Aug 18 15:30:26 2015 +0200

      drm/amdgpu: free the job immediately after dispatching it

      Fixes a whole bunch of lockdep warnings.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 2b184d8dbc002d3ef26e4827dd5a80d57533dcae
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Aug 18 14:41:25 2015 +0200

      drm/amdgpu: use a spinlock instead of a mutex for the rq

      More appropriate and fixes some nasty lockdep warnings.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit a3348bb801bac5c9a81fb3da4b1a2f0479e97923
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Aug 18 16:25:46 2015 +0800

      drm/amdgpu: don't need to use bo_list_clone any more

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 3c4adead8480f81df687a181d1e54a39b91b9363
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Aug 18 16:19:13 2015 +0800

      drm/amdgpu: some clean up for cs_ioctl

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 4fe6311734986220e40afe4bf72d62383c1e8d6c
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Aug 18 16:12:15 2015 +0800

      drm/amdgpu: prepare job should be common code path

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit bb977d3711ed1de1601b463e7fd5a43d82a2b077
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Aug 18 15:16:40 2015 +0800

      drm/amdgpu: abstract amdgpu_job for scheduler

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 1a15aaa998dc3b51f7f8b9a820bc7a192a0c2f76
  Author: Eric Anholt <eric@xxxxxxxxxx>
  Date:   Thu Aug 6 16:00:33 2015 -0700

      irqchip: Add bcm2836 interrupt controller for Raspberry Pi 2

      This interrupt controller is the new root interrupt controller with
      the timer, PMU events, and IPIs, and the bcm2835's interrupt
      controller is chained off of it to handle the peripherals.

      I wrote the interrupt chip support, while Andrea Merello wrote the IPI
      code.

      Signed-off-by: Andrea Merello <andrea.merello@xxxxxxxxx>
      Signed-off-by: Eric Anholt <eric@xxxxxxxxxx>
      Acked-by: Stephen Warren <swarren@xxxxxxxxxxxxx>
      Cc: linux-rpi-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: Lee Jones <lee@xxxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1438902033-31477-5-git-send-email-eric@xxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 815e7a31c3f7929f371da9c7e9ee91cfd52ef453
  Author: Eric Anholt <eric@xxxxxxxxxx>
  Date:   Thu Aug 6 16:00:32 2015 -0700

      irqchip: Add documentation for the bcm2836 interrupt controller

      This is a new per-cpu root interrupt controller on the Raspberry Pi 2,
      which will chain to the bcm2835 interrupt controller for peripheral
      interrupts.

      Signed-off-by: Eric Anholt <eric@xxxxxxxxxx>
      Acked-by: Stephen Warren <swarren@xxxxxxxxxxxxx>
      Cc: linux-rpi-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: Lee Jones <lee@xxxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1438902033-31477-4-git-send-email-eric@xxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit a493f339a88ddd20693460c1dcf8230aa3732b8b
  Author: Eric Anholt <eric@xxxxxxxxxx>
  Date:   Thu Aug 6 16:00:31 2015 -0700

      irqchip/bcm2835: Add support for being used as a second level controller

      The BCM2836 (Raspberry Pi 2) uses two levels of interrupt handling
      with the CPU-local interrupts being the root, so we need to register
      ours as chained off of the CPU's local interrupt.

      Signed-off-by: Eric Anholt <eric@xxxxxxxxxx>
      Acked-by: Stephen Warren <swarren@xxxxxxxxxxxxx>
      Cc: linux-rpi-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: Lee Jones <lee@xxxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1438902033-31477-3-git-send-email-eric@xxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit de58e52f207e3318cb1e1d43f951454e0c83827f
  Author: Eric Anholt <eric@xxxxxxxxxx>
  Date:   Thu Aug 6 16:00:30 2015 -0700

      irqchip/bcm2835: Refactor handle_IRQ() calls out of MAKE_HWIRQ

      For BCM2836, we want to chain into this IRQ chip from the root
      controller, and for chaining we need to do something else instead of
      handle_IRQ() once we have decoded the IRQ.

      Note that this changes the behavior a little bit: Previously for a
      non-shortcut IRQ, we'd loop reading and handling the second level IRQ
      status until it was cleared before returning to the loop reading the
      top level IRQ status (Note that the top level bit is just an OR of the
      low level bits).  For the expected case of just one interrupt to be
      handled, this was an extra register read, so we're down from 4 to 3
      reads.

      Signed-off-by: Eric Anholt <eric@xxxxxxxxxx>
      Acked-by: Stephen Warren <swarren@xxxxxxxxxxxxx>
      Cc: linux-rpi-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: Lee Jones <lee@xxxxxxxxxx>
      Cc: Jason Cooper <jason@xxxxxxxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1438902033-31477-2-git-send-email-eric@xxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 6055f37afd8b68aaf512532e7e2dd651df2d7833
  Author: Marek Olšák <marek.olsak@xxxxxxx>
  Date:   Tue Aug 18 23:58:47 2015 +0200

      drm/amdgpu: bump the DRM version for new allowed mem-mapped registers

      Used by mesa, etc. for profiling.

      Reviewed-by: Michel Dänzer <michel.daenzer@xxxxxxx>
      Signed-off-by: Marek Olšák <marek.olsak@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit b86d598d0c9d847c3ff0fc1b31c762551a0f0e12
  Merge: 57b8efa 2640b39
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 20 13:01:57 2015 -0700

      Merge branch 'vrf-cleanups-part-2'

      Nikolay Aleksandrov says:

      ====================
      vrf: cleanups part 2

      This is the next part of vrf cleanups, patch 1 drops the SLAB_PANIC
      when creating kmem cache since it's handled, patch 02 removes a slave
      duplicate check which is already done by the lower/upper code, patch 3
      moves the ndo_add_slave code around a bit so we can drop an error
      label and patch 4 drops the master device checks which are unnecessary
      because the ops are taken from the master device itself so it can't be
      different.
      ====================

      Acked-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>

  commit 2640b39c28174dba1c9e089be575d87e5204282f
  Author: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 06:27:10 2015 +0300

      vrf: ndo_add|del_slave drop unnecessary checks

      When ndo_add|del_slave ops are used, they're taken from the respective
      master device's netdev ops, so if the master device is a VRF only then
      the VRF ops will get called thus no need to check the type of the
      master.

      Signed-off-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 15df5e711245743a7a8018dd6535e39dcfcb38fc
  Author: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 06:27:09 2015 +0300

      vrf: move vrf_insert_slave so we can drop a goto label

      We can simplify do_vrf_add_slave by moving vrf_insert_slave in the end
      of the enslaving and thus eliminate an error goto label. It always
      succeeds and isn't needed before that anyway.

      Signed-off-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 67f3a90b54322314a01af28946799a84c1b1d190
  Author: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 06:27:08 2015 +0300

      vrf: remove unnecessary duplicate check

      The upper/lower functions already check for duplicate slaves so no need
      to do it again.

      Signed-off-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e367da02fefcc6026c560ab3f361a40a16ccd9b3
  Author: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 06:27:07 2015 +0300

      vrf: don't panic on cache create failure

      It's pointless to panic on cache create failure when that case is handled
      and even more so since it's not a kernel-wide fatal problem so don't
      panic.

      Signed-off-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 29e76924cf087bc6a9114a9244828fd13ae959bb
  Author: Christophe Ricard <christophe.ricard@xxxxxxxxx>
  Date:   Wed Aug 19 21:26:43 2015 +0200

      nfc: netlink: Add capability to reply to vendor_cmd with data

      A proprietary vendor command may send back useful data to the user
      application.

      For example, the field level applied on the NFC router antenna.

      Still based on net/wireless/nl80211.c implementation,
      add nfc_vendor_cmd_alloc_reply_skb and nfc_vendor_cmd_reply in
      order to send back over netlink data generated by a proprietary
      command.

      Signed-off-by: Christophe Ricard <christophe-h.ricard@xxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit 57b8efa1a5e4baf3dfca8d5d7bfb946bd44ff390
  Author: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 06:12:29 2015 +0300

      vrf: plug skb leaks

      Currently whenever a packet different from ETH_P_IP is sent through the
      VRF device it is leaked so plug the leaks and properly drop these
      packets.

      Signed-off-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Acked-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 5a9e0ffc0f128ecdf7c770f76c268e4f9f3c9118
  Author: Christophe Ricard <christophe.ricard@xxxxxxxxx>
  Date:   Wed Aug 19 21:26:42 2015 +0200

      nfc: nci: hci: Add check on skb nci_hci_send_cmd parameter

      skb can be NULL and may lead to a NULL pointer error.

      Add a check condition before setting HCI rx buffer.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Christophe Ricard <christophe-h.ricard@xxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit d5dc861bd601b546ae6b36af54485142cca36a5e
  Author: Toshi Kani <toshi.kani@xxxxxx>
  Date:   Wed Jul 22 12:06:11 2015 -0600

      x86/mm/pat: Add comments to cachemode translation tables

      Add comments to the cachemode translation tables to clarify that
      the default values are set as minimal supported mode, which are
      necessary to handle WC and WT fallback to UC- when they are not
      enabled.

      Signed-off-by: Toshi Kani <toshi.kani@xxxxxx>
      Cc: Jan Beulich <jbeulich@xxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437588371-28223-1-git-send-email-toshi.kani@xxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit c04c674fadeb4a8e6522fc838d4620f7cfd4c621
  Author: Robert Baldyga <r.baldyga@xxxxxxxxxxx>
  Date:   Thu Aug 20 17:26:02 2015 +0200

      nfc: s3fwrn5: Add driver for Samsung S3FWRN5 NFC Chip

      Add driver for Samsung S3FWRN5 NFC controller.
      S3FWRN5 is using NCI protocol and I2C communication interface.

      Signed-off-by: Robert Baldyga <r.baldyga@xxxxxxxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit 025a0cb8380b7100d39fb426db9192b6c59595dc
  Author: Robert Baldyga <r.baldyga@xxxxxxxxxxx>
  Date:   Thu Aug 20 17:26:01 2015 +0200

      NFC: nci: export nci_core_reset and nci_core_init

      Some drivers needs to have ability to reinit NCI core, for example
      after updating firmware in setup() of post_setup() callback. This
      patch makes nci_core_reset() and nci_core_init() functions public,
      to make it possible.

      Signed-off-by: Robert Baldyga <r.baldyga@xxxxxxxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit fdf79bd48876812acf0de58ed7a8bc1b3a3c67d6
  Author: Robert Baldyga <r.baldyga@xxxxxxxxxxx>
  Date:   Thu Aug 20 17:26:00 2015 +0200

      NFC: nci: Add post_setup handler

      Some drivers require non-standard configuration after NCI_CORE_INIT
      request, because they need to know ndev->manufact_specific_info or
      ndev->manufact_id. This patch adds post_setup handler allowing to do
      such custom configuration.

      Signed-off-by: Robert Baldyga <r.baldyga@xxxxxxxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit 05ddaa4d6d3806bebdf14f7c5de742a6e0e3b689
  Merge: b48362d 9ca3085
  Author: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
  Date:   Thu Aug 20 21:13:22 2015 +0200

      Merge branch 'fortglx/4.3/time' of 
https://git.linaro.org/people/john.stultz/linux into timers/core

      - A handful or y2038 related items
      - A walltime to monotonic limit
      - Small fixes for timespec_trunc() and timer_list output

  commit e76d28dd9ca84fa96dc0054bab34ccec34a7662a
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 13:12:51 2015 -0500

      NFSv4.1/pnfs: Ensure the flexfiles layoutstats timers are consistent

      We want to ensure that the stopwatches for the busy timer and the
      aggregate timer are consistent. This means that they need to use
      the same start/stop times.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 046be74da8f257c4f1925ed4b5d4ee4c822ef9c6
  Author: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
  Date:   Fri Aug 21 10:32:50 2015 +0800

      NFS41: fix list splice type

      We want to move commiting pages to pages list instead.
      Otherwise it causes pnfs small writes crash like:

      [34560.037692] BUG: unable to handle kernel NULL pointer dereference at 
0000000000000068
      [34560.038557] IP: [<ffffffffa05423d6>] nfs_init_commit+0x26/0x130 [nfs]
      [34560.039400] PGD 69f5a067 PUD 69f59067 PMD 0
      [34560.040207] Oops: 0000 [#1] SMP
      [34560.041014] Modules linked in: nfsv3(OE) nfs_layout_flexfiles(OE) 
nfsv4(OE) nfs(OE) fscache(E) rpcsec_gss_krb5(E) xt_addrtype(E) xt_conntrack(E) 
ipt_MASQUERADE(E) nf_nat_masquerade_ipv4(E) iptable_nat(E) nf_conntrack_ipv4(E) 
nf_defrag_ipv4(E) nf_nat_ipv4(E) iptable_filter(E) ip_tables(E) x_tables(E) 
nf_nat(E) nf_conntrack(E) bridge(E) stp(E) llc(E) dm_thin_pool(E) 
dm_persistent_data(E) dm_bio_prison(E) dm_bufio(E) ppdev(E) vmw_balloon(E) 
coretemp(E) crc32_pclmul(E) ghash_clmulni_intel(E) aesni_intel(E) aes_x86_64(E) 
glue_helper(E) lrw(E) gf128mul(E) ablk_helper(E) cryptd(E) psmouse(E) 
serio_raw(E) vmw_vmci(E) i2c_piix4(E) shpchp(E) parport_pc(E) parport(E) 
mac_hid(E) nfsd(E) auth_rpcgss(E) nfs_acl(E) lockd(E) grace(E) sunrpc(E) xfs(E) 
libcrc32c(E) hid_generic(E) usbhid(E) hid(E) e1000(E) mptspi(E)
      [34560.045106]  mptscsih(E) mptbase(E) vmwgfx(E) drm_kms_helper(E) ttm(E) 
drm(E) autofs4(E) [last unloaded: fscache]
      [34560.045897] CPU: 0 PID: 130543 Comm: bash Tainted: G           OE   
4.2.0-rc5-dp-00057-gf993a93 #11
      [34560.046699] Hardware name: VMware, Inc. VMware Virtual Platform/440BX 
Desktop Reference Platform, BIOS 6.00 05/20/2014
      [34560.047525] task: ffff880031b0a980 ti: ffff880045fec000 task.ti: 
ffff880045fec000
      [34560.048264] RIP: 0010:[<ffffffffa05423d6>]  [<ffffffffa05423d6>] 
nfs_init_commit+0x26/0x130 [nfs]
      [34560.049000] RSP: 0018:ffff880045fefc18  EFLAGS: 00010246
      [34560.049717] RAX: 0000000000000000 RBX: ffff8800208fbc80 RCX: 
ffff880045fefd50
      [34560.050396] RDX: ffff880031c19ec0 RSI: ffff880045fefc88 RDI: 
ffff8800208fbc80
      [34560.051041] RBP: ffff880045fefc28 R08: ffff8800208fbe68 R09: 
ffff880045fefc88
      [34560.051666] R10: 0000000000000000 R11: 0000000000000000 R12: 
ffff880045fefc78
      [34560.052247] R13: ffff880045fefc88 R14: ffff880045fefa90 R15: 
ffff880045fefd50
      [34560.052825] FS:  00007fa02d58c740(0000) GS:ffff88006d600000(0000) 
knlGS:0000000000000000
      [34560.053410] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [34560.053992] CR2: 0000000000000068 CR3: 000000003b37a000 CR4: 
00000000001406f0
      [34560.054615] Stack:
      [34560.055200]  ffff8800208fbc80 ffff8800208fbc80 ffff880045fefcc8 
ffffffffa05c1a5b
      [34560.055800]  ffff880045fefcc8 ffff880045fefd50 0000000045fefcb8 
ffff880045fefd40
      [34560.056418]  ffff8800420608e0 ffffffffa04f3910 0000000100000001 
ffff880045fefd50
      [34560.057013] Call Trace:
      [34560.057672]  [<ffffffffa05c1a5b>] 
pnfs_generic_commit_pagelist+0x1cb/0x300 [nfsv4]
      [34560.058277]  [<ffffffffa04f3910>] ? 
ff_layout_commit_pagelist+0x20/0x20 [nfs_layout_flexfiles]
      [34560.058907]  [<ffffffffa04f3905>] ff_layout_commit_pagelist+0x15/0x20 
[nfs_layout_flexfiles]
      [34560.059557]  [<ffffffffa0543fc1>] nfs_generic_commit_list+0xb1/0xf0 
[nfs]
      [34560.060214]  [<ffffffffa0543e47>] ? nfs_scan_commit+0x37/0xa0 [nfs]
      [34560.060825]  [<ffffffffa0544081>] nfs_commit_inode+0x81/0x150 [nfs]
      [34560.061432]  [<ffffffffa05443ae>] nfs_wb_all+0x1ae/0x400 [nfs]
      [34560.062035]  [<ffffffffa05380ad>] nfs_getattr+0x33d/0x510 [nfs]
      [34560.062630]  [<ffffffff8122499c>] vfs_getattr_nosec+0x2c/0x40
      [34560.063223]  [<ffffffff81224a66>] vfs_getattr+0x26/0x30
      [34560.063818]  [<ffffffff81224b35>] vfs_fstatat+0x65/0xa0
      [34560.064413]  [<ffffffff81224f3f>] SYSC_newstat+0x1f/0x40
      [34560.065016]  [<ffffffff8102b176>] ? do_audit_syscall_entry+0x66/0x70
      [34560.065626]  [<ffffffff8102c773>] ? 
syscall_trace_enter_phase1+0x113/0x170
      [34560.066245]  [<ffffffff81003017>] ? trace_hardirqs_on_thunk+0x17/0x19
      [34560.066868]  [<ffffffff812251ae>] SyS_newstat+0xe/0x10
      [34560.067533]  [<ffffffff817a5df2>] entry_SYSCALL_64_fastpath+0x16/0x7a
      [34560.068173] Code: 0f 1f 44 00 00 0f 1f 44 00 00 55 4c 8d 87 e8 01 00 
00 48 89 e5 53 48 89 fb 48 83 ec 08 4c 8b 0e 49 8b 41 18 4c 39 ce 48 8b 40 40 
<4c> 8b 50 68 74 24 48 8b 87 e8 01 00 00 48 8b 7e 08 4d 89 41 08
      [34560.069609] RIP  [<ffffffffa05423d6>] nfs_init_commit+0x26/0x130 [nfs]
      [34560.070295]  RSP <ffff880045fefc18>
      [34560.071008] CR2: 0000000000000068
      [34560.073207] ---[ end trace f85f873260977406 ]---

      [fixes 27571297a7e(pNFS: Tighten up locking around DS commit buckets)]
      Signed-off-by: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 9a16ea900fadc88714e3a32214dea8e968ccd889
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Thu Aug 20 11:12:35 2015 +0200

      regmap: regmap_raw_read return error on !bus->read

      Return -ENOTSUPP if map->bus->read is not implemented and we do not use
      the cache. This code path would directly use bus->read would run into an
      NULL pointer for the read function.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit a71d6ea6d3ec3e8ba4220370f29531903e3bc153
  Author: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
  Date:   Thu Aug 20 17:19:08 2015 +0800

      spi: mediatek: use BIT() to instead of SPI_CMD_*_OFFSET

      This patch removes SPI_CMD_*_OFFSET defines, and uses the BIT(x)
      defines instead.

      Signed-off-by: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit af57937e862370c14b7d71d15d969593ffca1ba8
  Author: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
  Date:   Thu Aug 20 17:19:07 2015 +0800

      spi: medaitek: revise quirks compatibility style

      The quirks are true/false, so define these as bool.

      Signed-off-by: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 44f636da4e71e0c73d6e29d0319a8954ce3f247a
  Author: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
  Date:   Thu Aug 20 17:19:06 2015 +0800

      spi: mediatek: fix spi incorrect endian usage

      TX_ENDIAN/RX_ENDIAN bits define whether to reverse the endian
      order of the data DMA from/to memory. The endian order should
      keep the same with cpu endian.

      Signed-off-by: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit e2e05394e4a3420dab96f728df4531893494e15d
  Author: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 13:55:41 2015 -0600

      pmem, dax: have direct_access use __pmem annotation

      Update the annotation for the kaddr pointer returned by direct_access()
      so that it is a __pmem pointer.  This is consistent with the PMEM driver
      and with how this direct_access() pointer is used in the DAX code.

      Signed-off-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 2765cfbb342c727c3fd47b165196cb16da158022
  Author: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 13:55:40 2015 -0600

      dax: update I/O path to do proper PMEM flushing

      Update the DAX I/O path so that all operations that store data (I/O
      writes, zeroing blocks, punching holes, etc.) properly synchronize the
      stores to media using the PMEM API.  This ensures that the data DAX is
      writing is durable on media before the operation completes.

      Signed-off-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 5de490daec8b6354b90d5c9d3e2415b195f5adb6
  Author: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 13:55:39 2015 -0600

      pmem: add copy_from_iter_pmem() and clear_pmem()

      Add support for two new PMEM APIs, copy_from_iter_pmem() and
      clear_pmem().  copy_from_iter_pmem() is used to copy data from an
      iterator into a PMEM buffer.  clear_pmem() zeros a PMEM memory range.

      Both of these new APIs must be explicitly ordered using a wmb_pmem()
      function call and are implemented in such a way that the wmb_pmem()
      will make the stores to PMEM durable.  Because both APIs are unordered
      they can be called as needed without introducing any unwanted memory
      barriers.

      Signed-off-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 4a370df5534ef727cba9a9d74bf22e0609f91d6e
  Author: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 13:55:38 2015 -0600

      pmem, x86: clean up conditional pmem includes

      Prior to this change x86_64 used the pmem defines in
      arch/x86/include/asm/pmem.h, and UM used the default ones at the
      top of include/linux/pmem.h.  The inclusion or exclusion in linux/pmem.h
      was controlled by CONFIG_ARCH_HAS_PMEM_API, but the ones in asm/pmem.h
      were controlled by ARCH_HAS_NOCACHE_UACCESS.

      Instead, control them both with CONFIG_ARCH_HAS_PMEM_API so that it's
      clear that they are related and we don't run into the possibility where
      they are both included or excluded.  Also remove a bunch of stale
      function prototypes meant for UM in asm/pmem.h - these just conflicted
      with the inline defaults in linux/pmem.h and gave compile errors.

      Signed-off-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 18279b467a9d89afe44afbc19d768e834dbf4545
  Author: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 13:55:37 2015 -0600

      pmem: remove layer when calling arch_has_wmb_pmem()

      Prior to this change arch_has_wmb_pmem() was only called by
      arch_has_pmem_api().  Both arch_has_wmb_pmem() and arch_has_pmem_api()
      checked to make sure that CONFIG_ARCH_HAS_PMEM_API was enabled.

      Instead, remove the old arch_has_wmb_pmem() wrapper to be rid of one
      extra layer of indirection and the redundant CONFIG_ARCH_HAS_PMEM_API
      check. Rename __arch_has_wmb_pmem() to arch_has_wmb_pmem() since we no
      longer have a wrapper, and just have arch_has_pmem_api() call the
      architecture specific arch_has_wmb_pmem() directly.

      Signed-off-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 40603526569b304dd92f720f2f8ab11e828ea145
  Author: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 13:55:36 2015 -0600

      pmem, x86: move x86 PMEM API to new pmem.h header

      Move the x86 PMEM API implementation out of asm/cacheflush.h and into
      its own header asm/pmem.h.  This will allow members of the PMEM API to
      be more easily identified on this and other architectures.

      Signed-off-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Suggested-by: Christoph Hellwig <hch@xxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit e134cb2041359c927b735b81568373624ea26baf
  Author: Zidan Wang <zidan.wang@xxxxxxxxxxxxx>
  Date:   Fri Aug 14 11:22:16 2015 +0800

      ASoC: wm8994: fix add dynamic path error

      If there don't exist dynamic sink or source widget, it will failed to
      add dynamic path.

      "AIF3ADCDAT" is snd_soc_dapm_aif_out, can't be dynamic sink widget. So
      change the audio route to fix this issue.

      Signed-off-by: Zidan Wang <zidan.wang@xxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit f682c4ffd25a19594d21987c19a69fa123242eb7
  Author: Vignesh R <vigneshr@xxxxxx>
  Date:   Thu Aug 20 16:00:59 2015 +0530

      spi: ti-qspi: use 128 bit transfer mode where possible

      TI QSPI has four 32 bit data regsiters which can be used to transfer 16
      bytes of data at once. The register group QSPI_SPI_DATA_REG_3,
      QSPI_SPI_DATA_REG_2, QSPI_SPI_DATA_REG_1 and QSPI_SPI_DATA_REG is
      treated as a single 128-bit word for shifting data in and out. The bit
      at QSPI_SPI_DATA_REG_3[31] position is the first bit to be shifted out
      in case of 128 bit transfer mode. Therefore the first byte to be written
      to flash should be at QSPI_SPI_DATA_REG_3[31-25] position.
      Instead of writing 1 byte at a time when interacting with spi-nor flash,
      make use of all the four registers so that 16 bytes can be transferred
      in one go. This reduces number of register writes and Word Complete
      interrupts for a given transfer message size, thereby increasing the
      write performance.

      Without this patch the raw flash write speed is ~100KB/s, with this
      patch the write speed increases to ~400 kB/s on DRA74 EVM.

      Signed-off-by: Vignesh R <vigneshr@xxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 14a500fe1396934c6b3ed8f009459a4723da7862
  Author: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
  Date:   Thu Aug 20 22:11:15 2015 +0530

      ASoC: samsung: Remove redundant arndale_audio_remove

      There is no use of snd_soc_unregister_card in remove function
      as devm_snd_soc_register_card in probe function automatically
      handles it. So, remove use of snd_soc_unregister_card and with
      this change remove arndale_audio_remove as it is now redundant.

      Signed-off-by: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 3a10766d0624c72b978790dba864cf7d6160f89f
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Tue Aug 4 14:54:04 2015 -0500

      PCI: Drop references acquired by of_parse_phandle()

      of_parse_phandle() returns a device_node pointer with the refcount
      incremented.  We should dispose of this reference when we're finished.

      Drop the reference acquired by of_parse_phandle().

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>

  commit 2291ec09025f85c11fbd0e9877c4306a8aa6e7e9
  Author: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
  Date:   Mon Aug 3 22:04:06 2015 -0500

      PCI/MSI: Remove unused pcibios_msi_controller() hook

      The pcibios_msi_controller() hook was only implemented by ARM, and it sets
      pci_bus->msi now, so it doesn't need this hook anymore.

      Remove the unused pcibios_msi_controller() hook.

      [bhelgaas: changelog, split into separate patch]
      Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>

  commit b5e5e8a13e19ee17e6ffbe2c3d344182b7be20f6
  Author: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
  Date:   Tue Aug 4 11:58:49 2015 -0500

      ARM/PCI: Remove msi_controller from struct pci_sys_data

      ARM now uses pci_bus->msi to store the msi_controller pointer, so we don't
      need to save it in struct pci_sys_data, and we don't need to implement
      pcibios_msi_controller() to get it out of pci_sys_data.

      Remove msi_controller from struct pci_sys_data and
      pcibios_msi_controller().

      [bhelgaas: changelog, split into separate patch]
      Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Jingoo Han <jingoohan1@xxxxxxxxx>

  commit 8953aab1e80fd299d6185a57edaff733fa5c6a55
  Author: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
  Date:   Wed Jul 29 12:33:18 2015 +0100

      ARM/PCI, designware, xilinx: Use pci_scan_root_bus_msi()

      ARM previously stored the msi_controller pointer in its sysdata, struct
      pci_sys_data, and implemented pcibios_msi_controller() to retrieve it.
      That made PCI host controller drivers specific to ARM because they had to
      put the msi_controller pointer in the ARM-specific pci_sys_data.

      There is now a generic mechanism, pci_scan_root_bus_msi(), for giving the
      msi_controller pointer to the PCI core.  Use this for all ARM systems and
      for the DesignWare and Xilinx PCI host controller drivers.

      This removes an ARM dependency from the DesignWare, DRA7xx, EXYNOS, i.MX6,
      Keystone, Layerscape, SPEAr13xx, and Xilinx drivers.

      [bhelgaas: changelog, split into separate patch]
      Suggested-by: Russell King <linux@xxxxxxxxxxxxxxxx>
      Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Acked-by: Jingoo Han <jingoohan1@xxxxxxxxx>
      CC: Pratyush Anand <pratyush.anand@xxxxxxxxx>
      CC: Arnd Bergmann <arnd@xxxxxxxx>
      CC: Simon Horman <horms@xxxxxxxxxxxx>
      CC: Russell King <linux@xxxxxxxxxxxxxxxx>
      CC: Thomas Petazzoni <thomas.petazzoni@xxxxxxxxxxxxxxxxxx>
      CC: Thierry Reding <thierry.reding@xxxxxxxxx>
      CC: Michal Simek <michal.simek@xxxxxxxxxx>
      CC: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit d2a7926d42b3b46e45b4e44dc3302b2701ec0856
  Author: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
  Date:   Mon Aug 3 21:27:10 2015 -0500

      PCI: Add pci_scan_root_bus_msi()

      Add a pci_scan_root_bus_msi() interface so an arch can specify the MSI
      controller up front.  This removes the need for a pcibios callback to set
      the MSI controller later.

      This is not exported because I'd like to replace the variety of "scan root
      bus" interfaces with a single, more extensible interface that can handle
      the MSI controller, domain, pci_ops, resources, etc.  I hope this 
interface
      is temporary.

      [bhelgaas: changelog, split into separate patch]
      Suggested-by: Russell King <linux@xxxxxxxxxxxxxxxx>
      Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Jingoo Han <jingoohan1@xxxxxxxxx>

  commit ada8b675b76ec847bfa4a237d82a7a96da128768
  Author: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
  Date:   Wed Jul 29 12:33:17 2015 +0100

      ARM/PCI: Replace panic with WARN messages on failures

      In the ARM PCI bios32 layer, failures to dynamically allocate pci_sys_data
      for a PCI bus, or a PCI bus scan failure have to be considered serious
      warnings but they should not trigger a system panic so that at least the
      system is given a chance to be debugged.

      This patch replaces the panic statements with WARN() messages to improve
      error reporting in the ARM PCI bios32 layer.

      Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Jingoo Han <jingoohan1@xxxxxxxxx>
      Acked-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      CC: Russell King <linux@xxxxxxxxxxxxxxxx>
      CC: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit aa4a5c0d2d7e3c30f9df033ea0367f148bb369f6
  Author: Jayachandran C <jchandra@xxxxxxxxxxxx>
  Date:   Wed Aug 5 02:23:40 2015 +0530

      PCI: generic: Add arm64 support

      Make pci-host-generic driver (kernel option PCI_HOST_GENERIC) available on
      arm64.

      Signed-off-by: Jayachandran C <jchandra@xxxxxxxxxxxx>
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>

  commit 459a07721c113b807ffcaa7bc98dd5d26beb39d5
  Author: Jayachandran C <jchandra@xxxxxxxxxxxx>
  Date:   Wed Aug 5 02:23:39 2015 +0530

      PCI: Build setup-irq.o for arm64

      ARM64 requires setup-irq.o to provide pci_fixup_irqs() implementation.  We
      are adding this now to support the pci-host-generic host controller, but 
we
      enable it for ARM64 PCI so that other host controllers can use this as
      well.

      Signed-off-by: Jayachandran C <jchandra@xxxxxxxxxxxx>
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>

  commit 499733e0cc1a00523c5056a690f65dea7b9da140
  Author: Jayachandran C <jchandra@xxxxxxxxxxxx>
  Date:   Wed Aug 5 02:23:38 2015 +0530

      PCI: generic: Remove dependency on ARM-specific struct hw_pci

      The generic OF-based host controller driver uses pci_common_init_dev(),
      which is ARM-specific and requires the ARM struct hw_pci.  The part of
      pci_common_init_dev() that is needed is limited and can be done here
      without using hw_pci.

      Note that the ARM pcibios functions expect the PCI sysdata to be a pointer
      to a struct pci_sys_data.  Add a struct pci_sys_data as the first element
      in struct gen_pci so that when we use a gen_pci pointer as sysdata, it is
      also a pointer to a struct pci_sys_data.

      Create and scan the root bus directly without using the ARM
      pci_common_init_dev() interface.

      [bhelgaas: changelog, move pcie_bus_configure_settings() before
      pci_bus_add_devices(), combine !PCI_PROBE_ONLY blocks]
      Tested-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>
      Tested-by: Suravee Suthikulpanit <Suravee.Suthikulpanit@xxxxxxx>
      Tested-by: Pavel Fedin <p.fedin@xxxxxxxxxxx>
      Signed-off-by: Jayachandran C <jchandra@xxxxxxxxxxxx>
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Acked-by: Lorenzo Pieralisi <lorenzo.pieralisi@xxxxxxx>

  commit 24928634f81b1592e83b37dcd89ed45c28f12feb
  Author: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
  Date:   Sun Aug 16 13:04:50 2015 -0700

      f2fs: check the node block address of newly allocated nid

      This patch adds a routine which checks the block address of newly 
allocated nid.
      If an nid has already allocated by other thread due to subtle data races, 
it
      will result in filesystem corruption.
      So, it needs to check whether its block address was already allocated or 
not
      in prior to nid allocation as the last chance.

      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit a21c20f0c812925085204fced932ac95f2a76bf0
  Author: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
  Date:   Sun Aug 16 12:38:15 2015 -0700

      f2fs: go out for insert_inode_locked failure

      We should not call unlock_new_inode when insert_inode_locked failed.

      Reviewed-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 5ee5293c3290a8e710d75977418f954e62c3dfdf
  Author: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
  Date:   Sat Aug 15 22:06:08 2015 -0700

      f2fs: retry gc if one section is not successfully reclaimed

      If FG_GC failed to reclaim one section, let's retry with another section
      from the start, since we can get anoterh good candidate.

      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 2286c0205d1478d4bece6e733cbaf15535fba09d
  Author: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
  Date:   Sat Aug 15 21:51:05 2015 -0700

      f2fs: fix to cover lock_op for update_inode_page

      Previously, update_inode_page is not called under f2fs_lock_op.
      Instead we should call with f2fs_write_inode.

      Reviewed-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 268344664603706b6f156548f9d7482665222f87
  Author: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
  Date:   Fri Aug 14 17:57:29 2015 -0700

      f2fs: reuse nids more aggressively

      If we can reuse nids as many as possible, we can mitigate producing 
obsolete
      node pages in the page cache.

      Reviewed-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 26d5859974bb817f7615be90199a8e82e3f0a0ed
  Author: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
  Date:   Fri Aug 14 14:37:50 2015 -0700

      f2fs: avoid garbage collecting already moved node blocks

      If node blocks were already moved, we don't need to move them again.

      Reviewed-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 740432f835608d11b5386321ab5aa8f61e07fb27
  Author: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
  Date:   Fri Aug 14 11:43:56 2015 -0700

      f2fs: handle failed bio allocation

      As the below comment of bio_alloc_bioset, f2fs can allocate multiple bios 
at the
      same time. So, we can't guarantee that bio is allocated all the time.

      "
       *   When @bs is not NULL, if %__GFP_WAIT is set then bio_alloc will 
always be
       *   able to allocate a bio. This is due to the mempool guarantees. To 
make this
       *   work, callers must never allocate more than 1 bio at a time from 
this pool.
       *   Callers that need to allocate more than 1 bio must always submit the
       *   previously allocated bio for IO before attempting to allocate a new 
one.
       *   Failure to do so can cause deadlocks under memory pressure.
      "

      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit a6db67f06fd9f6b1ddb11bcf4d7e8e8a86908d01
  Author: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
  Date:   Mon Aug 10 15:01:12 2015 -0700

      f2fs: increase the number of max hard links

      This patch increases the number of maximum hard links for one file.

      Reviewed-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 798c1b16d1a6171587ff46c74ede8092e66f72f7
  Author: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
  Date:   Tue Aug 11 21:59:49 2015 -0700

      f2fs: skip checkpoint if there is no dirty and prefree segments

      We should avoid needless checkpoints when there is no dirty and prefree 
segment.

      Reviewed-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 31696580bf4c042a0f7b06d855e04441488d18b1
  Author: Chao Yu <chao2.yu@xxxxxxxxxxx>
  Date:   Tue Jul 28 18:33:46 2015 +0800

      f2fs: shrink free_nids entries

      This patch introduces __count_free_nids/try_to_free_nids and registers
      them in slab shrinker for shrinking under memory pressure.

      Signed-off-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 206e61be29624499af46546076e835da93e6bde5
  Author: Chao Yu <chao2.yu@xxxxxxxxxxx>
  Date:   Wed Aug 12 17:48:21 2015 +0800

      f2fs: avoid clear valid page

      In f2fs_delete_entry, if last dirent is remove from the dentry page,
      we will try to punch that page since it has no valid date in it.

      But truncate_hole which is used for punching could fail because of
      no memory or IO error, if that happened, we'd better skip clearing
      this valid dentry page.

      Signed-off-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 7b2a246b888ffb26fcec10adf7ff80b00fbad909
  Author: Chao Yu <chao2.yu@xxxxxxxxxxx>
  Date:   Wed Aug 12 17:47:08 2015 +0800

      MAINTAINERS: add myself as a dedicated reviewer of f2fs

      I volunteer to be a dedicated reviewer of f2fs, add my email address in
      maintainship entry of f2fs.

      Signed-off-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 315df8398e36360c0be62e6fdd3f2708fc3a2567
  Author: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
  Date:   Tue Aug 11 12:45:39 2015 -0700

      f2fs: do not write any node pages related to orphan inodes

      We should not write node pages when deleting orphan inodes.
      In order to do that, we can eaisly set POR_DOING flag earlier before 
entering
      orphan inode routine.

      Reviewed-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 895fb3159280fe7695b35ec7c87ec19e13ca5b6e
  Author: Max Filippov <jcmvbkbc@xxxxxxxxx>
  Date:   Fri Aug 21 20:43:44 2015 +0300

      xtensa: improve vmlinux.lds.S sed post-processing

      Current sed script makes assumptions about the structure of rules that
      group .text sections in the vmlinux linker script. These assumptions
      get broken occasionally, e.g.: 779c88c94c34 "ARM: 8321/1: asm-generic:
      introduce.text.fixup input section", or 9bebe9e5b0f3 "kbuild: Fix
      .text.unlikely placement".

      Rewrite sed rules so that they don't depend on number/arrangement of text
      sections in *(...) blocks.

      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>

  commit 5fb4e288a025af1abc5c67ecebf30fbf6b3edad1
  Author: Christopher Oo <t-chriso@xxxxxxxxxxxxx>
  Date:   Thu Jun 25 16:10:48 2015 -0700

      cifs: Fix use-after-free on mid_q_entry

      With CIFS_DEBUG_2 enabled, additional debug information is tracked inside 
each
      mid_q_entry struct, however cifs_save_when_sent may use the mid_q_entry 
after it
      has been freed from the appropriate callback if the transport layer has 
very low
      latency. Holding the srv_mutex fixes this use-after-free, as 
cifs_save_when_sent
      is called while the srv_mutex is held while the request is sent.

      Signed-off-by: Christopher Oo <t-chriso@xxxxxxxxxxxxx>

  commit 0a6d0b64120759df8b9291af92d998ed1cbefc9d
  Author: Steve French <steve.french@xxxxxxxxxxxxxxx>
  Date:   Sat Jul 4 18:45:33 2015 -0500

      Update cifs version number

      Update modinfo cifs.ko version number to 2.07

      Signed-off-by: Steve French <steve.french@xxxxxxxxxxxxxxx>

  commit 0de1f4c6f6c028249579d8d80fa0a4f6322b2227
  Author: Steve French <steve.french@xxxxxxxxxxxxxxx>
  Date:   Sat Jul 4 18:40:10 2015 -0500

      Add way to query server fs info for smb3

      The server exports information about the share and underlying
      device under an SMB3 export, including its attributes and
      capabilities, which is stored by cifs.ko when first connecting
      to the share.

      Add ioctl to cifs.ko to allow user space smb3 helper utilities
      (in cifs-utils) to display this (e.g. via smb3util).

      This information is also useful for debugging and for
      resolving configuration errors.

      Signed-off-by: Steve French <steve.french@xxxxxxxxxxxxxxx>

  commit d8d23fa0f27f3b2942a7bbc7378c7735324ed519
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Thu Aug 20 11:47:13 2015 +0100

      arm64: mdscr_el1: avoid exposing DCC to userspace

      We don't want to expose the DCC to userspace, particularly as there is
      a kernel console driver for it.

      This patch resets mdscr_el1 to disable userspace access to the DCC
      registers on the cold boot path.

      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit 090749502ff20d7d9ec244036fe636b6bf0433b6
  Author: Vineet Gupta <vgupta@xxxxxxxxxxxx>
  Date:   Wed Aug 19 17:23:58 2015 +0530

      ARC: add/fix some comments in code - no functional change

      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit 6de6066c0d24a66df465cf87a4041ef7ef35ba6f
  Author: Yuriy Kolerov <yuriy.kolerov@xxxxxxxxxxxx>
  Date:   Wed Aug 12 17:23:32 2015 +0300

      ARC: change some branchs to jumps to resolve linkage errors

      When kernel's binary becomes large enough (32M and more) errors
      may occur during the final linkage stage. It happens because
      the build system uses short relocations for ARC  by default.
      This problem may be easily resolved by passing -mlong-calls
      option to GCC to use long absolute jumps (j) instead of short
      relative branchs (b).

      But there are fragments of pure assembler code exist which use
      branchs in inappropriate places and cause a linkage error because
      of relocations overflow.

      First of these fragments is .fixup insertion in futex.h and
      unaligned.c. It inserts a code in the separate section (.fixup)
      with branch instruction. It leads to the linkage error when
      kernel becomes large.

      Second of these fragments is calling scheduler's functions
      (common kernel code) from entry.S of ARC's code. When kernel's
      binary becomes large it may lead to the linkage error because
      scheduler may occur far enough from ARC's code in the final
      binary.

      Signed-off-by: Yuriy Kolerov <yuriy.kolerov@xxxxxxxxxxxx>
      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit 9181f8bf5abf4b9d59b12e878895375b84fe32ba
  Author: Jan Kara <jack@xxxxxxxx>
  Date:   Thu Aug 20 14:50:07 2015 +0200

      udf: Don't modify filesystem for read-only mounts

      When read-write mount of a filesystem is requested but we find out we
      can mount the filesystem only in read-only mode, we still modify
      LVID in udf_close_lvid(). That is both unnecessary and contrary to
      expectation that when we fall back to read-only mount we don't modify
      the filesystem.

      Make sure we call udf_close_lvid() only if we called udf_open_lvid() so
      that filesystem gets modified only if we verified we are allowed to
      write to it.

      Reported-by: Karel Zak <kzak@xxxxxxxxxx>
      Signed-off-by: Jan Kara <jack@xxxxxxxx>

  commit 5b733faca671756dd41b7e24584374e2b1fc3c4d
  Author: Michal Marek <mmarek@xxxxxxxx>
  Date:   Thu Aug 20 14:13:35 2015 +0200

      genksyms: Regenerate parser

      Rebuild the parser after commit 1c722503fa81 (genksyms: Duplicate
      function pointer type definitions segfault), using bison 2.7.

      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit 1c722503fa81888c936a8d1a5052daec859f1a7c
  Author: Richard Yao <richard.yao@xxxxxxxxxxxxx>
  Date:   Mon Jul 20 19:52:48 2015 -0400

      genksyms: Duplicate function pointer type definitions segfault

      I noticed that genksyms will segfault when it sees duplicate function
      pointer type declaration when I placed the same function pointer
      definition in two separate headers in a local branch as an intermediate
      step of some refactoring. This can be reproduced by piping the following
      minimal test case into `genksyms -r /dev/null` or alternatively, putting
      it into a C file attempting a build:

      typedef int (*f)();
      typedef int (*f)();

      Attaching gdb to genksyms to understand this failure is useless without
      changing CFLAGS to emit debuginfo. Once you have debuginfo, you will
      find that the failure is that `char *s` was NULL and the program
      executed `while(*s)`. At which point, further debugging requires
      familiarity with compiler front end / parser development.

      What happens is that flex identifies the first instance of the token "f"
      as IDENT and the yacc parser adds it to the symbol table. On the second
      instance, flex will identify "f" as TYPE, which triggers an error case
      in the yacc parser. Given that TYPE would have been IDENT had it not
      been in the symbol table, the the segmentaion fault could be avoided by
      treating TYPE as IDENT in the affected rule.

      Some might consider placing identical function pointer type declarations
      in different headers to be poor style might consider a failure to be
      beneficial. However, failing through a segmentation fault makes the
      cause non-obvious and can waste the time of anyone who encounters it.

      Signed-off-by: Richard Yao <richard.yao@xxxxxxxxxxxxx>
      Acked-by: Madhuri Yechuri <madhuriyechuri@xxxxxxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit 9bebe9e5b0f3109a14000df25308c2971f872605
  Author: Andi Kleen <ak@xxxxxxxxxxxxxxx>
  Date:   Sun Jul 19 18:01:19 2015 -0700

      kbuild: Fix .text.unlikely placement

      When building a kernel with .text.unlikely text the unlikely text for
      each translation unit was put next to the main .text code in the
      final vmlinux.

      The problem is that the linker doesn't allow more specific submatches
      of a section name in a different linker script statement after the
      main match.

      So we need to move them all into one line. With that change
      .text.unlikely is at the end of everything again.

      I also moved .text.hot into the same statement though, even though
      that's not strictly needed.

      Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit 3c0561e0043fe870426b445890ab93204332ae39
  Author: Pavel Fedin <p.fedin@xxxxxxxxxxx>
  Date:   Fri Aug 14 13:52:13 2015 +0300

      Avoid conflict with host definitions when cross-compiling

      Certain platforms (e. g. BSD-based ones) define some ELF constants
      according to host. This patch fixes problems with cross-building
      Linux kernel on these platforms (e. g. building ARM 32-bit version
      on x86-64 host).

      Signed-off-by: Pavel Fedin <p.fedin@xxxxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit eb2cd8b72b08fe56998600aee8a5dff93f7be5a2
  Author: Vineet Gupta <vgupta@xxxxxxxxxxxx>
  Date:   Thu Aug 6 19:11:06 2015 +0530

      ARC: ensure futex ops are atomic in !LLSC config

      W/o hardware assisted atomic r-m-w the best we can do is to disable
      preemption.

      Cc: David Hildenbrand <dahi@xxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Michel Lespinasse <walken@xxxxxxxxxx>
      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit 5e0574292ad48dcdf48ef90a47da862c21d649a6
  Author: Vineet Gupta <vgupta@xxxxxxxxxxxx>
  Date:   Thu Aug 6 17:55:34 2015 +0530

      ARC: Enable HAVE_FUTEX_CMPXCHG

      ARC doesn't need the runtime detection of futex cmpxchg op

      Cc: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit 882a95ae0a4f8fc303257acf5c6ff305df34d04b
  Author: Vineet Gupta <vgupta@xxxxxxxxxxxx>
  Date:   Thu Aug 6 17:03:17 2015 +0530

      ARC: make futex_atomic_cmpxchg_inatomic() return bimodal

      Callers of cmpxchg_futex_value_locked() in futex code expect bimodal
      return value:
        !0 (essentially -EFAULT as failure)
         0 (success)

      Before this patch, the success return value was old value of futex,
      which could very well be non zero, causing caller to possibly take the
      failure path erroneously.

      Fix that by returning 0 for success

      (This fix was done back in 2011 for all upstream arches, which ARC
      obviously missed)

      Cc: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Michel Lespinasse <walken@xxxxxxxxxx>
      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit ed574e2bbd81ec20134059fb5e17acbc76387270
  Author: Vineet Gupta <vgupta@xxxxxxxxxxxx>
  Date:   Wed Aug 5 19:23:34 2015 +0530

      ARC: futex cosmetics

      Cc: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Michel Lespinasse <walken@xxxxxxxxxx>
      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit 31d30c8208a38a0442cc01a9c7f6542489c76353
  Author: Vineet Gupta <vgupta@xxxxxxxxxxxx>
  Date:   Wed Aug 5 19:10:02 2015 +0530

      ARC: add barriers to futex code

      The atomic ops on futex need to provide the full barrier just like
      regular atomics in kernel.

      Also remove pagefault_enable/disable in futex_atomic_cmpxchg_inatomic()
      as core code already does that

      Cc: David Hildenbrand <dahi@xxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Michel Lespinasse <walken@xxxxxxxxxx>
      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit 1648c70d301e669ba03aa1c70fff46ec2c400414
  Author: Alexey Brodkin <abrodkin@xxxxxxxxxxxx>
  Date:   Tue Jun 9 11:25:22 2015 +0300

      ARCv2: IOC: Allow boot time disable

      Signed-off-by: Alexey Brodkin <abrodkin@xxxxxxxxxxxx>
      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit 79335a2ca03fdd883823e068b5e2f89a8ee47839
  Author: Vineet Gupta <vgupta@xxxxxxxxxxxx>
  Date:   Thu Jun 4 18:30:23 2015 +0530

      ARCv2: SLC: Allow boot time disable

      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit f2b0b25a37a6db12580dcdfdf00f020e5e0e3a43
  Author: Alexey Brodkin <abrodkin@xxxxxxxxxxxx>
  Date:   Mon May 25 19:54:28 2015 +0300

      ARCv2: Support IO Coherency and permutations involving L1 and L2 caches

      In case of ARCv2 CPU there're could be following configurations
      that affect cache handling for data exchanged with peripherals
      via DMA:
       [1] Only L1 cache exists
       [2] Both L1 and L2 exist, but no IO coherency unit
       [3] L1, L2 caches and IO coherency unit exist

      Current implementation takes care of [1] and [2].
      Moreover support of [2] is implemented with run-time check
      for SLC existence which is not super optimal.

      This patch introduces support of [3] and rework of DMA ops
      usage. Instead of doing run-time check every time a particular
      DMA op is executed we'll have 3 different implementations of
      DMA ops and select appropriate one during init.

      As for IOC support for it we need:
       [a] Implement empty DMA ops because IOC takes care of cache
           coherency with DMAed data
       [b] Route dma_alloc_coherent() via dma_alloc_noncoherent()
           This is required to make IOC work in first place and also
           serves as optimization as LD/ST to coherent buffers can be
           srviced from caches w/o going all the way to memory

      Signed-off-by: Alexey Brodkin <abrodkin@xxxxxxxxxxxx>
      [vgupta:
        -Added some comments about IOC gains
        -Marked dma ops as static,
        -Massaged changelog a bit]
      Signed-off-by: Vineet Gupta <vgupta@xxxxxxxxxxxx>

  commit 78a6854e219ba266b6cc12f840b571c5f1168b5e
  Author: Sam Bobroff <sam.bobroff@xxxxxxxxxxx>
  Date:   Mon Jul 20 15:12:19 2015 +1000

      merge_config.sh: exit on missing input files

      Add a check for the existence of input files and exit (with failure)
      if they are missing.

      Without this additional check, missing files produce error messages
      but still result in an output file being generated and a successful
      exit code.

      Signed-off-by: Sam Bobroff <sam.bobroff@xxxxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit 724afaea2020f3bd98891b535f3ce5d3935bcf63
  Author: Julien Grall <julien.grall@xxxxxxxxxx>
  Date:   Fri Aug 7 17:34:34 2015 +0100

      arm/xen: Remove helpers which are PV specific

      ARM guests are always HVM. The current implementation is assuming a 1:1
      mapping which is only true for DOM0 and may not be at all in the future.

      Furthermore, all the helpers but arbitrary_virt_to_machine are used in
      x86 specific code (or only compiled for).

      The helper arbitrary_virt_to_machine is only used in PV specific code.
      Therefore we should never call the function.

      Add a BUG() in this helper and drop all the others.

      Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Acked-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 3375d8284dfb7866f261ec008d15d30999ff273b
  Author: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
  Date:   Mon Aug 10 16:34:38 2015 -0400

      xen/x86: Don't try to set PCE bit in CR4

      Since VPMU code emulates RDPMC instruction with RDMSR and because 
hypervisor
      does not emulate it there is no reason to try setting CR4's PCE bit (and 
the
      hypervisor will warn on seeing it set).

      Signed-off-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit bf6dfb154d935725c9a2005033ca33017b9df439
  Author: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
  Date:   Mon Aug 10 16:34:37 2015 -0400

      xen/PMU: PMU emulation code

      Add PMU emulation code that runs when we are processing a PMU interrupt.
      This code will allow us not to trap to hypervisor on each MSR/LVTPC access
      (of which there may be quite a few in the handler).

      Signed-off-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 6b08cd6328c58a2ae190c5ee03a2ffcab5ef828e
  Author: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
  Date:   Mon Aug 10 16:34:36 2015 -0400

      xen/PMU: Intercept PMU-related MSR and APIC accesses

      Provide interfaces for recognizing accesses to PMU-related MSRs and
      LVTPC APIC and process these accesses in Xen PMU code.

      (The interrupt handler performs XENPMU_flush right away in the beginning
      since no PMU emulation is available. It will be added with a later patch).

      Signed-off-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit e27b72df01109c689062caeba1defa013b759e0e
  Author: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
  Date:   Mon Aug 10 16:34:35 2015 -0400

      xen/PMU: Describe vendor-specific PMU registers

      AMD and Intel PMU register initialization and helpers that determine
      whether a register belongs to PMU.

      This and some of subsequent PMU emulation code is somewhat similar to
      Xen's PMU implementation.

      Signed-off-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 65d0cf0be79feebeb19e7626fd3ed41ae73f642d
  Author: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
  Date:   Mon Aug 10 16:34:34 2015 -0400

      xen/PMU: Initialization code for Xen PMU

      Map shared data structure that will hold CPU registers, VPMU context,
      V/PCPU IDs of the CPU interrupted by PMU interrupt. Hypervisor fills
      this information in its handler and passes it to the guest for further
      processing.

      Set up PMU VIRQ.

      Now that perf infrastructure will assume that PMU is available on a PV
      guest we need to be careful and make sure that accesses via RDPMC
      instruction don't cause fatal traps by the hypervisor. Provide a nop
      RDPMC handler.

      For the same reason avoid issuing a warning on a write to APIC's LVTPC.

      Both of these will be made functional in later patches.

      Signed-off-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 5f141548824cebbff2e838ff401c34e667797467
  Author: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
  Date:   Mon Aug 10 16:34:33 2015 -0400

      xen/PMU: Sysfs interface for setting Xen PMU mode

      Set Xen's PMU mode via /sys/hypervisor/pmu/pmu_mode. Add XENPMU hypercall.

      Signed-off-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit a11f4f0a4e18b4bdc7d5e36438711e038b7a1f74
  Author: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
  Date:   Mon Aug 10 16:34:32 2015 -0400

      xen: xensyms support

      Export Xen symbols to dom0 via /proc/xen/xensyms (similar to
      /proc/kallsyms).

      Signed-off-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit cb3eb850137cd43fc3e25d2062525f5ba5fd884a
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Jul 17 06:51:37 2015 +0200

      xen: remove no longer needed p2m.h

      Cleanup by removing arch/x86/xen/p2m.h as it isn't needed any more.

      Most definitions in this file are used in p2m.c only. Move those into
      p2m.c.

      set_phys_range_identity() is already declared in
      arch/x86/include/asm/xen/page.h, add __init annotation there.

      MAX_REMAP_RANGES isn't used at all, just delete it.

      The only define left is P2M_PER_PAGE which is moved to page.h as well.

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit c70727a5bc18a5a233fddc6056d1de9144d7a293
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Jul 17 06:51:36 2015 +0200

      xen: allow more than 512 GB of RAM for 64 bit pv-domains

      64 bit pv-domains under Xen are limited to 512 GB of RAM today. The
      main reason has been the 3 level p2m tree, which was replaced by the
      virtual mapped linear p2m list. Parallel to the p2m list which is
      being used by the kernel itself there is a 3 level mfn tree for usage
      by the Xen tools and eventually for crash dump analysis. For this tree
      the linear p2m list can serve as a replacement, too. As the kernel
      can't know whether the tools are capable of dealing with the p2m list
      instead of the mfn tree, the limit of 512 GB can't be dropped in all
      cases.

      This patch replaces the hard limit by a kernel parameter which tells
      the kernel to obey the 512 GB limit or not. The default is selected by
      a configuration parameter which specifies whether the 512 GB limit
      should be active per default for domUs (domain save/restore/migration
      and crash dump analysis are affected).

      Memory above the domain limit is returned to the hypervisor instead of
      being identity mapped, which was wrong anyway.

      The kernel configuration parameter to specify the maximum size of a
      domain can be deleted, as it is not relevant any more.

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 70e61199559a09c62714694cd5ac3c3640c41552
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Jul 17 06:51:35 2015 +0200

      xen: move p2m list if conflicting with e820 map

      Check whether the hypervisor supplied p2m list is placed at a location
      which is conflicting with the target E820 map. If this is the case
      relocate it to a new area unused up to now and compliant to the E820
      map.

      As the p2m list might by huge (up to several GB) and is required to be
      mapped virtually, set up a temporary mapping for the copied list.

      For pvh domains just delete the p2m related information from start
      info instead of reserving the p2m memory, as we don't need it at all.

      For 32 bit kernels adjust the memblock_reserve() parameters in order
      to cover the page tables only. This requires to memblock_reserve() the
      start_info page on it's own.

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 6c2681c863b24360098d1ba60f2af060a13a0561
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Jul 17 06:51:34 2015 +0200

      xen: add explicit memblock_reserve() calls for special pages

      Some special pages containing interfaces to xen are being reserved
      implicitly only today. The memblock_reserve() call to reserve them is
      meant to reserve the p2m list supplied by xen. It is just reserving
      not only the p2m list itself, but some more pages up to the start of
      the xen built page tables.

      To be able to move the p2m list to another pfn range, which is needed
      for support of huge RAM, this memblock_reserve() must be split up to
      cover all affected reserved pages explicitly.

      The affected pages are:
      - start_info page
      - xenstore ring (might be missing, mfn is 0 in this case)
      - console ring (not for initial domain)

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 2592dbbbf4c67501c2bd2dcf89c2b8924d592a9f
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Jul 17 06:51:33 2015 +0200

      mm: provide early_memremap_ro to establish read-only mapping

      During early boot as Xen pv domain the kernel needs to map some page
      tables supplied by the hypervisor read only. This is needed to be
      able to relocate some data structures conflicting with the physical
      memory map especially on systems with huge RAM (above 512GB).

      Provide the function early_memremap_ro() to provide this read only
      mapping.

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@xxxxxxxxxx>
      Acked-by: Vlastimil Babka <vbabka@xxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 4b9c15377f96e241be347fd3bbeeff74fbad0b44
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Jul 17 06:51:32 2015 +0200

      xen: check for initrd conflicting with e820 map

      Check whether the initrd is placed at a location which is conflicting
      with the target E820 map. If this is the case relocate it to a new
      area unused up to now and compliant to the E820 map.

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 04414baab5ba862b10bde837c4773ffdbb78f0e0
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Jul 17 06:51:31 2015 +0200

      xen: check pre-allocated page tables for conflict with memory map

      Check whether the page tables built by the domain builder are at
      memory addresses which are in conflict with the target memory map.
      If this is the case just panic instead of running into problems
      later.

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 808fdb71936c41d46245f0e3aa6ec889cba70d97
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Jul 17 06:51:30 2015 +0200

      xen: check for kernel memory conflicting with memory layout

      Checks whether the pre-allocated memory of the loaded kernel is in
      conflict with the target memory map. If this is the case, just panic
      instead of run into problems later, as there is nothing we can do
      to repair this situation.

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 9ddac5b724a9465e27f25a0aa943e92c8341a85b
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Jul 17 06:51:29 2015 +0200

      xen: find unused contiguous memory area

      For being able to relocate pre-allocated data areas like initrd or
      p2m list it is mandatory to find a contiguous memory area which is
      not yet in use and doesn't conflict with the memory map we want to
      be in effect.

      In case such an area is found reserve it at once as this will be
      required to be done in any case.

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit e612b4a7db4ae1dd8c2bbe171e10c21723de95b2
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Jul 17 06:51:28 2015 +0200

      xen: check memory area against e820 map

      Provide a service routine to check a physical memory area against the
      E820 map. The routine will return false if the complete area is RAM
      according to the E820 map and true otherwise.

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 5097cdf6cef15439f971df54f9abcf143d7ca698
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Jul 17 06:51:27 2015 +0200

      xen: split counting of extra memory pages from remapping

      Memory pages in the initial memory setup done by the Xen hypervisor
      conflicting with the target E820 map are remapped. In order to do this
      those pages are counted and remapped in xen_set_identity_and_remap().

      Split the counting from the remapping operation to be able to setup
      the needed memory sizes in time but doing the remap operation at a
      later time. This enables us to simplify the interface to
      xen_set_identity_and_remap() as the number of remapped and released
      pages is no longer needed here.

      Finally move the remapping further down to prepare relocating
      conflicting memory contents before the memory might be clobbered by
      xen_set_identity_and_remap(). This requires to not destroy the Xen
      E820 map when the one for the system is being constructed.

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 69632ecfcd03b12202ed62dfa0aabac83904f8ac
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Jul 17 06:51:26 2015 +0200

      xen: move static e820 map to global scope

      Instead of using a function local static e820 map in xen_memory_setup()
      and calling various functions in the same source with the map as a
      parameter use a map directly accessible by all functions in the source.

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 8f5b0c63987207fd5c3c1f89c9eb6cb95b30386e
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Jul 17 06:51:25 2015 +0200

      xen: eliminate scalability issues from initial mapping setup

      Direct Xen to place the initial P->M table outside of the initial
      mapping, as otherwise the 1G (implementation) / 2G (theoretical)
      restriction on the size of the initial mapping limits the amount
      of memory a domain can be handed initially.

      As the initial P->M table is copied rather early during boot to
      domain private memory and it's initial virtual mapping is dropped,
      the easiest way to avoid virtual address conflicts with other
      addresses in the kernel is to use a user address area for the
      virtual address of the initial P->M table. This allows us to just
      throw away the page tables of the initial mapping after the copy
      without having to care about address invalidation.

      It should be noted that this patch won't enable a pv-domain to USE
      more than 512 GB of RAM. It just enables it to be started with a
      P->M table covering more memory. This is especially important for
      being able to boot a Dom0 on a system with more than 512 GB memory.

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Based-on-patch-by: Jan Beulich <jbeulich@xxxxxxxx>
      Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit d51e8b3e85972dee10be7943b0b0106742b1e847
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Jul 17 06:51:24 2015 +0200

      xen: don't build mfn tree if tools don't need it

      In case the Xen tools indicate they don't need the p2m 3 level tree
      as they support the virtual mapped linear p2m list, just omit building
      the tree.

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 4b9c9a11803eaa73b3223da9fcaea39b2f919d80
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Jul 17 06:51:23 2015 +0200

      xen: save linear p2m list address in shared info structure

      The virtual address of the linear p2m list should be stored in the
      shared info structure read by the Xen tools to be able to support
      64 bit pv-domains larger than 512 GB. Additionally the linear p2m
      list interface includes a generation count which is changed prior
      to and after each mapping change of the p2m list. Reading the
      generation count the Xen tools can detect changes of the mappings
      and re-read the p2m list eventually.

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 17fb46b1190b677a37cdd636e2aa30052109f51b
  Author: Juergen Gross <jgross@xxxxxxxx>
  Date:   Fri Jul 17 06:51:22 2015 +0200

      xen: sync with xen headers

      Use the newest headers from the xen tree to get some new structure
      layouts.

      Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
      Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx>
      Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 7ed208ef4ef9dbd03cda8a5b5a85cc78f79ef213
  Author: Julien Grall <julien.grall@xxxxxxxxxx>
  Date:   Mon Aug 3 09:50:55 2015 +0000

      arm/xen: Drop the definition of xen_pci_platform_unplug

      The commit 6f6c15ef912465b3aaafe709f39bd6026a8b3e72 "xen/pvhvm: Remove
      the xen_platform_pci int." makes the x86 version of
      xen_pci_platform_unplug static.

      Therefore we don't need anymore to define a dummy xen_pci_platform_unplug
      for ARM.

      Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>

  commit 4a5b69464e51f4a8dd432e8c2a1468630df1a53c
  Author: Julien Grall <julien.grall@xxxxxxxxxx>
  Date:   Tue Jul 28 10:10:42 2015 +0100

      xen/events: Support event channel rebind on ARM

      Currently, the event channel rebind code is gated with the presence of
      the vector callback.

      The virtual interrupt controller on ARM has the concept of per-CPU
      interrupt (PPI) which allow us to support per-VCPU event channel.
      Therefore there is no need of vector callback for ARM.

      Xen is already using a free PPI to notify the guest VCPU of an event.
      Furthermore, the xen code initialization in Linux (see
      arch/arm/xen/enlighten.c) is requesting correctly a per-CPU IRQ.

      Introduce new helper xen_support_evtchn_rebind to allow architecture
      decide whether rebind an event is support or not. It will always return
      true on ARM and keep the same behavior on x86.

      This is also allow us to drop the usage of xen_have_vector_callback
      entirely in the ARM code.

      Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 907c3eb18e0bd86ca12a9de80befe8e3647bac3e
  Author: Bob Liu <bob.liu@xxxxxxxxxx>
  Date:   Mon Jul 13 17:55:24 2015 +0800

      xen-blkfront: convert to blk-mq APIs

      Note: This patch is based on original work of Arianna's internship for
      GNOME's Outreach Program for Women.

      Only one hardware queue is used now, so there is no significant
      performance change

      The legacy non-mq code is deleted completely which is the same as other
      drivers like virtio, mtip, and nvme.

      Also dropped one unnecessary holding of info->io_lock when calling
      blk_mq_stop_hw_queues().

      Signed-off-by: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Bob Liu <bob.liu@xxxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Acked-by: Jens Axboe <axboe@xxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit a7da51ae10032a507ddeae6a490916eadbd1e10a
  Author: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
  Date:   Wed Jul 15 12:52:01 2015 +0300

      xen/preempt: use need_resched() instead of should_resched()

      This code is used only when CONFIG_PREEMPT=n and only in non-atomic
      context: xen_in_preemptible_hcall is set only in
      privcmd_ioctl_hypercall().  Thus preempt_count is zero and
      should_resched() is equal to need_resched().

      Signed-off-by: Konstantin Khlebnikov <khlebnikov@xxxxxxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit 772f95e3b9460c64fb99b134022855cbce75b9a0
  Author: Colin Ian King <colin.king@xxxxxxxxxxxxx>
  Date:   Thu Jul 16 20:34:42 2015 +0100

      x86/xen: fix non-ANSI declaration of xen_has_pv_devices()

      xen_has_pv_devices() has no parameters, so use the normal void
      parameter convention to make it match the prototype in the header file
      include/xen/platform_pci.h.

      Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
      Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

  commit cb73b40e59f0f62099bfb8a836697a74dc151395
  Author: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
  Date:   Thu Aug 20 13:46:10 2015 +0300

      video: fbdev: atmel: fix warning for const return value

      A const on a return value is meaningless and generates a warning on some
      versions of gcc:

      drivers/video/fbdev/atmel_lcdfb.c:1003: warning: type qualifiers ignored 
on function return type

      The function in question is only used inside the .c file, so the author
      of the code most likely means "static" instead of "const".

      Change the const to static.

      Reported-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Cc: Nicolas Ferre <nicolas.ferre@xxxxxxxxx>
      Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>

  commit dd2281be03a7f4d3f249a733913a9ebb36e721f4
  Merge: 40a2ea1 5efb1d5
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Thu Aug 20 11:49:26 2015 +0200

      Merge tag 'perf-core-for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core

      Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:

        - Support Intel PT in several tools, enabling the use of the processor 
trace
          feature introduced in Intel Broadwell processors: (Adrian Hunter)

         # dmesg | grep Performance
         # [0.188477] Performance Events: PEBS fmt2+, 16-deep LBR, Broadwell 
events, full-width counters, Intel PMU driver.
         # perf record -e intel_pt//u -a sleep 1
         [ perf record: Woken up 1 times to write data ]
         [ perf record: Captured and wrote 0.216 MB perf.data ]
         # perf script # then navigate in the tool output to some area, like 
this one:
         184 1030 dl_main (/usr/lib64/ld-2.17.so) => 7f21ba661440 dl_main 
(/usr/lib64/ld-2.17.so)
         185 1457 dl_main (/usr/lib64/ld-2.17.so) => 7f21ba669f10 
_dl_new_object (/usr/lib64/ld-2.17.so)
         186 9f37 _dl_new_object (/usr/lib64/ld-2.17.so) => 7f21ba677b90 strlen 
(/usr/lib64/ld-2.17.so)
         187 7ba3 strlen (/usr/lib64/ld-2.17.so) => 7f21ba677c75 strlen 
(/usr/lib64/ld-2.17.so)
         188 7c78 strlen (/usr/lib64/ld-2.17.so) => 7f21ba669f3c _dl_new_object 
(/usr/lib64/ld-2.17.so)
         189 9f8a _dl_new_object (/usr/lib64/ld-2.17.so) => 7f21ba65fab0 
calloc@plt (/usr/lib64/ld-2.17.so)
         190 fab0 calloc@plt (/usr/lib64/ld-2.17.so) => 7f21ba675e70 calloc 
(/usr/lib64/ld-2.17.so)
         191 5e87 calloc (/usr/lib64/ld-2.17.so) => 7f21ba65fa90 malloc@plt 
(/usr/lib64/ld-2.17.so)
         192 fa90 malloc@plt (/usr/lib64/ld-2.17.so) => 7f21ba675e60 malloc 
(/usr/lib64/ld-2.17.so)
         193 5e68 malloc (/usr/lib64/ld-2.17.so) => 7f21ba65fa80 
__libc_memalign@plt (/usr/lib64/ld-2.17.so)
         194 fa80 __libc_memalign@plt (/usr/lib64/ld-2.17.so) => 7f21ba675d50 
__libc_memalign (/usr/lib64/ld-2.17.so)
         195 5d63 __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba675e20 
__libc_memalign (/usr/lib64/ld-2.17.so)
         196 5e40 __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba675d73 
__libc_memalign (/usr/lib64/ld-2.17.so)
         197 5d97 __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba675e18 
__libc_memalign (/usr/lib64/ld-2.17.so)
         198 5e1e __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba675df9 
__libc_memalign (/usr/lib64/ld-2.17.so)
         199 5e10 __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba669f8f 
_dl_new_object (/usr/lib64/ld-2.17.so)
         200 9fc2 _dl_new_object (/usr/lib64/ld-2.17.so) =>  7f21ba678e70 
memcpy (/usr/lib64/ld-2.17.so)
         201 8e8c memcpy (/usr/lib64/ld-2.17.so) => 7f21ba678ea0 memcpy 
(/usr/lib64/ld-2.17.so)

        - Fix annotation of vdso (Adrian Hunter)

        - Fix DWARF callchains in 'perf script' (Jiri Olsa)

        - Fix adding probes in kernel syscalls and listing which variables can 
be
          collected at kernel syscall function lines (Masami Hiramatsu)

      Build Fixes:

        - Fix 32-bit compilation error in util/annotate.c (Adrian Hunter)

        - Support static linking with libdw on Fedora 22 (Andi Kleen)

      Infrastructure changes:

        - Add a helper function to probe whether cpu-wide tracing is possible 
(Adrian Hunter)

        - Move vfs_getname storage to per thread area in 'perf trace' (Arnaldo 
Carvalho de Melo)

      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 40a2ea1bd988e3bbdb07a0708681fdb05cd7d267
  Merge: a897b5f 1966764
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Thu Aug 20 11:48:56 2015 +0200

      Merge branch 'perf/urgent' into perf/core, to pick up fixes before adding 
more changes

      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit c4a2f5beb7fe3cf4e33ed79040d699fd6c17083f
  Author: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
  Date:   Fri Jul 10 15:37:30 2015 +0900

      video: fbdev: Drop owner assignment from platform_driver

      platform_driver does not need to set an owner because
      platform_driver_register() will set it.

      Signed-off-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>

  commit 2e8bcf4d40d8ec720372df5c591f0151f8ffe946
  Author: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
  Date:   Fri Jul 10 15:37:29 2015 +0900

      video: fbdev: Drop owner assignment from i2c_driver

      i2c_driver does not need to set an owner because i2c_register_driver()
      will set it.

      Signed-off-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>

  commit c0a3229313d6931a77e0c1e1c22e398c0312bf6f
  Author: Marcin Chojnacki <marcinch7@xxxxxxxxx>
  Date:   Thu Jun 18 15:01:52 2015 +0200

      fbdev: remove unnecessary memset in vfb

      In vfb_probe memory is allocated using rvmalloc which automatically
      sets the allocated memory to zero. This patch removes the second
      unnecessary memset in vfb_probe.

      Signed-off-by: Marcin Chojnacki <marcinch7@xxxxxxxxx>
      Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>

  commit 7a4b6c860e7268a79545c30882928b234dd1655d
  Author: Lucas Stach <l.stach@xxxxxxxxxxxxxx>
  Date:   Fri Aug 7 17:16:03 2015 +0200

      can: flexcan: demote register output to debug level

      This message isn't really helpful for the general reader of the kernel
      logs, so should not be printed with info level. All other register
      programming outputs in the flexcan driver already use the debug level.

      Signed-off-by: Lucas Stach <l.stach@xxxxxxxxxxxxxx>
      Signed-off-by: Marc Kleine-Budde <mkl@xxxxxxxxxxxxxx>

  commit ae421e33bce78c7d624ecbf079cdaa5248f167b6
  Author: Nik Nyby <nikolas@xxxxxxx>
  Date:   Mon Jun 29 19:09:57 2015 -0400

      can: gs_usb: Fix typo in function name

      This fixes typos in gs_usb.c where 'receive' is misspelled
      as 'recieve'.

      Signed-off-by: Nik Nyby <nikolas@xxxxxxx>
      Signed-off-by: Marc Kleine-Budde <mkl@xxxxxxxxxxxxxx>

  commit e72bb8a5a884d022231149d407653923a1d79e53
  Author: Samuel Mendoza-Jonas <sam.mj@xxxxxxxxxxx>
  Date:   Wed Jul 22 15:50:51 2015 +1000

      powerpc/powernv: Reset HILE before kexec_sequence()

      On powernv secondary cpus are returned to OPAL, and will then enter
      the target kernel in big-endian. However if it is set the HILE bit
      will persist, causing the first exception in the target kernel to be
      delivered in litte-endian regardless of the current endianness.

      If running on top of OPAL make sure the HILE bit is reset once we've
      finished waiting for all of the secondaries to be returned to OPAL.

      Signed-off-by: Samuel Mendoza-Jonas <sam.mj@xxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit ffebf5f391dfa9da3e086abad3eef7d3e5300249
  Author: Samuel Mendoza-Jonas <sam.mj@xxxxxxxxxxx>
  Date:   Wed Jul 22 15:50:50 2015 +1000

      powerpc/kexec: Reset secondary cpu endianness before kexec

      If the target kernel does not inlcude the FIXUP_ENDIAN check, coming
      from a different-endian kernel will cause the target kernel to panic.
      All ppc64 kernels can handle starting in big-endian mode, so return to
      big-endian before branching into the target kernel.

      This mainly affects pseries as secondaries on powernv are returned to
      OPAL.

      Signed-off-by: Samuel Mendoza-Jonas <sam.mj@xxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 480798044eb268a31f6b84bc3b7f99b9989e463d
  Author: Laurent Dufour <ldufour@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Jul 31 11:29:50 2015 +0200

      powerpc/hvsi: Fix endianness issues in the HVSI driver

      This patch fixes several endianness issues detected when running the HVSI
      driver in little endian mode.

      These issues are raised in little endian mode because the data exchanged 
in
      memory between the kernel and the hypervisor has to be in big endian
      format. This exhibits as errors such as:

        irq: (null) didn't like hwirq-0x1000a00 to VIRQ16 mapping (rc=-22)
        hvsi_console_init: couldn't create irq mapping for 0x1000a00

      The data structures already have endian annotations, and sparse is
      generating numerous warnings based on those. This commit fixes all of
      them.

      Signed-off-by: Laurent Dufour <ldufour@xxxxxxxxxxxxxxxxxx>
      CC: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      CC: Jiri Slaby <jslaby@xxxxxxx>
      CC: linuxppc-dev@xxxxxxxxxxxxxxxx
      CC: linux-kernel@xxxxxxxxxxxxxxx
      [mpe: Flesh out change log]
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 84ad6e5cd3e8b365c893f31787864cae5500610b
  Author: Vasant Hegde <hegdevasant@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 22:19:54 2015 +0530

      leds/powernv: Add driver for PowerNV platform

      This patch implements LED driver for PowerNV platform using the existing
      generic LED class framework.

      PowerNV platform has below type of LEDs:
        - System attention
            Indicates there is a problem with the system that needs attention.
        - Identify
            Helps the user locate/identify a particular FRU or resource in the
            system.
        - Fault
            Indicates there is a problem with the FRU or resource at the
            location with which the indicator is associated.

      We register classdev structures for all individual LEDs detected on the
      system through LED specific device tree nodes. Device tree nodes specify
      what all kind of LEDs present on the same location code. It registers
      LED classdev structure for each of them.

      All the system LEDs can be found in the same regular path 
/sys/class/leds/.
      We don't use LED colors. We use LED node and led-types property to form
      LED classdev. Our LEDs have names in this format.

              <location_code>:<attention|identify|fault>

      Any positive brightness value would turn on the LED and a zero value would
      turn off the LED. The driver will return LED_FULL (255) for any turned on
      LED and LED_OFF (0) for any turned off LED.

      The platform level implementation of LED get and set state has been
      achieved through OPAL calls. These calls are made available for the
      driver by exporting from architecture specific codes.

      Signed-off-by: Vasant Hegde <hegdevasant@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Anshuman Khandual <khandual@xxxxxxxxxxxxxxxxxx>
      Acked-by: Stewart Smith <stewart@xxxxxxxxxxxxxxxxxx>
      Tested-by: Stewart Smith <stewart@xxxxxxxxxxxxxxxxxx>
      Acked-by: Jacek Anaszewski <j.anaszewski@xxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit c159b5968ec9d3cbf16802189b29eb0ec17ae4d8
  Author: Vasant Hegde <hegdevasant@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 22:19:53 2015 +0530

      powerpc/powernv: Create LED platform device

      This patch adds platform devices for leds. Also export LED related
      OPAL API's so that led driver can use these APIs.

      Signed-off-by: Vasant Hegde <hegdevasant@xxxxxxxxxxxxxxxxxx>
      Acked-by: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 8a8d91817aec6b9ca7a289891f9e6f721100ec09
  Author: Anshuman Khandual <khandual@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 22:19:52 2015 +0530

      powerpc/powernv: Add OPAL interfaces for accessing and modifying system 
LED states

      This patch registers the following two new OPAL interfaces calls
      for the platform LED subsystem. With the help of these new OPAL calls,
      the kernel will be able to get or set the state of various individual
      LEDs on the system at any given location code which is passed through
      the LED specific device tree nodes.

        (1) OPAL_LEDS_GET_INDICATOR     opal_leds_get_ind
        (2) OPAL_LEDS_SET_INDICATOR     opal_leds_set_ind

      Signed-off-by: Anshuman Khandual <khandual@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Vasant Hegde <hegdevasant@xxxxxxxxxxxxxxxxxx>
      Acked-by: Stewart Smith <stewart@xxxxxxxxxxxxxxxxxx>
      Tested-by: Stewart Smith <stewart@xxxxxxxxxxxxxxxxxx>
      Acked-by: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 48fd8ecf29e3c1199432e173858f5ca4bc529738
  Author: Nicolai Stange <nicstange@xxxxxxxxx>
  Date:   Wed Jun 17 21:40:33 2015 +0200

      framebuffer: disable vgacon on microblaze arch

      Fix an allmodconfig link failer on microblaze:
        drivers/built-in.o: In function `vgacon_save_screen':
        drivers/video/console/.tmp_vgacon.o:(.text+0x8fc10):
          undefined reference to `screen_info'

      Disable vgacon on microblaze because the symbol
        struct screen_info screen_info;
      is not defined for the microblaze arch.

      Signed-off-by: Nicolai Stange <nicstange@xxxxxxxxx>
      Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>

  commit f63cb8d7aa31e7a8f98cec36557b265951e9aba7
  Author: Alexey Klimov <klimov.linux@xxxxxxxxx>
  Date:   Mon Jun 8 02:02:47 2015 +0300

      fbdev: udlfb: remove unneeded initialization in few places

      Small minor cleanup.
      This patch removes unneeded initializations of variables
      in few places in different functions and one empty line.

      Signed-off-by: Alexey Klimov <klimov.linux@xxxxxxxxx>
      Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>

  commit 71540cfbe9d401f4848abc0e6b56a541307a47dd
  Author: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
  Date:   Sun Aug 2 11:09:53 2015 +0200

      fbdev: Allow compile test of GPIO consumers if !GPIOLIB

      The GPIO subsystem provides dummy GPIO consumer functions if GPIOLIB is
      not enabled. Hence drivers that depend on GPIOLIB, but use GPIO consumer
      functionality only, can still be compiled if GPIOLIB is not enabled.

      Relax the dependency on GPIOLIB if COMPILE_TEST is enabled, where
      appropriate.

      Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Acked-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>

  commit 6080a89357cc46f3450839a84af75c3d18f57772
  Author: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
  Date:   Thu Jan 15 13:47:19 2015 +0200

      fbdev: fix cea_modes array size

      CEA defines 64 modes, indexed from 1 to 64. modedb has cea_modes arrays,
      which contains 64 entries. However, the code uses the CEA indices
      directly, i.e. the first mode is at cea_modes[1]. This means the array
      is one too short.

      This does not cause references to uninitialized memory as the code in
      fbmon only allows indexes up to 63, and the cea_modes does not contain
      an entry for the mode 64 so it could not be used in any case.

      However, the code contains a check 'if (idx > ARRAY_SIZE(cea_modes)',
      and while that check is a no-op as at that point idx cannot be >= 63, it
      upsets static checkers.

      Fix this by increasing the cea_array size to be 65, and change the code
      to allow mode 64.

      Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>

  commit 23a1ec304ae8fdd29235f864bd8193e9981c9bd1
  Author: Jon Hunter <jonathanh@xxxxxxxxxx>
  Date:   Thu Aug 6 14:32:33 2015 +0100

      dmaengine: tegra-apb: Simplify locking for device using global pause

      Sparse reports the following with regard to locking in the
      tegra_dma_global_pause() and tegra_dma_global_resume() functions:

      drivers/dma/tegra20-apb-dma.c:362:9: warning: context imbalance in
        'tegra_dma_global_pause' - wrong count at exit
      drivers/dma/tegra20-apb-dma.c:366:13: warning: context imbalance in
        'tegra_dma_global_resume' - unexpected unlock

      The warning is caused because tegra_dma_global_pause() acquires a lock
      but does not release it. However, the lock is released by
      tegra_dma_global_resume(). These pause/resume functions are called in
      pairs and so it does appear to work.

      This global pause is used on early tegra devices that do not have an
      individual pause for each channel. The lock appears to be used to ensure
      that multiple channels do not attempt to assert/de-assert the global pause
      at the same time which could cause the DMA controller to be in the wrong
      paused state. Rather than locking around the entire code between the pause
      and resume, employ a simple counter to keep track of the global pause
      requests. By using a counter, it is only necessary to hold the lock when
      pausing and unpausing the DMA controller and hence, fixes the sparse
      warning.

      Please note that for devices that support individual channel pausing, the
      DMA controller lock is not held between pausing and unpausing the channel.
      Hence, this change will make the devices that use the global pause behave
      in the same way, with regard to locking, as those that don't.

      Signed-off-by: Jon Hunter <jonathanh@xxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit dc1ff4b30a3592caf2ac6be691bd6c97b17383cd
  Author: Jon Hunter <jonathanh@xxxxxxxxxx>
  Date:   Thu Aug 6 14:32:32 2015 +0100

      dmaengine: tegra-apb: Remove unnecessary return statements and variables

      Some void functions have unnecessary return statements at the end
      (reported by sparse) and so remove these. Also remove the return variables
      from functions tegra_dma_prep_slave_sg() and tegra_dma_prep_slave_cyclic()
      because the value is not used.

      Signed-off-by: Jon Hunter <jonathanh@xxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 13a3328638dd009e76d4bb86e18dc8f3ae4f11dd
  Author: Jon Hunter <jonathanh@xxxxxxxxxx>
  Date:   Thu Aug 6 14:32:31 2015 +0100

      dmaengine: tegra-apb: Avoid unnecessary channel base address calculation

      Everytime a DMA channel register is accessed, the channel base address
      is calculated by adding the DMA base address and the channel register
      offset. Avoid this calculation and simply calculate the channel base
      address once at probe time for each DMA channel.

      Signed-off-by: Jon Hunter <jonathanh@xxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit c67886f5b809cfd9dc20f906f38fc0eddc7cba93
  Author: Jon Hunter <jonathanh@xxxxxxxxxx>
  Date:   Thu Aug 6 14:32:30 2015 +0100

      dmaengine: tegra-apb: Remove unused variables

      The callback and callback_param members of the tegra_dma_sg_req structure
      are never used. The dma-engine structure, dma_async_tx_descriptor, defines
      the same members and these are the ones used by the driver. Therefore,
      remove the unused versions from the tegra_dma_sg_req structure.

      The half_done member of tegra_dma_channel structure is configured but
      never used and so remove it.

      Signed-off-by: Jon Hunter <jonathanh@xxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 8d1ceb52e110aec808d64973f90fe4f69a5e42e9
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Thu Aug 20 01:31:58 2015 -0500

      PCI: imx6: Simplify a trivial if-return sequence

      Simplify a trivial if-return sequence by combining it with a preceding
      function call.

      The semantic patch that makes this change is available in
      scripts/coccinelle/misc/simple_return.cocci.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      CC: Lucas Stach <l.stach@xxxxxxxxxxxxxx>

  commit 68ebb7ce395c6d8ca99163911ec384853d4f88ad
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Thu Aug 20 01:31:24 2015 -0500

      PCI: spear: Use BUG_ON() instead of condition followed by BUG()

      Use BUG_ON() instead of an if condition followed by BUG().

      The semantic patch that makes this change is available in
      scripts/coccinelle/misc/bugon.cocci.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      CC: Pratyush Anand <pratyush.anand@xxxxxxxxx>

  commit 7dfffb9541bca80bbf8df1869564f9220ee150d2
  Author: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
  Date:   Mon Aug 17 15:08:55 2015 +0200

      dmaengine: Stricter legacy checking in dma_request_slave_channel_compat()

      dma_request_slave_channel_compat() is meant for drivers that support
      both DT and legacy platform device based probing: if DT channel DMA
      setup fails, it will fall back to platform data based DMA channel setup,
      using hardcoded DMA channel IDs and a filter function.

      However, if the DTS doesn't provide a "dmas" property for the device,
      the fallback is also used. If the legacy filter function is not
      hardcoded in the DMA slave driver, but comes from platform data, it will
      be NULL. Then dma_request_slave_channel_compat() will succeed
      incorrectly, and return a DMA channel, as a NULL legacy filter function
      actually means "all channels are OK", not "do not match".

      Later, when trying to use that DMA channel, it will fail with:

          rcar-dmac e6700000.dma-controller: rcar_dmac_prep_slave_sg: bad 
parameter: len=1, id=-22

      To fix this, ensure that both the filter function and the DMA channel ID
      are not NULL before using the legacy fallback.

      Note that some DMA slave drivers can handle this failure, and will fall
      back to PIO.

      See also commit 056f6c87028544de ("dmaengine: shdma: Make dummy
      shdma_chan_filter() always return false"), which fixed the same issue
      for the case where shdma_chan_filter() is hardcoded in a DMA slave
      driver.

      Suggested-by: Arnd Bergmann <arnd@xxxxxxxx>
      Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit d3f4caa355c1c9d2ce7fd3da88e2be37836323db
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Thu Aug 20 01:30:36 2015 -0500

      PCI: dra7xx: Remove unneeded use of IS_ERR_VALUE()

      There is no need to use the IS_ERR_VALUE() macro for checking the return
      value from pm_runtime_* functions.

      Test for a negative pm_runtime_get_sync() return value instead of using
      IS_ERR_VALUE().

      The semantic patch that makes this change is available in
      scripts/coccinelle/api/pm_runtime.cocci.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      CC: Kishon Vijay Abraham I <kishon@xxxxxx>

  commit 89079493437701551938652003eb75b328425c66
  Author: Rameshwar Prasad Sahu <rsahu@xxxxxxx>
  Date:   Tue Jul 21 18:44:39 2015 +0530

      dmaengine: xgene-dma: Add ACPI support for X-Gene DMA engine driver

      This patch adds ACPI support for the APM X-Gene DMA engine driver.

      Signed-off-by: Rameshwar Prasad Sahu <rsahu@xxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 74703cc4e08372b8aedfd687bef8182797215d30
  Author: Wei Yang <weiyang@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Jul 20 18:14:58 2015 +0800

      powerpc/powernv: Fix the log message when disabling VF

      On powernv platform, IOV BAR would be shifted if necessary. While the log
      message is not correct when disabling VFs.

      This patch fixes this by print correct message based on the offset value.

      Signed-off-by: Wei Yang <weiyang@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 7c26b9cf5347c24272152438cdd9675183804425
  Author: Andrew Donnellan <andrew.donnellan@xxxxxxxxxxx>
  Date:   Wed Aug 19 09:27:18 2015 +1000

      cxl: Allow release of contexts which have been OPENED but not STARTED

      If we open a context but do not start it (either because we do not attempt
      to start it, or because it fails to start for some reason), we are left
      with a context in state OPENED. Previously, cxl_release_context() only
      allowed releasing contexts in state CLOSED, so attempting to release an
      OPENED context would fail.

      In particular, this bug causes available contexts to run out after some 
EEH
      failures, where drivers attempt to release contexts that have failed to
      start.

      Allow releasing contexts in any state with a value lower than STARTED, 
i.e.
      OPENED or CLOSED (we can't release a STARTED context as it's currently
      using the hardware, and we assume that contexts in any new states which 
may
      be added in future with a value higher than STARTED are also unsafe to
      release).

      Cc: stable@xxxxxxxxxxxxxxx
      Fixes: 6f7f0b3df6d4 ("cxl: Add AFU virtual PHB and kernel API")
      Signed-off-by: Andrew Donnellan <andrew.donnellan@xxxxxxxxxxx>
      Signed-off-by: Daniel Axtens <dja@xxxxxxxxxx>
      Acked-by: Ian Munsie <imunsie@xxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit a1a42b7920ba57f287d742d42f113402fbb7c85e
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 18:18:47 2015 +0200

      macintosh/therm_windtunnel: Export OF module alias information

      The I2C core always reports the MODALIAS uevent as "i2c:<client name"
      regardless if the driver was matched using the I2C id_table or the
      of_match_table. So technically there's no need for a driver to export
      the OF table since currently it's not used.

      In fact, the I2C device ID table is mandatory for I2C drivers since
      a i2c_device_id is passed to the driver's probe function even if the
      I2C core used the OF table to match the driver.

      And since the I2C core uses different tables, OF-only drivers needs to
      have duplicated data that has to be kept in sync and also the dev node
      compatible manufacturer prefix is stripped when reporting the MODALIAS.

      To avoid the above, the I2C core behavior may be changed in the future
      to not require an I2C device table for OF-only drivers and report the
      OF module alias. So, it's better to also export the OF table to prevent
      breaking module autoloading if that happens.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit cb0eefcc3271ea1d370476dd29685918b99c5a9f
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 18:18:30 2015 +0200

      macintosh/therm_windtunnel: Export I2C module alias information

      The I2C core always reports the MODALIAS uevent as "i2c:<client name"
      regardless if the driver was matched using the I2C id_table or the
      of_match_table. So the driver needs to export the I2C table and this
      be built into the module or udev won't have the necessary information
      to auto load the correct module when the device is added.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit b93edcdd037f713e9b62cc76fb2064282af01aec
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Wed Jul 29 21:03:49 2015 -0300

      dmaengine: imx-sdma: Check for clk_enable() errors

      clk_enable() may fail, so we should better check the return value and
      propagate it in the case of error.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit b096c1377d1e50cea91d1db13bca8e7802199a67
  Author: Emilio López <emilio@xxxxxxxxxxxxx>
  Date:   Sun Jul 26 22:50:55 2015 +0200

      dmaengine: sun4i: Add support for the DMA engine on sun[457]i SoCs

      This patch adds support for the DMA engine present on Allwinner A10,
      A13, A10S and A20 SoCs. This engine has two kinds of channels: normal
      and dedicated. The main difference is in the mode of operation;
      while a single normal channel may be operating at any given time,
      dedicated channels may operate simultaneously provided there is no
      overlap of source or destination.

      Hardware documentation can be found on A10 User Manual (section 12), A13
      User Manual (section 14) and A20 User Manual (section 1.12)

      Signed-off-by: Emilio López <emilio@xxxxxxxxxxxxx>
      Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
      Signed-off-by: Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 18041e31743d278b6323518d20a2ef656c3cc689
  Author: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 21:40:16 2015 +0300

      vrf: vrf_master_ifindex_rcu is not always called with rcu read lock

      While running net-next I hit this:
      [  634.073119] ===============================
      [  634.073150] [ INFO: suspicious RCU usage. ]
      [  634.073182] 4.2.0-rc6+ #45 Not tainted
      [  634.073213] -------------------------------
      [  634.073244] include/net/vrf.h:38 suspicious rcu_dereference_check()
      usage!
      [  634.073274]
                     other info that might help us debug this:

      [  634.073307]
                     rcu_scheduler_active = 1, debug_locks = 1
      [  634.073338] 2 locks held by swapper/0/0:
      [  634.073369]  #0:  (((&n->timer))){+.-...}, at: [<ffffffff8112bc35>]
      call_timer_fn+0x5/0x480
      [  634.073412]  #1:  (slock-AF_INET){+.-...}, at: [<ffffffff8174f0f5>]
      icmp_send+0x155/0x5f0
      [  634.073450]
                     stack backtrace:
      [  634.073483] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.2.0-rc6+ #45
      [  634.073514] Hardware name: innotek GmbH VirtualBox/VirtualBox, BIOS
      VirtualBox 12/01/2006
      [  634.073545]  0000000000000000 0593ba8242d9ace4 ffff88002fc03b48
      ffffffff81803f1b
      [  634.073612]  0000000000000000 ffffffff81e12500 ffff88002fc03b78
      ffffffff811003c5
      [  634.073642]  0000000000000000 ffff88002ec4e600 ffffffff81f00f80
      ffff88002fc03cf0
      [  634.073669] Call Trace:
      [  634.073694]  <IRQ>  [<ffffffff81803f1b>] dump_stack+0x4c/0x65
      [  634.073728]  [<ffffffff811003c5>] lockdep_rcu_suspicious+0xc5/0x100
      [  634.073763]  [<ffffffff8174eb56>] icmp_route_lookup+0x176/0x5c0
      [  634.073793]  [<ffffffff8174f2fb>] ? icmp_send+0x35b/0x5f0
      [  634.073818]  [<ffffffff8174f274>] ? icmp_send+0x2d4/0x5f0
      [  634.073844]  [<ffffffff8174f3ce>] icmp_send+0x42e/0x5f0
      [  634.073873]  [<ffffffff8170b662>] ipv4_link_failure+0x22/0xa0
      [  634.073899]  [<ffffffff8174bdda>] arp_error_report+0x3a/0x80
      [  634.073926]  [<ffffffff816d6100>] ? neigh_lookup+0x2c0/0x2c0
      [  634.073952]  [<ffffffff816d396e>] neigh_invalidate+0x8e/0x110
      [  634.073984]  [<ffffffff816d62ae>] neigh_timer_handler+0x1ae/0x290
      [  634.074013]  [<ffffffff816d6100>] ? neigh_lookup+0x2c0/0x2c0
      [  634.074013]  [<ffffffff8112bce3>] call_timer_fn+0xb3/0x480
      [  634.074013]  [<ffffffff8112bc35>] ? call_timer_fn+0x5/0x480
      [  634.074013]  [<ffffffff816d6100>] ? neigh_lookup+0x2c0/0x2c0
      [  634.074013]  [<ffffffff8112c2bc>] run_timer_softirq+0x20c/0x430
      [  634.074013]  [<ffffffff810af50e>] __do_softirq+0xde/0x630
      [  634.074013]  [<ffffffff810afc97>] irq_exit+0x117/0x120
      [  634.074013]  [<ffffffff81810976>] smp_apic_timer_interrupt+0x46/0x60
      [  634.074013]  [<ffffffff8180e950>] apic_timer_interrupt+0x70/0x80
      [  634.074013]  <EOI>  [<ffffffff8106b9d6>] ? native_safe_halt+0x6/0x10
      [  634.074013]  [<ffffffff81101d8d>] ? trace_hardirqs_on+0xd/0x10
      [  634.074013]  [<ffffffff81027d43>] default_idle+0x23/0x200
      [  634.074013]  [<ffffffff8102852f>] arch_cpu_idle+0xf/0x20
      [  634.074013]  [<ffffffff810f89ba>] default_idle_call+0x2a/0x40
      [  634.074013]  [<ffffffff810f8dcc>] cpu_startup_entry+0x39c/0x4c0
      [  634.074013]  [<ffffffff817f9cad>] rest_init+0x13d/0x150
      [  634.074013]  [<ffffffff81f69038>] start_kernel+0x4a8/0x4c9
      [  634.074013]  [<ffffffff81f68120>] ?
      early_idt_handler_array+0x120/0x120
      [  634.074013]  [<ffffffff81f68339>] x86_64_start_reservations+0x2a/0x2c
      [  634.074013]  [<ffffffff81f68485>] x86_64_start_kernel+0x14a/0x16d

      It would seem vrf_master_ifindex_rcu() can be called without RCU held in
      other contexts as well so introduce a new helper which acquires rcu and
      returns the ifindex.
      Also add curly braces around both the "if" and "else" parts as per the
      style guide.

      Signed-off-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit aaba64487a96df6584a05d8898634307f3c86790
  Merge: d072f46 b55a1b9
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Thu Aug 20 14:11:17 2015 +1000

      Merge branch 'drm-next-fsl-dcu' of 
https://github.com/Jianwei-Wang/linux-drm-fsl-dcu into drm-next

      Merge Freescale DCU FRM driver.

      * 'drm-next-fsl-dcu' of https://github.com/Jianwei-Wang/linux-drm-fsl-dcu:
        MAINTAINERS: Add Freescale DCU DRM driver maintainer
        devicetree: Add NEC to the vendor-prefix list
        drm/layerscape: Add Freescale DCU DRM driver

  commit 2a606188c55990fa65cba3fd9b64f2b7542b7692
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 22:30:00 2015 -0500

      NFSv4: Enable delegated opens even when reboot recovery is pending

      Unlike the previous attempt, this takes into account the fact that
      we may be calling it from the recovery thread itself. Detect this
      by looking at what kind of open we're doing, and checking the state
      of the NFS_DELEGATION_NEED_RECLAIM if it turns out we're doing a
      reboot reclaim-type open.

      Cc: Olga Kornievskaia <aglo@xxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit c740624989eb87fa7cbd1b5338cef01dd49f1f29
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 23:00:50 2015 -0500

      pNFS: Fix an unused variable warning in pnfs_roc_get_barrier

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit c2126157ea3c4f72b315749e0c07a1b162a2fe2b
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 21:46:15 2015 -0500

      SUNRPC: Allow sockets to do GFP_NOIO allocations

      Follow up to commit c4a7ca774949 ("SUNRPC: Allow waiting on memory
      allocation"). Allows the RPC socket code to do non-IO blocking.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit b55a1b9c55ee9ed5b7d1d2acbabb078a454dbeea
  Author: Jianwei Wang <jianwei.wang.chn@xxxxxxxxx>
  Date:   Wed Aug 19 22:26:33 2015 -0400

      MAINTAINERS: Add Freescale DCU DRM driver maintainer

      Add Alison and myself as maintainers of the Freescale DCU DRM driver.

      Signed-off-by: Alison Wang <b18965@xxxxxxxxxxxxx>
      Signed-off-by: Xiubo Li <lixiubo@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Jianwei Wang <jianwei.wang.chn@xxxxxxxxx>

  commit 6e3fc2741ae8107546673656de89eefb89051ec0
  Author: Jianwei Wang <jianwei.wang.chn@xxxxxxxxx>
  Date:   Wed Aug 19 22:24:45 2015 -0400

      devicetree: Add NEC to the vendor-prefix list

      NEC represent NEC LCD Technologies, Ltd.

      Signed-off-by: Alison Wang <b18965@xxxxxxxxxxxxx>
      Signed-off-by: Xiubo Li <lixiubo@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Jianwei Wang <jianwei.wang.chn@xxxxxxxxx>

  commit 109eee2f2a181a89a26f6b59b83b50ebab281d4d
  Author: Jianwei Wang <jianwei.wang.chn@xxxxxxxxx>
  Date:   Wed Aug 19 22:19:49 2015 -0400

      drm/layerscape: Add Freescale DCU DRM driver

      This patch add support for Two Dimensional Animation and Compositing
      Engine (2D-ACE) on the Freescale SoCs.

      2D-ACE is a Freescale display controller. 2D-ACE describes
      the functionality of the module extremely well its name is a value
      that cannot be used as a token in programming languages.
      Instead the valid token "DCU" is used to tag the register names and
      function names.

      The Display Controller Unit (DCU) module is a system master that
      fetches graphics stored in internal or external memory and displays
      them on a TFT LCD panel. A wide range of panel sizes is supported
      and the timing of the interface signals is highly configurable.
      Graphics are read directly from memory and then blended in real-time,
      which allows for dynamic content creation with minimal CPU
      intervention.

      The features:
      (1) Full RGB888 output to TFT LCD panel.
      (2) Blending of each pixel using up to 4 source layers
      dependent
      on size of panel.
      (3) Each graphic layer can be placed with one pixel resolution
      in either axis.
      (4) Each graphic layer support RGB565 and RGB888 direct colors
      without alpha channel and BGRA8888 BGRA4444 ARGB1555 direct
      colors
      with an alpha channel and YUV422 format.
      (5) Each graphic layer support alpha blending with 8-bit
      resolution.
      This is a simplified version, only one primary plane, one
      framebuffer, one crtc, one connector and one encoder for TFT
      LCD panel.

      Signed-off-by: Alison Wang <b18965@xxxxxxxxxxxxx>
      Signed-off-by: Xiubo Li <lixiubo@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Jianwei Wang <jianwei.wang.chn@xxxxxxxxx>
      Acked-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 824e7383e92815cb591793c74cc836aa5165f7f8
  Author: Ying Xue <ying.xue@xxxxxxxxxxxxx>
  Date:   Wed Aug 19 15:46:17 2015 +0800

      lwtunnel: Fix the sparse warnings in fib_encap_match

      When CONFIG_LWTUNNEL config is not enabled, the lwtstate_free() is not
      declared in lwtunnel.h at all. However, even in this case, the function
      is still referenced in fib_semantics.c so that there appears the
      following sparse warnings:

      net/ipv4/fib_semantics.c:553:17: error: undefined identifier 
'lwtstate_free'
        CC      net/ipv4/fib_semantics.o
        net/ipv4/fib_semantics.c: In function â??fib_encap_matchâ??:
        net/ipv4/fib_semantics.c:553:3: error: implicit declaration of function 
â??lwtstate_freeâ?? [-Werror=implicit-function-declaration]
        cc1: some warnings being treated as errors
        make[1]: *** [net/ipv4/fib_semantics.o] Error 1
        make: *** [net/ipv4/fib_semantics.o] Error 2

      To eliminate the error, we define an empty function for lwtstate_free()
      in lwtunnel.h when CONFIG_LWTUNNEL is disabled.

      Fixes: df383e6240ef ("lwtunnel: fix memory leak")
      Cc: Jiri Benc <jbenc@xxxxxxxxxx>
      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Ying Xue <ying.xue@xxxxxxxxxxxxx>
      Acked-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d072f4654464b242e536a03102ebd3d481f6b418
  Merge: e2a8986 5b9fb5e
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Thu Aug 20 10:35:29 2015 +1000

      Merge branch 'drm-atmel-hlcdc-devel' of 
https://github.com/bbrezillon/linux-at91 into drm-next

      The following PR add support for 3 more atmel SoCs and for some missing
      features (new input formats and PRIME support).

      * 'drm-atmel-hlcdc-devel' of https://github.com/bbrezillon/linux-at91:
        drm: atmel-hlcdc: add support for sama5d4 SoCs
        drm: atmel-hlcdc: add support for at91sam9n12 SoC
        drm: atmel-hlcdc: add support for at91sam9x5 SoCs
        drm: atmel-hlcdc: add RGB565 and RGB444 output support
        drm: atmel-hlcdc: add the missing DRM_ATOMIC flag
        drm: atmel-hlcdc: add PRIME support

  commit e2a8986f3e287dc036ce1b9452d7b9e2d8839f2b
  Merge: 294947a 05906de
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Thu Aug 20 09:40:49 2015 +1000

      Merge branch 'drm-next-4.3' of git://people.freedesktop.org/~agd5f/linux 
into drm-next

      amdgpu and radeon changes for 4.3. Highlights:
      - Fiji support for amdgpu.
      - CGS support for amdgpu.  This is a new driver
        internal cross-component API.
      - Initial GPU scheduler for amdgpu.  Still disabled
        by default.
      - Lots of bug fixes and optimizations

      * 'drm-next-4.3' of git://people.freedesktop.org/~agd5f/linux: (130 
commits)
        drm/amdgpu: wait on page directory changes. v2
        drm/amdgpu: Select BACKLIGHT_LCD_SUPPORT
        drm/radeon: Select BACKLIGHT_LCD_SUPPORT
        drm/amdgpu: cleanup sheduler rq handling v2
        drm/amdgpu: move prepare work out of scheduler to cs_ioctl
        drm/amdgpu: fix unnecessary wake up
        drm/amdgpu: fix duplicated mapping invoke bug
        drm/amdgpu: drop bo_list_clone when no scheduler
        drm/amdgpu: disable GPU reset by default
        drm/amdgpu: fix type mismatch error
        drm/amdgpu: add reference for **fence
        drm/amdgpu: fix waiting for all fences before flipping
        drm/amdgpu: fix UVD return code checking
        drm/amdgpu: remove scheduler fence list v2
        drm/amdgpu: remove amd_sched_wait_emit v2
        drm/amdgpu: remove unecessary scheduler fence callbacks
        drm/amdgpu: fix scheduler fence implementation
        drm/amdgpu: don't grab dev->struct_mutex in pm functions
        drm/amdgpu: Don't take dev->struct_mutex in bo_force_delete
        drm/radeon: Don't take dev->struct_mutex in pm functions
        ...

  commit aa493382cb8c5768ba452d87f175fc2aff63911d
  Merge: 5be203a 3403ccc
  Author: Dave Chinner <david@xxxxxxxxxxxxx>
  Date:   Thu Aug 20 09:28:45 2015 +1000

      Merge branch 'xfs-misc-fixes-for-4.3-2' into for-next

  commit 3403ccc0c9f069c40ea751a93ac6746f5ef2116a
  Author: Dave Chinner <dchinner@xxxxxxxxxx>
  Date:   Thu Aug 20 09:27:49 2015 +1000

      xfs: inode lockdep annotations broke non-lockdep build

      Fix CONFIG_LOCKDEP=n build, because asserts I put in to ensure we
      aren't overrunning lockdep subclasses in commit 0952c81 ("xfs:
      clean up inode lockdep annotations") use a define that doesn't
      exist when CONFIG_LOCKDEP=n

      Only check the subclass limits when lockdep is actually enabled.

      Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit b226eca2088004622434cbcc27c6401b64f22d7c
  Author: Ezequiel García <ezequiel@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 19:40:09 2015 -0300

      nand: pxa3xx: Increase READ_ID buffer and make the size static

      The read ID count should be made as large as the maximum READ_ID size,
      so there's no need to have dynamic size. This commit sets the hardware
      maximum read ID count, which should be more than enough on all cases.
      Also, we get rid of the read_id_bytes, and use a macro instead.

      Signed-off-by: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
      Acked-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 21fc0ef9652f0c809dc0d3e0a67f1e1bf6ff8255
  Author: Robert Jarzmik <robert.jarzmik@xxxxxxx>
  Date:   Wed Aug 19 20:30:15 2015 +0200

      mtd: nand: pxa3xx-nand: fix random command timeouts

      When 2 commands are submitted in a row, and the second is very quick,
      the completion of the second command might never come. This happens
      especially if the second command is quick, such as a status read after
      an erase.

      The issue is that in the interrupt handler, the status bits are cleared
      after the new command is issued. There is a small temporal window where
      this happens :
       - the previous command has set the command done bit
       - the ready for a command bit is set
       - the handler submits the next command
         - just then, the command completes, and the command done bit is still
           set
       - the handler clears the "previous" command done bit
       - the handler exits

      In this flow, the "command done" of the next command will never trigger
      a new interrupt to finish the status command, as it was cleared for both
      commands.

      Fix this by clearing the status bit before submitting a new command.

      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Acked-by: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
      Tested-by: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 0b14392db2e998157d924085d7913e537ec26121
  Author: Robert Jarzmik <robert.jarzmik@xxxxxxx>
  Date:   Wed Aug 19 20:30:14 2015 +0200

      mtd: nand: pxa3xx_nand: fix early spurious interrupt

      When the nand is first probe, and upon the first command start, the
      status bits should be cleared before the interrupts are unmasked.

      The bug is tricky : if the bootloader left a status bit set, the
      unmasking of interrupts does trigger the interrupt handler before the
      first command is issued, blocking the good behavior of the nand.

      The same would happen if in pxa3xx_nand code flow a status bit is left,
      and then a command is started.

      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Acked-by: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
      Tested-by: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit e3f879bf1ea3e03f433d292b0114807785f0754b
  Author: Sunad Bhandary <sunad.s@xxxxxxxxxxx>
  Date:   Fri Jul 31 18:56:58 2015 +0530

      NVMe:Remove unreachable code in nvme_abort_req

      Removing unreachable code from nvme_abort_req as nvme_submit_cmd has no
      failure status to return.

      Signed-off-by: Sunad Bhandary <sunad.s@xxxxxxxxxxx>
      Acked-by: Keith Busch <keith.busch@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 054167b3d55127feb64978eddf3f9f3a84fe493b
  Author: Mario Smarduch <m.smarduch@xxxxxxxxxxx>
  Date:   Thu Jul 16 22:29:38 2015 +0100

      arm: KVM: keep arm vfp/simd exit handling consistent with arm64

      After enhancing arm64 FP/SIMD exit handling, ARMv7 VFP exit branch is 
moved
      to guest trap handling. This allows us to keep exit handling flow between 
both
      architectures consistent.

      Signed-off-by: Mario Smarduch <m.smarduch@xxxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit b84b8390d6009cde5134f775a251103c14bbed74
  Author: Filipe Manana <fdmanana@xxxxxxxx>
  Date:   Wed Aug 19 11:09:40 2015 +0100

      Btrfs: fix file read corruption after extent cloning and fsync

      If we partially clone one extent of a file into a lower offset of the
      file, fsync the file, power fail and then mount the fs to trigger log
      replay, we can get multiple checksum items in the csum tree that overlap
      each other and result in checksum lookup failures later. Those failures
      can make file data read requests assume a checksum value of 0, but they
      will not return an error (-EIO for example) to userspace exactly because
      the expected checksum value 0 is a special value that makes the read bio
      endio callback return success and set all the bytes of the corresponding
      page with the value 0x01 (at fs/btrfs/inode.c:__readpage_endio_check()).
      From a userspace perspective this is equivalent to file corruption
      because we are not returning what was written to the file.

      Details about how this can happen, and why, are included inline in the
      following reproducer test case for fstests and the comment added to
      tree-log.c.

        seq=`basename $0`
        seqres=$RESULT_DIR/$seq
        echo "QA output created by $seq"
        tmp=/tmp/$$
        status=1        # failure is the default!
        trap "_cleanup; exit \$status" 0 1 2 3 15

        _cleanup()
        {
            _cleanup_flakey
            rm -f $tmp.*
        }

        # get standard environment, filters and checks
        . ./common/rc
        . ./common/filter
        . ./common/dmflakey

        # real QA test starts here
        _need_to_be_root
        _supported_fs btrfs
        _supported_os Linux
        _require_scratch
        _require_dm_flakey
        _require_cloner
        _require_metadata_journaling $SCRATCH_DEV

        rm -f $seqres.full

        _scratch_mkfs >>$seqres.full 2>&1
        _init_flakey
        _mount_flakey

        # Create our test file with a single 100K extent starting at file
        # offset 800K. We fsync the file here to make the fsync log tree gets
        # a single csum item that covers the whole 100K extent, which causes
        # the second fsync, done after the cloning operation below, to not
        # leave in the log tree two csum items covering two sub-ranges
        # ([0, 20K[ and [20K, 100K[)) of our extent.
        $XFS_IO_PROG -f -c "pwrite -S 0xaa 800K 100K"  \
                        -c "fsync"                     \
                         $SCRATCH_MNT/foo | _filter_xfs_io

        # Now clone part of our extent into file offset 400K. This adds a file
        # extent item to our inode's metadata that points to the 100K extent
        # we created before, using a data offset of 20K and a data length of
        # 20K, so that it refers to the sub-range [20K, 40K[ of our original
        # extent.
        $CLONER_PROG -s $((800 * 1024 + 20 * 1024)) -d $((400 * 1024)) \
            -l $((20 * 1024)) $SCRATCH_MNT/foo $SCRATCH_MNT/foo

        # Now fsync our file to make sure the extent cloning is durably
        # persisted. This fsync will not add a second csum item to the log
        # tree containing the checksums for the blocks in the sub-range
        # [20K, 40K[ of our extent, because there was already a csum item in
        # the log tree covering the whole extent, added by the first fsync
        # we did before.
        $XFS_IO_PROG -c "fsync" $SCRATCH_MNT/foo

        echo "File digest before power failure:"
        md5sum $SCRATCH_MNT/foo | _filter_scratch

        # Silently drop all writes and ummount to simulate a crash/power
        # failure.
        _load_flakey_table $FLAKEY_DROP_WRITES
        _unmount_flakey

        # Allow writes again, mount to trigger log replay and validate file
        # contents.
        # The fsync log replay first processes the file extent item
        # corresponding to the file offset 400K (the one which refers to the
        # [20K, 40K[ sub-range of our 100K extent) and then processes the file
        # extent item for file offset 800K. It used to happen that when
        # processing the later, it erroneously left in the csum tree 2 csum
        # items that overlapped each other, 1 for the sub-range [20K, 40K[ and
        # 1 for the whole range of our extent. This introduced a problem where
        # subsequent lookups for the checksums of blocks within the range
        # [40K, 100K[ of our extent would not find anything because lookups in
        # the csum tree ended up looking only at the smaller csum item, the
        # one covering the subrange [20K, 40K[. This made read requests assume
        # an expected checksum with a value of 0 for those blocks, which caused
        # checksum verification failure when the read operations finished.
        # However those checksum failure did not result in read requests
        # returning an error to user space (like -EIO for e.g.) because the
        # expected checksum value had the special value 0, and in that case
        # btrfs set all bytes of the corresponding pages with the value 0x01
        # and produce the following warning in dmesg/syslog:
        #
        #  "BTRFS warning (device dm-0): csum failed ino 257 off 917504 csum\
        #   1322675045 expected csum 0"
        #
        _load_flakey_table $FLAKEY_ALLOW_WRITES
        _mount_flakey

        echo "File digest after log replay:"
        # Must match the same digest he had after cloning the extent and
        # before the power failure happened.
        md5sum $SCRATCH_MNT/foo | _filter_scratch

        _unmount_flakey

        status=0
        exit

      Signed-off-by: Filipe Manana <fdmanana@xxxxxxxx>
      Reviewed-by: Liu Bo <bo.li.liu@xxxxxxxxxx>
      Signed-off-by: Chris Mason <clm@xxxxxx>

  commit 1f9b8c8fbc9a4d029760b16f477b9d15500e3a34
  Author: Filipe Manana <fdmanana@xxxxxxxx>
  Date:   Wed Aug 12 11:54:35 2015 +0100

      Btrfs: check if previous transaction aborted to avoid fs corruption

      While we are committing a transaction, it's possible the previous one is
      still finishing its commit and therefore we wait for it to finish first.
      However we were not checking if that previous transaction ended up getting
      aborted after we waited for it to commit, so we ended up committing the
      current transaction which can lead to fs corruption because the new
      superblock can point to trees that have had one or more nodes/leafs that
      were never durably persisted.
      The following sequence diagram exemplifies how this is possible:

                CPU 0                                                        
CPU 1

        transaction N starts

        (...)

        btrfs_commit_transaction(N)

          cur_trans->state = TRANS_STATE_COMMIT_START;
          (...)
          cur_trans->state = TRANS_STATE_COMMIT_DOING;
          (...)

          cur_trans->state = TRANS_STATE_UNBLOCKED;
          root->fs_info->running_transaction = NULL;

                                                                    
btrfs_start_transaction()
                                                                       --> 
starts transaction N + 1

          btrfs_write_and_wait_transaction(trans, root);
            --> starts writing all new or COWed ebs created
                at transaction N

                                                                    creates 
some new ebs, COWs some
                                                                    existing 
ebs but doesn't COW or
                                                                    deletes eb X

                                                                    
btrfs_commit_transaction(N + 1)
                                                                      (...)
                                                                      
cur_trans->state = TRANS_STATE_COMMIT_START;
                                                                      (...)
                                                                      
wait_for_commit(root, prev_trans);
                                                                        --> 
prev_trans == transaction N

          btrfs_write_and_wait_transaction() continues
          writing ebs
             --> fails writing eb X, we abort transaction N
                 and set bit BTRFS_FS_STATE_ERROR on
                 fs_info->fs_state, so no new transactions
                 can start after setting that bit

             cleanup_transaction()
               btrfs_cleanup_one_transaction()
                 wakes up task at CPU 1

                                                                      
continues, doesn't abort because
                                                                      
cur_trans->aborted (transaction N + 1)
                                                                      is zero, 
and no checks for bit
                                                                      
BTRFS_FS_STATE_ERROR in fs_info->fs_state
                                                                      are made

                                                                      
btrfs_write_and_wait_transaction(trans, root);
                                                                        --> 
succeeds, no errors during writeback

                                                                      
write_ctree_super(trans, root, 0);
                                                                        --> 
succeeds
                                                                        --> we 
have now a superblock that points us
                                                                            to 
some root that uses eb X, which was
                                                                            
never written to disk

      In this scenario future attempts to read eb X from disk results in an
      error message like "parent transid verify failed on X wanted Y found Z".

      So fix this by aborting the current transaction if after waiting for the
      previous transaction we verify that it was aborted.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Filipe Manana <fdmanana@xxxxxxxx>
      Reviewed-by: Josef Bacik <jbacik@xxxxxx>
      Reviewed-by: Liu Bo <bo.li.liu@xxxxxxxxxx>
      Signed-off-by: Chris Mason <clm@xxxxxx>

  commit 03100aada96f0645bbcb89aea24c01f02d0ef1fa
  Author: Keith Busch <keith.busch@xxxxxxxxx>
  Date:   Wed Aug 19 14:24:05 2015 -0700

      block: Replace SG_GAPS with new queue limits mask

      The SG_GAPS queue flag caused checks for bio vector alignment against
      PAGE_SIZE, but the device may have different constraints. This patch
      adds a queue limits so a driver with such constraints can set to allow
      requests that would have been unnecessarily split. The new gaps check
      takes the request_queue as a parameter to simplify the logic around
      invoking this function.

      This new limit makes the queue flag redundant, so removing it and
      all usage. Device-mappers will inherit the correct settings through
      blk_stack_limits().

      Signed-off-by: Keith Busch <keith.busch@xxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 33c76a0b8126946026fa1122cb774553afae0956
  Author: Mario Smarduch <m.smarduch@xxxxxxxxxxx>
  Date:   Thu Jul 16 22:29:37 2015 +0100

      arm64: KVM: Optimize arm64 skip 30-50% vfp/simd save/restore on exits

      This patch only saves and restores FP/SIMD registers on Guest access. To 
do
      this cptr_el2 FP/SIMD trap is set on Guest entry and later checked on 
exit.
      lmbench, hackbench show significant improvements, for 30-50% exits FP/SIMD
      context is not saved/restored

      [chazy/maz: fixed save/restore logic for 32bit guests]

      Signed-off-by: Mario Smarduch <m.smarduch@xxxxxxxxxxx>
      Signed-off-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 277fb5fc177dc4674ef6151a7697f5396bbdff11
  Author: Michal Hocko <mhocko@xxxxxxxx>
  Date:   Wed Aug 19 14:17:41 2015 +0200

      btrfs: use __GFP_NOFAIL in alloc_btrfs_bio

      alloc_btrfs_bio relies on GFP_NOFS allocation when committing the
      transaction but this allocation context is rather weak wrt. reclaim
      capabilities. The page allocator currently tries hard to not fail these
      allocations if they are small (<=PAGE_ALLOC_COSTLY_ORDER) but it can
      still fail if the _current_ process is the OOM killer victim. Moreover
      there is an attempt to move away from the default no-fail behavior and
      allow these allocation to fail more eagerly. This would lead to:

      [   37.928625] kernel BUG at fs/btrfs/extent_io.c:4045

      which is clearly undesirable and the nofail behavior should be explicit
      if the allocation failure cannot be tolerated.

      Signed-off-by: Michal Hocko <mhocko@xxxxxxxx>
      Signed-off-by: Chris Mason <clm@xxxxxx>

  commit d1b5c5671d010de1df78d3efddb84bf22bfafd1e
  Author: Michal Hocko <mhocko@xxxxxxxx>
  Date:   Wed Aug 19 14:17:40 2015 +0200

      btrfs: Prevent from early transaction abort

      Btrfs relies on GFP_NOFS allocation when committing the transaction but
      this allocation context is rather weak wrt. reclaim capabilities. The
      page allocator currently tries hard to not fail these allocations if
      they are small (<=PAGE_ALLOC_COSTLY_ORDER) so this is not a problem
      currently but there is an attempt to move away from the default no-fail
      behavior and allow these allocation to fail more eagerly. And this would
      lead to a pre-mature transaction abort as follows:

      [   55.328093] Call Trace:
      [   55.328890]  [<ffffffff8154e6f0>] dump_stack+0x4f/0x7b
      [   55.330518]  [<ffffffff8108fa28>] ? console_unlock+0x334/0x363
      [   55.332738]  [<ffffffff8110873e>] __alloc_pages_nodemask+0x81d/0x8d4
      [   55.334910]  [<ffffffff81100752>] pagecache_get_page+0x10e/0x20c
      [   55.336844]  [<ffffffffa007d916>] alloc_extent_buffer+0xd0/0x350 
[btrfs]
      [   55.338973]  [<ffffffffa0059d8c>] 
btrfs_find_create_tree_block+0x15/0x17 [btrfs]
      [   55.341329]  [<ffffffffa004f728>] btrfs_alloc_tree_block+0x18c/0x405 
[btrfs]
      [   55.343566]  [<ffffffffa003fa34>] split_leaf+0x1e4/0x6a6 [btrfs]
      [   55.345577]  [<ffffffffa0040567>] btrfs_search_slot+0x671/0x831 [btrfs]
      [   55.347679]  [<ffffffff810682d7>] ? get_parent_ip+0xe/0x3e
      [   55.349434]  [<ffffffffa0041cb2>] btrfs_insert_empty_items+0x5d/0xa8 
[btrfs]
      [   55.351681]  [<ffffffffa004ecfb>] __btrfs_run_delayed_refs+0x7a6/0xf35 
[btrfs]
      [   55.353979]  [<ffffffffa00512ea>] btrfs_run_delayed_refs+0x6e/0x226 
[btrfs]
      [   55.356212]  [<ffffffffa0060e21>] ? start_transaction+0x192/0x534 
[btrfs]
      [   55.358378]  [<ffffffffa0060e21>] ? start_transaction+0x192/0x534 
[btrfs]
      [   55.360626]  [<ffffffffa0060221>] btrfs_commit_transaction+0x4c/0xaba 
[btrfs]
      [   55.362894]  [<ffffffffa0060e21>] ? start_transaction+0x192/0x534 
[btrfs]
      [   55.365221]  [<ffffffffa0073428>] btrfs_sync_file+0x29c/0x310 [btrfs]
      [   55.367273]  [<ffffffff81186808>] vfs_fsync_range+0x8f/0x9e
      [   55.369047]  [<ffffffff81186833>] vfs_fsync+0x1c/0x1e
      [   55.370654]  [<ffffffff81186869>] do_fsync+0x34/0x4e
      [   55.372246]  [<ffffffff81186ab3>] SyS_fsync+0x10/0x14
      [   55.373851]  [<ffffffff81554f97>] system_call_fastpath+0x12/0x6f
      [   55.381070] BTRFS: error (device hdb1) in btrfs_run_delayed_refs:2821: 
errno=-12 Out of memory
      [   55.382431] BTRFS warning (device hdb1): Skipping commit of aborted 
transaction.
      [   55.382433] BTRFS warning (device hdb1): cleanup_transaction:1692: 
Aborting unused transaction(IO failure).
      [   55.384280] ------------[ cut here ]------------
      [   55.384312] WARNING: CPU: 0 PID: 3010 at fs/btrfs/delayed-ref.c:438 
btrfs_select_ref_head+0xd9/0xfe [btrfs]()
      [...]
      [   55.384337] Call Trace:
      [   55.384353]  [<ffffffff8154e6f0>] dump_stack+0x4f/0x7b
      [   55.384357]  [<ffffffff8107f717>] ? down_trylock+0x2d/0x37
      [   55.384359]  [<ffffffff81046977>] warn_slowpath_common+0xa1/0xbb
      [   55.384398]  [<ffffffffa00a1d6b>] ? btrfs_select_ref_head+0xd9/0xfe 
[btrfs]
      [   55.384400]  [<ffffffff81046a34>] warn_slowpath_null+0x1a/0x1c
      [   55.384423]  [<ffffffffa00a1d6b>] btrfs_select_ref_head+0xd9/0xfe 
[btrfs]
      [   55.384446]  [<ffffffffa004e5f7>] ? 
__btrfs_run_delayed_refs+0xa2/0xf35 [btrfs]
      [   55.384455]  [<ffffffffa004e600>] __btrfs_run_delayed_refs+0xab/0xf35 
[btrfs]
      [   55.384476]  [<ffffffffa00512ea>] btrfs_run_delayed_refs+0x6e/0x226 
[btrfs]
      [   55.384499]  [<ffffffffa0060e21>] ? start_transaction+0x192/0x534 
[btrfs]
      [   55.384521]  [<ffffffffa0060e21>] ? start_transaction+0x192/0x534 
[btrfs]
      [   55.384543]  [<ffffffffa0060221>] btrfs_commit_transaction+0x4c/0xaba 
[btrfs]
      [   55.384565]  [<ffffffffa0060e21>] ? start_transaction+0x192/0x534 
[btrfs]
      [   55.384588]  [<ffffffffa0073428>] btrfs_sync_file+0x29c/0x310 [btrfs]
      [   55.384591]  [<ffffffff81186808>] vfs_fsync_range+0x8f/0x9e
      [   55.384592]  [<ffffffff81186833>] vfs_fsync+0x1c/0x1e
      [   55.384593]  [<ffffffff81186869>] do_fsync+0x34/0x4e
      [   55.384594]  [<ffffffff81186ab3>] SyS_fsync+0x10/0x14
      [   55.384595]  [<ffffffff81554f97>] system_call_fastpath+0x12/0x6f
      [...]
      [   55.384608] ---[ end trace c29799da1d4dd621 ]---
      [   55.437323] BTRFS info (device hdb1): forced readonly
      [   55.438815] BTRFS info (device hdb1): delayed_refs has NO entry

      Fix this by being explicit about the no-fail behavior of this allocation
      path and use __GFP_NOFAIL.

      Signed-off-by: Michal Hocko <mhocko@xxxxxxxx>
      Signed-off-by: Chris Mason <clm@xxxxxx>

  commit 60d53eb3107c8e8960e8d7c22aa4e69aac7a8fe6
  Author: Zhaolei <zhaolei@xxxxxxxxxxxxxx>
  Date:   Mon Aug 17 18:44:46 2015 +0800

      btrfs: Remove unused arguments in tree-log.c

      Following arguments are not used in tree-log.c:
       insert_one_name(): path, type
       wait_log_commit(): trans
       wait_for_writer(): trans

      This patch remove them.

      Signed-off-by: Zhao Lei <zhaolei@xxxxxxxxxxxxxx>
      Signed-off-by: Chris Mason <clm@xxxxxx>

  commit 34eb2a524997e5cd7117569b1fda925516adf6ac
  Author: Zhaolei <zhaolei@xxxxxxxxxxxxxx>
  Date:   Mon Aug 17 18:44:45 2015 +0800

      btrfs: Remove useless condition in start_log_trans()

      Dan Carpenter <dan.carpenter@xxxxxxxxxx> reported a smatch warning
      for start_log_trans():
       fs/btrfs/tree-log.c:178 start_log_trans()
       warn: we tested 'root->log_root' before and it was 'false'

       fs/btrfs/tree-log.c
       147          if (root->log_root) {
       We test "root->log_root" here.
       ...

      Reason:
       Condition of:
       fs/btrfs/tree-log.c:178: if (!root->log_root) {
       is not necessary after commit: 7237f1833

       It caused a smatch warning, and no functionally error.

      Fix:
       Deleting above condition will make smatch shut up,
       but a better way is to do cleanup for start_log_trans()
       to remove duplicated code and make code more readable.

      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Zhao Lei <zhaolei@xxxxxxxxxxxxxx>
      Signed-off-by: Chris Mason <clm@xxxxxx>

  commit 95ecdc2549ccc1f4f5af1f37c080120c2f0a1be3
  Author: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 14:20:45 2015 -0700

      Input: cros_ec_keyb - replace KEYBOARD_CROS_EC dependency

      The ChromeOS EC keyboard driver config depends on CROS_EC_PROTO but
      MFD_CROS_EC selects CROS_EC_PROTO instead. Mixing select and depends
      on is bad practice as it may lead to circular Kconfig dependencies.

      Since the platform device that is matched with the keyboard driver
      is registered by the ChromeOS EC mfd driver, KEYBOARD_CROS_EC really
      should depend on MFD_CROS_EC. And because this config option selects
      CROS_EC_PROTO, that dependency is met as well. So make the driver
      to depend on MFD_CROS_EC instead of CROS_EC_PROTO.

      Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 18e1db67e93ed75d9dc0d34c8d783ccf10547c2b
  Author: Bernhard Thaler <bernhard.thaler@xxxxxxxx>
  Date:   Thu Aug 13 08:58:15 2015 +0200

      netfilter: bridge: fix IPv6 packets not being bridged with CONFIG_IPV6=n

      230ac490f7fba introduced a dependency to CONFIG_IPV6 which breaks bridging
      of IPv6 packets on a bridge with CONFIG_IPV6=n.

      Sysctl entry /proc/sys/net/bridge/bridge-nf-call-ip6tables defaults to 1,
      for this reason packets are handled by br_nf_pre_routing_ipv6(). When 
compiled
      with CONFIG_IPV6=n this function returns NF_DROP but should return 
NF_ACCEPT
      to let packets through.

      Change CONFIG_IPV6=n br_nf_pre_routing_ipv6() return value to NF_ACCEPT.

      Tested with a simple bridge with two interfaces and IPv6 packets trying
      to pass from host on left side to host on right side of the bridge.

      Fixes: 230ac490f7fba ("netfilter: bridge: split ipv6 code into separated 
file")
      Signed-off-by: Bernhard Thaler <bernhard.thaler@xxxxxxxx>
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit bf798657eb5ba57552096843c315f096fdf9b715
  Author: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>
  Date:   Wed Aug 12 17:41:00 2015 +0200

      netfilter: nf_tables: Use 32 bit addressing register from 
nft_type_to_reg()

      nft_type_to_reg() needs to return the register in the new 32 bit 
addressing,
      otherwise we hit EINVAL when using mappings.

      Fixes: 49499c3 ("netfilter: nf_tables: switch registers to 32 bit 
addressing")
      Reported-by: Andreas Schultz <aschultz@xxxxxxxx>
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit 69f230d907e8c1ca3f9bd528993eeb98f712b0dd
  Author: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 20 01:52:59 2015 +0800

      NFS41/flexfiles: update inode after write finishes

      Otherwise we break fstest case tests/read_write/mctime.t

      Does files layout need the same fix as well?

      Cc: stable@xxxxxxxxxxxxxxx # v4.0+
      Cc: Anna Schumaker <anna.schumaker@xxxxxxxxxx>
      Signed-off-by: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit c5e5cd28d7c5a18d6da6575957dd0c5243ac3e7b
  Author: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
  Date:   Wed Aug 19 11:37:57 2015 +0800

      spi: mediatek: remove redundant clock in 
prepare_hardware/unprepare_hardware

      clock in prepare_hardware/unprepare_hardware is redundant
      with pm_runtime, so remove them.

      Signed-off-by: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit aaee24accb9e374c04eb9672d5324160626462c5
  Author: Mark Greer <mgreer@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 08:58:52 2015 -0700

      NFC: trf7970a: Add NULL check to clear up smatch warning

      Although it should be unnecessary, add a NULL pointer check
      to trf7970a_send_upstream() to eliminate a smatch warning.

      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Mark Greer <mgreer@xxxxxxxxxxxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit ae291f79da57ef4cb747ae1940b37152d1a4e5cf
  Author: Mark Greer <mgreer@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 08:57:58 2015 -0700

      NFC: trf7970a: SDD_EN is bit 5 not bit 3

      The SDD_EN bit in the NFC Target Detection Level Register
      is bit 5 not bit 3 so change the TRF7970A_NFC_TARGET_LEVEL_SDD_EN
      macro accordingly.

      Reported-by: Raymond Lei <Raymond.Lei@xxxxxxxxxx>
      Signed-off-by: Mark Greer <mgreer@xxxxxxxxxxxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit 777572911a732c0d3e6dbc514f9a1206606ffd0b
  Author: Thomas Petazzoni <thomas.petazzoni@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Jul 8 16:28:19 2015 +0200

      dmaengine: mv_xor: optimize performance by using a subset of the XOR 
channels

      Due to how async_tx behaves internally, having more XOR channels than
      CPUs is actually hurting performance more than it improves it, because
      memcpy requests get scheduled on a different channel than the XOR
      requests, but async_tx will still wait for the completion of the
      memcpy requests before scheduling the XOR requests.

      It is in fact more efficient to have at most one channel per CPU,
      which this patch implements by limiting the number of channels per
      engine, and the number of engines registered depending on the number
      of availables CPUs.

      Marvell platforms are currently available in one CPU, two CPUs and
      four CPUs configurations:

       - in the configurations with one CPU, only one channel from one
         engine is used.

       - in the configurations with two CPUs, only one channel from each
         engine is used (they are two XOR engines)

       - in the configurations with four CPUs, both channels of both engines
         are used.

      Signed-off-by: Thomas Petazzoni <thomas.petazzoni@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 6d8f7abd235c1a38629cdada49cc53992f4ad42e
  Author: Thomas Petazzoni <thomas.petazzoni@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Jul 8 16:28:16 2015 +0200

      dmaengine: mv_xor: remove support for dmacap,* DT properties

      The only reason why we had dmacap,* properties is because back when
      DMA_MEMSET was supported, only one out of the two channels per engine
      could do a memset operation. But this is something that the driver
      already knows anyway, and since then, the DMA_MEMSET support has been
      removed.

      The driver is already well aware of what each channel supports and the
      one to one mapping between Linux specific implementation details (such
      as dmacap,interrupt enabling DMA_INTERRUPT) and DT properties is a
      good indication that these DT properties are wrong.

      Therefore, this commit simply gets rid of these dmacap,* properties,
      they are now ignored, and the driver is responsible for knowing the
      capabilities of the hardware with regard to the dmaengine subsystem
      expectations.

      Signed-off-by: Thomas Petazzoni <thomas.petazzoni@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 31495d60a06524f37a9ea66d7d62ce0418ef3506
  Author: Michal Suchanek <hramrach@xxxxxxxxx>
  Date:   Thu Jul 23 18:04:49 2015 +0200

      dmaengine: pl330: do not emit loop for 1 byte transfer.

      When there is only one burst required do not emit loop instructions to
      loop exactly once. Emit just the body of the loop.

      Signed-off-by: Michal Suchanek <hramrach@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 1cf5a330c05ae37a0a98ac7c9800a6f50d5579ec
  Author: Nikesh Oswal <Nikesh.Oswal@xxxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 16:02:24 2015 +0100

      ASoC: arizona: Fix gain settings of FLL in free-run mode

      The wrong register was used to set the gain of ref loop, when changing
      the FLL output on an active FLL. This patch corrects the offset of the
      gain register.

      Signed-off-by: Nikesh Oswal <Nikesh.Oswal@xxxxxxxxxxxxxxxx>
      Signed-off-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 5a286aae3d2c6e494fbcafdf4e911e2e976562a8
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Wed Aug 19 11:17:53 2015 +0800

      regulator: qcom_smd: Set n_voltages for pm8941_lnldo

      Just setting fixed_uV is not enough, the regulator core will also check
      n_voltages setting. The fixed_uV only works when n_voltages is 1.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Reviewed-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit bf0c4e04732479f650ff59d1ee82de761c0071f0
  Author: Jeff Vander Stoep <jeffv@xxxxxxxxxx>
  Date:   Tue Aug 18 20:50:10 2015 +0100

      arm64: kconfig: Move LIST_POISON to a safe value

      Move the poison pointer offset to 0xdead000000000000, a
      recognized value that is not mappable by user-space exploits.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Acked-by: Catalin Marinas <catalin.marinas@xxxxxxx>
      Signed-off-by: Thierry Strudel <tstrudel@xxxxxxxxxx>
      Signed-off-by: Jeff Vander Stoep <jeffv@xxxxxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit ccf2dc51bc4a715670641aa5af0d4636acd8e0cd
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Mon Aug 17 20:08:09 2015 -0700

      hwmon: (ltc2978) Add support for LTM4675

      LTM2975 is a dual 9A or single 18A μModule regulator.
      It is register compatible with LTM4676.

      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit e04d1ce9bbb49862fd8266da764f5ebf67baaac0
  Author: Michael Jones <mike@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 17:45:32 2015 -0700

      hwmon: (ltc2978) Add polling for chips requiring it

      Some of the LTC chips supported by this driver have to be polled
      to ensure that they are ready to accept commands.

      Signed-off-by: Michael Jones <mike@xxxxxxxxxxxxx>
      [Guenter Roeck: simplifications and formatting changes]
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit d830e27dac26b4f084c5ed2282666527f90db0ed
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Mon Aug 17 16:26:21 2015 -0700

      hwmon: (pmbus) Enable PEC if the controller supports it

      PMBus controllers optionally support PEC. Configure the driver
      to use it if available to improve operational security.

      Suggested-by: Michael Jones <mike@xxxxxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit 2c052d4280ca48fddc7a9ffd2329ada3628cab86
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Mon Aug 17 16:17:24 2015 -0700

      hwmon: (pmbus) Use BIT macro

      Using the BIT macro makes the code a little easier to read.

      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit 9430e547894d2ff099e5717050eb40c1e1dd2bad
  Author: Julian Scheel <julian@xxxxxxxx>
  Date:   Wed Aug 19 09:28:09 2015 +0200

      ALSA: usb-audio: Recurse before saving terminal properties

      The input terminal parser recurses into the referenced clock entity to 
verify
      it is existant and thus the terminal descriptor is valid. The actual 
property
      values of the term instance which is initially parsed must not be 
overriden by
      the recursion. For this to work the term properties have to be assigned 
after
      recursing into the referenced clock entity descriptors.

      Signed-off-by: Julian Scheel <julian@xxxxxxxx>
      Acked-by: Daniel Mack <daniel@xxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit ebb75c0bdba238013976b53e256f8d13216304e4
  Author: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
  Date:   Sat Aug 15 07:21:00 2015 +0530

      ASoC: rockchip: i2s: Adjust devm usage

      Remove use of snd_soc_unregister_component in remove function
      as devm_snd_soc_register_component in probe function automatically
      handles it.

      Also, convert call of snd_dmaengine_pcm_register to managed resource
      function devm_snd_dmaengine_pcm_register and remove usage of
      snd_dmaengine_pcm_unregister in probe and remove functions.

      Signed-off-by: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit bea107b1f1ee79da0bc2c1ee0c70bf1c3c6c41b4
  Author: Christian Kujau <lists@xxxxxxxxxxxxxxx>
  Date:   Sun Aug 2 20:03:26 2015 -0700

      fallback to hostname in scripts/package/builddeb

      I happened to build a kernel with "make deb-pkg" on a machine with no
      network connectivity, but this failed with:

      [...]
        INSTALL debian/headertmp/usr/include/asm/ (65 files)
      hostname: Name or service not known
      ../scripts/package/Makefile:90: recipe for target 'deb-pkg' failed
      make[2]: *** [deb-pkg] Error 1

      In scripts/package/builddeb it tries to construct an email address (that
      can be queried in /proc/version later on) but with no network,
      the "hostname -f" fails. The following patch falls back to just use the
      shortname if we cannot determine our FQDN.

      Signed-off-by: Christian Kujau <lists@xxxxxxxxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxx>

  commit 2f27b81c0e5670fbdd902ca8f85617153d69b8cb
  Author: Rob Herring <robh@xxxxxxxxxx>
  Date:   Mon Jul 27 15:55:15 2015 -0500

      dmaengine: kill off set_irq_flags usage

      set_irq_flags is ARM specific with custom flags which have genirq
      equivalents. Convert drivers to use the genirq interfaces directly, so we
      can kill off set_irq_flags. The translation of flags is as follows:

      IRQF_VALID -> !IRQ_NOREQUEST
      IRQF_PROBE -> !IRQ_NOPROBE
      IRQF_NOAUTOEN -> IRQ_NOAUTOEN

      For IRQs managed by an irqdomain, the irqdomain core code handles clearing
      and setting IRQ_NOREQUEST already, so there is no need to do this in
      .map() functions and we can simply remove the set_irq_flags calls. Some
      users also modify IRQ_NOPROBE and this has been maintained although it
      is not clear that is really needed. There appears to be a great deal of
      blind copy and paste of this code.

      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
      Cc: Dan Williams <dan.j.williams@xxxxxxxxx>
      Cc: Vinod Koul <vinod.koul@xxxxxxxxx>
      Cc: dmaengine@xxxxxxxxxxxxxxx
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit d078cd1b4185134fe861e2b16a40ba14efb307b7
  Author: Zidan Wang <zidan.wang@xxxxxxxxxxxxx>
  Date:   Thu Jul 23 11:40:49 2015 +0800

      dmaengine: imx-sdma: Add imx6sx platform support

      The new Solo X has more requirements for SDMA events. So it creates
      a event mux to remap most of event numbers in GPR (General Purpose
      Register). If we want to use SDMA support for those module who do
      not get the even number as default, we need to configure GPR first.

      Thus this patch adds this support of GPR event remapping configuration
      to the SDMA driver.

      Signed-off-by: Zidan Wang <zidan.wang@xxxxxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit e900c30dc1bb0cbc07708e9be1188f531632b2ef
  Author: Ludovic Desroches <ludovic.desroches@xxxxxxxxx>
  Date:   Wed Jul 22 16:12:29 2015 +0200

      dmaengine: at_xdmac: fix bug in prep_dma_cyclic

      In cyclic mode, the round chaining has been broken by the introduction
      of at_xdmac_queue_desc(): AT_XDMAC_MBR_UBC_NDE is set for all descriptors
      excepted for the last one. at_xdmac_queue_desc() has to be called one
      more time to chain the last and the first descriptors.

      Signed-off-by: Ludovic Desroches <ludovic.desroches@xxxxxxxxx>
      Fixes: 0d0ee751f7f7 ("dmaengine: xdmac: Rework the chaining logic")
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit e755d638e91be254d441602e8d7d9f1d9c944556
  Author: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 13:49:19 2015 +0800

      NFS41: make sure sending LAYOUTRETURN before close if marked so

      If layout is marked by NFS_LAYOUT_RETURN_BEFORE_CLOSE, we should always
      send LAYOUTRETURN before close, and we don't need to do ROC drain if we
      do send LAYOUTRETURN.

      Signed-off-by: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit bec8a5a22640325e86cf5b737c18888747631099
  Author: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
  Date:   Fri Jul 10 13:53:06 2015 +0900

      coccinelle: api: extend spatch for dropping unnecessary owner

      i2c_add_driver (through i2c_register_driver) sets the owner field so we
      can drop it also from i2c drivers, just like from platform drivers.

      Signed-off-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Acked-by: Julia Lawall <Julia.Lawall@xxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit 09cd75555cd9051bdeac7a29c6ff12d6b9e8341b
  Author: Andreas Ruprecht <andreas.ruprecht@xxxxxx>
  Date:   Sun Jul 12 09:41:51 2015 +0200

      kconfig: Regenerate shipped zconf.{hash,lex}.c files

      Update the shipped files generated by flex and gperf to support the
      explicit use of "---help---" and to emit warnings for unsupported
      characters on COMMAND tokens.

      As I could not find out which flex/gperf version was used to generate
      the previous version, I used flex 2.5.35  and gperf 3.0.4 from
      Ubuntu 14.04 - this also leads to the big number of changed lines
      in this patch.

      Signed-off-by: Andreas Ruprecht <andreas.ruprecht@xxxxxx>
      Reviewed-by: Ulf Magnusson <ulfalizer@xxxxxxxxx>
      Tested-by: Ulf Magnusson <ulfalizer@xxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit c2264564df3d70723c6d6eb96c18b99698c112fd
  Author: Andreas Ruprecht <andreas.ruprecht@xxxxxx>
  Date:   Sun Jul 12 09:41:50 2015 +0200

      kconfig: warn of unhandled characters in Kconfig commands

      In Kconfig, definitions of options take the following form:
      "<COMMAND> <PARAM> <PARAM> ...". COMMANDs and PARAMs are treated
      slightly different by the underlying parser.

      While commit 2e0d737fc76f ("kconfig: don't silently ignore unhandled
      characters") introduced a warning for unsupported characters around
      PARAMs, it does not cover situations where a COMMAND has additional
      characters before it.

      This change makes Kconfig emit a warning if superfluous characters
      are found before COMMANDs. As the 'help' statement sometimes is
      written as '---help---', the '-' character would now also be regarded
      as unhandled and generate a warning. To avoid that, '-' is added to
      the list of allowed characters, and the token '---help---' is included
      in the zconf.gperf file.

      Reported-by: Valentin Rothberg <valentinrothberg@xxxxxxxxx>
      Signed-off-by: Andreas Ruprecht <andreas.ruprecht@xxxxxx>
      Reviewed-by: Ulf Magnusson <ulfalizer@xxxxxxxxx>
      Tested-by: Ulf Magnusson <ulfalizer@xxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit 8f183751a8604be5aaf0ad6dedac4890bb6fa0d5
  Author: Stephan Mueller <smueller@xxxxxxxxxx>
  Date:   Wed Aug 19 08:42:07 2015 +0200

      crypto: cmac - allow usage in FIPS mode

      CMAC is an approved cipher in FIPS 140-2. The patch allows the use
      of CMAC with TDES and AES in FIPS mode.

      Signed-off-by: Stephan Mueller <smueller@xxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 66c9a04e33947191a03a1cf5103b8bf9051774df
  Author: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
  Date:   Tue Aug 18 11:36:05 2015 +0530

      crypto: sahara - Use dmam_alloc_coherent

      This patch moves the data allocated using dma_alloc_coherent to the
      corresponding managed interface. To be compatible with the change,
      various gotos are replaced with direct returns and unneeded labels
      are dropped.

      Signed-off-by: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 35ffd08d9bc92b5d56f6536406c379d82a757e7a
  Author: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Jul 7 21:48:23 2015 +0200

      kconfig: Delete unnecessary checks before the function call 
"sym_calc_value"

      The sym_calc_value() function tests whether its argument is NULL and then
      returns immediately. Thus the test around the call is not needed.

      This issue was detected by using the Coccinelle software.

      Signed-off-by: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit bf7b00557d10c0b84b6717305815c8fff7007830
  Author: Riku Voipio <riku.voipio@xxxxxxxxxx>
  Date:   Thu May 28 12:11:14 2015 +0300

      deb-pkg: simplify directory creation

      Every package needs /usr/share/doc/$package_name and
      DEBIAN directory, so create them as part of create_package
      function.

      Signed-off-by: Riku Voipio <riku.voipio@xxxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit 3c42f0b803613c4888aa2214e86d6ea746cb94de
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Tue Jun 16 18:00:37 2015 -0700

      scripts/tags.sh: Include trace_*_rcuidle() in tags

      Every tracepoint creates two functions, the usual one 'trace_*()'
      and the rcuidle one 'trace_*_rcuidle()'. Add regex for the
      rcuidle variant so that we can jump to the tracepoints that use
      rcuidle.

      Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
      Signed-off-by: Michal Marek <mmarek@xxxxxxxx>

  commit 5db879aefa0ef6dea4fdda268dd94016bc165f3d
  Author: Raja Mani <rmani@xxxxxxxxxxxxxxxx>
  Date:   Thu Jul 9 14:19:43 2015 +0530

      ath10k: free collected fw stats memory if .pull_fw_stats fails

      If .pull_fw_stats() fails for some reason while processing
      fw stats event, collected pdev/vdev/peer stats just before
      the failure should be freed. This is unlikely to happen,
      just code review catch.

      Signed-off-by: Raja Mani <rmani@xxxxxxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit f1ee2682ef8dffe6d6ec6f7788d6bf33d6bab7a6
  Author: Raja Mani <rmani@xxxxxxxxxxxxxxxx>
  Date:   Thu Jul 9 14:19:42 2015 +0530

      ath10k: ensure pktlog disable cmd reaches fw before pdev suspend

      Found incorrect sequence in ath10k_core_stop() where wmi pktlog
      disable cmd is passed from ath10k_debug_stop() to firmware
      immediately after wmi pdev suspend cmd. Firmware will not accept
      any wmi cmd after receiving wmi pdev suspend cmd.

      Fix this issue in ath10k_core_stop() by moving ath10k_debug_stop()
      just before sending pdev suspend cmd. So that pktlog disable cmd
      will get passed before pdev suspend cmd.

      Signed-off-by: Raja Mani <rmani@xxxxxxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 42cfc6b590c5eb7ae3c1de89594f8f2193ecbc97
  Author: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
  Date:   Wed Aug 19 10:42:23 2015 +0200

      s390/dcssblk: correct out of bounds array indexes

      Fix a couple of warnings like this:

      [linux-4.2-rc7/drivers/s390/block/dcssblk.c:553]:
         (style) Array index 'j' is used before limits check.

      Reported-by: David Binderman <dcb314@xxxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit 78fb907626dccfeee6f4213c649606e9ba49c6bc
  Author: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
  Date:   Fri Aug 14 14:58:50 2015 +0200

      s390/mm: simplify page table alloc/free code

      With the removal of the dynamic reallocation of page tables for
      KVM (see git commit 0b46e0a3ec0d7a04af6a091354f1b5e1b952d70a)
      the page table allocation / freeing code can be simplified.

      The page table free code can now use the alloc_pgste bit in the
      mm context to decide if a page table is 2K or 4K, there is no mix
      of different sized page tables anymore. This eliminates the need
      to use "page->_mapcount == 0" to check for 4K page table.

      Use the lower two bits in page->_mapcount to indicate which
      2K fragments of the 4K page are in use.

      As 31-bit support is gone, remove the two defines ALLOC_ORDER
      and FRAG_MASK and use the constants directly where appropriate.

      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit 3d8258e4ab5166ca702b2828c99a5fa7dcb40a0c
  Author: Sebastian Ott <sebott@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 19:39:27 2015 +0200

      s390/pci: move debug messages to debugfs

      The error messages in pci_insn are for debug purposes only. Move
      them to the debugfs.

      Reviewed-by: Gerald Schaefer <gerald.schaefer@xxxxxxxxxx>
      Signed-off-by: Sebastian Ott <sebott@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit 24d05ff863e78544e8538a792e3234291cdd5650
  Author: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
  Date:   Mon Aug 17 08:09:17 2015 +0200

      s390/nmi: initialize control register 0 earlier

      Change machine_check_init() to an early_initcall(). This makes sure it 
will
      be called before all other cpus are online and therfore saves us a lot of
      pointless smp_call_function() calls.
      The control register settings will be forwarded to the other cpus when 
they
      will be brought online.

      Signed-off-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
      Reviewed-by: Hendrik Brueckner <brueckner@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit e4e1899aaec0370aea6b98597ee6289d60544ae2
  Author: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
  Date:   Mon Aug 17 07:59:47 2015 +0200

      s390/zcrypt: use msleep() instead of mdelay()

      There is no need to busy loop and monopolize a cpu for up to ~2 seconds.
      The code in question that calls mdelay() is preemptible anyway, so better
      let the kernel schedule different processes than just looping and causing
      unnecessary delays.

      Signed-off-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
      Acked-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit e619cd3d618672bea8602d682ea63b42a1faf1bc
  Author: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
  Date:   Mon Aug 17 07:56:20 2015 +0200

      s390/hmcdrv: fix interrupt registration

      The z/VM driver sets bit "63-22" in control register zero to one in order
      to enable the CP Service interrupt (0x2603). However the irq subclass mask
      that normally corresponds to the CP Service interrupt is
      "63-54" (== "63-22-32").

      So it looks like the author read the documentation with the 32 bit sized
      cr0 register bit positions (== 22), but didn't realize that bit numbers
      change, if applied to a 64 bit register (== 54) due to the numbering
      scheme.

      Also use irq_subclass_register() instead if ctl_set_bit() since multiple
      services depend on the service signal subclass mask, which is the correct
      bit. This also explains why nobody noticed the bug, since the bit is 
always
      enabled anyway (e.g. pfault).

      Signed-off-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
      Reviewed-by: Hendrik Brueckner <brueckner@xxxxxxxxxxxxxxxxxx>
      Acked-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit 89b1145e93771d727645c96e323539c029b63f1c
  Author: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
  Date:   Fri Aug 14 13:20:28 2015 +0200

      s390/setup: fix novx parameter

      The novx parameter disables the vector facility but the HWCAP_S390_VXRS
      bit in the ELf hardware capabilies is always set if the machine has
      the vector facility. If the user space program uses the "vx" string
      in the features field of /proc/cpuinfo to utilize vector instruction
      it will crash if the novx kernel paramter is set.

      Convert setup_hwcaps to an arch_initcall and use MACHINE_HAS_VX to
      decide if the HWCAPS_S390_VXRS bit needs to be set.

      Cc: stable@xxxxxxxxxxxxxxx # 3.18+
      Reported-by: Ulrich Weigand <uweigand@xxxxxxxxxx>
      Reviewed-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit cabc4abe8e368d754805691b146f31f574533cfa
  Author: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
  Date:   Thu Aug 13 13:44:34 2015 +0200

      s390/uaccess: remove uaccess_primary kernel parameter

      get_user() and put_user() are inline functions in the meantime
      again. Both will generate the mvcos instruction if compiled
      with -march=z10 (or greater).

      The kernel parameter "uaccess_primary" can only change the behavior
      of out-of-line uaccess functions like copy_from_user() to not use
      the mvcos instruction, but not for the above named inlined functions.

      Therefore it is quite useless and the parameter can be removed.

      Signed-off-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit 92d6289105d134582094eede00192bd66f54905f
  Author: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
  Date:   Thu Aug 13 13:26:49 2015 +0200

      s390: remove unneeded sizeof(void *) comparisons

      Remove two more statements which always evaluate to 'false'.
      These are more leftovers from the 31 bit era.

      Signed-off-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
      Reviewed-by: David Hildenbrand <dahi@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit a69db2f6ad69157cace810971f19cb5aec9956b1
  Author: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
  Date:   Thu Aug 13 12:27:16 2015 +0200

      s390/facilities: remove transactional-execution bits

      Remove the two facility bits

      50 - constrained transactional-execution facility
      74 - transactional-execution facility

      from the required facilities if the kernel is built with -march=zEC12.

      E.g. z/VM 6.3 doesn't virtualize the TX facility yet. Therefore a kernel
      built with -march=zEC12 and ipl'ed on a zEC12 machine as a z/VM 6.3 guest
      will emit a message about the missing facilities and stop working.

      The kernel however doesn't make use of the TX facility, therefore remove
      the two TX related facility bits and fix this unpleasant behavior.

      Signed-off-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
      Reviewed-by: David Hildenbrand <dahi@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit c0e5ddab6e985c83714b31a88098e76c39ff084a
  Author: Michael Holzheu <holzheu@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 10:35:11 2015 +0200

      s390/numa: re-add DIE sched_domain_topology_level

      By accident this level has been removed by the NUMA infrastructure patch.
      For non-NUMA systems with CPUs that span more than one book, this makes
      the scheduler only use one of the books and the other books remain idle.

      Fix this and re-add the missing level.

      For NUMA and non-NUMA we have the following scheduling domains and groups:

       - SMT  (Groups: CPU threads)
       - MC   (Groups: Cores)
       - BOOK (Groups: Books)

      For the non-NUMA case we have one last level scheduling domain:

       - DIE  (Groups: Whole system, has all CPUs -> cpu_cpu_mask)

      For the NUMA case we have the following two last level scheduling domains:

       - DIE  (Groups: NUMA nodes -> cpu_cpu_mask -> returns node siblings)
       - NUMA (Groups: Whole system, has all CPUs -> created in 
sched_init_numa())

      Fixes: e8054b654bf5 ("s390/numa: add topology tree infrastructure")
      Reported-and-tested-by: Evgeny Cherkashin <Eugene.Crosser@xxxxxxxxxx>
      Signed-off-by: Michael Holzheu <holzheu@xxxxxxxxxxxxxxxxxx>
      Acked-by: Heiko Carstens <heiko.carstens@xxxxxxxxxx>
      Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

  commit 8cfd23e6740158817d2045915f6ea5a2daf11bce
  Author: Florian Westphal <fw@xxxxxxxxx>
  Date:   Mon Aug 17 18:09:55 2015 +0200

      netfilter: nft_payload: work around vlan header stripping

      make payload expression aware of the fact that VLAN offload may have
      removed a vlan header.

      When we encounter tagged skb, transparently insert the tag into the
      register so that vlan header matching can work without userspace being
      aware of offload features.

      Signed-off-by: Florian Westphal <fw@xxxxxxxxx>
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit acf6cec8365bfe1e6435e503eae4eab48ee04fc8
  Author: Gerhard Sittig <gsi@xxxxxxx>
  Date:   Mon Jun 3 13:18:06 2013 +0200

      powerpc/512x: silence a USB Kconfig dependency warning

      the PPC_MPC512x config automatically selected USB_EHCI_BIG_ENDIAN_*
      switches, which made Kconfig warn about "unmet direct dependencies":

        scripts/kconfig/conf --silentoldconfig Kconfig
        warning: (PPC_MPC512x && 440EPX) selects USB_EHCI_BIG_ENDIAN_DESC which 
has unmet direct dependencies (USB_SUPPORT && USB && USB_EHCI_HCD)
        warning: (PPC_MPC512x && PPC_PS3 && PPC_CELLEB && 440EPX) selects 
USB_EHCI_BIG_ENDIAN_MMIO which has unmet direct dependencies (USB_SUPPORT && 
USB && USB_EHCI_HCD)
        warning: (PPC_MPC512x && 440EPX) selects USB_EHCI_BIG_ENDIAN_DESC which 
has unmet direct dependencies (USB_SUPPORT && USB && USB_EHCI_HCD)
        warning: (PPC_MPC512x && PPC_PS3 && PPC_CELLEB && 440EPX) selects 
USB_EHCI_BIG_ENDIAN_MMIO which has unmet direct dependencies (USB_SUPPORT && 
USB && USB_EHCI_HCD)

      make the selected entries additionally depend on USB_EHCI_HCD which
      silences the warning

      Signed-off-by: Gerhard Sittig <gsi@xxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 74943dab6b155b1a9d4037b7f01a396f28f9c44a
  Author: Hari Bathini <hbathini@xxxxxxxxxxxxxxxxxx>
  Date:   Mon May 11 13:53:43 2015 +0530

      powerpc/nvram: print no error when pstore backend is not nvram

      Pstore only supports one backend at a time. The preferred
      pstore backend is set by passing the pstore.backend=<name>
      argument to the kernel at boot time. Currently, while trying
      to register with pstore, nvram throws an error message even
      when "pstore.backend != nvram", which is unnecessary. This
      patch removes the error message in case "pstore.backend != nvram".

      Signed-off-by: Hari Bathini <hbathini@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 36319608e28701c07cad80ae3be8b0fdfb1ab40f
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 19 00:14:20 2015 -0500

      Revert "NFSv4: Remove incorrect check in can_open_delegated()"

      This reverts commit 4e379d36c050b0117b5d10048be63a44f5036115.

      This commit opens up a race between the recovery code and the open code.

      Reported-by: Olga Kornievskaia <aglo@xxxxxxxxx>
      Cc: stable@xxxxxxxxxxx # v4.0+
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 3c13cb5b647ebe36fb79128bc8b917d2a3317b65
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 23:45:13 2015 -0500

      NFSv4.1/pnfs: Play safe w.r.t. close() races when return-on-close is set

      If we have an OPEN_DOWNGRADE and CLOSE race with one another, we want
      to ensure that the layout is forgotten by the client, so that we
      start afresh with a new layoutget.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 7a67832c7e44c20935c5d6f2264035a0f7bf0d8f
  Author: Dan Williams <dan.j.williams@xxxxxxxxx>
  Date:   Wed Aug 19 00:34:34 2015 -0400

      libnvdimm, e820: make CONFIG_X86_PMEM_LEGACY a tristate option

      We currently register a platform device for e820 type-12 memory and
      register a nvdimm bus beneath it.  Registering the platform device
      triggers the device-core machinery to probe for a driver, but that
      search currently comes up empty.  Building the nvdimm-bus registration
      into the e820_pmem platform device registration in this way forces
      libnvdimm to be built-in.  Instead, convert the built-in portion of
      CONFIG_X86_PMEM_LEGACY to simply register a platform device and move the
      rest of the logic to the driver for e820_pmem, for the following
      reasons:

      1/ Letting e820_pmem support be a module allows building and testing
         libnvdimm.ko changes without rebooting

      2/ All the normal policy around modules can be applied to e820_pmem
         (unbind to disable and/or blacklisting the module from loading by
         default)

      3/ Moving the driver to a generic location and converting it to scan
         "iomem_resource" rather than "e820.map" means any other architecture 
can
         take advantage of this simple nvdimm resource discovery mechanism by
         registering a resource named "Persistent Memory (legacy)"

      Cc: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 4ff376feaf57af94e08c8df769e7c48b805ac897
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 23:23:21 2015 -0500

      NFSv4.1/pnfs: Fix a close/delegreturn hang when return-on-close is set

      The helper pnfs_roc() has already verified that we have no delegations,
      and no further open files, hence no outstanding I/O and it has marked
      all the return-on-close lsegs as being invalid.
      Furthermore, it sets the NFS_LAYOUT_RETURN bit, thus serialising the
      close/delegreturn with all future layoutget calls on this inode.

      The checks in pnfs_roc_drain() for valid layout segments are therefore
      redundant: those cannot exist until another layoutget completes.
      The other check for whether or not NFS_LAYOUT_RETURN is set, actually
      causes a hang, since we already know that we hold that flag.

      To fix, we therefore strip out all the functionality in pnfs_roc_drain()
      except the retrieval of the barrier state, and then rename the function
      accordingly.

      Reported-by: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Fixes: 5c4a79fb2b1c ("Don't prevent layoutgets when doing 
return-on-close")
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit b5f5914cb8a2745ee4edc9d7f3596d596f1ea1b0
  Merge: 15cf3b7 4e317ce
  Author: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 23:52:47 2015 -0400

      Merge branch 'ufs' into for-next

  commit 15cf3b7afd94895f86ef10aa313053ad1c0f463d
  Merge: 2c6625c 8129ed2
  Author: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 23:43:29 2015 -0400

      Merge branch 'sb_writers_pcpu_rwsem' of 
git://git.kernel.org/pub/scm/linux/kernel/git/oleg/misc into for-next

  commit def63be85fe774477fb66043003e5b2ee748c4fa
  Merge: 1c8aa21 56d1392
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Aug 18 20:21:32 2015 -0700

      Merge branch 'master' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue

      Jeff Kirsher says:

      ====================
      Intel Wired LAN Driver Updates 2015-08-18

      This series contains updates to igb, e100, e1000e and ixgbe.

      Shota Suzuki provides a fix for a possible overflow in
      igb_set_interrupt_capability() which leads to an oops.  When changing the
      number of queues by "ethtool -L", set IGB_FLAG_QUEUE_PAIRS in the same
      manner as when initializing the igb driver.

      Vasily Averin provides a fix for a missing rtnl_unlock() for when we
      error out due to not being able to allocate memory for our queues.

      Stefan Assman provides a couple of fixes for igb/igbvf.  First changes
      the igb driver in probe to simply call igb_enable_sriov() instead of
      igb_sriov_reinit() since we are starting from scratch.  Then in igbvf,
      fix the driver where it does not clear the buffer_info->dma in all
      cases after calling dma_unmap_single(), which was found by changing the
      MTU twice.

      Richard Cochran implements the periodic output function using the
      programmable clock outputs available in i210 when possible, falling
      back to the target time for longer periods.

      Todd adds support for the Marvell PHY 1512 which is required for i354
      devices.  Then updates igb to make sure SR-IOV init uses the correct
      number of queues, since recent changes could result in the PF holding
      onto all of the queues.

      Alex Williamson provides a fix in the case where a guest OS does not
      support hot-unplug, so disable SR-IOV prior to unregister_netdev() to
      avoid the problem.

      Jia-Ju Bai provides several patches, first knocks some collecting dust
      off an old e100 driver to add a check to avoid a null pointer
      dereference.  Then cleans up a possible resource leak by releasing the
      skb buffer allocated when the e100_xmit_prepare() runs into an issue
      in the DMA mapping.  In igb, add a missing rtnl_unlock() for when we
      error out due to igb_sriov_reinit() in the igb_init_interrupt_scheme().
      Provides a e1000e fix, based on suggestions from Alex Duyck to move
      head/tail register writing to e1000_configure_tx/rx() to avoid a
      possible null pointer dereference (similar to igb driver).  Lastly,
      fix a possible memory leak in igb_probe(), where the memory shadow_vfta
      allocated by kcalloc in igb_sw_init() is not freed.

      Mark simplifies port-specific macros for ixgbe by eliminating explicit
      comparisons with 0 and enclose formal parameters in parens to eliminate
      the risk of an operator precedence issue.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1c8aa215ec060f5df64ff99b088e8a97f45efb0b
  Merge: 954591b 58aa908
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Aug 18 20:16:53 2015 -0700

      Merge branch 'vrf-next'

      Nikolay Aleksandrov says:

      ====================
      vrf: a few simplifications and cleanups

      These patches remove some unnecessary checks (patches 3, 4), unnecessary
      num_slaves member and refcnt manipulations which are already done by the
      upper functions.
      ====================

      Acked-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 58aa90875da1ab075d712585305d1e520812bbb1
  Author: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 20:28:04 2015 +0300

      vrf: simplify the netdev notifier function

      We can drop the check because if vrf_ptr is present then we must have
      the vrf device as a master and since we're running with rtnl it can't go
      away.

      Signed-off-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3a4a27d3bde1c9cd8159c86a79796348cab90140
  Author: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 20:28:03 2015 +0300

      vrf: don't check for dstats and rth in uninit path

      dstats and rth are always present because we fail the device registration
      if they can't be allocated in vrf_init() (ndo_init) so drop the 
unnecessary
      checks.

      Signed-off-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit db5dbec5ef2d4565bb8d42709802de66b06f9965
  Author: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 20:28:02 2015 +0300

      vrf: drop unused num_slaves member

      slave_queue has a num_slaves member which is unused, drop it.

      Signed-off-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 17d95f5ee2ba45a9771c97eb1037dfff1d51b064
  Author: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 20:28:01 2015 +0300

      vrf: drop unnecessary dev refcnt changes

      netdev_master_upper_dev_link/unlink already do a dev_hold/put on the
      devices being linked, so no need to take another reference.

      Signed-off-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 954591b9f3b43e7015bdd83acaa317658a9b7048
  Author: Andrew Schwartzmeyer <andschwa@xxxxxxxxxxxxx>
  Date:   Tue Aug 18 20:06:32 2015 -0700

      hv_netvsc: Fix dereference of nvdev before check

      Passes static analysis by Smatch.

      Signed-off-by: Andrew Schwartzmeyer <andschwa@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 415bcb5c6eff630967baa4e671cebe883d83ee79
  Author: Oleg Drokin <green@xxxxxxxxxxxxxx>
  Date:   Tue Aug 18 21:04:35 2015 -0400

      staging/lustre/o2iblnd: remove references to ib_reg_phsy_mr()

      Removed references to ib_reg_phsy_mr() and PMR which was added
      to deal with some Chelsio specific scenario, but no longer needed
      now.

      Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      Signed-off-by: Amir Shehata <amir.shehata@xxxxxxxxx>
      Signed-off-by: Oleg Drokin <oleg.drokin@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 2d79849903e00fb445038ddd8afb2acfbf89eb7f
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Tue Aug 18 18:42:09 2015 +0200

      lwtunnel: ip tunnel: fix multiple routes with different encap

      Currently, two routes going through the same tunnel interface are 
considered
      the same even when they are routed to a different host after 
encapsulation.
      This causes all routes added after the first one to have incorrect
      encapsulation parameters.

      This is nicely visible by doing:

        # ip r a 192.168.1.2/32 dev vxlan0 tunnel dst 10.0.0.2
        # ip r a 192.168.1.3/32 dev vxlan0 tunnel dst 10.0.0.3
        # ip r
        [...]
        192.168.1.2/32 tunnel id 0 src 0.0.0.0 dst 10.0.0.2 [...]
        192.168.1.3/32 tunnel id 0 src 0.0.0.0 dst 10.0.0.2 [...]

      Implement the missing comparison function.

      Fixes: 3093fbe7ff4bc ("route: Per route IP tunnel metadata via 
lightweight tunnel")
      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit df383e6240ef222703648072dafd2a1ae21b0d2a
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Tue Aug 18 18:41:13 2015 +0200

      lwtunnel: fix memory leak

      The built lwtunnel_state struct has to be freed after comparison.

      Fixes: 571e722676fe3 ("ipv4: support for fib route lwtunnel encap 
attributes")
      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Roopa Prabhu <roopa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c938a003448063382e0575aee2d381d4cd7aec34
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Tue Aug 18 12:31:44 2015 +0300

      cxgb4: memory corruption in debugfs

      You can't use kstrtoul() with an int or it causes memory corruption.
      Also j should be unsigned or we have underflow bugs.

      I considered changing "j" to unsigned long but everything fits in a u32.

      Fixes: 8e3d04fd7d70 ('cxgb4: Add MPS tracing support')
      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit bc3e00f04cc1fe033a289c2fc2e5c73c0168d360
  Author: Antoine Ténart <antoine.tenart@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 10:59:10 2015 +0200

      mtd: pxa3xx_nand: add a default chunk size

      When keeping the configuration set by the bootloader (by using
      the marvell,nand-keep-config property), the pxa3xx_nand_detect_config()
      function is called and set the chunk size to 512 as a default value if
      NDCR_PAGE_SZ is not set.

      In the other case, when not keeping the bootloader configuration, no
      chunk size is set. Fix this by adding a default chunk size of 512.

      Fixes: 70ed85232a93 ("mtd: nand: pxa3xx: Introduce multiple page I/O
      support")

      Signed-off-by: Antoine Tenart <antoine.tenart@xxxxxxxxxxxxxxxxxx>
      Acked-by: Robert Jarzmik <robert.jarzmik@free>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 0f0aca5d50ced8d8c18c7982a6b6332182b70e33
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Tue Aug 18 21:03:13 2015 +0800

      mtd: omap_elm: Fix module alias

      Remove extra space after the "platform:" prefix and make the alias matches
      driver name.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Acked-by: Roger Quadros <rogerq@xxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 7e0c19c9608483808e6b5c294e357fa456f058e1
  Author: Colin Ian King <colin.king@xxxxxxxxxxxxx>
  Date:   Fri Jul 17 11:37:52 2015 +0100

      mtd: physmap_of: fix null pointer deference when kzalloc returns null

      static analysis by smatch caught the following error:

      drivers/mtd/maps/physmap_of.c:135 of_get_probes()
         error: potential null dereference 'res'.  (kzalloc returns null)

      Check for failed kzalloc and return -ENOMEM in of_flash_probe if
      this occurs.

      Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 3d751af2cbe9a73a869986a18e865f8a34265052
  Author: Brian Foster <bfoster@xxxxxxxxxx>
  Date:   Wed Aug 19 10:35:04 2015 +1000

      xfs: flush entire file on dio read/write to cached file

      Filesystems are responsible to manage file coherency between the page
      cache and direct I/O. The generic dio code flushes dirty pages over the
      range of a dio to ensure that the dio read or a future buffered read
      returns the correct data. XFS has generally followed this pattern,
      though traditionally has flushed and invalidated the range from the
      start of the I/O all the way to the end of the file. This changed after
      the following commit:

        7d4ea3ce xfs: use ranged writeback and invalidation for direct IO

      ... as the full file flush was no longer necessary to deal with the
      strange post-eof delalloc issues that were since fixed. Unfortunately,
      we have since received complaints about performance degradation due to
      the increased exclusive iolock cycles (which locks out parallel dio
      submission) that occur when a file has cached pages. This does not occur
      on filesystems that use the generic code as it also does not incorporate
      locking.

      The exclusive iolock is acquired any time the inode mapping has cached
      pages, regardless of whether they reside in the range of the I/O or not.
      If not, the flush/inval calls do no work and the lock was cycled for no
      reason.

      Under consideration of the cost of the exclusive iolock, update the dio
      read and write handlers to flush and invalidate the entire mapping when
      cached pages exist. In most cases, this increases the cost of the
      initial flush sequence but eliminates the need for further lock cycles
      and flushes so long as the workload does not actively mix direct and
      buffered I/O. This also more closely matches historical behavior and
      performance characteristics that users have come to expect.

      Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit ffeecc5213024ae663377b442eedcfbacf6d0c5d
  Author: Jan Kara <jack@xxxxxxxx>
  Date:   Wed Aug 19 10:34:32 2015 +1000

      xfs: Fix xfs_attr_leafblock definition

      struct xfs_attr_leafblock contains 'entries' array which is declared
      with size 1 altough it can in fact contain much more entries. Since this
      array is followed by further struct members, gcc (at least in version
      4.8.3) thinks that the array has the fixed size of 1 element and thus
      may optimize away all accesses beyond the end of array resulting in
      non-working code. This problem was only observed with userspace code in
      xfsprogs, however it's better to be safe in kernel as well and have
      matching kernel and xfsprogs definitions.

      cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Jan Kara <jack@xxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 2f123bce18943fff819bc10f8868ffb9149fc622
  Author: Darrick J. Wong <darrick.wong@xxxxxxxxxx>
  Date:   Wed Aug 19 10:33:58 2015 +1000

      libxfs: readahead of dir3 data blocks should use the read verifier

      In the dir3 data block readahead function, use the regular read
      verifier to check the block's CRC and spot-check the block contents
      instead of directly calling only the spot-checking routine.  This
      prevents corrupted directory data blocks from being read into the
      kernel, which can lead to garbage ls output and directory loops (if
      say one of the entries contains slashes and other junk).

      cc: <stable@xxxxxxxxxxxxxxx> # 3.12 - 4.2
      Signed-off-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 11c7e0e2f91fdfdf9f7b4d107bc93d6c298c95fe
  Author: Alexey Khoroshilov <khoroshilov@xxxxxxxxx>
  Date:   Fri Aug 14 01:37:47 2015 +0300

      mtd: nettel: do not ignore mtd_device_register() failure in nettel_init()

      If mtd_device_register() fails in nettel_init(), iomap left mapped.

      The patch adds failure handling for mtd_device_register().

      Found by Linux Driver Verification project (linuxtesting.org).

      Signed-off-by: Alexey Khoroshilov <khoroshilov@xxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit dbad7c993053d8f482a5f76270a93307537efd8e
  Author: Dave Chinner <dchinner@xxxxxxxxxx>
  Date:   Wed Aug 19 10:33:00 2015 +1000

      xfs: stop holding ILOCK over filldir callbacks

      The recent change to the readdir locking made in 40194ec ("xfs:
      reinstate the ilock in xfs_readdir") for CXFS directory sanity was
      probably the wrong thing to do. Deep in the readdir code we
      can take page faults in the filldir callback, and so taking a page
      fault while holding an inode ilock creates a new set of locking
      issues that lockdep warns all over the place about.

      The locking order for regular inodes w.r.t. page faults is io_lock
      -> pagefault -> mmap_sem -> ilock. The directory readdir code now
      triggers ilock -> page fault -> mmap_sem. While we cannot deadlock
      at this point, it inverts all the locking patterns that lockdep
      normally sees on XFS inodes, and so triggers lockdep. We worked
      around this with commit 93a8614 ("xfs: fix directory inode iolock
      lockdep false positive"), but that then just moved the lockdep
      warning to deeper in the page fault path and triggered on security
      inode locks. Fixing the shmem issue there just moved the lockdep
      reports somewhere else, and now we are getting false positives from
      filesystem freezing annotations getting confused.

      Further, if we enter memory reclaim in a readdir path, we now get
      lockdep warning about potential deadlocks because the ilock is held
      when we enter reclaim. This, again, is different to a regular file
      in that we never allow memory reclaim to run while holding the ilock
      for regular files. Hence lockdep now throws
      ilock->kmalloc->reclaim->ilock warnings.

      Basically, the problem is that the ilock is being used to protect
      the directory data and the inode metadata, whereas for a regular
      file the iolock protects the data and the ilock protects the
      metadata. From the VFS perspective, the i_mutex serialises all
      accesses to the directory data, and so not holding the ilock for
      readdir doesn't matter. The issue is that CXFS doesn't access
      directory data via the VFS, so it has no "data serialisaton"
      mechanism. Hence we need to hold the IOLOCK in the correct places to
      provide this low level directory data access serialisation.

      The ilock can then be used just when the extent list needs to be
      read, just like we do for regular files. The directory modification
      code can take the iolock exclusive when the ilock is also taken,
      and this then ensures that readdir is correct excluded while
      modifications are in progress.

      Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Reviewed-by: Brian Foster <bfoster@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 0952c8183c1575a78dc416b5e168987ff98728bb
  Author: Dave Chinner <dchinner@xxxxxxxxxx>
  Date:   Wed Aug 19 10:32:49 2015 +1000

      xfs: clean up inode lockdep annotations

      Lockdep annotations are a maintenance nightmare. Locking has to be
      modified to suit the limitations of the annotations, and we're
      always having to fix the annotations because they are unable to
      express the complexity of locking heirarchies correctly.

      So, next up, we've got more issues with lockdep annotations for
      inode locking w.r.t. XFS_LOCK_PARENT:

        - lockdep classes are exclusive and can't be ORed together
          to form new classes.
        - IOLOCK needs multiple PARENT subclasses to express the
          changes needed for the readdir locking rework needed to
          stop the endless flow of lockdep false positives involving
          readdir calling filldir under the ILOCK.
        - there are only 8 unique lockdep subclasses available,
          so we can't create a generic solution.

      IOWs we need to treat the 3-bit space available to each lock type
      differently:

        - IOLOCK uses xfs_lock_two_inodes(), so needs:
                - at least 2 IOLOCK subclasses
                - at least 2 IOLOCK_PARENT subclasses
        - MMAPLOCK uses xfs_lock_two_inodes(), so needs:
                - at least 2 MMAPLOCK subclasses
        - ILOCK uses xfs_lock_inodes with up to 5 inodes, so needs:
                - at least 5 ILOCK subclasses
                - one ILOCK_PARENT subclass
                - one RTBITMAP subclass
                - one RTSUM subclass

      For the IOLOCK, split the space into two sets of subclasses.
      For the MMAPLOCK, just use half the space for the one subclass to
      match the non-parent lock classes of the IOLOCK.
      For the ILOCK, use 0-4 as the ILOCK subclasses, 5-7 for the
      remaining individual subclasses.

      Because they are now all different, modify xfs_lock_inumorder() to
      handle the nested subclasses, and to assert fail if passed an
      invalid subclass. Further, annotate xfs_lock_inodes() to assert fail
      if an invalid combination of lock primitives and inode counts are
      passed that would result in a lockdep subclass annotation overflow.

      Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Reviewed-by: Brian Foster <bfoster@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 7df1c170b9a45ab3a7401c79bbefa9939bf8eafb
  Author: Brian Foster <bfoster@xxxxxxxxxx>
  Date:   Wed Aug 19 10:32:33 2015 +1000

      xfs: swap leaf buffer into path struct atomically during path shift

      The node directory lookup code uses a state structure that tracks the
      path of buffers used to search for the hash of a filename through the
      leaf blocks. When the lookup encounters a block that ends with the
      requested hash, but the entry has not yet been found, it must shift over
      to the next block and continue looking for the entry (i.e., duplicate
      hashes could continue over into the next block). This shift mechanism
      involves walking back up and down the state structure, replacing buffers
      at the appropriate btree levels as necessary.

      When a buffer is replaced, the old buffer is released and the new buffer
      read into the active slot in the path structure. Because the buffer is
      read directly into the path slot, a buffer read failure can result in
      setting a NULL buffer pointer in an active slot. This throws off the
      state cleanup code in xfs_dir2_node_lookup(), which expects to release a
      buffer from each active slot. Instead, a BUG occurs due to a NULL
      pointer dereference:

        BUG: unable to handle kernel NULL pointer dereference at 
00000000000001e8
        IP: [<ffffffffa0585063>] xfs_trans_brelse+0x2a3/0x3c0 [xfs]
        ...
        RIP: 0010:[<ffffffffa0585063>]  [<ffffffffa0585063>] 
xfs_trans_brelse+0x2a3/0x3c0 [xfs]
        ...
        Call Trace:
         [<ffffffffa05250c6>] xfs_dir2_node_lookup+0xa6/0x2c0 [xfs]
         [<ffffffffa0519f7c>] xfs_dir_lookup+0x1ac/0x1c0 [xfs]
         [<ffffffffa055d0e1>] xfs_lookup+0x91/0x290 [xfs]
         [<ffffffffa05580b3>] xfs_vn_lookup+0x73/0xb0 [xfs]
         [<ffffffff8122de8d>] lookup_real+0x1d/0x50
         [<ffffffff8123330e>] path_openat+0x91e/0x1490
         [<ffffffff81235079>] do_filp_open+0x89/0x100
         ...

      This has been reproduced via a parallel fsstress and filesystem shutdown
      workload in a loop. The shutdown triggers the read error in the
      aforementioned codepath and causes the BUG in xfs_dir2_node_lookup().

      Update xfs_da3_path_shift() to update the active path slot atomically
      with respect to the caller when a buffer is replaced. This ensures that
      the caller always sees the old or new buffer in the slot and prevents
      the NULL pointer dereference.

      Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 1b867d3ab562b6b03e46113fad3e87b05fbfbb85
  Author: Brian Foster <bfoster@xxxxxxxxxx>
  Date:   Wed Aug 19 10:32:14 2015 +1000

      xfs: relocate sparse inode mount warning

      The sparse inodes feature is currently considered experimental. We warn
      at mount time from xfs_mount_validate_sb(). This function is part of the
      superblock verifier codepath, however, which means it could be invoked
      repeatedly on superblock reads or writes. This is currently only
      noticeable from userspace, where mkfs produces multiple warnings at
      format time.

      As mkfs warnings were not the intent of this change, relocate the mount
      time warning to xfs_fs_fill_super(), which is only invoked once and only
      in kernel space.

      Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 928634514bc53f66631a731bf623157c913b145e
  Author: Dave Chinner <dchinner@xxxxxxxxxx>
  Date:   Wed Aug 19 10:32:01 2015 +1000

      xfs: dquots should be stamped with sb_meta_uuid

      Once the sb_uuid is changed, the wrong uuid is stamped into new
      dquots on disk. Found by inspection, verified by generic/219.

      Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit fcfbe2c4ef4243cc11a1cd64ee1b4907b6afea06
  Author: Dave Chinner <dchinner@xxxxxxxxxx>
  Date:   Wed Aug 19 10:31:54 2015 +1000

      xfs: log recovery needs to validate against sb_meta_uuid

      Now that sb_uuid can be changed by the user, we cannot use this to
      validate the metadata blocks being recovered belong to this
      filesystem. We must check against the sb_meta_uuid as that will
      remain unchanged.

      There is a complication in this code - the superblock itself. We can
      not check the sb_meta_uuid unconditionally, as that may not be set
      on disk. Hence we must verify the superblock sb_uuid matches between
      the log record and the in-core superblock.

      Found by inspection after the previous two problems were found.

      Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit ac383de20d468a75e7023caf06dcf6606cd85220
  Author: Dave Chinner <dchinner@xxxxxxxxxx>
  Date:   Wed Aug 19 10:31:41 2015 +1000

      xfs: growfs not aware of sb_meta_uuid

      Adding this simple change to xfstests:common/rc::_scratch_mkfs_xfs:

      +       if [ $mkfs_status -eq 0 ]; then
      +               xfs_admin -U generate $SCRATCH_DEV > /dev/null
      +       fi

      triggers all sorts of errors in xfstests. xfs/104 is an example,
      where growfs fails with a UUID mismatch corruption detected by
      xfs_agf_write_verify() when trying to write the first new AG
      headers.

      Fix this problem by making sure we copy the sb_meta_uuid into new
      metadata written by growfs.

      Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit bbf155add09e1f0179eca89e0999cf28d335ca0a
  Author: Dave Chinner <dchinner@xxxxxxxxxx>
  Date:   Wed Aug 19 10:31:18 2015 +1000

      xfs: fix sb_meta_uuid usage

      After changing the UUID on a v5 filesystem, xfstests fails
      immediately on a debug kernel with:

      XFS: Assertion failed: uuid_equal(&ip->i_d.di_uuid, &mp->m_sb.sb_uuid), 
file: fs/xfs/xfs_inode.c, line: 799

      This needs to check against the sb_meta_uuid, not the user visible
      UUID that was changed.

      Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Reviewed-by: Eric Sandeen <sandeen@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit c400ee3ed1b13d45adde68e12254dc6ab6977b59
  Author: Eric Sandeen <sandeen@xxxxxxxxxx>
  Date:   Wed Aug 19 10:30:48 2015 +1000

      xfs: set XFS_DA_OP_OKNOENT in xfs_attr_get

      It's entirely possible for userspace to ask for an xattr which
      does not exist.

      Normally, there is no problem whatsoever when we ask for such
      a thing, but when we look at an obfuscated metadump image
      on a debug kernel with selinux, we trip over this ASSERT in
      xfs_da3_path_shift():

              *result = -ENOENT;      /* we're out of our tree */
              ASSERT(args->op_flags & XFS_DA_OP_OKNOENT);

      It (more or less) only shows up in the above scenario, because
      xfs_metadump obfuscates attr names, but chooses names which
      keep the same hash value - and xfs_da3_node_lookup_int does:

              if (((retval == -ENOENT) || (retval == -ENOATTR)) &&
                  (blk->hashval == args->hashval)) {
                      error = xfs_da3_path_shift(state, &state->path, 1, 1,
                                                       &retval);

      IOWS, we only get down to the xfs_da3_path_shift() ASSERT
      if we are looking for an xattr which doesn't exist, but we
      find xattrs on disk which have the same hash, and so might be
      a hash collision, so we try the path shift.  When *that*
      fails to find what we're looking for, we hit the assert about
      XFS_DA_OP_OKNOENT.

      Simply setting XFS_DA_OP_OKNOENT in xfs_attr_get solves this
      rather corner-case problem with no ill side effects.  It's
      fine for an attr name lookup to fail.

      Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit af83a67cad1452d48ecd77792f9218f26c445650
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 6 16:04:24 2015 +0300

      mtd: denali_pci: switch to dev_err()

      It is better to have device name prefixed the actual error message.

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit add243d5bc371eef66f81c9da4fd4b55a18dad23
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 6 16:04:23 2015 +0300

      mtd: denali_pci: refactor driver using devres API

      In recent kernels we have a lot of helper functions, including
      devres API, to make life of device driver developer easy.

      Convert the driver using devm_kzalloc() and pcim_enable_device().

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 2445d33d852320d4ce700b2428d60991f8cf478f
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 6 16:04:22 2015 +0300

      mtd: denali_pci: use module_pci_driver() macro

      Let's use module_pci_driver() macro to reduce code base of the driver.

      There is no functional change.

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 04868a67ed582e845bf14a5a7789f8bdb3faadd3
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 6 16:04:21 2015 +0300

      mtd: denali: hide core part from user in Kconfig

      There is no need to user to see the core part of the driver.

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 5be203ad115c1d8294e8685253e05fcea0202e04
  Merge: 5461ad9 d4a97a0
  Author: Dave Chinner <david@xxxxxxxxxxxxx>
  Date:   Wed Aug 19 10:10:47 2015 +1000

      Merge branch 'xfs-efi-rework' into for-next

  commit d4a97a04227d5ba91b91888a016e2300861cfbc7
  Author: Brian Foster <bfoster@xxxxxxxxxx>
  Date:   Wed Aug 19 10:01:40 2015 +1000

      xfs: add missing bmap cancel calls in error paths

      If a failure occurs after the bmap free list is populated and before
      xfs_bmap_finish() completes successfully (which returns a partial
      list on failure), the bmap free list must be cancelled. Otherwise,
      the extent items on the list are never freed and a memory leak
      occurs.

      Several random error paths throughout the code suffer this problem.
      Fix these up such that xfs_bmap_cancel() is always called on error.

      Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 146e54b71ea4b998d65c25964807ff6792bbf436
  Author: Brian Foster <bfoster@xxxxxxxxxx>
  Date:   Wed Aug 19 10:01:08 2015 +1000

      xfs: add helper to conditionally remove items from the AIL

      Several areas of code duplicate a pattern where we take the AIL lock,
      check whether an item is in the AIL and remove it if so. Create a new
      helper for this pattern and use it where appropriate.

      Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>

  commit f307080a626569f89bc8fbad9f936b307aded877
  Author: Brian Foster <bfoster@xxxxxxxxxx>
  Date:   Wed Aug 19 10:00:53 2015 +1000

      xfs: fix btree cursor error cleanups

      The btree cursor cleanup function takes an error parameter that
      affects how buffers are released from the cursor. All buffers are
      released in the event of error. Several callers do not specify the
      XFS_BTREE_ERROR flag in the event of error, however. This can cause
      buffers to hang around locked or with an elevated hold count and
      thus lead to umount hangs in the event of errors.

      Fix up the xfs_btree_del_cursor() callers to pass XFS_BTREE_ERROR if
      the cursor is being torn down due to error.

      Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 0ae120f8a81a8dc4f974d0819c97b58c4fa935ac
  Author: Brian Foster <bfoster@xxxxxxxxxx>
  Date:   Wed Aug 19 10:00:28 2015 +1000

      xfs: clean up root inode properly on mount failure

      The root inode is read as part of the xfs_mountfs() sequence and the
      reference is dropped in the event of failure after we grab the
      inode.  The reference drop doesn't necessarily free the inode,
      however. It marks it for reclaim and potentially kicks off the
      reclaim workqueue.  The workqueue is destroyed further up the error
      path, which means we are subject to crash if the workqueue job runs
      after this point or a memory leak which is identified if the
      xfs_inode_zone is destroyed (e.g., on module removal). Both of these
      outcomes are reproducible via manual instrumentation of a mount
      error after the root inode xfs_iget() call in xfs_mountfs().

      Update the xfs_mountfs() error path to cancel any potential reclaim
      work items and to run a synchronous inode reclaim if the root inode
      is marked for reclaim. This ensures that no jobs remain on the queue
      before it is destroyed and that the root inode is freed before the
      reclaim mechanism is torn down.

      Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit a3f20014659a1566a4e516e2bf95287960fe2c44
  Author: Brian Foster <bfoster@xxxxxxxxxx>
  Date:   Wed Aug 19 09:59:50 2015 +1000

      xfs: checksum log record ext headers based on record size

      The first 4 bytes of every basic block in the physical log is stamped
      with the current lsn. To support this mechanism, the log record header
      (first block of each new log record) contains space for the original
      first byte of each log record block before it is replaced with the lsn.
      The log record header has space for 32k worth of blocks. The version 2
      log adds new extended record headers for each additional 32k worth of
      blocks beyond what is supported by the record header.

      The log record checksum incorporates the log record header, the extended
      headers and the record payload. xlog_cksum() checksums the extended
      headers based on log->l_iclog_heads, which specifies the number of
      extended headers in a log record based on the log buffer size mount
      option. The log buffer size is variable, however, and thus means the
      checksum can be calculated differently based on how a filesystem is
      mounted. This is problematic if a filesystem crashes and recovery occurs
      on a subsequent mount using a different log buffer size. For example,
      crash an active filesystem that is mounted with the default (32k)
      logbsize, attempt remount/recovery using '-o logbsize=64k' and the mount
      fails on or warns about log checksum failures.

      To avoid this problem, update xlog_cksum() to calculate the checksum
      based on the size of the log buffer according to the log record. The
      size is already included in the h_size field of the log record header
      and thus is available at log recovery time. Extended log record headers
      are also only written when the log record is large enough to require
      them. This makes checksum calculation of log records consistent with the
      extended record header mechanism as well as how on-disk records are
      checksummed with various log buffer size mount options.

      Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit fc0d1656964fc53fca84549df5a6bd4a16a29cdf
  Author: Brian Foster <bfoster@xxxxxxxxxx>
  Date:   Wed Aug 19 09:59:38 2015 +1000

      xfs: fix broken icreate log item cancellation

      Inode cluster buffers are invalidated and cancelled when inode chunks
      are freed to notify log recovery that previous logged updates to the
      metadata buffer should be skipped. This ensures that log recovery does
      not overwrite buffers that might have already been reused.

      On v4 filesystems, inode chunk allocation and inode updates are logged
      via the cluster buffers and thus cancellation is easily detected via
      buffer cancellation items. v5 filesystems use the new icreate
      transaction, which uses logical logging and ordered buffers to log a
      full inode chunk allocation at once. The resulting icreate item often
      spans multiple inode cluster buffers.

      Log recovery checks for cancelled buffers when processing icreate log
      items, but it has a couple problems. First, it uses the full length of
      the inode chunk rather than the cluster size. Second, it uses the length
      in FSB units rather than BB units. Either of these problems prevent
      icreate recovery from identifying cancelled buffers and thus inode
      initialization proceeds unconditionally.

      Update xlog_recover_do_icreate_pass2() to iterate the icreate range in
      cluster sized increments and check each increment for cancellation.
      Since icreate is currently only used for the minimum atomic inode chunk
      allocation, we expect that either all or none of the buffers will be
      cancelled. Cancel the icreate if at least one buffer is cancelled to
      avoid making a bad situation worse by initializing a partial inode
      chunk, but detect such anomalies and warn the user.

      Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 78d57e4593bf700e1a4447e3a7769da8dd0e0844
  Author: Brian Foster <bfoster@xxxxxxxxxx>
  Date:   Wed Aug 19 09:58:48 2015 +1000

      xfs: icreate log item recovery and cancellation tracepoints

      Various log items have recovery tracepoints to identify whether a
      particular log item is recovered or cancelled. Add the equivalent
      tracepoints for the icreate transaction.

      Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit f0b2efad16e78623b5a156f6e4e9166907b83155
  Author: Brian Foster <bfoster@xxxxxxxxxx>
  Date:   Wed Aug 19 09:58:36 2015 +1000

      xfs: don't leave EFIs on AIL on mount failure

      Log recovery occurs in two phases at mount time. In the first phase,
      EFIs and EFDs are processed and potentially cancelled out. EFIs without
      EFD objects are inserted into the AIL for processing and recovery in the
      second phase. xfs_mountfs() runs various other operations between the
      phases and is thus subject to failure. If failure occurs after the first
      phase but before the second, pending EFIs sit on the AIL, pin it and
      cause the mount to hang.

      Update the mount sequence to ensure that pending EFIs are cancelled in
      the event of failure. Add a recovery cancellation mechanism to iterate
      the AIL and cancel all EFI items when requested. Plumb cancellation
      support through the log mount finish helper and update xfs_mountfs() to
      invoke cancellation in the event of failure after recovery has started.

      Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit e32a1d1fbf6eb2bdc24aa0502e827ff4d2234604
  Author: Brian Foster <bfoster@xxxxxxxxxx>
  Date:   Wed Aug 19 09:52:21 2015 +1000

      xfs: use EFI refcount consistently in log recovery

      The EFI is initialized with a reference count of 2. One for the EFI to
      ensure the item makes it to the AIL and one for the subsequently created
      EFD to release the EFI once the EFD is committed. Log recovery uses the
      EFI in a similar manner, but implements a hack to remove both references
      in one call once the EFD is handled.

      Update log recovery to use EFI reference counting in a manner consistent
      with the log. When an EFI is encountered during recovery, an EFI item is
      allocated and inserted to the AIL directly. Since the EFI reference is
      typically dropped when the EFI is unpinned and this is analogous with
      AIL insertion, drop the EFI reference at this point.

      When a corresponding EFD is encountered in the log, this indicates that
      the extents were freed, no processing is required and the EFI can be
      dropped. Update xlog_recover_efd_pass2() to simply drop the EFD
      reference at this point rather than open code the AIL removal and EFI
      free.

      Remaining EFIs (i.e., with no corresponding EFD) are processed in
      xlog_recover_finish(). An EFD transaction is allocated and the extents
      are freed, which transfers ownership of the EFI reference to the EFD
      item in the log.

      Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 6bc43af3d5f507254b8de2058ea51f6ec998ae52
  Author: Brian Foster <bfoster@xxxxxxxxxx>
  Date:   Wed Aug 19 09:51:43 2015 +1000

      xfs: ensure EFD trans aborts on log recovery extent free failure

      Log recovery attempts to free extents with leftover EFIs in the AIL
      after initial processing. If the extent free fails (e.g., due to
      unrelated fs corruption), the transaction is cancelled, though it
      might not be dirtied at the time. If this is the case, the EFD does
      not abort and thus does not release the EFI. This can lead to hangs
      as the EFI pins the AIL.

      Update xlog_recover_process_efi() to log the EFD in the transaction
      before xfs_free_extent() errors are handled to ensure the
      transaction is dirty, aborts the EFD and releases the EFI on error.
      Since this is a requirement for EFD processing (and consistent with
      xfs_bmap_finish()), update the EFD logging helper to do the extent
      free and unconditionally log the EFD. This encodes the required EFD
      logging behavior into the helper and reduces the likelihood of
      errors down the road.

      [dchinner: re-add xfs_alloc.h to xfs_log_recover.c to fix build
       failure.]

      Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 8d99fe92fed019e203f458370129fb28b3fb5740
  Author: Brian Foster <bfoster@xxxxxxxxxx>
  Date:   Wed Aug 19 09:51:16 2015 +1000

      xfs: fix efi/efd error handling to avoid fs shutdown hangs

      Freeing an extent in XFS involves logging an EFI (extent free
      intention), freeing the actual extent, and logging an EFD (extent
      free done). The EFI object is created with a reference count of 2:
      one for the current transaction and one for the subsequently created
      EFD. Under normal circumstances, the first reference is dropped when
      the EFI is unpinned and the second reference is dropped when the EFD
      is committed to the on-disk log.

      In event of errors or filesystem shutdown, there are various
      potential cleanup scenarios depending on the state of the EFI/EFD.
      The cleanup scenarios are confusing and racy, as demonstrated by the
      following test sequence:

        # mount $dev $mnt
        # fsstress -d $mnt -n 99999 -p 16 -z -f fallocate=1 \
                -f punch=1 -f creat=1 -f unlink=1 &
        # sleep 5
        # killall -9 fsstress; wait
        # godown -f $mnt
        # umount

      ... in which the final umount can hang due to the AIL being pinned
      indefinitely by one or more EFI items. This can occur due to several
      conditions. For example, if the shutdown occurs after the EFI is
      committed to the on-disk log and the EFD committed to the CIL, but
      before the EFD committed to the log, the EFD iop_committed() abort
      handler does not drop its reference to the EFI. Alternatively,
      manual error injection in the xfs_bmap_finish() codepath shows that
      if an error occurs after the EFI transaction is committed but before
      the EFD is constructed and logged, the EFI is never released from
      the AIL.

      Update the EFI/EFD item handling code to use a more straightforward
      and reliable approach to error handling. If an error occurs after
      the EFI transaction is committed and before the EFD is constructed,
      release the EFI explicitly from xfs_bmap_finish(). If the EFI
      transaction is cancelled, release the EFI in the unlock handler.

      Once the EFD is constructed, it is responsible for releasing the EFI
      under any circumstances (including whether the EFI item aborts due
      to log I/O error). Update the EFD item handlers to release the EFI
      if the transaction is cancelled or aborts due to log I/O error.
      Finally, update xfs_bmap_finish() to log at least one EFD extent to
      the transaction before xfs_free_extent() errors are handled to
      ensure the transaction is dirty and EFD item error handling is
      triggered.

      Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit d43ac29be7a174f93a3d26cc1e68668fe86b782f
  Author: Brian Foster <bfoster@xxxxxxxxxx>
  Date:   Wed Aug 19 09:50:13 2015 +1000

      xfs: return committed status from xfs_trans_roll()

      Some callers need to make error handling decisions based on whether
      the current transaction successfully committed or not. Rename
      xfs_trans_roll(), add a new parameter and provide a wrapper to
      preserve existing callers.

      Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 5e4b5386a2c29429add601c8cfb45bb10d80c490
  Author: Brian Foster <bfoster@xxxxxxxxxx>
  Date:   Wed Aug 19 09:50:12 2015 +1000

      xfs: disentagle EFI release from the extent count

      Release of the EFI either occurs based on the reference count or the
      extent count. The extent count used is either the count tracked in
      the EFI or EFD, depending on the particular situation. In either
      case, the count is initialized to the final value and thus always
      matches the current efi_next_extent value once the EFI is completely
      constructed.  For example, the EFI extent count is increased as the
      extents are logged in xfs_bmap_finish() and the full free list is
      always completely processed. Therefore, the count is guaranteed to
      be complete once the EFI transaction is committed. The EFD uses the
      efd_nextents counter to release the EFI. This counter is initialized
      to the count of the EFI when the EFD is created. Thus the EFD, as
      currently used, has no concept of partial EFI release based on
      extent count.

      Given that the EFI extent count is always released in whole, use of
      the extent count for reference counting is unnecessary. Remove this
      level of the API and release the EFI based on the core reference
      count. The efi_next_extent counter remains because it is still used
      to track the slot to log the next extent to free.

      Signed-off-by: Brian Foster <bfoster@xxxxxxxxxx>
      Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Dave Chinner <david@xxxxxxxxxxxxx>

  commit 69d7fde5909b614114343974cfc52cb8ff30b544
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:36 2015 -0700

      blkcg: use CGROUP_WEIGHT_* scale for io.weight on the unified hierarchy

      cgroup is trying to make interface consistent across different
      controllers.  For weight based resource control, the knob should have
      the range [1, 10000] and default to 100.  This patch updates
      cfq-iosched so that the weight range conforms.  The internal
      calculations have enough range and the widening of the weight range
      shouldn't cause any problem.

      * blkcg_policy->cpd_bind_fn() is added.  If present, this is invoked
        when blkcg is attached to a hierarchy.

      * cfq_cpd_init() is updated to use the new default value on the
        unified hierarchy.

      * cfq_cpd_bind() callback is implemented to clear per-blkg configs and
        apply the default config matching the hierarchy type.

      * cfqd->root_group->[leaf_]weight initialization in cfq_init_queue()
        is moved into !CONFIG_CFQ_GROUP_IOSCHED block.  cfq_cpd_bind() is
        now responsible for initializing the initial weights when blkcg is
        enabled.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 3ecca62931ee6a30822a1ab7299bc8b8a21e5288
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:35 2015 -0700

      blkcg: s/CFQ_WEIGHT_*/CFQ_WEIGHT_LEGACY_*/

      blkcg is gonna switch to cgroup common weight range as defined by
      CGROUP_WEIGHT_* on the unified hierarchy.  In preparation, rename
      CFQ_WEIGHT_* constants to CFQ_WEIGHT_LEGACY_*.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 2ee867dcfa2eaef1063b686da55c35878b2da4a2
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:34 2015 -0700

      blkcg: implement interface for the unified hierarchy

      blkcg interface grew to be the biggest of all controllers and
      unfortunately most inconsistent too.  The interface files are
      inconsistent with a number of cloes duplicates.  Some files have
      recursive variants while others don't.  There's distinction between
      normal and leaf weights which isn't intuitive and there are a lot of
      stat knobs which don't make much sense outside of debugging and expose
      too much implementation details to userland.

      In the unified hierarchy, everything is always hierarchical and
      internal nodes can't have tasks rendering the two structural issues
      twisting the current interface.  The interface has to be updated in a
      significant anyway and this is a good chance to revamp it as a whole.
      This patch implements blkcg interface for the unified hierarchy.

      * (from a previous patch) blkcg is identified by "io" instead of
        "blkio" on the unified hierarchy.  Given that the whole interface is
        updated anyway, the rename shouldn't carry noticeable conversion
        overhead.

      * The original interface consisted of 27 files is replaced with the
        following three files.

        blkio.stat      : per-blkcg stats
        blkio.weight    : per-cgroup and per-cgroup-queue weight settings
        blkio.max       : per-cgroup-queue bps and iops max limits

      Documentation/cgroups/unified-hierarchy.txt updated accordingly.

      v2: blkcg_policy->dfl_cftypes wasn't removed on
          blkcg_policy_unregister() corrupting the cftypes list.  Fixed.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit dd165eb3bb4ef16bcdb75417add40633f38c52b8
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:33 2015 -0700

      blkcg: misc preparations for unified hierarchy interface

      * Export blkg_dev_name()

      * Drop unnecessary @cft from __cfq_set_weight().

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 69948b070ee2bc3cc253e862cbe2bb09b173d7bd
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:32 2015 -0700

      blkcg: separate out tg_conf_updated() from tg_set_conf()

      tg_set_conf() is largely consisted of parsing and setting the new
      config and the follow-up application and propagation.  This patch
      separates out the latter part into tg_conf_updated().  This will be
      used to implement interface for the unified hierarchy.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 36aa9e5f591e84d67aad2c5bff75e413d77660dd
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:31 2015 -0700

      blkcg: move body parsing from blkg_conf_prep() to its callers

      Currently, blkg_conf_prep() expects input to be of the following form

       MAJ:MIN NUM

      and reads the NUM part into blkg_conf_ctx->v.  This is quite
      restrictive and gets in the way in implementing blkcg interface for
      the unified hierarchy.  This patch updates blkg_conf_prep() so that it
      expects

       MAJ:MIN BODY_STR

      where BODY_STR is an arbitrary string.  blkg_conf_ctx->v is replaced
      with ->body which is a char pointer pointing to the start of BODY_STR.
      Parsing of the body is moved to blkg_conf_prep()'s callers.

      To allow using, for example, strsep() on blkg_conf_ctx->val, it is a
      non-const pointer and to accommodate that const is dropped from @input
      too.

      This doesn't cause any behavior changes.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 880f50e228f80626dff6327a6e281e40286f5228
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:30 2015 -0700

      blkcg: mark existing cftypes as legacy

      blkcg is about to grow interface for the unified hierarchy.  Add
      legacy to existing cftypes.

      * blkcg_policy->cftypes -> blkcg_policy->legacy_cftypes
      * blk-cgroup.c:blkcg_files -> blkcg_legacy_files
      * cfq-iosched.c:cfq_blkcg_files -> cfq_blkcg_legacy_files
      * blk-throttle.c:throtl_files -> throtl_legacy_files

      Pure renames.  No functional change.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit c165b3e3c7bb68c2ed55a5ac2623f030d01d9567
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:29 2015 -0700

      blkcg: rename subsystem name from blkio to io

      blkio interface has become messy over time and is currently the
      largest.  In addition to the inconsistent naming scheme, it has
      multiple stat files which report more or less the same thing, a number
      of debug stat files which expose internal details which shouldn't have
      been part of the public interface in the first place, recursive and
      non-recursive stats and leaf and non-leaf knobs.

      Both recursive vs. non-recursive and leaf vs. non-leaf distinctions
      don't make any sense on the unified hierarchy as only leaf cgroups can
      contain processes.  cgroups is going through a major interface
      revision with the unified hierarchy involving significant fundamental
      usage changes and given that a significant portion of the interface
      doesn't make sense anymore, it's a good time to reorganize the
      interface.

      As the first step, this patch renames the external visible subsystem
      name from "blkio" to "io".  This is more concise, matches the other
      two major subsystem names, "cpu" and "memory", and better suited as
      blkcg will be involved in anything writeback related too whether an
      actual block device is involved or not.

      As the subsystem legacy_name is set to "blkio", the only userland
      visible change outside the unified hierarchy is that blkcg is reported
      as "io" instead of "blkio" in the subsystem initialized message during
      boot.  On the unified hierarchy, blkcg now appears as "io".

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Li Zefan <lizefan@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: cgroups@xxxxxxxxxxxxxxx
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 20386ce0143899ccb5bcbda714436a82d3029f33
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:28 2015 -0700

      blkcg: refine error codes returned during blkcg configuration

      blkcg currently returns -EINVAL for most errors which can be pretty
      confusing given that the failure modes are quite varied.  Update the
      error returns so that

      * -EINVAL only for syntactic errors.
      * -ERANGE if the value is out of range.
      * -ENODEV if the target device can't be found.
      * -EOPNOTSUPP if the policy is not enabled on the target device.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 5332dfc36483d2373d980526145789a354af2d49
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:27 2015 -0700

      blkcg: remove unnecessary NULL checks from __cfqg_set_weight_device()

      blkg_to_cfqg() and blkcg_to_cfqgd() on a valid blkg with the policy
      enabled are guaranteed to return non-NULL and the counterpart in
      blk-throttle doesn't have these checks either.  Remove the spurious
      NULL checks.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 3a7faeada20d72f07d3a7b13454859025cd50a36
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:26 2015 -0700

      blkcg: reduce stack usage of blkg_rwstat_recursive_sum()

      The recent percpu conversion of blkg_rwstat triggered the following
      warning in certain configurations.

       block/blk-cgroup.c:654:1: warning: the frame size of 1360 bytes is 
larger than 1024 bytes

      This is because blkg_rwstat now contains four percpu_counter which can
      be pretty big depending on debug options although it shouldn't be a
      problem in production configs.  This patch removes one of the two
      local blkg_rwstat variables used by blkg_rwstat_recursive_sum() to
      reduce stack usage.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Link: http://article.gmane.org/gmane.linux.kernel.cgroups/13835
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 702747cabe737fe9b358739443d539f10cc7c715
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:25 2015 -0700

      blkcg: remove cfqg_stats->sectors

      cfq_stats->sectors is a blkg_stat which keeps track of the total
      number of sectors serviced; however, this can be trivially calculated
      from blkcg_gq->stat_bytes.  The only thing necessary is adding up
      READs and WRITEs and then dividing by sector size.

      Remove cfqg_stats->sectors and make cfq print "sectors" and
      "sectors_recursive" from stat_bytes.

      While this is a bit more code, it removes duplicate stat allocations
      and updates and ensures that the reported stats stay in tune with each
      other.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 77ea733884eb5520f22c36def1309fe2ab61633e
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:24 2015 -0700

      blkcg: move io_service_bytes and io_serviced stats into blkcg_gq

      Currently, both cfq-iosched and blk-throttle keep track of
      io_service_bytes and io_serviced stats.  While keeping track of them
      separately may be useful during development, it doesn't make much
      sense otherwise.  Also, blk-throttle was counting bio's as IOs while
      cfq-iosched request's, which is more confusing than informative.

      This patch adds ->stat_bytes and ->stat_ios to blkg (blkcg_gq),
      removes the counterparts from cfq-iosched and blk-throttle and let
      them print from the common blkg counters.  The common counters are
      incremented during bio issue in blkcg_bio_issue_check().

      The outputs are still filtered by whether the policy has
      blkg_policy_data on a given blkg, so cfq's output won't show up if it
      has never been used for a given blkg.  The only times when the outputs
      would differ significantly are when policies are attached on the fly
      or elevators are switched back and forth.  Those are quite exceptional
      operations and I don't think they warrant keeping separate counters.

      v3: Update blkio-controller.txt accordingly.

      v2: Account IOs during bio issues instead of request completions so
          that bio-based drivers can be handled the same way.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit f12c74cab1635d67077ce8cc40da88b57980f637
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:23 2015 -0700

      blkcg: make blkg_[rw]stat_recursive_sum() to be able to index into 
blkcg_gq

      Currently, blkg_[rw]stat_recursive_sum() assume that the target
      counter is located in pd (blkg_policy_data); however, some counters
      are planned to be moved to blkg (blkcg_gq).

      This patch updates blkg_[rw]stat_recursive_sum() to take blkg and
      blkg_policy pointers instead of pd.  If policy is NULL, it indexes
      into blkg.  If non-NULL, into the blkg's pd of the policy.

      The existing usages are updated to maintain the current behaviors.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 24bdb8ef068ebdc2a57ce715f0ab22d5da32832a
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:22 2015 -0700

      blkcg: make blkcg_[rw]stat per-cpu

      blkcg_[rw]stat are used as stat counters for blkcg policies.  It isn't
      per-cpu by itself and blk-throttle makes it per-cpu by wrapping around
      it.  This patch makes blkcg_[rw]stat per-cpu and drop the ad-hoc
      per-cpu wrapping in blk-throttle.

      * blkg_[rw]stat->cnt is replaced with cpu_cnt which is struct
        percpu_counter.  This makes syncp unnecessary as remote accesses are
        handled by percpu_counter itself.

      * blkg_[rw]stat_init() can now fail due to percpu allocation failure
        and thus are updated to return int.

      * percpu_counters need explicit freeing.  blkg_[rw]stat_exit() added.

      * As blkg_rwstat->cpu_cnt[] can't be read directly anymore, reading
        and summing results are stored in ->aux_cnt[] instead.

      * Custom per-cpu stat implementation in blk-throttle is removed.

      This makes all blkcg stat counters per-cpu without complicating policy
      implmentations.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit e6269c44546755094979ab53609e6e203a68c8ff
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:21 2015 -0700

      blkcg: add blkg_[rw]stat->aux_cnt and replace cfq_group->dead_stats with 
it

      cgroup stats are local to each cgroup and doesn't propagate to
      ancestors by default.  When recursive stats are necessary, the sum is
      calculated over all the descendants.  This initially was for backward
      compatibility to support both group-local and recursive stats but this
      mode of operation makes general sense as stat update is much hotter
      thafn reporting those stats.

      This however ends up losing recursive stats when a child is removed.
      To work around this, cfq-iosched adds its stats to its parent
      cfq_group->dead_stats which is summed up together when calculating
      recursive stats.

      It's planned that the core stats will be moved to blkcg_gq, so we want
      to move the mechanism for keeping track of the stats of dead children
      from cfq to blkcg core.  This patch adds blkg_[rw]stat->aux_cnt which
      are atomic64_t's keeping track of auxiliary counts which are excluded
      when reading local counts but included for recursive.

      blkg_[rw]stat_merge() which were used by cfq to implement dead_stats
      are replaced by blkg_[rw]stat_add_aux(), and cfq now forwards stats of
      a dead cgroup to the aux counts of parent->stats instead of separate
      ->dead_stats.

      This will also help making blkg_[rw]stats per-cpu.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit ae11889636111199dbcf47283b4167f578b69472
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:20 2015 -0700

      blkcg: consolidate blkg creation in blkcg_bio_issue_check()

      blkg (blkcg_gq) currently is created by blkcg policies invoking
      blkg_lookup_create() which ends up repeating about the same code in
      different policies.  Theoretically, this can avoid the overhead of
      looking and/or creating blkg's if blkcg is enabled but no policy is in
      use; however, the cost of blkg lookup / creation is very low
      especially if only the root blkcg is in use which is highly likely if
      no blkcg policy is in active use - it boils down to a single very
      predictable conditional and surrounding RCU protection.

      This patch consolidates blkg creation to a new function
      blkcg_bio_issue_check() which is called during bio issue from
      generic_make_request_checks().  blkcg_bio_issue_check() is now the
      only function which tries to create missing blkg's.  The subsequent
      policy and request_list operations just perform blkg_lookup() and if
      missing falls back to the root.

      * blk_get_rl() no longer tries to create blkg.  It uses blkg_lookup()
        instead of blkg_lookup_create().

      * blk_throtl_bio() is now called from blkcg_bio_issue_check() with rcu
        read locked and blkg already looked up.  Both throtl_lookup_tg() and
        throtl_lookup_create_tg() are dropped.

      * cfq is similarly updated.  cfq_lookup_create_cfqg() is replaced with
        cfq_lookup_cfqg()which uses blkg_lookup().

      This consolidates blkg handling and avoids unnecessary blkg creation
      retries under memory pressure.  In addition, this provides a common
      bio entry point into blkcg where things like common accounting can be
      performed.

      v2: Build fixes for !CONFIG_CFQ_GROUP_IOSCHED and
          !CONFIG_BLK_DEV_THROTTLING.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit c9589f03e490956628ff91a1da133216dc796b63
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:19 2015 -0700

      blk-throttle: improve queue bypass handling

      If a queue is bypassing, all blkcg policies should become noops but
      blk-throttle wasn't.  It only became noop if the queue was dying.
      While this wouldn't lead to an oops as falling back to the root blkg
      is safe in this case, this can be a bit surprising - a bypassing queue
      could still be applying throttle limits.

      Fix it by removing blk_queue_dying() test in throtl_lookup_create_tg()
      and testing blk_queue_bypass() in blk_throtl_bio() and bypassing
      before doing anything else.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 85b6bc9db6d5ab6980b43c38b5cbd11d24414ce4
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:18 2015 -0700

      blkcg: move root blkg lookup optimization from throtl_lookup_tg() to 
__blkg_lookup()

      Currently, both throttle and cfq policies implement their own root
      blkg (blkcg_gq) lookup fast path.  This patch moves root blkg
      optimization from throtl_lookup_tg() to __blkg_lookup().  cfq-iosched
      currently doesn't use blkg_lookup() but will be converted and drop the
      optimization too.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 24f290466f79a6497f1654f64b9a841872cba3ca
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:17 2015 -0700

      blkcg: inline [__]blkg_lookup()

      blkg_lookup() checks whether the target queue is bypassing and, if
      not, calls __blkg_lookup() which first checks the lookup hint and then
      performs radix tree walk.  The operations upto hint checking are
      trivial and there are many users of this function.  This patch inlines
      blkg_lookup() and the fast path part of __blkg_lookup().  The radix
      tree lookup and hint update are now in blkg_lookup_slowpath().

      This will help consolidating blkg handling by easing moving root blkcg
      short-circuit to inlined lookup fast path.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit e4a9bde9589fdc51283755cdd75d47b27ca7c6fb
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:16 2015 -0700

      blkcg: replace blkcg_policy->cpd_size with ->cpd_alloc/free_fn() methods

      Each active policy has a cpd (blkcg_policy_data) on each blkcg.  The
      cpd's were allocated by blkcg core and each policy could request to
      allocate extra space at the end by setting blkcg_policy->cpd_size
      larger than the size of cpd.

      This is a bit unusual but blkg (blkcg_gq) policy data used to be
      handled this way too so it made sense to be consistent; however, blkg
      policy data switched to alloc/free callbacks.

      This patch makes similar changes to cpd handling.
      blkcg_policy->cpd_alloc/free_fn() are added to replace ->cpd_size.  As
      cpd allocation is now done from policy side, it can simply allocate a
      larger area which embeds cpd at the beginning.

      As ->cpd_alloc_fn() may be able to perform all necessary
      initializations, this patch makes ->cpd_init_fn() optional.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 814376483e7d85b69a70634633f1f9d01c6ee0cf
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:15 2015 -0700

      blkcg: minor updates around blkcg_policy_data

      * Rename blkcg->pd[] to blkcg->cpd[] so that cpd is consistently used
        for blkcg_policy_data.

      * Make blkcg_policy->cpd_init_fn() take blkcg_policy_data instead of
        blkcg.  This makes it consistent with blkg_policy_data methods and
        to-be-added cpd alloc/free methods.

      * blkcg_policy_data->blkcg and cpd_to_blkcg() added so that
        cpd_init_fn() can determine the associated blkcg from
        blkcg_policy_data.

      v2: blkcg_policy_data->blkcg initializations were missing.  Added.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit a9520cd6f2ac1fbbf206b915946534c6dddbaae2
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:14 2015 -0700

      blkcg: make blkcg_policy methods take a pointer to blkcg_policy_data

      The newly added ->pd_alloc_fn() and ->pd_free_fn() deal with pd
      (blkg_policy_data) while the older ones use blkg (blkcg_gq).  As using
      blkg doesn't make sense for ->pd_alloc_fn() and after allocation pd
      can always be mapped to blkg and given that these are policy-specific
      methods, it makes sense to converge on pd.

      This patch makes all methods deal with pd instead of blkg.  Most
      conversions are trivial.  In blk-cgroup.c, a couple method invocation
      sites now test whether pd exists instead of policy state for
      consistency.  This shouldn't cause any behavioral differences.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit b2ce2643cc705aa9043642d7b6248ccfd8e20629
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:13 2015 -0700

      blk-throttle: clean up blkg_policy_data alloc/init/exit/free methods

      With the recent addition of alloc and free methods, things became
      messier.  This patch reorganizes them according to the followings.

      * ->pd_alloc_fn()

        Responsible for allocation and static initializations - the ones
        which can be done independent of where the pd might be attached.

      * ->pd_init_fn()

        Initializations which require the knowledge of where the pd is
        attached.

      * ->pd_free_fn()

        The counter part of pd_alloc_fn().  Static de-init and freeing.

      This leaves ->pd_exit_fn() without any users.  Removed.

      While at it, collapse an one liner function throtl_pd_exit(), which
      has only one user, into its user.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 4fb72036fbf9c28de7a64b1d3f19b4ce9da1c6bf
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:12 2015 -0700

      blk-throttle: remove asynchrnous percpu stats allocation mechanism

      Because percpu allocator couldn't do non-blocking allocations,
      blk-throttle was forced to implement an ad-hoc asynchronous allocation
      mechanism for its percpu stats for cases where blkg's (blkcg_gq's) are
      allocated from an IO path without sleepable context.

      Now that percpu allocator can handle gfp_mask and blkg_policy_data
      alloc / free are handled by policy methods, the ad-hoc asynchronous
      allocation mechanism can be replaced with direct allocation from
      tg_stats_alloc_fn().  Rit it out.

      This ensures that an active throtl_grp always has valid non-NULL
      ->stats_cpu.  Remove checks on it.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 001bea73e70efdf48a9e00188cf302f6b6aed2bf
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:11 2015 -0700

      blkcg: replace blkcg_policy->pd_size with ->pd_alloc/free_fn() methods

      A blkg (blkcg_gq) represents the relationship between a cgroup and
      request_queue.  Each active policy has a pd (blkg_policy_data) on each
      blkg.  The pd's were allocated by blkcg core and each policy could
      request to allocate extra space at the end by setting
      blkcg_policy->pd_size larger than the size of pd.

      This is a bit unusual but was done this way mostly to simplify error
      handling and all the existing use cases could be handled this way;
      however, this is becoming too restrictive now that percpu memory can
      be allocated without blocking.

      This introduces two new mandatory blkcg_policy methods - pd_alloc_fn()
      and pd_free_fn() - which are used to allocate and release pd for a
      given policy.  As pd allocation is now done from policy side, it can
      simply allocate a larger area which embeds pd at the beginning.  This
      change makes ->pd_size pointless.  Removed.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 3e41871046bfe0ba7d122a1f14f0c1db2dca0256
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:10 2015 -0700

      blkcg: make blkcg_activate_policy() allow NULL ->pd_init_fn

      blkg_create() allows NULL ->pd_init_fn() but blkcg_activate_policy()
      doesn't.  As both in-kernel policies implement ->pd_init_fn, it
      currently doesn't break anything.  Update blkcg_activate_policy() so
      that its behavior is consistent with blkg_create().

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 4c55f4f9ad3001ac1fefdd8d8ca7641d18558e23
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:09 2015 -0700

      blkcg: restructure blkg_policy_data allocation in blkcg_activate_policy()

      When a policy gets activated, it needs to allocate and install its
      policy data on all existing blkg's (blkcg_gq's).  Because blkg
      iteration is protected by a spinlock, it currently counts the total
      number of blkg's in the system, allocates the matching number of
      policy data on a list and installs them during a single iteration.

      This can be simplified by using speculative GFP_NOWAIT allocations
      while iterating and falling back to a preallocated policy data on
      failure.  If the preallocated one has already been consumed, it
      releases the lock, preallocate with GFP_KERNEL and then restarts the
      iteration.  This can be a bit more expensive than before but policy
      activation is a very cold path and shouldn't matter.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit bc915e61cde25d0b429f536cec9e83039bf23504
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:08 2015 -0700

      blkcg: remove unnecessary blkcg_root handling from css_alloc/free paths

      blkcg_css_alloc() bypasses policy data allocation and blkcg_css_free()
      bypasses policy data and blkcg freeing for blkcg_root.  There's no
      reason to to treat policy data any differently for blkcg_root.  If the
      root css gets allocated after policies are registered, policy
      registration path will add policy data; otherwise, the alloc path
      will.  The free path isn't never invoked for root csses.

      This patch removes the unnecessary special handling of blkcg_root from
      css_alloc/free paths.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 994b78327458ea14a1743196ee0560c73ace37f3
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:07 2015 -0700

      blkcg: use blkg_free() in blkcg_init_queue() failure path

      When blkcg_init_queue() fails midway after creating a new blkg, it
      performs kfree() directly; however, this doesn't free the policy data
      areas.  Make it use blkg_free() instead.  In turn, blkg_free() is
      updated to handle root request_list special case.

      While this fixes a possible memory leak, it's on an unlikely failure
      path of an already cold path and the size leaked per occurrence is
      miniscule too.  I don't think it needs to be tagged for -stable.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 401efbf835040dd2ebca54f78d58fc8e3c51f91d
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:06 2015 -0700

      blkcg: remove unnecessary request_list->blkg NULL test in blk_put_rl()

      Since ec13b1d6f0a0 ("blkcg: always create the blkcg_gq for the root
      blkcg"), a request_list always has its blkg associated.  Drop
      unnecessary rl->blkg NULL test from blk_put_rl().

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 60a837077e2b5672ebbd4c8bd67ca443951bbc92
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:05 2015 -0700

      cfq-iosched: charge async IOs to the appropriate blkcg's instead of the 
root

      Up until now, all async IOs were queued to async queues which are
      shared across the whole request_queue, which means that blkcg resource
      control is completely void on async IOs including all writeback IOs.
      It was done this way because writeback didn't support writeback and
      there was no way of telling which writeback IO belonged to which
      cgroup; however, writeback recently became cgroup aware and writeback
      bio's are sent down properly tagged with the blkcg's to charge them
      against.

      This patch makes async cfq_queues per-cfq_cgroup instead of
      per-cfq_data so that each async IO is charged to the blkcg that it was
      tagged for instead of unconditionally attributing it to root.

      * cfq_data->async_cfqq and ->async_idle_cfqq are moved to cfq_group
        and alloc / destroy paths are updated accordingly.

      * cfq_link_cfqq_cfqg() no longer overrides @cfqg to root for async
        queues.

      * check_blkcg_changed() now also invalidates async queues as they no
        longer stay the same across cgroups.

      After this patch, cfq's proportional IO control through blkio.weight
      works correctly when cgroup writeback is in use.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Reviewed-by: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit d4aad7ff04dfd00f2a69356a48054d6be84dda31
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:04 2015 -0700

      cfq-iosched: fold cfq_find_alloc_queue() into cfq_get_queue()

      cfq_find_alloc_queue() checks whether a queue actually needs to be
      allocated, which is unnecessary as its sole caller, cfq_get_queue(),
      only calls it if so.  Also, the oom queue fallback logic is scattered
      between cfq_get_queue() and cfq_find_alloc_queue().  There really
      isn't much going on in the latter and things can be made simpler by
      folding it into cfq_get_queue().

      This patch collapses cfq_find_alloc_queue() into cfq_get_queue().  The
      change is fairly straight-forward with one exception - async_cfqq is
      now initialized to NULL and the "!is_sync" test in the last if
      conditional is replaced with "async_cfqq" test.  This is because gcc
      (5.1.1) gets confused for some reason and warns that async_cfqq may be
      used uninitialized otherwise.  Oh well, the code isn't necessarily
      worse this way.

      This patch doesn't cause any functional difference.

      v2: Updated to reflect GFP_ATOMIC -> GPF_NOWAIT.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Reviewed-by: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 322731ed0dd2d8a7f11307e0444257f48580a0de
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:03 2015 -0700

      cfq-iosched: move cfq_group determination from cfq_find_alloc_queue() to 
cfq_get_queue()

      This is necessary for making async cfq_cgroups per-cfq_group instead
      of per-cfq_data.  While this change makes cfq_get_queue() perform RCU
      locking and look up cfq_group even when it reuses async queue, the
      extra overhead is extremely unlikely to be noticeable given that this
      is already sitting behind cic->cfqq[] cache and the overall cost of
      cfq operation.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Reviewed-by: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 2da8de0bb799bf2bdfa893e5a1e294eb6bafba62
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:02 2015 -0700

      cfq-iosched: remove @gfp_mask from cfq_find_alloc_queue()

      Even when allocations fail, cfq_find_alloc_queue() always returns a
      valid cfq_queue by falling back to the oom cfq_queue.  As such, there
      isn't much point in taking @gfp_mask and trying "harder" if __GFP_WAIT
      is set.  GFP_NOWAIT allocations don't fail often and even when they do
      the degraded behavior is acceptable and temporary.

      After all, the only reason get_request(), which ultimately determines
      the gfp_mask, cares about __GFP_WAIT is to guarantee request
      allocation, assuming IO forward progress, for callers which are
      willing to wait.  There's no reason for cfq_find_alloc_queue() to
      behave differently on __GFP_WAIT when it already has a fallback
      mechanism.

      Remove @gfp_mask from cfq_find_alloc_queue() and propagate the changes
      to its callers.  This simplifies the function quite a bit and will
      help making async queues per-cfq_group.

      v2: Updated to reflect GFP_ATOMIC -> GPF_NOWAIT.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Reviewed-by: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit d93a11f1cd890d4ea72f7cef75fac56801b099b3
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:01 2015 -0700

      blkcg, cfq-iosched: use GFP_NOWAIT instead of GFP_ATOMIC for non-critical 
allocations

      blkcg performs several allocations to track IOs per cgroup and enforce
      resource control.  Most of these allocations are performed lazily on
      demand in the IO path and thus can't involve reclaim path.  Currently,
      these allocations use GFP_ATOMIC; however, blkcg can gracefully deal
      with occassional failures of these allocations by punting IOs to the
      root cgroup and there's no reason to reach into the emergency reserve.

      This patch replaces GFP_ATOMIC with GFP_NOWAIT for the following
      allocations.

      * bdi_writeback_congested and blkcg_gq allocations in blkg_create().

      * radix tree node allocations for blkcg->blkg_tree.

      * cfq_queue allocation on ioprio changes.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Suggested-and-Reviewed-by: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Suggested-by: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 563180a44b7d7978f44e9776eedfbbc550c2398d
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:55:00 2015 -0700

      cfq-iosched: minor cleanups

      * Some were accessing cic->cfqq[] directly.  Always use cic_to_cfqq()
        and cic_set_cfqq().

      * check_ioprio_changed() doesn't need to verify cfq_get_queue()'s
        return for NULL.  It's always non-NULL.  Simplify accordingly.

      This patch doesn't cause any functional changes.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Acked-by: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit bce6133b09013f70d41a678d262a12147ed43889
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:54:59 2015 -0700

      cfq-iosched: fix oom cfq_queue ref leak in cfq_set_request()

      If the cfq_queue cached in cfq_io_cq is the oom one, cfq_set_request()
      replaces it by invoking cfq_get_queue() again without putting the oom
      queue leaking the reference it was holding.  While oom queues are not
      released through reference counting, they're still reference counted
      and this can theoretically lead to the reference count overflowing and
      incorrectly invoke the usual release path on it.

      Fix it by making cfq_set_request() put the ref it was holding.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Acked-by: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 95e5d6f62693f27d9011ec307eb32c6126314ea3
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:54:58 2015 -0700

      cfq-iosched: fix async oom queue handling

      Async cfqq's (cfq_queue's) are shared across cfq_data.  When
      cfq_get_queue() obtains a new queue from cfq_find_alloc_queue(), it
      stashes the pointer in cfq_data and reuses it from then on; however,
      the function doesn't consider that cfq_find_alloc_queue() may return
      the oom_cfqq under memory pressure and installs the returned queue
      unconditionally.

      If the oom_cfqq is installed as an async cfqq, cfq_set_request() will
      continue calling cfq_get_queue() hoping to replace it with a proper
      queue; however, cfq_get_queue() will keep returning the cached queue
      for the slot - the oom_cfqq.

      Fix it by skipping caching if the queue is the oom one.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Acked-by: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 4ebc1c61d6185604c97fd0b0355ab668052044ab
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:54:57 2015 -0700

      cfq-iosched: simplify control flow in cfq_get_queue()

      cfq_get_queue()'s control flow looks like the following.

        async_cfqq = NULL;
        cfqq = NULL;

        if (!is_sync) {
                ...
                async_cfqq = ...;
                cfqq = *async_cfqq;
        }

        if (!cfqq)
                cfqq = ...;

        if (!is_sync && !(*async_cfqq))
                ...;

      The only thing the local variable init, the second if, and the
      async_cfqq test in the third if achieves is to skip cfqq creation and
      installation if *async_cfqq was already non-NULL.  This is needlessly
      complicated with different tests examining the same condition.
      Simplify it to the following.

        if (!is_sync) {
                ...
                async_cfqq = ...;
                cfqq = *async_cfqq;
                if (cfqq)
                        goto out;
        }

        cfqq = ...;

        if (!is_sync)
                ...;
       out:

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Acked-by: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Cc: Arianna Avanzini <avanzini.arianna@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 5634cc2aa9aebc77bc862992e7805469dcf83dac
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:54:56 2015 -0700

      writeback: update writeback tracepoints to report cgroup

      The following tracepoints are updated to report the cgroup used during
      cgroup writeback.

      * writeback_write_inode[_start]
      * writeback_queue
      * writeback_exec
      * writeback_start
      * writeback_written
      * writeback_wait
      * writeback_nowork
      * writeback_wake_background
      * wbc_writepage
      * writeback_queue_io
      * bdi_dirty_ratelimit
      * balance_dirty_pages
      * writeback_sb_inodes_requeue
      * writeback_single_inode[_start]

      Note that writeback_bdi_register is separated out from writeback_class
      as reporting cgroup doesn't make sense to it.  Tracepoints which take
      bdi are updated to take bdi_writeback instead.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Suggested-by: Jan Kara <jack@xxxxxxx>
      Reviewed-by: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 9acee9c551f045d2c5b5261aa587331423fd7d92
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:54:55 2015 -0700

      kernfs: implement kernfs_path_len()

      Add a function to determine the path length of a kernfs node.  This
      for now will be used by writeback tracepoint updates.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Acked-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 60292bcc1b240a6708aa531c8ece1da2a78d560a
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:54:54 2015 -0700

      writeback: explain why @inode is allowed to be NULL for inode_congested()

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Suggested-by: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 8a1270cda7b473c8ea71a7a44613465fe0708488
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:54:53 2015 -0700

      writeback: remove wb_writeback_work->single_wait/done

      wb_writeback_work->single_wait/done are used for the wait mechanism
      for synchronous wb_work (wb_writeback_work) items which are issued
      when bdi_split_work_to_wbs() fails to allocate memory for asynchronous
      wb_work items; however, there's no reason to use a separate wait
      mechanism for this.  bdi_split_work_to_wbs() can simply use on-stack
      fallback wb_work item and separate wb_completion to wait for it.

      This patch removes wb_work->single_wait/done and the related code and
      make bdi_split_work_to_wbs() use on-stack fallback wb_work and
      wb_completion instead.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Suggested-by: Jan Kara <jack@xxxxxxx>
      Reviewed-by: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 1ed8d48c57bf7400eac7b8dc622ab0413715cafb
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 14:54:52 2015 -0700

      writeback: bdi_for_each_wb() iteration is memcg ID based not blkcg

      wb's (bdi_writeback's) are currently keyed by memcg ID; however, in an
      earlier implementation, wb's were keyed by blkcg ID.
      bdi_for_each_wb() walks bdi->cgwb_tree in the ascending ID order and
      allows iterations to start from an arbitrary ID which is used to
      interrupt and resume iterations.

      Unfortunately, while changing wb to be keyed by memcg ID instead of
      blkcg, bdi_for_each_wb() was missed and is still assuming that wb's
      are keyed by blkcg ID.  This doesn't affect iterations which don't get
      interrupted but bdi_split_work_to_wbs() makes use of iteration
      resuming on allocation failures and thus may incorrectly skip or
      repeat wb's.

      Fix it by changing bdi_for_each_wb() to take memcg IDs instead of
      blkcg IDs and updating bdi_split_work_to_wbs() accordingly.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 11743ee0477ab9691d08aa121c583184769d2847
  Merge: e162b21 3e1d2ee
  Author: Jens Axboe <axboe@xxxxxx>
  Date:   Tue Aug 18 15:49:11 2015 -0700

      Merge branch 'for-4.3-unified-base' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup into for-4.3/blkcg

  commit 0dad87fcb732691bfd3183acccda6709e1e759ca
  Author: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Jun 26 18:18:54 2015 +0200

      eCryptfs: Delete a check before the function call "key_put"

      The key_put() function tests whether its argument is NULL and then
      returns immediately. Thus the test around this call might not be needed.

      This issue was detected by using the Coccinelle software.

      Signed-off-by: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Tyler Hicks <tyhicks@xxxxxxxxxxxxx>

  commit 5556e7e6d30e8e9b5ee51b0e5edd526ee80e5e36
  Author: Tyler Hicks <tyhicks@xxxxxxxxxxxxx>
  Date:   Wed Aug 5 11:26:36 2015 -0500

      eCryptfs: Invalidate dcache entries when lower i_nlink is zero

      Consider eCryptfs dcache entries to be stale when the corresponding
      lower inode's i_nlink count is zero. This solves a problem caused by the
      lower inode being directly modified, without going through the eCryptfs
      mount, leaving stale eCryptfs dentries cached and the eCryptfs inode's
      i_nlink count not being cleared.

      Signed-off-by: Tyler Hicks <tyhicks@xxxxxxxxxxxxx>
      Reported-by: Richard Weinberger <richard@xxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 3af4e5a95184d6d3c1c6a065f163faa174a96a1d
  Author: Don Zickus <dzickus@xxxxxxxxxx>
  Date:   Mon Aug 10 12:06:53 2015 -0400

      HID: usbhid: Fix the check for HID_RESET_PENDING in hid_io_error

      It was reported that after 10-20 reboots, a usb keyboard plugged
      into a docking station would not work unless it was replugged in.

      Using usbmon, it turns out the interrupt URBs were streaming with
      callback errors of -71 for some reason.  The hid-core.c::hid_io_error was
      supposed to retry and then reset, but the reset wasn't really happening.

      The check for HID_NO_BANDWIDTH was inverted.  Fix was simple.

      Tested by reporter and locally by me by unplugging a keyboard halfway 
until I
      could recreate a stream of errors but no disconnect.

      Signed-off-by: Don Zickus <dzickus@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Jiri Kosina <jkosina@xxxxxxx>

  commit ff2d92066429d1ba21cea64543264563477ad4da
  Author: Nicolas Pitre <nicolas.pitre@xxxxxxxxxx>
  Date:   Fri Aug 14 22:46:25 2015 -0400

      ARM: add TC2 PM support to multi_v7_defconfig

      Without this, the multi_v7_defconfig kernel cannot boot all CPUs
      nor do deep cpuidle power saving on a TC2 board.

      Signed-off-by: Nicolas Pitre <nico@xxxxxxxxxx>
      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 3dc33e23227de8d854a665157cf465303e7cbbce
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Aug 18 14:24:18 2015 -0700

      enic: Fix namespace pollution causing build errors.

      drivers/net/built-in.o: In function `.vnic_wq_devcmd2_alloc':
      (.text+0x49fe40): multiple definition of `.vnic_wq_devcmd2_alloc'
      drivers/scsi/built-in.o:(.text+0xb4318): first defined here
      drivers/net/built-in.o:(.opd+0x2af00): multiple definition of 
`vnic_wq_devcmd2_alloc'
      drivers/scsi/built-in.o:(.opd+0xad70): first defined here
      drivers/net/built-in.o: In function `.vnic_wq_init_start':
      (.text+0x49f9c0): multiple definition of `.vnic_wq_init_start'
      drivers/scsi/built-in.o:(.text+0xb3b58): first defined here
      drivers/net/built-in.o:(.opd+0x2ae88): multiple definition of 
`vnic_wq_init_start'
      drivers/scsi/built-in.o:(.opd+0xace0): first defined here

      Rename these to 'enic_*' to avoid the conflict with the functiosn of
      the same name in the snic scsi driver.

      Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f34fa14cc033239037622dbe84faf53923bb7e74
  Author: Rajesh Borundia <Rajesh.Borundia@xxxxxxxxxx>
  Date:   Tue Aug 18 10:22:59 2015 +0300

      bnx2x: Add vxlan RSS support

      Latest FW submission added some vxlan offload capabilities to our device.
      This patch adds the ability to connect to the vxlan NDOs and configure
      the UDP port associated with it in the HW.

      The device would now be capable of performing RSS according to the
      inner headers of the vxlan packets.

      Signed-off-by: Rajesh Borundia <Rajesh.Borundia@xxxxxxxxxx>
      Signed-off-by: Yuval Mintz <Yuval.Mintz@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit bd49784fd1e8f42c7600fbfa206361324857f373
  Author: Mikulas Patocka <mpatocka@xxxxxxxxxx>
  Date:   Tue Aug 18 16:26:16 2015 -0400

      dm stats: report precise_timestamps and histogram in @stats_list output

      If the user selected the precise_timestamps or histogram options, report
      it in the @stats_list message output.

      If the user didn't select these options, no extra tokens are reported,
      thus it is backward compatible with old software that doesn't know about
      precise timestamps and histogram.

      Signed-off-by: Mikulas Patocka <mpatocka@xxxxxxxxxx>
      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # 4.2

  commit 3f0bf60f96e3eaecd6920f5910ffcd8685774fb3
  Merge: 61ed713 6083ce7
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Aug 18 14:17:22 2015 -0700

      Merge branch 'dsa-multi-swtich'

      Andrew Lunn says:

      ====================
      D in DSA patches

      The D in DSA is distributed, meaning multiple switches can be
      connected together. Currently no mainline system does this, and so the
      code is broken. This patchset contains two fixes, and a small helper.

      With three of more switches, the current device tree binding is not
      sufficient to express the routing between the switches. The first
      patch extends the binding, in a backwards compatible way, to allow a
      link between a switch to describe all the switches accessible over the
      link, not just the direct neighbor.

      The third patch fixes the port configuration on newer devices for
      links connecting switches.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6083ce715f09568a8b0996ca15ae31aaa94f081f
  Author: Andrew Lunn <andrew@xxxxxxx>
  Date:   Mon Aug 17 23:52:52 2015 +0200

      dsa: mv88e6xxx: Set DSA mode based on chip abilities

      Older devices only support a single DSA frame format, where as newer
      devices have two. Take this into account when configuring a DSA port.
      The port needs to be in plain old DSA mode, since this is a DSA link,
      where as the newer format can be used for the CPU port.

      Signed-off-by: Andrew Lunn <andrew@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 60045cbfc0b291dae8dd5b929d67b87c5ea954d4
  Author: Andrew Lunn <andrew@xxxxxxx>
  Date:   Mon Aug 17 23:52:51 2015 +0200

      net: dsa: Add dsa_is_dsa_port() helper

      Add an inline helper for determining is a port is a DSA port.

      Signed-off-by: Andrew Lunn <andrew@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1e72e6f8859a598bfc22cf268c2dafe8ddb9f1b4
  Author: Andrew Lunn <andrew@xxxxxxx>
  Date:   Mon Aug 17 23:52:50 2015 +0200

      net: dsa: Allow multi hop routes to be expressed

      With more than two switches in a hierarchy, it becomes necessary to
      describe multi-hop routes between switches. The current binding does
      not allow this, although the older platform_data did. Extend the link
      property to be a list rather than a single phandle to a remote switch.
      It is then possible to express that a port should be used to reach
      more than one switch and the switch maybe more than one hop away.

      Signed-off-by: Andrew Lunn <andrew@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 56d1392f2f8b5f5450e3e5f32733c8e44fe95199
  Author: Jacob Keller <jacob.e.keller@xxxxxxxxx>
  Date:   Wed Jun 10 11:44:45 2015 -0700

      ixgbe: TRIVIAL fix up double 'the' and comment style

      Signed-off-by: Jacob Keller <jacob.e.keller@xxxxxxxxx>
      Tested-by: Phil Schmitt <phillip.j.schmitt@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit d147329b0ac66490d9eb331b0a89a79d09d4dfbc
  Author: Mark Rustad <mark.d.rustad@xxxxxxxxx>
  Date:   Sat Jun 6 10:41:03 2015 -0700

      ixgbe: Simplify port-specific macros

      Simplify port-specific macros by eliminating explicit comparison
      with 0. More importantly, enclose formal parameter in parens to
      eliminate the risk of an operator precedence surprise.

      Signed-off-by: Mark Rustad <mark.d.rustad@xxxxxxxxx>
      Tested-by: Phil Schmitt <phillip.j.schmitt@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit ceee3450b3a85db05a107d54fbea031c77d30401
  Author: Todd Fujinaka <todd.fujinaka@xxxxxxxxx>
  Date:   Fri Aug 7 17:27:39 2015 -0700

      igb: make sure SR-IOV init uses the right number of queues

      Recent changes to igb_probe_vfs() could lead to the PF holding onto all
      of the queues. Reorder igb_probe_vfs() to be before
      gb_init_queue_configuration() and add some more error checking.

      Signed-off-by: Todd Fujinaka <todd.fujinaka@xxxxxxxxx>
      Tested-by: Aaron Brown <aaron.f.brown@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit fae5ecaee3e6265c2aec29ac238ccc29c6f11fc3
  Author: Stefan Assmann <sassmann@xxxxxxxxx>
  Date:   Thu Aug 6 09:32:17 2015 +0200

      igbvf: clear buffer_info->dma after dma_unmap_single()

      The driver doesn't clear buffer_info->dma after calling
      dma_unmap_single() in all cases. This has been discovered by changing
      the mtu twice, which caused the following backtrace.

      [   68.569280] WARNING: CPU: 2 PID: 1860 at 
drivers/iommu/intel-iommu.c:3517 intel_unmap+0x20c/0x220()
      [   68.579392] Driver unmaps unmatched page at PFN fffc2a40
      [   68.585322] Modules linked in: igbvf ipt_MASQUERADE 
nf_nat_masquerade_ipv4 iptable_nat nf_nat_ipv4 nf_nat kvm_intel kvm igb megs
      [   68.599163] CPU: 2 PID: 1860 Comm: ifconfig Not tainted 4.2.0-rc4+ #147
      [   68.606543] Hardware name: IBM  -[546025Z]-/00Y7630, BIOS 
-[VVE134TUS-1.51]- 10/17/2013
      [   68.615473]  0000000000000dbd ffff88046441bb08 ffffffff81a5ad0b 
ffffffff81e2f9ea
      [   68.623775]  ffff88046441bb58 ffff88046441bb48 ffffffff81056b55 
ffff88047fc583c0
      [   68.632075]  0000000000000000 ffff880469a8e600 00000000fffc2a40 
ffff880465b32098
      [   68.640375] Call Trace:
      [   68.643109]  [<ffffffff81a5ad0b>] dump_stack+0x48/0x5d
      [   68.648844]  [<ffffffff81056b55>] warn_slowpath_common+0x95/0xe0
      [   68.655549]  [<ffffffff81056c56>] warn_slowpath_fmt+0x46/0x70
      [   68.661960]  [<ffffffff8158a614>] ? find_iova+0x54/0x90
      [   68.667791]  [<ffffffff815988dc>] intel_unmap+0x20c/0x220
      [   68.673815]  [<ffffffff8159891e>] intel_unmap_page+0xe/0x10
      [   68.680038]  [<ffffffffa0067536>] igbvf_clean_rx_ring+0x96/0x370 
[igbvf]
      [   68.687516]  [<ffffffffa0067915>] igbvf_down+0x105/0x110 [igbvf]
      [   68.694219]  [<ffffffffa0067beb>] igbvf_change_mtu+0x16b/0x180 [igbvf]
      [...]

      Signed-off-by: Stefan Assmann <sassmann@xxxxxxxxx>
      Acked-by: Jesse Brandeburg <jesse.brandeburg@xxxxxxxxx>
      Tested-by: Aaron Brown <aaron.f.brown@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 42ad1a03b4caf4d95b980bce17c46242e6728ddc
  Author: Jia-Ju Bai <baijiaju1990@xxxxxxx>
  Date:   Wed Aug 5 22:05:16 2015 +0800

      igb: Fix a memory leak in igb_probe

      In error handling code of igb_probe, the memory adapter->shadow_vfta
      allocated by kcalloc in igb_sw_init is not freed. So when register_netdev
      or igb_init_i2c is failed, a memory leak will occur.
      This patch adds kfree to fix it.

      Signed-off-by: Jia-Ju Bai <baijiaju1990@xxxxxxx>
      Tested-by: Aaron Brown <aaron.f.brown@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 0845d45e900cad5f7f855a7a6a21c33477800b1f
  Author: Jia-Ju Bai <baijiaju1990@xxxxxxx>
  Date:   Wed Aug 5 18:16:10 2015 +0800

      e1000e: Modify Tx/Rx configurations to avoid null pointer dereferences in 
e1000_open

      When e1000e_setup_rx_resources is failed in e1000_open,
      e1000e_free_tx_resources in "err_setup_rx" segment is executed.
      "writel(0, tx_ring->head)" statement in e1000_clean_tx_ring
      in e1000e_free_tx_resources will cause a null poonter dereference(crash),
      because "tx_ring->head" is only assigned in e1000_configure_tx
      in e1000_configure, but it is after e1000e_setup_rx_resources.

      This patch moves head/tail register writing to e1000_configure_tx/rx,
      which can fix this problem. It is inspired by igb_configure_tx_ring
      in the igb driver.

      Specially, thank Alexander Duyck for his valuable suggestion.

      Signed-off-by: Jia-Ju Bai <baijiaju1990@xxxxxxx>
      Tested-by: Aaron Brown <aaron.f.brown@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 3eb14ea8d9584e96680729c2c7a9129bafa13a39
  Author: Jia-Ju Bai <baijiaju1990@xxxxxxx>
  Date:   Mon Aug 3 11:36:26 2015 +0800

      igb: Fix a deadlock in igb_sriov_reinit

      When igb_init_interrupt_scheme in igb_sriov_reinit is failed, the lock
      acquired by rtnl_lock() is not released, which causes a deadlock.
      This patch adds rtnl_unlock() in error handling to fix it.

      Signed-off-by: Jia-Ju Bai <baijiaju1990@xxxxxxx>
      Tested-by: Aaron Brown <aaron.f.brown@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 5e5d49422dfb035ca9e280cd61d434095c151272
  Author: Jia-Ju Bai <baijiaju1990@xxxxxxx>
  Date:   Mon Aug 3 10:40:48 2015 +0800

      e100: Release skb when DMA mapping is failed in e100_xmit_prepare

      When pci_dma_mapping_error in e100_xmit_prepare is failed, the skb buffer
      allocated by netdev_alloc_skb_ip_align in e100_rx_alloc_skb is not
      released, which causes a possible resource leak.
      This patch adds error handling code to fix it.

      Signed-off-by: Jia-Ju Bai <baijiaju1990@xxxxxxx>
      Tested-by: Aaron Brown <aaron.f.brown@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 9ad607b4a9cb365fbd8387b1250ec448e497223e
  Author: Jia-Ju Bai <baijiaju1990@xxxxxxx>
  Date:   Mon Aug 3 10:17:08 2015 +0800

      e100: Add a check after pci_pool_create to avoid null pointer dereference

      The driver lacks the check of nic->cbs_pool after pci_pool_create
      in e100_probe. When this function is failed, a null pointer dereference
      occurs when pci_pool_alloc uses nic->cbs_pool in e100_alloc_cbs.
      This patch adds a check and related error handling code to fix it.

      Signed-off-by: Jia-Ju Bai <baijiaju1990@xxxxxxx>
      Tested-by: Aaron Brown <aaron.f.brown@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit c23d92b80e0b44d4c17085f0413e7574a7583615
  Author: Alex Williamson <alex.williamson@xxxxxxxxxx>
  Date:   Wed Jul 29 14:38:15 2015 -0600

      igb: Teardown SR-IOV before unregister_netdev()

      When the .remove() callback for a PF is called, SR-IOV support for the
      device is disabled, which requires unbinding and removing the VFs.
      The VFs may be in-use either by the host kernel or userspace, such as
      assigned to a VM through vfio-pci.  In this latter case, the VFs may
      be removed either by shutting down the VM or hot-unplugging the
      devices from the VM.  Unfortunately in the case of a Windows 2012 R2
      guest, hot-unplug is broken due to the ordering of the PF driver
      teardown.  Disabling SR-IOV prior to unregister_netdev() avoids this
      issue.

      Signed-off-by: Alex Williamson <alex.williamson@xxxxxxxxxx>
      Acked-by: Mitch Williams <mitch.a.williams@xxxxxxxxx>
      Tested-by: Aaron Brown <aaron.f.brown@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 51045ecff09e33dcf4027f4aa6e6a05a840899d3
  Author: Todd Fujinaka <todd.fujinaka@xxxxxxxxx>
  Date:   Wed Jul 29 07:32:06 2015 -0700

      igb: add support for 1512 PHY

      This patch adds support for Marvell PHY 1512 (required for I354).

      Submitted by: Maciej Szwed <maciej.szwed@xxxxxxxxx>
      Signed-off-by: Todd Fujinaka <todd.fujinaka@xxxxxxxxx>
      Tested-by: Aaron Brown <aaron.f.brown@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 30c72916d71b7970b16dca2bb1234aef2d37b695
  Author: Richard Cochran <richardcochran@xxxxxxxxx>
  Date:   Thu Jul 23 14:59:30 2015 -0700

      igb: implement high frequency periodic output signals

      In addition to interrupt driven target time output events, the i210
      also has two programmable clock outputs.  These clocks support periods
      between 16 nanoseconds and 140 milliseconds.  This patch implements
      the periodic output function using the clock outputs when possible,
      falling back to the target time for longer periods.

      Signed-off-by: Richard Cochran <richardcochran@xxxxxxxxx>
      Tested-by: Aaron Brown <aaron.f.brown@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 6423fc34160939142d72ffeaa2db6408317f54df
  Author: Stefan Assmann <sassmann@xxxxxxxxx>
  Date:   Fri Jul 10 15:01:12 2015 +0200

      igb: do not re-init SR-IOV during probe

      During driver probing the following code path is triggered.
      igb_probe
      ->igb_sw_init
        ->igb_probe_vfs
          ->igb_pci_enable_sriov
            ->igb_sriov_reinit

      Doing the SR-IOV re-init is not necessary during probing since we're
      starting from scratch. Here we can call igb_enable_sriov() right away.

      Running igb_sriov_reinit() during igb_probe() also seems to cause
      occasional packet loss on some onboard 82576 NICs. Reproduced on
      Dell and HP servers with onboard 82576 NICs.
      Example:
      Intel Corporation 82576 Gigabit Network Connection [8086:10c9] (rev 01)
      Subsystem: Dell Device [1028:0481]

      Signed-off-by: Stefan Assmann <sassmann@xxxxxxxxx>
      Tested-by: Aaron Brown <aaron.f.brown@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit f468adc944ef40f23cacdd898e8cfbb5ba4b75a4
  Author: Vasily Averin <vvs@xxxxxxxxxxxxx>
  Date:   Tue Jul 7 18:53:45 2015 +0300

      igb: missing rtnl_unlock in igb_sriov_reinit()

      Signed-off-by: Vasily Averin <vvs@xxxxxxxxxxxxx>
      Tested-by: Aaron Brown <aaron.f.brown@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 72ddef0506da852dc82f078f37ced8ef4d74a2bf
  Author: Shota Suzuki <suzuki_shota_t3@xxxxxxxxxxxxx>
  Date:   Wed Jul 1 09:25:52 2015 +0900

      igb: Fix oops caused by missing queue pairing

      When initializing igb driver (e.g. 82576, I350), IGB_FLAG_QUEUE_PAIRS is
      set if adapter->rss_queues exceeds half of max_rss_queues in
      igb_init_queue_configuration().
      On the other hand, IGB_FLAG_QUEUE_PAIRS is not set even if the number of
      queues exceeds half of max_combined in igb_set_channels() when changing
      the number of queues by "ethtool -L".
      In this case, if numvecs is larger than MAX_MSIX_ENTRIES (10), the size
      of adapter->msix_entries[], an overflow can occur in
      igb_set_interrupt_capability(), which in turn leads to an oops.

      Fix this problem as follows:
       - When changing the number of queues by "ethtool -L", set
         IGB_FLAG_QUEUE_PAIRS in the same way as initializing igb driver.
       - When increasing the size of q_vector, reallocate it appropriately.
         (With IGB_FLAG_QUEUE_PAIRS set, the size of q_vector gets larger.)

      Another possible way to fix this problem is to cap the queues at its
      initial number, which is the number of the initial online cpus. But this
      is not the optimal way because we cannot increase queues when another
      cpu becomes online.

      Note that before commit cd14ef54d25b ("igb: Change to use statically
      allocated array for MSIx entries"), this problem did not cause oops
      but just made the number of queues become 1 because of entering msi_only
      mode in igb_set_interrupt_capability().

      Fixes: 907b7835799f ("igb: Add ethtool support to configure number of 
channels")
      CC: stable <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Shota Suzuki <suzuki_shota_t3@xxxxxxxxxxxxx>
      Tested-by: Aaron Brown <aaron.f.brown@xxxxxxxxx>
      Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx>

  commit 3e1d2eed39d804e48282931835c7203fa47fe1d9
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 13:58:16 2015 -0700

      cgroup: introduce cgroup_subsys->legacy_name

      This allows cgroup subsystems to use a different name on the unified
      hierarchy.  cgroup_subsys->name is used on the unified hierarchy,
      ->legacy_name elsewhere.  If ->legacy_name is not explicitly set, it's
      automatically set to ->name and the userland visible behavior remains
      unchanged.

      v2: Make parse_cgroupfs_options() only consider ->legacy_name as mount
          options are used only on legacy hierarchies.  Suggested by Li
          Zefan.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Acked-by: Li Zefan <lizefan@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: cgroups@xxxxxxxxxxxxxxx

  commit d98817d4961b9ef75062d1e129829d283b3dac57
  Author: Tejun Heo <tj@xxxxxxxxxx>
  Date:   Tue Aug 18 13:58:16 2015 -0700

      cgroup: don't print subsystems for the default hierarchy

      It doesn't make sense to print subsystems on mount option or
      /proc/PID/cgroup for the default hierarchy.

      * cgroup.controllers file at the root of the default hierarchy lists
        the currently attached controllers.

      * The default hierarchy is catch-all for unmounted subsystems.

      * The default hierarchy doesn't accept any mount options.

      Suppress subsystem printing on mount options and /proc/PID/cgroup for
      the default hierarchy.

      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
      Acked-by: Li Zefan <lizefan@xxxxxxxxxx>
      Cc: Johannes Weiner <hannes@xxxxxxxxxxx>
      Cc: cgroups@xxxxxxxxxxxxxxx

  commit 62060a3548c5ea038b4ade518cce92be32a6718d
  Merge: 582271a 8cbd4c2f
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Tue Aug 18 13:33:48 2015 -0700

      Merge tag 'omap-for-v4.3/dt-pt4-v2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/dt

      Fix up bogus RTC compatible change for am4372 and add missing
      DPLL for am4372 cpsw Ethernet driver. Also add ARM global and
      local timers for am4372.

      * tag 'omap-for-v4.3/dt-pt4-v2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
        arm: boot: dts: am4372: add ARM timers and SCU nodes
        ARM: dts: AM4372: Add the am4372-rtc compatible string
        ARM: dts: am4372: Set the default clock rate for dpll_clksel_mac_clk 
clock
        ARM: dts: AM437X: add dpll_clksel_mac_clk node

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 443d7920a5ea454b4d46839a029fb26fd5a2cdee
  Merge: 207b504 ed293d1
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Tue Aug 18 13:33:09 2015 -0700

      Merge tag 'omap-for-v4.3/soc-pt2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/soc

      Fix omap PM regression in Linux next and kill set_irq_flags usage
      for GPMC.

      * tag 'omap-for-v4.3/soc-pt2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
        memory: kill off set_irq_flags usage
        ARM: OMAP2+: Fix power domain operations regression caused by 81xx

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 582271a3d0c8eed65d8716cf8dba6fa04e9bfc85
  Merge: 3cf6a06 60c0745
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Tue Aug 18 13:31:26 2015 -0700

      Merge tag 'renesas-dt4-for-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/dt

      Fourth Round of Renesas ARM Based SoC DT Updates for v4.3

      * Enable Clock Domain support of the Clock Pulse Generator (CPG)
        Module Stop (MSTP) Clocks driver.

      * tag 'renesas-dt4-for-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
        ARM: shmobile: r8a7794 dtsi: Add CPG/MSTP Clock Domain
        ARM: shmobile: r8a7793 dtsi: Add CPG/MSTP Clock Domain
        ARM: shmobile: r8a7791 dtsi: Add CPG/MSTP Clock Domain
        ARM: shmobile: r8a7790 dtsi: Add CPG/MSTP Clock Domain
        ARM: shmobile: r8a7779 dtsi: Add CPG/MSTP Clock Domain
        ARM: shmobile: r8a7778 dtsi: Add CPG/MSTP Clock Domain
        ARM: shmobile: r7s72100 dtsi: Add CPG/MSTP Clock Domain
        clk: shmobile: rz: Add CPG/MSTP Clock Domain support
        clk: shmobile: rcar-gen2: Add CPG/MSTP Clock Domain support
        clk: shmobile: r8a7779: Add CPG/MSTP Clock Domain support
        clk: shmobile: r8a7778: Add CPG/MSTP Clock Domain support
        clk: shmobile: Add CPG/MSTP Clock Domain support

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit a005bc6f69d79574840bdf04350671fb3b2dd8ae
  Merge: 0bf4135 f04b486
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Tue Aug 18 13:30:18 2015 -0700

      Merge tag 'renesas-clk-for-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/drivers

      Renesas ARM Based SoC CPG/MSTP Clock Driver Updates for v4.3

      * Add Clock Domain support to the Clock Pulse Generator
        (CPG) Module Stop (MSTP) Clocks driver using the generic PM Domain.

      * tag 'renesas-clk-for-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
        clk: shmobile: rz: Add CPG/MSTP Clock Domain support
        clk: shmobile: rcar-gen2: Add CPG/MSTP Clock Domain support
        clk: shmobile: r8a7779: Add CPG/MSTP Clock Domain support
        clk: shmobile: r8a7778: Add CPG/MSTP Clock Domain support
        clk: shmobile: Add CPG/MSTP Clock Domain support

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit d2be537c3ba3568acd79cd178327b842e60d035e
  Author: Jeff Moyer <jmoyer@xxxxxxxxxx>
  Date:   Thu Aug 13 14:57:57 2015 -0400

      block: bump BLK_DEF_MAX_SECTORS to 2560

      A value of 2560 (1280k) will accommodate a 10-data-disk stripe
      write with chunk size 128k.  In the testing I've done using
      iozone, fio, and aio-stress across a number of different storage
      devices, a value of 1280 does not show a big performance
      difference from 512, but will hopefully help software RAID
      setups using SATA disks, as reported by Christoph.

      NOTE: drivers/block/aoe/aoeblk.c sets its own max_hw_sectors_kb to
      BLK_DEF_MAX_SECTORS.  So, this patch essentially changes aeoblk to
      Use a larger maximum sector size, and I did not test this.

      Signed-off-by: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 30e2bc08b2bb7c069246feee78f7ed4006e130fe
  Author: Jeff Moyer <jmoyer@xxxxxxxxxx>
  Date:   Thu Aug 13 14:57:56 2015 -0400

      Revert "block: remove artifical max_hw_sectors cap"

      This reverts commit 34b48db66e08ca1c1bc07cf305d672ac940268dc.
      That commit caused performance regressions for streaming I/O
      workloads on a number of different storage devices, from
      SATA disks to external RAID arrays.  It also managed to
      trip up some buggy firmware in at least one drive, causing
      data corruption.

      The next patch will bump the default max_sectors_kb value to
      1280, which will accommodate a 10-data-disk stripe write
      with chunk size 128k.  In the testing I've done using iozone,
      fio, and aio-stress, a value of 1280 does not show a big
      performance difference from 512.  This will hopefully still
      help the software RAID setup that Christoph saw the original
      performance gains with while still not regressing other
      storage configurations.

      Signed-off-by: Jeff Moyer <jmoyer@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 341a670abd1c086d44e09901f0ebee3dd86a60ba
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Tue Aug 11 18:36:51 2015 -0700

      ARM64: dts: vexpress: Use assigned-clock-parents for sp810

      The sp810 clk driver is calling the clk consumer APIs from
      clk_prepare ops to change the parent to a 1 MHz fixed rate clock
      for each of the clocks that the driver provides. Use
      assigned-clock-parents for this instead of doing it in the driver
      to avoid using the consumer API in provider code. This also
      allows us to remove the usage of clk provider APIs that take a
      struct clk as an argument from the sp810 driver.

      Cc: Pawel Moll <pawel.moll@xxxxxxx>
      Cc: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Tested-by: Sudeep Holla <sudeep.holla@xxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 3cf6a067994fadcb99d841ec3ce6652fd95f91a1
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Tue Aug 11 18:36:50 2015 -0700

      ARM: dts: vexpress: Use assigned-clock-parents for sp810

      The sp810 clk driver is calling the clk consumer APIs from
      clk_prepare ops to change the parent to a 1 MHz fixed rate clock
      for each of the clocks that the driver provides. Use
      assigned-clock-parents for this instead of doing it in the driver
      to avoid using the consumer API in provider code. This also
      allows us to remove the usage of clk provider APIs that take a
      struct clk as an argument from the sp810 driver.

      Cc: Pawel Moll <pawel.moll@xxxxxxx>
      Cc: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Tested-by: Sudeep Holla <sudeep.holla@xxxxxxx>
      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 5446584eeba48ae357435388fb39f35ee9e5d851
  Merge: 80d352d 9559b3a
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Tue Aug 18 13:15:57 2015 -0700

      Merge tag 'imx-defconfig-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/defconfig

      The i.MX defconfig updates for 4.3:
       - Enable i.MX6UL SoC build
       - Enable powerkey and syscon poweroff support
       - Build in multi-channel audio support, including i.MX ASRC and CS42xx8
         codec drivers.
       - Enable kexec build, HCIUART_H4 and IKCONFIG_PROC support.

      * tag 'imx-defconfig-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
        ARM: imx_v6_v7_defconfig: Select CONFIG_IKCONFIG_PROC
        ARM: imx: imx_v6_v7_defconfig enable imx6ul support
        ARM: imx_v6_v7_defconfig: enable powerkey and syscon power off
        ARM: imx_v6_v7_defconfig: Select HCIUART_H4
        ARM: imx_v6_v7_defconfig: build in audio driver
        ARM: imx_v6_v7_defconfig: Enable kexec support

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit b12c0820868f8f65289dda974c54eff2b0290fa7
  Merge: e789546 3603257
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Tue Aug 18 13:14:39 2015 -0700

      Merge tag 'imx-dt-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/dt

      The i.MX device tree updates for 4.3:
       - Add audio and eTSEC device support and update dspi node for LS1021A.
       - Add initial i.MX6UL and imx6ul-14x14-evk board support, and enable
         a bunch of device support for i.MX6UL, including RTC, power key, USB,
         QSPI, and dual FEC.
       - Enable HDMI and LVDS dual display support for a few imx6qdl boards.
       - Support of imx6sl-warp board rev1.12, the version which will be
         publicly available for the customers.
       - A few i.MX7D device additions, watchdog, cortex-a7 coresight
         components, RTC, power key, power off.
       - Some Vybrid updates: add device support for I2C, QSPI, eSDHC etc.,
         update ADC node, and define stdout-path property.
       - A few random updates for i.MX27 and i.MX53 devices.

      * tag 'imx-dt-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (44 commits)
        ARM: dts: imx6ul: add snvs power key support
        ARM: dts: imx6ul: add RTC support
        ARM: dts: imx6ul: enable GPC as extended interrupt controller
        ARM: dts: imx6sx: correct property name for wakeup source
        ARM: dts: add property for maximum ADC clock frequencies
        ARM: dts: imx7d: enable snvs rtc, onoffkey and power off
        ARM: dts: imx6ul-14x14-evk: add fec1 and fec2 support
        ARM: dts: imx: add fec1 and fec2 nodes for SOC i.MX6UL
        ARM: dts: imx27: add support of internal rtc
        ARM: dts: vf-colibri: define stdout-path property
        ARM: dts: ls1021a: Enable the eTSEC ports on QDS and TWR
        ARM: dts: ls1021a: Add the eTSEC controller nodes
        ARM: dts: imx6ul: add qspi support
        ARM: dts: imx6ul: fix low case define in imx6ul-pinfunc.h
        ARM: dts: imx6ul: add usb host and function support
        ARM: dts: vfxxx: Add io-channel-cells property for ADC node
        ARM: dts: ls1021a: Add dts nodes for audio on LS1021A
        ARM: imx6qdl-sabreauto.dtsi: enable USB support
        ARM: dts: imx: update snvs to use syscon access register
        ARM: dts: imx: add imx6ul and imx6ul evk board support
        ...

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 207b504a63b849519cc285c3ddb37411d67beead
  Merge: f9511a4 8a0fa18
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Tue Aug 18 13:10:05 2015 -0700

      Merge tag 'imx-soc-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/soc

      The i.MX SoC changes for 4.3:
       - Add i.MX6 Ultralite SoC support, which is the newest addition to
         i.MX6 family.  It integrates a single Cortex-A7 core and a power
         management module that reduces the complexity of external power
         supply and simplifies power sequencing.
       - Change SNVS RTC driver to use syscon interface for register access,
         and add SNVS power key driver support.
       - Add a second clock for mxc rtc driver, and support device tree probe
         for the driver.
       - Add FEC MAC reference clock and phy fixup initialization for i.MX6UL
         platform.

      * tag 'imx-soc-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
        rtc: snvs: select option REGMAP_MMIO
        ARM: imx6ul: add fec MAC refrence clock and phy fixup init
        ARM: imx6ul: add fec bits to GPR syscon definition
        rtc: mxc: add support of device tree
        dt-binding: document the binding for mxc rtc
        rtc: mxc: use a second rtc clock
        input: snvs_pwrkey: use "wakeup-source" as deivce tree property name
        Document: devicetree: input: imx: i.mx snvs power device tree bindings
        input: keyboard: imx: add snvs power key driver
        Document: dt: fsl: snvs: change support syscon
        rtc: snvs: use syscon to access register
        ARM: imx: add low-level debug support for i.mx6ul
        ARM: imx: add i.mx6ul msl support

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 61ed713bbb043f333ca9576c79a3d33d2ad17438
  Merge: 0b233dc 348e343
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Tue Aug 18 11:55:08 2015 -0700

      Merge branch 'drivers_iff_no_queue'

      Phil Sutter says:

      ====================
      net: Convert drivers to IFF_NO_QUEUE and cleanup afterwards

      This series converts in-tree users away from the old and deprecated
      'tx_queue_len = 0' idiom, adds a warning to notify out-of-tree driver
      maintainers that there is need for action on their behalf and finally 
drops any
      workarounds in scheduling algorithm implementations.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 348e3435cbefa815bd56a5205c1412b5afe7b92e
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:49 2015 +0200

      net: sched: drop all special handling of tx_queue_len == 0

      Those were all workarounds for the formerly double meaning of
      tx_queue_len, which broke scheduling algorithms if untreated.

      Now that all in-tree drivers have been converted away from setting
      tx_queue_len = 0, it should be safe to drop these workarounds for
      categorically broken setups.

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Jamal Hadi Salim <jhs@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 906470c19da771e638e7c8e16e16c31995b139cc
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:48 2015 +0200

      net: warn if drivers set tx_queue_len = 0

      Due to the introduction of IFF_NO_QUEUE, there is a better way for
      drivers to indicate that no qdisc should be attached by default. Though,
      the old convention can't be dropped since ignoring that setting would
      break drivers still using it. Instead, add a warning so out-of-tree
      driver maintainers get a chance to adjust their code before we finally
      get rid of any special handling of tx_queue_len == 0.

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7d9e437d56bea20bef180bd64ad2ad354de4c79b
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:47 2015 +0200

      staging: wilc1000: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4676a15207e3bc5e18b7e39b934ce0e890ee54fe
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:46 2015 +0200

      net: caif: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Dmitry Tarnyagin <dmitry.tarnyagin@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9ad09c5c05f7ce718d135ba8b55f9af733fc9b3f
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:45 2015 +0200

      net: hsr: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Arvid Brodin <arvid.brodin@xxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit cdf7370391d3a482ef2f2a8c73d16c6db3dbecf0
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:44 2015 +0200

      net: batman-adv: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Cc: Simon Wunderlich <sw@xxxxxxxxxxxxxxxxxx>
      Cc: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3db6da1f07b4ee3c0657973f504a44d38b5c04a1
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:43 2015 +0200

      net: mac80211_hwsim: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Johannes Berg <johannes@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3a9c0a1bb82aef17468f4aff492421c875fff71c
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:42 2015 +0200

      net: hostap: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Jouni Malinen <j@xxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0a5f107b6774aa9c48ca3e924dccaf1296ef6a43
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:41 2015 +0200

      net: dsa: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Lennert Buytenhek <buytenh@xxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit bf485bcf0df5dcb01b723efc9d5887329e515aa7
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:40 2015 +0200

      net: ipvlan: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Mahesh Bandewar <maheshb@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 1e6f20ca6c90d06d8d7654009aa99f0eec76ea65
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:39 2015 +0200

      net: bonding: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Jay Vosburgh <j.vosburgh@xxxxxxxxx>
      Cc: Veaceslav Falico <vfalico@xxxxxxxxx>
      Cc: Andy Gospodarek <gospo@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4afbc0db720555f1bf0dd9f3e112819041231818
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:38 2015 +0200

      net: 6lowpan: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Alexander Aring <alex.aring@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ccecb2a47ceb0fc59b23b966cd63b5f19315b2a2
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:37 2015 +0200

      net: bridge: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Stephen Hemminger <stephen@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2e659c0551c99c9712724d96acd3d9271587265c
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:36 2015 +0200

      net: 8021q: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Patrick McHardy <kaber@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 22dba393a3eed4878937fa5bf804eb7be8aa70f4
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:35 2015 +0200

      net: vxlan: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Stephen Hemminger <stephen@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 22e380a649371dc2182c39f03887aad2576e11cd
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:34 2015 +0200

      net: team: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Jiri Pirko <jiri@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 85773a61a310aa5214e8e87d29792803ec5a9eed
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:33 2015 +0200

      net: nlmon: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Daniel Borkmann <dborkman@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e65db2b724a2758ede002cb995bee1470f805b1a
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:32 2015 +0200

      net: loopback: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ed961ac23384826d92ed7f3dd6fe8e007db76145
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:31 2015 +0200

      net: geneve: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: John W. Linville <linville@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ff42c02c09aa03b6ecd22695e923595244d3ee6d
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:30 2015 +0200

      net: dummy: convert to using IFF_NO_QUEUE

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 02f01ec1c5c697e0f84b9e58bf9a294a3a1b348e
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Tue Aug 18 10:30:29 2015 +0200

      net: veth: enable noqueue operation by default

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Cc: Pavel Emelyanov <xemul@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 81f03fedcce7ee7e83c37237ecaa2f68aad236fd
  Author: Jon Derrick <jonathan.derrick@xxxxxxxxx>
  Date:   Mon Aug 10 15:20:41 2015 -0600

      NVMe: Add nvme subsystem reset IOCTL

      Controllers can perform optional subsystem resets as introduced in NVMe
      1.1. This patch adds an IOCTL to trigger the subsystem reset by writing
      "NVMe" to the NSSR register.

      Signed-off-by: Jon Derrick <jonathan.derrick@xxxxxxxxx>
      Acked-by: Keith Busch <keith.busch@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit dfbac8c7ac5f58448b2216fe42ff52aaf175421d
  Author: Keith Busch <keith.busch@xxxxxxxxx>
  Date:   Mon Aug 10 15:20:40 2015 -0600

      NVMe: Add nvme subsystem reset support

      Controllers part of an NVMe subsystem may be reset by any other controller
      in the subsystem. If the device is capable of subsystem resets, this
      patch adds detection for such events and performs appropriate controller
      initialization upon subsystem reset detection.

      The register bit is a RW1C type, so the driver needs to write a 1 to the
      status bit to clear the subsystem reset occured bit during initialization.

      Signed-off-by: Keith Busch <keith.busch@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit ac05fbb40062411ea1b722aa2cede7feaa94f1b4
  Author: Josef Bacik <jbacik@xxxxxx>
  Date:   Wed Mar 4 16:52:52 2015 -0500

      inode: don't softlockup when evicting inodes

      On a box with a lot of ram (148gb) I can make the box softlockup after 
running
      an fs_mark job that creates hundreds of millions of empty files.  This is
      because we never generate enough memory pressure to keep the number of 
inodes on
      our unused list low, so when we go to unmount we have to evict ~100 
million
      inodes.  This makes one processor a very unhappy person, so add a 
cond_resched()
      in dispose_list() and if we need a resched when processing the s_inodes 
list do
      that and run dispose_list() on what we've currently culled.  Thanks,

      Signed-off-by: Josef Bacik <jbacik@xxxxxx>
      Reviewed-by: Jan Kara <jack@xxxxxxx>

  commit 44840dec6127e4d7c5074f75d2dd96bc4ab85fe3
  Author: David Ward <david.ward@xxxxxxxxxx>
  Date:   Tue Aug 18 10:36:23 2015 +0200

      USB: qcserial: add HP lt4111 LTE/EV-DO/HSPA+ Gobi 4G Module

      This is an HP-branded Sierra Wireless EM7355:
      https://bugzilla.redhat.com/show_bug.cgi?id=1223646#c2

      Signed-off-by: David Ward <david.ward@xxxxxxxxxx>
      Cc: stable <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Johan Hovold <johan@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 1fb8dc36384ae1140ee6ccc470de74397606a9d5
  Author: Matthijs Kooijman <matthijs@xxxxxxxx>
  Date:   Tue Aug 18 10:33:56 2015 +0200

      USB: ftdi_sio: Added custom PID for CustomWare products

      CustomWare uses the FTDI VID with custom PIDs for their ShipModul MiniPlex
      products.

      Signed-off-by: Matthijs Kooijman <matthijs@xxxxxxxx>
      Cc: stable <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Johan Hovold <johan@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit d2958d1b8fb0cffa362b187c0375a5aff4fe3825
  Author: Johan Hovold <johan@xxxxxxxxxx>
  Date:   Mon Aug 17 17:35:24 2015 +0200

      USB: usb_wwan: silence read errors on disconnect

      Silence read-urb resubmission errors when the device is going away.

      Signed-off-by: Johan Hovold <johan@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 9257f1daa8befd5c0a343031dd870236550e00c5
  Author: Johan Hovold <johan@xxxxxxxxxx>
  Date:   Mon Aug 17 17:35:23 2015 +0200

      USB: option: silence interrupt errors

      Avoid spamming the logs (e.g. with -EPROTO errors) when attempting to
      resubmit the interrupt urb while a disconnect of an in-use device is
      being processed.

      Signed-off-by: Johan Hovold <johan@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 8ae25a355b5969e12f3185e8cb8eb08b871c9084
  Author: Philipp Hachtmann <hachti@xxxxxxxxx>
  Date:   Mon Aug 17 17:31:47 2015 +0200

      USB: symbolserial: Correct transferred data size

      The scanner (here DS3508) always returns 64 bytes per urb buffer. The 
first
      byte indicates the data length used in the current buffer. There even was
      a comment describing this. But the comment also said that we'll send
      everything in the buffer to the tty layer. That means sending the actual
      barcode data and lots of trailing zeroes. This patch lets the driver only
      send the real data.

      Signed-off-by: Philipp Hachtmann <hachti@xxxxxxxxx>
      Acked-by: Johan Hovold <johan@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 951d3793bbfc0a441d791d820183aa3085c83ea9
  Author: Philipp Hachtmann <hachti@xxxxxxxxx>
  Date:   Mon Aug 17 17:31:46 2015 +0200

      USB: symbolserial: Use usb_get_serial_port_data

      The driver used usb_get_serial_data(port->serial) which compiled but 
resulted
      in a NULL pointer being returned (and subsequently used). I did not go 
deeper
      into this but I guess this is a regression.

      Signed-off-by: Philipp Hachtmann <hachti@xxxxxxxxx>
      Fixes: a85796ee5149 ("USB: symbolserial: move private-data allocation to
      port_probe")
      Cc: stable <stable@xxxxxxxxxxxxxxx>     # v3.10
      Acked-by: Johan Hovold <johan@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit a0c9d0defcdadd31ab111b1616f60cf919c6a020
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 16:36:53 2015 +0800

      usb: misc: usbtest: format max packet size for iso transfer

      The current code prints all wMaxPacketSize content at endpoint
      descriptor, if there is a high speed, high bandwidth endpoint,
      it may confuse the users, eg, if there are 3 transactions during
      microframe, it will print "wMaxPacket 1400" for packet content.
      This commit splits wMaxpacketSize and transaction numbers for
      output messages.

      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 0521cfd06e1ebcd575e7ae36aab068b38df23850
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 10:23:03 2015 +0800

      usb: host: ehci-sys: delete useless bus_to_hcd conversion

      The ehci platform device's drvdata is the pointer of struct usb_hcd
      already, so we doesn't need to call bus_to_hcd conversion again.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>
      Acked-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 475908bc4d29b95b24c03206f673f46b41e7124d
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 09:59:12 2015 -0700

      Revert "usb: interface authorization: Declare authorized attribute"

      This reverts commit 484ebaedecc5ddf778a30ee1efab367cbee27030 as the
      signed-off-by address is invalid.

      Cc: Stefan Koch <stefan.koch10@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ae9c02b421139c4c44340b019e250a9969a91613
  Author: Alex Smith <alex.smith@xxxxxxxxxx>
  Date:   Fri Jul 24 17:24:27 2015 +0100

      dmaengine: jz4780: Kill tasklets before unregistering the device

      Tasklets may have been scheduled as a result of an earlier interrupt
      that could still be running. Kill them before unregistering the
      device.

      Signed-off-by: Alex Smith <alex.smith@xxxxxxxxxx>
      Cc: Vinod Koul <vinod.koul@xxxxxxxxx>
      Cc: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@xxxxxxxxxx>
      Cc: dmaengine@xxxxxxxxxxxxxxx
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit d509a83cea8a64478c7899f28e961543b6569cfc
  Author: Alex Smith <alex.smith@xxxxxxxxxx>
  Date:   Fri Jul 24 17:24:26 2015 +0100

      dmaengine: jz4780: Don't use devm_*_irq() functions

      We must explicitly free the IRQ before the device is unregistered in
      case any device interrupt still occurs, so there's no point in using
      the managed variations of the IRQ functions. Change to the regular
      versions.

      Signed-off-by: Alex Smith <alex.smith@xxxxxxxxxx>
      Cc: Vinod Koul <vinod.koul@xxxxxxxxx>
      Cc: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@xxxxxxxxxx>
      Cc: dmaengine@xxxxxxxxxxxxxxx
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit d3597236fd30d76bef4ba8b4713013006842f117
  Author: Alex Smith <alex.smith@xxxxxxxxxx>
  Date:   Fri Jul 24 17:24:25 2015 +0100

      dmaengine: jz4780: Remove request type number definitions header

      The header just includes definitions of hardware-specific numbers which
      can be written directly in the device tree, there's no need for a public
      header containing these definitions.

      Signed-off-by: Alex Smith <alex.smith@xxxxxxxxxx>
      Cc: Vinod Koul <vinod.koul@xxxxxxxxx>
      Cc: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@xxxxxxxxxx>
      Cc: dmaengine@xxxxxxxxxxxxxxx
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 026fd406c81b8a2936e77342a255d55534f92061
  Author: Alex Smith <alex.smith@xxxxxxxxxx>
  Date:   Fri Jul 24 17:24:24 2015 +0100

      dmaengine: jz4780: Ensure channel is on correct controller in filter

      When scanning for a free DMA channel, the filter function should ensure
      that the channel is on the controller that it was requested to be on in
      the DT.

      Signed-off-by: Alex Smith <alex.smith@xxxxxxxxxx>
      Cc: Vinod Koul <vinod.koul@xxxxxxxxx>
      Cc: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@xxxxxxxxxx>
      Cc: dmaengine@xxxxxxxxxxxxxxx
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit d3273e10ad871e903456a875e1062514cd13a244
  Author: Alex Smith <alex.smith@xxxxxxxxxx>
  Date:   Fri Jul 24 17:24:23 2015 +0100

      dmaengine: jz4780: Use dma_get_slave_channel when requesting a specific 
channel

      When the DT requests a specific channel to use it is not necesssary
      to scan through all DMA channels in the system. Just return the
      requested channel using dma_get_slave_channel().

      Signed-off-by: Alex Smith <alex.smith@xxxxxxxxxx>
      Cc: Vinod Koul <vinod.koul@xxxxxxxxx>
      Cc: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@xxxxxxxxxx>
      Cc: dmaengine@xxxxxxxxxxxxxxx
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 839896ef3fdacf3a27460b6f6dabc6ac1475a00c
  Author: Alex Smith <alex.smith@xxxxxxxxxx>
  Date:   Fri Jul 24 17:24:22 2015 +0100

      dmaengine: jz4780: Fix error handling/signedness issues

      There are a some signedness bugs such as testing for < 0 on unsigned
      return values. Additionally there are some cases where functions which
      should return NULL on error actually return a PTR_ERR value which can
      result in oopses on error. Fix these issues.

      Signed-off-by: Alex Smith <alex.smith@xxxxxxxxxx>
      Cc: Vinod Koul <vinod.koul@xxxxxxxxx>
      Cc: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@xxxxxxxxxx>
      Cc: dmaengine@xxxxxxxxxxxxxxx
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit dc578f314e2471ca93a4c1f80988ecc781836f72
  Author: Alex Smith <alex.smith@xxxxxxxxxx>
  Date:   Fri Jul 24 17:24:21 2015 +0100

      dmaengine: jz4780: Fall back on smaller transfer sizes where necessary

      For some reason the controller does not support 8 byte transfers (but
      does support all other powers of 2 up to 128). In this case fall back
      to 4 bytes. In addition, fall back to 128 bytes when any larger power
      of 2 would be possible within the alignment constraints, as this is
      the maximum supported.

      It makes no sense to outright reject 8 or >128 bytes just because the
      alignment constraints make those the maximum possible size given the
      parameters for the transaction. For instance, this can result in a DMA
      from/to an 8 byte aligned address failing.

      It is perfectly safe to fall back to smaller transfer sizes, the only
      consequence is reduced transfer efficiency, which is far better than
      not allowing the transfer at all.

      Signed-off-by: Alex Smith <alex.smith@xxxxxxxxxx>
      Cc: Vinod Koul <vinod.koul@xxxxxxxxx>
      Cc: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@xxxxxxxxxx>
      Cc: dmaengine@xxxxxxxxxxxxxxx
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 46fa516869f4b57f9eb63db02c76642abfb9f682
  Author: Alex Smith <alex.smith@xxxxxxxxxx>
  Date:   Fri Jul 24 17:24:20 2015 +0100

      dmaengine: jz4780: Fix up dmaengine API function prototypes

      Several function prototypes did not match the dmaengine API they were
      implementing, resulting in build warnings. Correct these.

      Signed-off-by: Alex Smith <alex.smith@xxxxxxxxxx>
      Cc: Vinod Koul <vinod.koul@xxxxxxxxx>
      Cc: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@xxxxxxxxxx>
      Cc: dmaengine@xxxxxxxxxxxxxxx
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 12e1a6a0f16168346cb8f33aff135ed523a9f097
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 09:58:45 2015 -0700

      Revert "usb: interface authorization: Introduces the default interface 
authorization"

      This reverts commit 1d958bef45030acfc5578263e9de3bb07032b8da as the
      signed-off-by address is invalid.

      Cc: Stefan Koch <stefan.koch10@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 8c2ea97a3a4124628de2ed9a1f891c706788468a
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 09:58:26 2015 -0700

      Revert "usb: interface authorization: Control interface probing and 
claiming"

      This reverts commit de7718bd9c4d3db96991a98c2a0cb38258a04e47 as the
      signed-off-by address is invalid.

      Cc: Stefan Koch <stefan.koch10@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 5651440e453910f3a1f795e66db5d16291c3ba44
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 09:58:04 2015 -0700

      Revert "usb: interface authorization: Introduces the USB interface 
authorization"

      This reverts commit ef0909c50fe63be3f9aa09bdf4db7efaa5919be9 as the
      signed-off-by address is invalid.

      Cc: Stefan Koch <stefan.koch10@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 4d924d7a81627663720223b5c4330c18d8063fb6
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 09:57:43 2015 -0700

      Revert "usb: interface authorization: SysFS part of USB interface 
authorization"

      This reverts commit 187b3d75bbfba45a38b5d1d3656c0f11f6f6f2d0 as the
      signed-off-by address is invalid.

      Cc: Stefan Koch <stefan.koch10@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit dba3398381dd1175c74721c97d1daf8fc5939276
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 09:57:15 2015 -0700

      Revert "usb: interface authorization: Documentation part"

      This reverts commit 6ef2bf71764708f7c58ee9300acd8df05dbaa06f as the
      signed-off-by address is invalid.

      Cc: Stefan Koch <stefan.koch10@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit a1b93ab71587b8b44d45d114937cb4e75f9a5f27
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 09:56:04 2015 -0700

      Revert "usb: interface authorization: Use a flag for the default device 
authorization"

      This reverts commit 3cf1fc80655d3af7083ea4b3615e5f8532543be7 as the
      signed-off-by address is invalid.

      Cc: Stefan Koch <stefan.koch10@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 1d15f21dc8030c4511964819b89b50e39d5a7013
  Author: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
  Date:   Tue Aug 18 17:26:45 2015 +0530

      ASoC: tegra: Revert part of "ASoC: tegra: Convert to managed resources"

      Revert the problematic part of commit 470805eb9f31 ("ASoC: tegra:
      Convert to managed resources"). Before this commit, PM cleanup was
      performed after the component was unregistered. But returning
      directly will skip PM cleanup. So, to be on safe side it is better
      to use snd_soc_register_component instead of
      devm_snd_soc_register_component.

      Signed-off-by: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit ac9bd0ef5d3eefe9a21a7df6819937e3aa265203
  Author: Yanchang Li <yl22@xxxxxxx>
  Date:   Mon Jul 27 05:50:21 2015 +0000

      dmaengine: sirf: clear pending DMA interrupt when DMA terminates

      If DMA interrupt comes and is latched by IRQ controller during the
      execution of dma_terminate_all(), dma_irq routine will be executed
      after dma terminated, and it will cause kernel panic.
      We clear DMA interrupts in dma_terminate_all() to avoid this useless
      interrupt.

      Signed-off-by: Yanchang Li <Yanchang.Li@xxxxxxx>
      Signed-off-by: Barry Song <Baohua.Song@xxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit df48f3ff95c432cc3469e0df67da76ffcf2237af
  Author: Joachim Eastwood <manabian@xxxxxxxxx>
  Date:   Sat Jul 11 14:12:07 2015 +0200

      doc: dt: dma: add bindings for lpc1850-dmamux

      Add device tree bindings documentation for the
      lpc1850-dmamux DMA router.

      Signed-off-by: Joachim Eastwood <manabian@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit e5f4ae84be7421010780984bdc121eac15997327
  Author: Joachim Eastwood <manabian@xxxxxxxxx>
  Date:   Sat Jul 11 14:12:06 2015 +0200

      dmaengine: add driver for lpc18xx dmamux

      Add support for DMA on NXP LPC18xx/43xx platforms which has
      a multiplexer in front of the PL080 dma request lines.

      The mux is a single register in the LPC18xx/43xx CREG block
      and can multiplex up to 4 request lines to each of the 16
      lines on the PL080.

      Signed-off-by: Joachim Eastwood <manabian@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit fbd7e41005a4daa676e3f516d07aeff0a81dca2b
  Author: Linus Walleij <linus.walleij@xxxxxxxxxx>
  Date:   Sat Jul 11 14:12:05 2015 +0200

      doc: dt: dma: add binding doc for pl08x

      This introduces device tree bindings for the PL08x DMA controllers
      when used with fixed signal assignment per channel, i.e. if each
      channel on the PL08x is assigned precisely one burst/single signal
      set.

      [je: remove channel sub-node parsing, use cell value to assign AHB]

      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Signed-off-by: Joachim Eastwood <manabian@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit aa4734da66744230af1ad2b468dcc7fea53cd637
  Author: Linus Walleij <linus.walleij@xxxxxxxxxx>
  Date:   Sat Jul 11 14:12:04 2015 +0200

      dmaengine: pl08x: support dt channel assignment

      Add support for assigning DMA channels from a device tree.

      [je: remove channel sub-node parsing, dynamic channel creation on xlate]

      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Signed-off-by: Joachim Eastwood <manabian@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 4a736d156d6de171f2c8453f5a6911e40e9aab0a
  Author: Robert Jarzmik <robert.jarzmik@xxxxxxx>
  Date:   Tue Aug 18 08:15:32 2015 +0200

      dmaengine: pxa_dma: fix debug information

      This fixes the following error:
      drivers/dma/pxa_dma.c: In function â??dbg_show_requester_chanâ??:
      drivers/dma/pxa_dma.c:192:2: error: void value not ignored as it ought to 
be
        pos += seq_printf(s, "DMA channel %d requester :\n", phy->idx);
        ^
      drivers/dma/pxa_dma.c:197:8: error: void value not ignored as it ought to 
be
              !!(drcmr & DRCMR_MAPVLD));
              ^
      scripts/Makefile.build:258: recipe for target 'drivers/dma/pxa_dma.o' 
failed

      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit b48362d8aaf32aeb4a75f5c556c652ffeeb1be5d
  Author: Frederic Weisbecker <fweisbec@xxxxxxxxx>
  Date:   Tue Aug 18 16:18:29 2015 +0200

      hrtimer: Unconfuse switch_hrtimer_base() a bit

      The variable called "this_base" is confusing because its name suggests
      it's of "struct hrtimer_clock_base" type, along with "base" and "new_base"
      which doesn't help understanding this complicated function.

      Make its name clearer and fix the misleading comment while at it.

      [ tglx: Fixed the comment for real ]

      Signed-off-by: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439907509-9553-3-git-send-email-fweisbec@xxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 662b3e194656cc713d51d52780fb71f499c46619
  Author: Frederic Weisbecker <fweisbec@xxxxxxxxx>
  Date:   Tue Aug 18 16:18:28 2015 +0200

      hrtimer: Simplify get_target_base() by returning current base

      Instead of fetching again the current cpu base, just take it from the
      parameter.

      Signed-off-by: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439907509-9553-2-git-send-email-fweisbec@xxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 84eac6196c4b3930fc81f9bcd76c4a1a2161fd34
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Fri Aug 14 17:58:01 2015 +0800

      ASoC: wm8741: Drop misleading readable_reg callback implementation

      regmap_readable() returns false if map->format.format_write is set.
      For .reg_bits = 7, .val_bits = 9, setting,
        map->format.format_write = regmap_format_7_9_write;

      Even current code has implemented map->readable_reg, regmap_readable()
      still returns false anyway. Thus drop the misleading readable_reg callback
      implementation.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Acked-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit b2b1ec9b55ed0840956db15f823c4a73383c08be
  Author: Matias Bjørling <m@xxxxxxxxxxx>
  Date:   Tue Aug 18 10:13:41 2015 -0600

      NVMe: removed unused nn var from nvme_dev_add

      The logic in nvme_dev_add to enumerate namespaces was moved to
      nvme_dev_scan. When moved, the nn variable is no longer used. This patch
      removes it.

      Fixes: a5768aai ("NVMe: Automatic namespace rescan")
      Signed-off-by: Matias Bjørling <m@xxxxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 649953b5b89dc308747797810812747333d971cd
  Author: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 23:45:55 2015 +0800

      PCI: xilinx: Fix typo in function name

      There's a typo in commit e39758e0ea76 in linux-next, which incorrectly
      spells "msi_desc_to_pci_sysdata()" as "msi_desc_to_pci_sys_data()" and
      causes build failure:

      > ../drivers/pci/host/pcie-xilinx.c:235:3: error: implicit declaration
          of function 'msi_desc_to_pci_sys_data' 
[-Werror=implicit-function-declaration]

      Fixes: e39758e0ea76 "PCI: Use helper functions to access fields in struct 
msi_desc"
      Signed-off-by: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
      Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
      Cc: Mark Brown <broonie@xxxxxxxxxx>
      Cc: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Cc: Michal Simek <michal.simek@xxxxxxxxxx>
      Cc: Sören Brinkmann <soren.brinkmann@xxxxxxxxxx>
      Cc: Srikanth Thokala <sthokal@xxxxxxxxxx>
      Cc: Rob Herring <robh@xxxxxxxxxx>
      Cc: Yijing Wang <wangyijing@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439912763-10645-1-git-send-email-jiang.liu@xxxxxxxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit 84f8bd86cc8977c344df572169f7ec10b8188cfa
  Author: Mike Snitzer <snitzer@xxxxxxxxxx>
  Date:   Tue Aug 18 10:31:09 2015 -0400

      dm thin: optimize async discard submission

      __blkdev_issue_discard_async() doesn't need to worry about further
      splitting because the upper layer blkdev_issue_discard() will have
      already handled splitting bios such that the bi_size isn't
      overflowed.

      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>
      Acked-by: Joe Thornber <ejt@xxxxxxxxxx>

  commit a6bf49db8c94d194d1c197deba2935468026ec89
  Merge: 74f4e0c ecc7c51
  Author: Kalle Valo <kvalo@xxxxxxxxxxxxxx>
  Date:   Tue Aug 18 17:20:11 2015 +0300

      Merge tag 'iwlwifi-next-for-kalle-2015-08-18' of 
https://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-next

      * polish the Miracast operation
      * fix a few power consumption issues
      * scan cleanup
      * fixes for D0i3 system state
      * add paging for devices that support it
      * add again the new RBD allocation model
      * add more options to the firmware debug system
      * add support for frag SKBs in Tx

  commit d1c48038b849e9df0475621a52193a62424a4e87
  Author: Andrew Duggan <aduggan@xxxxxxxxxxxxx>
  Date:   Thu Jul 30 14:49:00 2015 -0700

      HID: i2c-hid: Only disable irq wake if it was successfully enabled during 
suspend

      Enabling irq wake could potentially fail and calling disable_irq_wake
      after a failed call to enable_irq_wake could result in an unbalanced irq
      warning. This patch warns if enable_irq_wake fails and avoids other
      potential issues caused by calling disable_irq_wake on resume after
      enable_irq_wake failed during suspend.

      Signed-off-by: Andrew Duggan <aduggan@xxxxxxxxxxxxx>
      Signed-off-by: Jiri Kosina <jkosina@xxxxxxx>

  commit 76703be827a7867c28b904562bc78ed1314698bc
  Author: Jason Gerecke <killertofu@xxxxxxxxx>
  Date:   Mon Aug 17 17:41:53 2015 -0700

      HID: wacom: Use tablet-provided touch height/width values for INTUOSHT

      The current generation of "Intuos" tablets (i.e. INTUOSHT) report touch
      width and height data just like the "Intuos Pro" do. This commit changes
      the code to allow these tablets to use the appropriate codepath instead
      of the one intended for Intuos5/Bamboo.

      Signed-off-by: Jason Gerecke <jason.gerecke@xxxxxxxxx>
      Signed-off-by: Jiri Kosina <jkosina@xxxxxxx>

  commit 931830aa5c251e0803523213428f777a48bde254
  Author: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>
  Date:   Thu Aug 13 11:11:27 2015 -0400

      HID: gembird: add new driver to fix Gembird JPD-DualForce 2

      This gamepad advertise 5 absolute axis while 4 are actually used.
      The second Z axis shows some garbage, so it has to be ignored by HID.
      The first Z axis and the Rz one are actually Rx and Ry. Remap them.

      We could also just remap and ignore the axis in .input_mapping(). I
      went ahead with .report_fixup() first, so here it is.

      Reported-by: Orivej Desh <orivej@xxxxxx>
      Tested-by: Orivej Desh <orivej@xxxxxx>
      Signed-off-by: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>
      Signed-off-by: Jiri Kosina <jkosina@xxxxxxx>

  commit 96231b2686b53f71838a335bdc404cb5285d1a01
  Author: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
  Date:   Tue Aug 18 09:14:15 2015 +0100

      ARM: 8419/1: dma-mapping: harmonize definition of DMA_ERROR_CODE

      All architectures except arm that define DMA_ERROR_CODE are casting it
      to (dma_addr_t) - as it is always compared to dma_addr_t in arm as well
      this could be harmonized.

      Signed-off-by: Nicholas Mc Guire <hofrat@xxxxxxxxx>
      Acked-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 8901925d32232adb57ba1b4c26d0c0f9d521a78c
  Author: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 03:59:52 2015 +0100

      ARM: 8417/1: refactor bitops functions with BIT_MASK() and BIT_WORD()

      Use BIT_MASK() and BIT_WORD() rather than hard-coding the size
      of the "long" type.

      Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit da4f295b4aeca0bca4ab406e70fb7087f93ede39
  Author: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 03:45:35 2015 +0100

      ARM: 8416/1: Feroceon: use of_iomap() to map register base

      The chain of of_address_to_resource() and ioremap() can be replaced
      with of_iomap().

      Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
      Acked-by: Olof Johansson <olof@xxxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit a5f4c561b3b19a9bc43a81da6382b0098ebbc1fb
  Author: Stefan Agner <stefan@xxxxxxxx>
  Date:   Thu Aug 13 00:01:52 2015 +0100

      ARM: 8415/1: early fixmap support for earlycon

      Add early fixmap support, initially to support permanent, fixed
      mapping support for early console. A temporary, early pte is
      created which is migrated to a permanent mapping in paging_init.
      This is also needed since the attributes may change as the memory
      types are initialized. The 3MiB range of fixmap spans two pte
      tables, but currently only one pte is created for early fixmap
      support.

      Re-add FIX_KMAP_BEGIN to the index calculation in highmem.c since
      the index for kmap does not start at zero anymore. This reverts
      4221e2e6b316 ("ARM: 8031/1: fixmap: remove FIX_KMAP_BEGIN and
      FIX_KMAP_END") to some extent.

      Cc: Mark Salter <msalter@xxxxxxxxxx>
      Cc: Kees Cook <keescook@xxxxxxxxxxxx>
      Cc: Laura Abbott <lauraa@xxxxxxxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Cc: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx>
      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
      Signed-off-by: Stefan Agner <stefan@xxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 6dc2e1bf8e0025db2ff8a35ee3e0bd88203d4402
  Author: Vladimir Zapolskiy <vladimir_zapolskiy@xxxxxxxxxx>
  Date:   Mon May 18 15:32:20 2015 +0300

      drm: bridge/dw_hdmi: fix register I2CM_ADDRESS register name

      I2CM_ADDRESS became a MESS, fix it, also change guarding define
      to __DW_HDMI_H__ , since the driver is not IMX specific.

      Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@xxxxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit b872a8e16b3fb17c3fe1e97f4ed0803f4a740aae
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Jun 5 12:22:46 2015 +0100

      drm: bridge/dw_hdmi: fix phy enable/disable handling

      The dw_hdmi enable/disable handling is particularly weak in several
      regards:
      * The hotplug interrupt could call hdmi_poweron() or hdmi_poweroff()
        while DRM is setting a mode, which could race with a mode being set.
      * Hotplug will always re-enable the phy whenever it detects an active
        hotplug signal, even if DRM has disabled the output.

      Resolve all of these by introducing a mutex to prevent races, and a
      state-tracking bool so we know whether DRM wishes the output to be
      enabled.  We choose to use our own mutex rather than ->struct_mutex
      so that we can still process interrupts in a timely fashion.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 2fada109cfb7dbfd52f472140d6477a27a1f0d6d
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Tue Jul 28 12:21:34 2015 +0100

      drm: bridge/dw_hdmi: rename dw_hdmi_phy_enable_power()

      dw_hdmi_phy_enable_power() is not about enabling and disabling power.
      It is about allowing or preventing power-down mode being entered - the
      register is documented as "Power-down enable (active low 0b)."

      This can be seen as the bit has no effect when the HDMI phy is
      operational on iMX6 hardware.

      Rename the function to dw_hdmi_phy_enable_powerdown() to reflect the
      documentation, make it take a bool for the 'enable' argument, and invert
      the value to be written.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 552e67859c3ae9277ed26d5393d733207d129dae
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Sat Jun 6 11:04:00 2015 +0100

      drm: bridge/dw_hdmi: avoid enabling interface in mode_set

      On a mode set, DRM makes the following sequence of calls:
      * for_each_encoder
      *   bridge        mode_fixup
      *   encoder       mode_fixup
      * crtc            mode_fixup
      * for_each_encoder
      *   bridge        disable
      *   encoder       prepare
      *   bridge        post_disable
      * disable unused encoders
      * crtc            prepare
      * crtc            mode_set
      * for_each_encoder
      *   encoder       mode_set
      *   bridge        mode_set
      * crtc            commit
      * for_each_encoder
      *   bridge        pre_enable
      *   encoder       commit
      *   bridge        enable

      dw_hdmi enables the HDMI output in both the bridge mode_set() and also
      the bridge enable() step.  This is duplicated work - we can avoid the
      setup in mode_set() and just do it in the enable() stage.  This
      simplifies the code a little.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit f709ec07e38a714f8a959f28b3e0388cfb1b2540
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Tue Jul 21 16:09:39 2015 +0100

      drm: bridge/dw_hdmi: enable audio only if sink supports audio

      Only enable audio support if the sink supports audio in some form, as
      defined via its EDID.  We discover this capability using the generic
      drm_detect_monitor_audio() function.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 05b1342f5014b7c100834ae179dd90d1a1da7366
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Tue Jul 21 15:35:52 2015 +0100

      drm: bridge/dw_hdmi: clean up HDMI vs DVI mode handling

      The FSL kernel detects the HDMI vendor id, and uses this to set
      hdmi->edid_cfg.hdmi_cap, which is then used to set mdvi appropriately,
      rather than detecting whether we are outputting a CEA mode.  Update
      the dw_hdmi code to use this logic, but lets eliminate the mdvi
      variable, prefering the more verbose "hdmi->sink_is_hdmi" instead.

      Use the generic drm_detect_hdmi_monitor() to detect a HDMI sink.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 8add41900e2177b20c28b64d13d8da8088c9606b
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Wed Jul 22 11:14:00 2015 +0100

      drm: bridge/dw_hdmi: don't support any pixel doubled modes

      As mentioned in the previous commit, the dw-hdmi driver does not support
      pixel doubled modes at present; it does not configure the PLL correctly
      for these modes.  Therefore, filter out the double-clocked modes as we
      presently are unable to support them.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit d10ca826b71b4c1c3ecab846528881aa0cf24266
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Tue Jul 21 11:25:00 2015 +0100

      drm: bridge/dw_hdmi: remove pixel repetition setting for all VICs

      dw_hdmi sets a pixel repetition factor of 1 for VICs 10-15, 25-30 and
      35-38.  However, DRM uses their native resolutions in its timing
      information.  For example, VIC 14 can be 1440x480 with no repetition,
      or 720x480 with one pixel repetition.  As DRM uses 1440 pixels per line
      for this video mode, we need no pixel repetition.

      In any case, pixel repetition appears broken in dw_hdmi.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit b90120a9660884b8f11bbb9904fbaa4c12d17e0a
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Mar 27 12:59:58 2015 +0000

      drm: bridge/dw_hdmi: introduce interfaces to enable and disable audio

      iMX6 devices suffer from an errata (ERR005174) where the audio FIFO can
      be emptied while it is partially full, resulting in misalignment of the
      audio samples.

      To prevent this, the errata workaround recommends writing N as zero
      until the audio FIFO has been loaded by DMA.  Writing N=0 prevents the
      HDMI bridge from reading from the audio FIFO, effectively disabling
      audio.

      This means we need to provide the audio driver with a pair of functions
      to enable/disable audio.  These are dw_hdmi_audio_enable() and
      dw_hdmi_audio_disable().

      A spinlock is introduced to ensure that setting the CTS/N values can't
      race, ensuring that the audio driver calling the enable/disable
      functions (which are called in an atomic context) can't race with a
      modeset.

      Tested-by: Yakir Yang <ykk@xxxxxxxxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit b5814fff27c6d0212b86306bdd01fe3aea99cabb
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Mar 27 12:50:58 2015 +0000

      drm: bridge/dw_hdmi: introduce interface to setting sample rate

      Introduce dw_hdmi_set_sample_rate(), which allows us to configure the
      audio sample rate, setting the CTS/N values appropriately.

      Tested-by: Yakir Yang <ykk@xxxxxxxxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit b91eee8cd8a547e43e271e5908e16c4a53c9416d
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Mar 27 23:27:17 2015 +0000

      drm: bridge/dw_hdmi: remove mhsyncpolarity/mvsyncpolarity/minterlaced

      Remove the struct hdmi_vmode mhsyncpolarity/mvsyncpolarity/minterlaced
      members, which are only used within a single function.  We can directly
      reference the appropriate mode->flags instead.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 4b9bcaa7f18ef7c599963464d282bc769997f83b
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Sat Jun 6 00:12:41 2015 +0100

      drm: bridge/dw_hdmi: use our own drm_device

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit a1b9f2ae213dd085bbe3c9fa68c5c4af5db9c77b
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Jun 5 12:18:09 2015 +0100

      drm: bridge/dw_hdmi: remove unused 'regmap' struct member

      This driver does not make use of regmaps, let's remove this unnecessary
      structure member.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit d083c312cba2735566af9598cb281ea2ae6b729a
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Mar 27 23:14:16 2015 +0000

      drm: bridge/dw_hdmi: simplify hdmi_config_AVI() a little

      When a YCBCR format is selected, we can merely copy the colorimetry
      information directly as we use the same definitions for both the
      unpacked AVI info frame and the hdmi_data_info structure.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit d4ac4cb69e79e3175329e03262354beef6aab38b
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Mar 27 20:06:50 2015 +0000

      drm: bridge/dw_hdmi: use drm_hdmi_avi_infoframe_from_display_mode()

      Use drm_hdmi_avi_infoframe_from_display_mode() to compose the AVI
      frame.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit f879b38f9155e85dc30a2e1e7d18b06251a7f9f8
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Fri Mar 27 12:53:29 2015 +0000

      drm: bridge/dw_hdmi: clean up hdmi_set_clk_regenerator()

      Clean up hdmi_set_clk_regenerator() by allowing it to take the audio
      sample rate and ratio directly, rather than hiding it inside the
      function.  Raise the unsupported pixel clock/sample rate message from
      debug to error level as this results in audio not working correctly.

      Tested-by: Yakir Yang <ykk@xxxxxxxxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 39cc1535fe1e401c523065f7b219ac1cd76e4a7d
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Tue Mar 31 18:34:11 2015 +0100

      drm: bridge/dw_hdmi: clean up phy configuration

      The phy configuration is dependent on the SoC, and we look up values for
      some of the registers in SoC specific data.  However, we had partially
      programmed the phy before we had successfully looked up the clock rate.
      Also, we were only checking that we had a valid configuration for the
      currctrl register.

      Move all these lookups to the start of this function instead, so we can
      check that all lookups were successful before beginning to program the
      phy.

      Tested-by: Yakir Yang <ykk@xxxxxxxxxxxxxx>
      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 36b8ae0d608696cb8b48639813ec22be99c4a8e6
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Tue Mar 31 18:23:16 2015 +0100

      drm: imx/dw_hdmi: move phy comments

      The phy comments in dw_hdmi.c applied to the iMX6 version.  Move these
      comments to the iMX6 dw_hdmi-imx data along side the data.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit 627563d1696b8978b550ed192acc1bc8fc461da5
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Sat Mar 28 18:13:52 2015 +0000

      drm/edid: add function to help find SADs

      Add a function to find the start of the SADs in the ELD.  This
      complements the helper to retrieve the SAD count.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>

  commit d9232a3da8683cd9c9854a858bcca968fe5f3bca
  Author: Ian Munsie <imunsie@xxxxxxxxxxx>
  Date:   Thu Jul 23 16:43:56 2015 +1000

      cxl: Add alternate MMIO error handling

      userspace programs using cxl currently have to use two strategies for
      dealing with MMIO errors simultaneously. They have to check every read
      for a return of all Fs in case the adapter has gone away and the kernel
      has not yet noticed, and they have to deal with SIGBUS in case the
      kernel has already noticed, invalidated the mapping and marked the
      context as failed.

      In order to simplify things, this patch adds an alternative approach
      where the kernel will return a page filled with Fs instead of delivering
      a SIGBUS. This allows userspace to only need to deal with one of these
      two error paths, and is intended for use in libraries that use cxl
      transparently and may not be able to safely install a signal handler.

      This approach will only work if certain constraints are met. Namely, if
      the application is both reading and writing to an address in the problem
      state area it cannot assume that a non-FF read is OK, as it may just be
      reading out a value it has previously written. Further - since only one
      page is used per context a write to a given offset would be visible when
      reading the same offset from a different page in the mapping (this only
      applies within a single context, not between contexts).

      An application could deal with this by e.g. making sure it also reads
      from a read-only offset after any reads to a read/write offset.

      Due to these constraints, this functionality must be explicitly
      requested by userspace when starting the context by passing in the
      CXL_START_WORK_ERR_FF flag.

      Signed-off-by: Ian Munsie <imunsie@xxxxxxxxxxx>
      Acked-by: Michael Neuling <mikey@xxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit fc9e9cbf4e48f28525edd27e285820988f1a54b1
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Fri Aug 7 09:59:11 2015 +0200

      powerpc/nvram: use kmemdup rather than duplicating its implementation

      The patch was generated using fixed coccinelle semantic patch
      scripts/coccinelle/api/memdup.cocci [1].

      [1]: http://permalink.gmane.org/gmane.linux.kernel/2014320

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Reviewed-by: Nathan Fontenot <nfont@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 2e16acc5ee3626bcd32e2252c8260b65efde7b36
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Fri Aug 7 09:59:12 2015 +0200

      powerpc/pseries: use kmemdup rather than duplicating its implementation

      The patch was generated using fixed coccinelle semantic patch
      scripts/coccinelle/api/memdup.cocci [1].

      [1]: http://permalink.gmane.org/gmane.linux.kernel/2014320

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Reviewed-by: Nathan Fontenot <nfont@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 39bfd715b4837433a86c168c610880e9ae2185ae
  Author: Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 09:26:51 2015 +1000

      powerpc/eeh: Disable automatically blocked PCI config

      pcibios_set_pcie_reset_state() could be called to complete
      reset request when passing through PCI device, flag
      EEH_PE_ISOLATED is set before saving the PCI config sapce.
      On some Broadcom adapters, EEH_PE_CFG_BLOCKED is automatically
      set when the flag EEH_PE_ISOLATED is marked. It caused bogus
      data saved from the PCI config space, which will be restored
      to the PCI adapter after the reset. Eventually, the hardware
      can't work with corrupted data in PCI config space.

      The patch fixes the issue with eeh_pe_state_mark_no_cfg(), which
      doesn't set EEH_PE_CFG_BLOCKED when seeing EEH_PE_ISOLATED on the
      PE, in order to avoid the bogus data saved and restored to the PCI
      config space.

      Reported-by: Rajanikanth H. Adaveeshaiah <rajanikanth.ha@xxxxxxxxxx>
      Signed-off-by: Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit dd497154d359ba9d2d3e71075bed794b93b47b48
  Author: Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Aug 18 10:57:40 2015 +1000

      powerpc: Export include/uapi/asm/eeh.h

      This adds include/uapi/asm/eeh.h to kbuild so that the header
      file will be exported automatically with below command. The
      header file was added by commit ed3e81ff2016 ("powerpc/eeh: Move PE
      state constants around")

         make INSTALL_HDR_PATH=/tmp/headers \
              SRCARCH=powerpc headers_install

      Signed-off-by: Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit e0ad784b65a64a617179598addb417d49dd4e08f
  Author: Vaibhav Jain <vaibhav@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Jul 3 10:41:20 2015 +0530

      powerpc/pseries: enable RTC class support

      A working rtc kernel driver is needed so that hwclock can synchronize
      system clock to rtc during shutdown/boot. We already have a powernv
      platform rtc driver located at drivers/rtc/rtc-opal.c. However it depends
      on CONFIG_RTC_CLASS which is disabled by default. Hence the driver isn't
      enabled and not compiled for the powernv kernel.

      We fix this by enabling rtc class support in pseries defconfig which
      enables this driver and compiles it into the pseries kernel. In case
      CONFIG_PPC_POWERNV is not enabled we fallback to 'Generic RTC support'
      driver which emulates the legacy 'PC RTC driver'.

      Signed-off-by: Vaibhav Jain <vaibhav@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 1d805440a364b4a68562e70119d8f94456698e55
  Author: Nikunj A Dadhania <nikunj@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Jul 2 11:09:01 2015 +0530

      powerpc/numa: initialize distance lookup table from drconf path

      In some situations, a NUMA guest that supports
      ibm,dynamic-memory-reconfiguration node will end up having flat NUMA
      distances between nodes. This is because of two problems in the
      current code.

      1) Different representations of associativity lists.

         There is an assumption about the associativity list in
         initialize_distance_lookup_table(). Associativity list has two forms:

         a) [cpu,memory]@x/ibm,associativity has following
            format:
                 <N> <N integers>

         b) ibm,dynamic-reconfiguration-memory/ibm,associativity-lookup-arrays

                 <M> <N> <M associativity lists each having N integers>
                 M = the number of associativity lists
                 N = the number of entries per associativity list

         Fix initialize_distance_lookup_table() so that it does not assume
         "case a". And update the caller to skip the length field before
         sending the associativity list.

      2) Distance table not getting updated from drconf path.

         Node distance table will not get initialized in certain cases as
         ibm,dynamic-reconfiguration-memory path does not initialize the
         lookup table.

         Call initialize_distance_lookup_table() from drconf path with
         appropriate associativity list.

      Reported-by: Bharata B Rao <bharata@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Nikunj A Dadhania <nikunj@xxxxxxxxxxxxxxxxxx>
      Acked-by: Anton Blanchard <anton@xxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 53522982fc3c254bb4444c336cb005c8636930c8
  Author: Andrew Donnellan <andrew.donnellan@xxxxxxxxxxx>
  Date:   Fri Aug 7 13:45:54 2015 +1000

      powerpc/powernv: move dma_get_required_mask from pnv_phb to 
pci_controller_ops

      Simplify the dma_get_required_mask call chain by moving it from pnv_phb to
      pci_controller_ops, similar to commit 763d2d8df1ee ("powerpc/powernv:
      Move dma_set_mask from pnv_phb to pci_controller_ops").

      Previous call chain:

        0) call dma_get_required_mask() (kernel/dma.c)
        1) call ppc_md.dma_get_required_mask, if it exists. On powernv, that
           points to pnv_dma_get_required_mask() (platforms/powernv/setup.c)
        2) device is PCI, therefore call pnv_pci_dma_get_required_mask()
           (platforms/powernv/pci.c)
        3) call phb->dma_get_required_mask if it exists
        4) it only exists in the ioda case, where it points to
             pnv_pci_ioda_dma_get_required_mask() (platforms/powernv/pci-ioda.c)

      New call chain:

        0) call dma_get_required_mask() (kernel/dma.c)
        1) device is PCI, therefore call 
pci_controller_ops.dma_get_required_mask
           if it exists
        2) in the ioda case, that points to pnv_pci_ioda_dma_get_required_mask()
           (platforms/powernv/pci-ioda.c)

      In the p5ioc2 case, the call chain remains the same -
      dma_get_required_mask() does not find either a ppc_md call or
      pci_controller_ops call, so it calls __dma_get_required_mask().

      Signed-off-by: Andrew Donnellan <andrew.donnellan@xxxxxxxxxxx>
      Reviewed-by: Daniel Axtens <dja@xxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 73b341efda6664afbb0b6884eae60f04208b4128
  Author: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
  Date:   Fri Aug 7 16:19:47 2015 +1000

      powerpc/mm: Drop CONFIG_PPC_HAS_HASH_64K

      The relation between CONFIG_PPC_HAS_HASH_64K and CONFIG_PPC_64K_PAGES is
      painfully complicated.

      But if we rearrange it enough we can see that PPC_HAS_HASH_64K
      essentially depends on PPC_STD_MMU_64 && PPC_64K_PAGES.

      We can then notice that PPC_HAS_HASH_64K is used in files that are only
      built for PPC_STD_MMU_64, meaning it's equivalent to PPC_64K_PAGES.

      So replace all uses and drop it.

      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Reviewed-by: Aneesh Kumar K.V <aneesh.kumar@xxxxxxxxxxxxxxxxxx>

  commit 55f8b5b82fe7ab21da4153ed177b6fe17b1d59a3
  Author: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
  Date:   Fri Aug 7 16:19:46 2015 +1000

      powerpc/mm: Simplify page size kconfig dependencies

      For config options with only a single value, guarding the single value
      with 'if' is the same as adding a 'depends' statement. And it's more
      standard to just use 'depends'.

      And if the option has both an 'if' guard and a 'depends' we can collapse
      them into a single 'depends' by combining them with &&.

      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Reviewed-by: Aneesh Kumar K.V <aneesh.kumar@xxxxxxxxxxxxxxxxxx>

  commit 953005770ec3b52132a4cdbdbce74bd0de2b8490
  Author: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
  Date:   Fri Aug 7 16:19:45 2015 +1000

      powerpc/mm: Drop the 64K on 4K version of pte_pagesize_index()

      Now that support for 64k pages with a 4K kernel is removed, this code is
      unreachable.

      CONFIG_PPC_HAS_HASH_64K can only be true when CONFIG_PPC_64K_PAGES is
      also true.

      But when CONFIG_PPC_64K_PAGES is true we include pte-hash64.h which
      includes pte-hash64-64k.h, which defines both pte_pagesize_index() and
      crucially __real_pte, which means this definition can never be used.

      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Reviewed-by: Aneesh Kumar K.V <aneesh.kumar@xxxxxxxxxxxxxxxxxx>

  commit 57fb907da89977640ef183556a621336c1348fa0
  Author: Emil Medve <Emilian.Medve@xxxxxxxxxxxxx>
  Date:   Wed Mar 25 00:28:48 2015 -0500

      iommu/fsl: Really fix init section(s) content

      '0f1fb99 iommu/fsl: Fix section mismatch' was intended to address the 
modpost
      warning and the potential crash. Crash which is actually easy to trigger 
with a
      'unbind' followed by a 'bind' sequence. The fix is wrong as
      fsl_of_pamu_driver.driver gets added by bus_add_driver() to a couple of
      klist(s) which become invalid/corrupted as soon as the init sections are 
freed.
      Depending on when/how the init sections storage is reused various/random 
errors
      and crashes will happen

      'cd70d46 iommu/fsl: Various cleanups' contains annotations that go 
further down
      the wrong path laid by '0f1fb99 iommu/fsl: Fix section mismatch'

      Now remove all the incorrect annotations from the above mentioned patches 
(not
      exactly a revert) and those previously existing in the code, This fixes 
the
      modpost warning(s), the unbind/bind sequence crashes and the random
      errors/crashes

      Fixes: 0f1fb99b62ce ("iommu/fsl: Fix section mismatch")
      Fixes: cd70d4659ff3 ("iommu/fsl: Various cleanups")
      Signed-off-by: Emil Medve <Emilian.Medve@xxxxxxxxxxxxx>
      Acked-by: Varun Sethi <Varun.Sethi@xxxxxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Tested-by: Madalin Bucur <Madalin.Bucur@xxxxxxxxxxxxx>
      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit f444f1f898d7c4bbe45d12ffe3f38349ff83ec4a
  Author: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
  Date:   Fri Aug 7 16:19:44 2015 +1000

      powerpc/cell: Drop support for 64K local store on 4K kernels

      Back in the olden days we added support for using 64K pages to map the
      SPU (Synergistic Processing Unit) local store on Cell, when the main
      kernel was using 4K pages.

      This was useful at the time because distros were using 4K pages, but
      using 64K pages on the SPUs could reduce TLB pressure there.

      However these days the number of Cell users is approaching zero, and
      supporting this option adds unpleasant complexity to the memory
      management code.

      So drop the option, CONFIG_SPU_FS_64K_LS, and all related code.

      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Acked-by: Jeremy Kerr <jk@xxxxxxxxxx>

  commit 74b5037baa2011a2799e2c43adde7d171b072f9e
  Author: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
  Date:   Fri Aug 7 16:19:43 2015 +1000

      powerpc/mm: Fix pte_pagesize_index() crash on 4K w/64K hash

      The powerpc kernel can be built to have either a 4K PAGE_SIZE or a 64K
      PAGE_SIZE.

      However when built with a 4K PAGE_SIZE there is an additional config
      option which can be enabled, PPC_HAS_HASH_64K, which means the kernel
      also knows how to hash a 64K page even though the base PAGE_SIZE is 4K.

      This is used in one obscure configuration, to support 64K pages for SPU
      local store on the Cell processor when the rest of the kernel is using
      4K pages.

      In this configuration, pte_pagesize_index() is defined to just pass
      through its arguments to get_slice_psize(). However pte_pagesize_index()
      is called for both user and kernel addresses, whereas get_slice_psize()
      only knows how to handle user addresses.

      This has been broken forever, however until recently it happened to
      work. That was because in get_slice_psize() the large kernel address
      would cause the right shift of the slice mask to return zero.

      However in commit 7aa0727f3302 ("powerpc/mm: Increase the slice range to
      64TB"), the get_slice_psize() code was changed so that instead of a
      right shift we do an array lookup based on the address. When passed a
      kernel address this means we index way off the end of the slice array
      and return random junk.

      That is only fatal if we happen to hit something non-zero, but when we
      do return a non-zero value we confuse the MMU code and eventually cause
      a check stop.

      This fix is ugly, but simple. When we're called for a kernel address we
      return 4K, which is always correct in this configuration, otherwise we
      use the slice mask.

      Fixes: 7aa0727f3302 ("powerpc/mm: Increase the slice range to 64TB")
      Reported-by: Cyril Bur <cyrilbur@xxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
      Reviewed-by: Aneesh Kumar K.V <aneesh.kumar@xxxxxxxxxxxxxxxxxx>

  commit cf27ec930be906e142c752f9161197d69ca534d7
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Tue Aug 11 16:48:32 2015 +0100

      iommu/io-pgtable-arm: Unmap and free table when overwriting with block

      When installing a block mapping, we unconditionally overwrite a non-leaf
      PTE if we find one. However, this can cause a problem if the following
      sequence of events occur:

        (1) iommu_map called for a 4k (i.e. PAGE_SIZE) mapping at some address
            - We initialise the page table all the way down to a leaf entry
            - No TLB maintenance is required, because we're going from invalid
              to valid.

        (2) iommu_unmap is called on the mapping installed in (1)
            - We walk the page table to the final (leaf) entry and zero it
            - We only changed a valid leaf entry, so we invalidate leaf-only

        (3) iommu_map is called on the same address as (1), but this time for
            a 2MB (i.e. BLOCK_SIZE) mapping)
            - We walk the page table down to the penultimate level, where we
              find a table entry
            - We overwrite the table entry with a block mapping and return
              without any TLB maintenance and without freeing the memory used
              by the now-orphaned table.

      This last step can lead to a walk-cache caching the overwritten table
      entry, causing unexpected faults when the new mapping is accessed by a
      device. One way to fix this would be to collapse the page table when
      freeing the last page at a given level, but this would require expensive
      iteration on every map call. Instead, this patch detects the case when
      we are overwriting a table entry and explicitly unmaps the table first,
      which takes care of both freeing and TLB invalidation.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Reported-by: Brian Starkey <brian.starkey@xxxxxxx>
      Tested-by: Brian Starkey <brian.starkey@xxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 5b9fb5e6c6c74666f88f34bd0db183b9c4269d97
  Author: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Jan 7 10:25:41 2015 +0100

      drm: atmel-hlcdc: add support for sama5d4 SoCs

      Describe capabilities of the HLCDC IP found on sama5d4 SoCs and add a
      new entry to the atmel_hlcdc_of_match table.

      Signed-off-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>

  commit 6b22cadce2175c997435d93cd3ef9b0389c45ad7
  Author: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Jan 7 10:12:41 2015 +0100

      drm: atmel-hlcdc: add support for at91sam9n12 SoC

      Describe capabilities of the HLCDC IP found on at91sam9n12 SoC and add a
      new entry to the atmel_hlcdc_of_match table.

      Signed-off-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>

  commit 348ef85f6216c1a11726a165a7f32b8516aa8014
  Author: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Jan 7 09:30:20 2015 +0100

      drm: atmel-hlcdc: add support for at91sam9x5 SoCs

      Describe capabilities of the HLCDC IP found on at91sam9x5 SoCs and add a
      new entry to the atmel_hlcdc_of_match table.

      Signed-off-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>

  commit 923f869846014ac56937690a7cc968414a1e92d0
  Author: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
  Date:   Tue Jan 6 11:18:09 2015 +0100

      drm: atmel-hlcdc: add RGB565 and RGB444 output support

      The HLCDC IP supports RGB565 and RGB444 output formats.

      Signed-off-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>

  commit aa690a9edc5750bb5955b524dd7db842e36004eb
  Author: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Jul 31 15:10:26 2015 +0200

      drm: atmel-hlcdc: add the missing DRM_ATOMIC flag

      The atmel-hlcdc driver already supports atomic operations, add the
      missing DRM_ATOMIC flag to expose the atomic features to userspace.

      Signed-off-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>

  commit e14c71c849f838a4618fe46f5b6a0414c07891d1
  Author: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Apr 20 13:43:26 2015 +0200

      drm: atmel-hlcdc: add PRIME support

      Signed-off-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>

  commit a9c909ce8c7853b4fc16055c50eb50d91e20cb93
  Author: Andy Lutomirski <luto@xxxxxxxxxx>
  Date:   Mon Aug 17 12:22:52 2015 -0700

      selftests/x86: Add syscall_nt selftest

      I've had this sitting around for a while.  Add it to the
      selftests tree.  Far Cry running under Wine depends on this
      behavior.

      Signed-off-by: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Brian Gerst <brgerst@xxxxxxxxx>
      Cc: Denys Vlasenko <dvlasenk@xxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/ee4d63799a9e5294b70930618b71d04d2770eb2d.1439838962.git.luto@xxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 33f3df41d03879ab86c7f2d650e67b655e0b85c8
  Author: Andy Lutomirski <luto@xxxxxxxxxx>
  Date:   Mon Aug 17 12:22:51 2015 -0700

      selftests/x86: Disable sigreturn_64

      sigreturn_64 was broken by ed596cde9425 ("Revert x86 sigcontext
      cleanups").  Turn it off until we have a better fix.

      Signed-off-by: Andy Lutomirski <luto@xxxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Brian Gerst <brgerst@xxxxxxxxx>
      Cc: Denys Vlasenko <dvlasenk@xxxxxxxxxx>
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/a184e75ff170a0bcd76bf376c41cad2c402fe9f7.1439838962.git.luto@xxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit a5dd19249607474ed680f16b4f5e8477d2b68689
  Merge: 6b7e265 512255a
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Tue Aug 18 09:39:47 2015 +0200

      Merge branch 'x86/urgent' into x86/asm to fix up conflicts and to pick up 
fixes

      Conflicts:
        arch/x86/entry/entry_64_compat.S
        arch/x86/math-emu/get_address.c

      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit ecc7c518b3017821a6b26fb5fdaa548afa8ee236
  Author: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>
  Date:   Mon Aug 17 15:54:41 2015 +0300

      iwlwifi: mvm: fix a race in D0i3 vs. Tx path

      When we enter D0i3, we must stop TXing otherwise the
      sequence number we use might conflict with the firmware's
      internal TX. In order to do so, we have
      IWL_MVM_STATUS_IN_D0I3 which should prevent any Tx while we
      enter D0i3. There is a bug in this code since we may Tx even
      if IWL_MVM_STATUS_IN_D0I3 is set. This can happen as long as
      mvm->d0i3_ap_sta_id is not set.

      To make sure that we don't have any packet in the Tx path
      while we set mvm->d0i3_ap_sta_id, call synchronize_net only
      after we already set mvm->d0i3_ap_sta_id.

      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit b3df22475423a99cc1f6c4b202970fa89a4d9716
  Author: David Spinadel <david.spinadel@xxxxxxxxx>
  Date:   Thu Aug 6 10:26:50 2015 +0300

      iwlwifi: mvm: don't disconnect on beacon loss in D0I3

      Currently if we wake up during D0I3 due to beacon loss we disconnect
      immediately. This behaviour causes redundant disconnection, which could
      be prevented by polling as it is usually done in mac80211.
      Instead, we prefer reporting beacon loss and let mac80211 try polling
      before disconnection.

      Signed-off-by: David Spinadel <david.spinadel@xxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit e192cd121dbe009f67eddd5171d588994b15486c
  Author: Adrien Schildknecht <adrien+dev@xxxxxxxxxxx>
  Date:   Fri Aug 14 02:35:32 2015 +0200

      iwlwifi: out-of-bounds access in iwl_init_sband_channels

      KASan error report:
      ==================================================================
      BUG: KASan: out of bounds access in iwl_init_sband_channels+0x207/0x260 
[iwlwifi] at addr ffff8800c2d0aac8
      Read of size 4 by task modprobe/329
      ==================================================================

      Both loops of this function compare data from the 'chan' array and then
      check if the index is valid.

      The 2 conditions should be inverted to avoid an out-of-bounds access.

      Signed-off-by: Adrien Schildknecht <adrien+dev@xxxxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit da0fa5ebb254d1617455ace9af1ce2f1d375a95d
  Author: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>
  Date:   Sun Aug 16 10:39:49 2015 +0300

      iwlwifi: bump mvm firmware API to 16

      The driver is now able to handle -16.ucode.

      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit 783eaee6dbf475827b5fbdb13c17c54510aaa95e
  Author: Alexander Bondar <alexander.bondar@xxxxxxxxx>
  Date:   Tue Jul 28 16:50:51 2015 +0300

      iwlwifi: rs: disable MIMO only if allowed in configuration

      Fix bug where MIMO is disabled for low latency TX on P2P VIF
      regardless of configuration. Make it dependent on
      IWL_MVM_RS_DISABLE_P2P_MIMO compilation option. Change configuration
      so that MIMO will be disabled only in SDIO platforms.

      Signed-off-by: Alexander Bondar <alexander.bondar@xxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit 74f4e0cc61080f63f28e8d519bdf437957e64217
  Author: Linus Walleij <linus.walleij@xxxxxxxxxx>
  Date:   Fri Aug 14 00:21:45 2015 +0200

      bcma: switch GPIO portions to use GPIOLIB_IRQCHIP

      This switches the BCMA GPIO driver to use GPIOLIB_IRQCHIP to
      handle its interrupts instead of rolling its own copy of the
      irqdomain handling etc.

      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Signed-off-by: Hauke Mehrtens <hauke@xxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 1165dd900cc8de3addbc8bef7e6196b07799d25e
  Author: Miaoqing Pan <miaoqing@xxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 14:20:46 2015 +0800

      ath9k: add correct MAC/BB name for ar9561

      MAC/BB name is"????" if the MAC/BB is unknown.

      Signed-off-by: Miaoqing Pan <miaoqing@xxxxxxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit fc645df093926d8cd33a9dd9b6532ff3fd937193
  Author: Guy Mishol <guym@xxxxxx>
  Date:   Tue Aug 11 10:02:57 2015 +0300

      wl18xx: add diversity statistics

      Add diversity statistics and sync the driver
      statistics acx and debugfs representation
      with the current fw api.

      Signed-off-by: Guy Mishol <guym@xxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit c48276cbbeaedd49cdf32f2b734b4a1ec6d6ccad
  Author: Eliad Peller <eliad@xxxxxxxxxx>
  Date:   Tue Aug 11 10:02:56 2015 +0300

      wl18xx: update statistics acx and debugfs files

      Sync the driver statistics acx and debugfs representation
      with the current fw api.

      Signed-off-by: Eliad Peller <eliad@xxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit f10746fef3dfa8546808989f71c3543db832f374
  Author: Adrien Schildknecht <adrien+dev@xxxxxxxxxxx>
  Date:   Tue Aug 11 00:25:53 2015 +0200

      rt2x00: adjust EEPROM_SIZE for rt2500usb

      rt2500usb_validate_eeprom() read data up to 0x6e (EEPROM_CALIBRATE_OFFSET)
      but only 0x6a bytes has been allocated and read from the eeprom.

      This lead to out-of-bound accesses and invalid values for
      EEPROM_BBPTUNE_R17 and EEPROM_CALIBRATE_OFFSET.

      Change the EEPROM_SIZE to 0x6e in order to retrieve all the fields.

      Tested with a rt2570 device.

      Signed-off-by: Adrien Schildknecht <adrien+dev@xxxxxxxxxxx>
      Acked-by: Stanislaw Gruszka <sgruszka@xxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit bafc6e4cd897ef14015d8d32a04ee9bfa8d91370
  Author: John Linville <linville@xxxxxxxxxxxxx>
  Date:   Mon Aug 10 12:05:39 2015 -0400

      mwl8k: refactor some conditionals for clarity

      CC [M]  drivers/net/wireless/mwl8k.o
      drivers/net/wireless/mwl8k.c: In function â??mwl8k_bss_info_changedâ??:
      drivers/net/wireless/mwl8k.c:3290:2: warning: â??ap_mcs_ratesâ?? may be 
used uninitialized in this function [-Wmaybe-uninitialized]
        memcpy(cmd->mcs_set, mcs_rates, 16);
        ^
      drivers/net/wireless/mwl8k.c:4987:5: note: â??ap_mcs_ratesâ?? was 
declared here
        u8 ap_mcs_rates[16];
           ^

      The warning was bogus.  But the conditionals were rather complicated,
      with multiple redundant checks.  This consolidates the checking and
      makes it more readable IMHO.

      Signed-off-by: John W. Linville <linville@xxxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 9ff4b6de26a72f76450943548ee7d9d779eeaac5
  Author: Taehee Yoo <ap420073@xxxxxxxxx>
  Date:   Tue Apr 7 03:13:00 2015 +0900

      rtlwifi: rtl8192cu: Remove and replace routine in hw.c and mac.c

      I remove duplicated routines which related rtl92cu_set_hw_reg().

      1. rtl92c_set_qos() and HW_VAR_AC_PARAM routine are similar code.
      so i replace code with rtlpriv->cfg->ops->set_hw_reg().

      2. rtl92c_set_mac_addr() and 'HW_VAR_ETHER_ADDR' case at
      rtl92cu_set_hw_reg() routine are similar code.
      so i removed rtl92c_set_mac_addr() function.
      also it was not used anywhere.

      3. remove HW_VAR_ACM_CTRL routine in rtl92cu_set_hw_reg().
      if rtl_usb->acm_method is not EACMWAY2_SW, HW_VAR_ACM_CTRL is called
      from HW_VAR_AC_PARAM. but it never called. because acm_method is always
      EACMWAY2_SW. so i remove acm_method check routine
      and HW_VAR_ACM_CTRL routine.

      both usb and pci interface is not used HW_VAR_ACM_CTRL.
      but i can't test pci interface module, so i didn't modify pci code.

      Signed-off-by: Taehee Yoo <ap420073@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit bf27cea49502799be15beab3567ea2bd9901ad2f
  Author: Taehee Yoo <ap420073@xxxxxxxxx>
  Date:   Tue Mar 31 00:55:32 2015 +0900

      rtlwifi: rtl8192cu: remove duplicated routine in hw.c and mac.c

      rtl92c_set_xxx_filter is same routine with rtl92cu_set_hw_reg.
      so i remove those functions that are rtl92c_set_xxx_filter.
      (rtl92c_get_xxx_filter is also same reason.)
      also i add code updating struct rtl_mac member variable in the
      rtl92cu_set_hw_reg.
      after that, no more _update_mac_setting is not useful. thus i remove that.

      Signed-off-by: Taehee Yoo <ap420073@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 15f6d96ded057b898312b0a088a964d585a779b1
  Merge: 94e92a7 8f9c98d
  Author: Kalle Valo <kvalo@xxxxxxxxxxxxxx>
  Date:   Tue Aug 18 08:44:22 2015 +0300

      Merge tag 'mac80211-next-for-davem-2015-08-14' mac80211-next.git

      iwlwifi needs new mac80211 patches so merge mac80211-next.git to
      wireless-drivers-next.git.

  commit 0b233dc7167884f95f08e796ac6a6767ae7d0d70
  Merge: f376d4a 65d7ab8
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 21:33:06 2015 -0700

      Merge branch 'Identifier-Locator-Addressing'

      Tom Herbert says:

      ====================
      net: Identifier Locator Addressing - Part I

      This patch set provides rudimentary support for Identifier Locator
      Addressing or ILA. The basic concept of ILA is that we split an IPv6
      address into a 64 bit locator and 64 bit identifier. The identifier is
      the identity of an entity in communication ("who"), and the locator
      expresses the location of the entity ("where"). Applications
      use externally visible address that contains the identifier.
      When a packet is actually sent, a translation is done that
      overwrites the first 64 bits of the address with a locator.
      The packet can then be forwarded over the network to the host where
      the addressed entity is located. At the receiver, the reverse
      translation is done so the that the application sees the original,
      untranslated address. Presumably an external control plane will
      provide identifier->locator mappings.

      v2:
        - Fix compilation erros when LWT not configured
        - Consolidate ILA into a single ila.c

      v3:
        - Change pseudohdr argument od inet_proto_csum_replace functions to
          be a bool

      v4:
        - In ila_build_state check locator being in netlink params before
          allocating tunnel state

      The data path for ILA is a simple NAT translation that only operates
      on the upper 64 bits of a destination address in IPv6 packets. The
      basic process is:

         1) Lookup 64 bit identifier (lower 64 bits of destination)
         2) If a match is found
            a) Overwrite locator (upper 64 bits of destination) with
               the new locator
            b) Adjust any checksum that has destination address included in
               pseudo header
         3) Send or receive packet

      ILA is a means to implement tunnels or network virtualization without
      encapsulation. Since there is no encapsulation involved, we assume that
      stateless support in the network for IPv6 (e.g. RSS, ECMP, TSO, etc.)
      just works. Also, since we're minimally changing the packet many of
      the worries about encapsulation (MTU, checksum, fragmentation) are
      not relevant. The downside is that, ILA is not extensible like other
      encapsulations (GUE for instance) so it might not be appropriate for
      all use cases. Also, this only makes sense to do in IPv6!

      A key aspect of ILA is performance. The intent is that ILA would be
      used in data centers in virtualizing tasks or jobs. In the fullest
      incarnation all intra data center communications might be targeted to
      virtual ILA addresses. This is basically adding a new virtualization
      capability to the existing services in a datacenter, so there is a
      strong expectation is that this does not degrade performance for
      existing applications.

      Performance seems to be dependent on how ILA is hooked into kernel.
      ILA can be implemented under some different models:

        - Mechanically it is a form a stateless DNAT
        - It can be thought of as a type of (source) routing
        - As a functional replacement of encapsulation

      In this patch set we hook into the data path using Light Weight
      Tunnels (LWT) infrastructure. As part of that, we add support in LWT
      to redirect dst input. iproute will be modified to take a new ila encap
      type. ILA can be configured like:

      ip route add 3333:0:0:1:5555:0:2:0/128 \
         encap ila 2001:0:0:2 via 2401:db00:20:911a:face:0:27:0

      ip -6 addr add 3333:0:0:1:5555:0:1:0/128 dev eth0

      ip route add table local local 2001:0:0:1:5555:0:1:0/128
         encap ila 3333:0:0:1 dev lo

      So sending to destination 3333:0:0:1:5555:0:2:0 will have destination
      of 2001:0:0:2:5555:0:2:0 on the wire.

      Performance results are below. With ILA we see about a 10% drop in
      pps compared to non-ILA. Much of this drop can be attributed to the
      loss of early demux on input (translation occurs after it is attempted).
      We will address this in the next patch set. Also, IPvlan input path
      does not work with ILA since the routing is bypassed-- this will
      be addressed in a future patch.

      Performance testing:

      Performing netperf TCP_RR with 200 clients:

      Non-ILA baseline
        84.92% CPU utilization
        1861922.9 tps
        93/163/330 50/90/99% latencies

      ILA single destination
        83.16% CPU utilization
        1679683.4 tps
        105/180/332 50/90/99% latencies

      References:

      Slides from netconf:
      http://vger.kernel.org/netconf2015Herbert-ILA.pdf

      Slides from presentation at IETF:
      https://www.ietf.org/proceedings/92/slides/slides-92-nvo3-1.pdf

      I-D:
      https://tools.ietf.org/html/draft-herbert-nvo3-ila-00
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 65d7ab8de582bc668e3dabb6ff48f750098a6e78
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 13:42:27 2015 -0700

      net: Identifier Locator Addressing module

      Adding new module name ila. This implements ILA translation. Light
      weight tunnel redirection is used to perform the translation in
      the data path. This is configured by the "ip -6 route" command
      using the "encap ila <locator>" option, where <locator> is the
      value to set in destination locator of the packet. e.g.

      ip -6 route add 3333:0:0:1:5555:0:1:0/128 \
            encap ila 2001:0:0:1 via 2401:db00:20:911a:face:0:25:0

      Sets a route where 3333:0:0:1 will be overwritten by
      2001:0:0:1 on output.

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit abc5d1ff3e8f9b4a9d274818459b123e31981dc9
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 13:42:26 2015 -0700

      net: Add inet_proto_csum_replace_by_diff utility function

      This function updates a checksum field value and skb->csum based on
      a value which is the difference between the old and new checksum.

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4b048d6d9d0b0b90e1e94f2393796bbf1fa8df4e
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 13:42:25 2015 -0700

      net: Change pseudohdr argument of inet_proto_csum_replace* to be a bool

      inet_proto_csum_replace4,2,16 take a pseudohdr argument which indicates
      the checksum field carries a pseudo header. This argument should be a
      boolean instead of an int.

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2536862311d2276454ddef9dc36d6551a4b400fd
  Author: Tom Herbert <tom@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 13:42:24 2015 -0700

      lwt: Add support to redirect dst.input

      This patch adds the capability to redirect dst input in the same way
      that dst output is redirected by LWT.

      Also, save the original dst.input and and dst.out when setting up
      lwtunnel redirection. These can be called by the client as a pass-
      through.

      Signed-off-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f376d4adfdd2d860aea3e99aa86e98324621ece7
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 21:24:59 2015 -0700

      enic: Fix sparse warning in vnic_devcmd_init().

      >> drivers/net/ethernet/cisco/enic/vnic_dev.c:1095:13: sparse: incorrect 
type in assignment (different address spaces)
         drivers/net/ethernet/cisco/enic/vnic_dev.c:1095:13:    expected void 
*res
         drivers/net/ethernet/cisco/enic/vnic_dev.c:1095:13:    got void 
[noderef] <asn:2>*

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ecf842f65c76f7dc2420a5295dfbf01ec7232320
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 21:22:26 2015 -0700

      mlx5e: Fix sparse warnings in mlx5e_handle_csum().

      >> drivers/net/ethernet/mellanox/mlx5/core/en_rx.c:173:44: sparse: 
incorrect type in argument 1 (different base types)
         drivers/net/ethernet/mellanox/mlx5/core/en_rx.c:173:44:    expected 
restricted __sum16 [usertype] n
         drivers/net/ethernet/mellanox/mlx5/core/en_rx.c:173:44:    got 
restricted __be16 [usertype] check_sum

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c7f5408493aeb01532927b2276316797a03ed6ee
  Author: Dave Chinner <dchinner@xxxxxxxxxx>
  Date:   Wed Mar 4 14:07:22 2015 -0500

      inode: rename i_wb_list to i_io_list

      There's a small consistency problem between the inode and writeback
      naming. Writeback calls the "for IO" inode queues b_io and
      b_more_io, but the inode calls these the "writeback list" or
      i_wb_list. This makes it hard to an new "under writeback" list to
      the inode, or call it an "under IO" list on the bdi because either
      way we'll have writeback on IO and IO on writeback and it'll just be
      confusing. I'm getting confused just writing this!

      So, rename the inode "for IO" list variable to i_io_list so we can
      add a new "writeback list" in a subsequent patch.

      Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Josef Bacik <jbacik@xxxxxx>
      Reviewed-by: Jan Kara <jack@xxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Tested-by: Dave Chinner <dchinner@xxxxxxxxxx>

  commit 6c3af955935223217f23ef0ae672d3842418ec50
  Author: Horia Geant? <horia.geanta@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 15:24:10 2015 +0300

      crypto: caam - add support for LS1021A

      LS1021A is a QorIQ SoC having little endian CAAM.

      There are a few differences b/w QorIQ and i.MX from CAAM perspective:

      1. i.MX platforms are somewhat special wrt. 64-bit registers:
      -big endian format at 64-bit level: MSW at address+0 and LSW at address+4
      -little endian format at 32-bit level (within MSW and LSW)
      and thus need special handling.

      2. No CCM (clock controller module) for QorIQ.
      No CAAM clocks to enable / disable.

      A new Kconfig option - CRYPTO_DEV_FSL_CAAM_LE - is added to indicate
      CAAM is little endian (*). It is hidden from the user (to avoid
      misconfiguration); when adding support for a new platform with LE CAAM,
      either the Kconfig needs to be updated or the corresponding defconfig
      needs to indicate that CAAM is LE.
      (*) Using a DT property to provide CAAM endianness would not allow
      for the ifdeffery.

      In order to keep changes to a minimum, the following changes
      are postponed:
      -endianness fix of the last word in the S/G (rsvd2, bpid, offset),
      fields are always 0 anyway;
      -S/G format fix for i.MX7 (yes, i.MX7 support was not added yet,
      but still...)

      Signed-off-by: Horia Geant? <horia.geanta@xxxxxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit c1ae632ad2608d0214291a64ca719f900ffef14b
  Author: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
  Date:   Fri Aug 14 07:24:23 2015 -0700

      crypto: qat - Don't move data inside output buffer

      Change memcpy to memmove because the copy is done within the same buffer.

      Signed-off-by: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 3c5f0ed78e976be705218cad62acf6a68e9d121e
  Author: Leonidas Da Silva Barbosa <leosilva@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 10:14:16 2015 -0300

      crypto: vmx - Fixing GHASH Key issue on little endian

      GHASH table algorithm is using a big endian key.
      In little endian machines key will be LE ordered.
      After a lxvd2x instruction key is loaded as it is,
      LE/BE order, in first case it'll generate a wrong
      table resulting in wrong hashes from the algorithm.

      Bug affects only LE machines.
      In order to fix it we do a swap for loaded key.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Leonidas S Barbosa <leosilva@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 1d4aa0b4c1816e8ca92a6aadb0d8f6b43c56c0d0
  Author: Leonidas Da Silva Barbosa <leosilva@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 10:12:22 2015 -0300

      crypto: vmx - Fixing AES-CTR counter bug

      AES-CTR is using a counter 8bytes-8bytes what miss match with
      kernel specs.

      In the previous code a vadduwm was done to increment counter.
      Replacing this for a vadduqm now considering both cases counter
      8-8 bytes and full 16bytes.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Leonidas S Barbosa <leosilva@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 4524cd093fa8f03b198e095ebbb679c30839559c
  Author: Jaiprakash Singh <b44839@xxxxxxxxxxxxx>
  Date:   Fri Jul 10 17:11:01 2015 +0800

      powerpc/t1023rdb/dts: set ifc nand chip select from 2 to 1

      IFC NAND chip select is wrongly mapped to 2 in reg property of
      NAND node. Due to this kernel is not able probe NAND flash. Set
      chip select to 1 in reg property.

      Signed-off-by: Jaiprakash Singh <b44839@xxxxxxxxxxxxx>
      Signed-off-by: Shengzhou Liu <Shengzhou.Liu@xxxxxxxxxxxxx>
      Signed-off-by: Scott Wood <scottwood@xxxxxxxxxxxxx>

  commit 163e60c169752b2e817735d28d3bd2d73cd268f3
  Author: Wang Dongsheng <dongsheng.wang@xxxxxxxxxxxxx>
  Date:   Fri Aug 14 11:12:10 2015 +0800

      powerpc/mpc85xx:Add SCFG device tree support of T104x

      Signed-off-by: Wang Dongsheng <dongsheng.wang@xxxxxxxxxxxxx>
      Signed-off-by: Scott Wood <scottwood@xxxxxxxxxxxxx>

  commit c8254e27fd34cdd21febd5b1caca409117914332
  Author: Wang Dongsheng <dongsheng.wang@xxxxxxxxxxxxx>
  Date:   Fri Aug 14 11:12:09 2015 +0800

      powerpc/85xx: Add binding for SCFG

      SCFG provides SoC specific configuration and status registers for
      the chip. Add this for powerpc platform.

      Signed-off-by: Wang Dongsheng <dongsheng.wang@xxxxxxxxxxxxx>
      Signed-off-by: Scott Wood <scottwood@xxxxxxxxxxxxx>

  commit 0d748ec5eaedfa0802e02df6b5912d32c752f88e
  Author: Priyanka Jain <Priyanka.Jain@xxxxxxxxxxxxx>
  Date:   Thu Jul 30 10:33:55 2015 +0530

      powerpc/fsl-booke: Add T1040D4RDB/T1042D4RDB board support

      T1040D4RDB/T1042D4RDB are Freescale Reference Design Board
      which can support T1040/T1042 QorIQ Power
      Architectureâ?¢ processor respectively

      T1040D4RDB/T1042D4RDB board Overview
      -------------------------------------
      - SERDES Connections, 8 lanes supporting:
              - PCI
              - SGMII
              - SATA 2.0
              - QSGMII(only for T1040D4RDB)
          - DDR Controller
              - Supports rates of up to 1600 MHz data-rate
              - Supports one DDR4 UDIMM
          -IFC/Local Bus
              - NAND flash: 1GB 8-bit NAND flash
              - NOR: 128MB 16-bit NOR Flash
          - Ethernet
              - Two on-board RGMII 10/100/1G ethernet ports.
              - PHY #0 remains powered up during deep-sleep
          - CPLD
          - Clocks
              - System and DDR clock (SYSCLK, â??DDRCLKâ??)
              - SERDES clocks
          - Power Supplies
          - USB
              - Supports two USB 2.0 ports with integrated PHYs
              - Two type A ports with 5V@xxxx per port.
          - SDHC
              - SDHC/SDXC connector
          - SPI
              - On-board 64MB SPI flash
          - I2C
              - Devices connected: EEPROM, thermal monitor, VID controller
          - Other IO
              - Two Serial ports
              - ProfiBus port

          Add support for T1040/T1042D4RDB board:
          -add device tree
          -Add entry in corenet_generic.c

      Signed-off-by: Priyanka Jain <Priyanka.Jain@xxxxxxxxxxxxx>
      Signed-off-by: Scott Wood <scottwood@xxxxxxxxxxxxx>

  commit 32d3c4ff01e0c765594b7dd8f5c539e9dca92223
  Author: Hou Zhiqiang <B48286@xxxxxxxxxxxxx>
  Date:   Mon Aug 10 17:39:45 2015 +0800

      powerpc/85xx: Remove unused pci fixup hooks on c293pcie

      The c293pcie board is an endpoint device and it doesn't need PM,
      so remove hooks pcibios_fixup_phb and pcibios_fixup_bus.

      Signed-off-by: Hou Zhiqiang <B48286@xxxxxxxxxxxxx>
      Signed-off-by: Scott Wood <scottwood@xxxxxxxxxxxxx>

  commit 69399ee9cbcb00bbdd9ff6fafafde23ef404d40f
  Author: Kevin Hao <haokexin@xxxxxxxxx>
  Date:   Thu Aug 13 19:51:36 2015 +0800

      powerpc/e6500: hw tablewalk: optimize a bit for tcd lock acquiring codes

      It makes no sense to put the instructions for calculating the lock
      value (cpu number + 1) and the clearing of eq bit of cr1 in lbarx/stbcx
      loop. And when the lock is acquired by the other thread, the current
      lock value has no chance to equal with the lock value used by current
      cpu. So we can skip the comparing for these two lock values in the
      lbz/bne loop.

      Signed-off-by: Kevin Hao <haokexin@xxxxxxxxx>
      Signed-off-by: Scott Wood <scottwood@xxxxxxxxxxxxx>

  commit e5e55cc08c76134e38526a66b3bd30b1b71bbf63
  Author: Kevin Hao <haokexin@xxxxxxxxx>
  Date:   Thu Aug 13 19:51:35 2015 +0800

      powerpc/e6500: remove the stale TCD_LOCK macro

      Since we moved the "lock" to be the first element of
      struct tlb_core_data in commit 82d86de25b9c ("powerpc/e6500: Make TLB
      lock recursive"), this macro is not used by any code. Just delete it.

      Signed-off-by: Kevin Hao <haokexin@xxxxxxxxx>
      Signed-off-by: Scott Wood <scottwood@xxxxxxxxxxxxx>

  commit e8c4b3dfe17a7e83ea134d6a857f9a3e8e71357f
  Author: Jason Jin <Jason.Jin@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 15:50:57 2015 +0800

      powerpc: Add a vga alias node for P1022

      In u-boot, when set the video as console, the name 'vga' is used
      as a general name for the video device, during the fdt_fixup_stdout
      process, the 'vga' name is used to search in the dtb to setup the
      'linux,stdout-path' node. Though the P1022 DIU is not VGA-compatible
      device, to meet the 'vga' name used in u-boot, the vga alias node is
      added for P1022 in this patch. At the same time, a display alias is
      also added so that no other components grow dependencies on the vga
      alias node.

      Signed-off-by: Jason Jin <Jason.Jin@xxxxxxxxxxxxx>
      Signed-off-by: Wang Dongsheng <dongsheng.wang@xxxxxxxxxxxxx>
      Signed-off-by: Scott Wood <scottwood@xxxxxxxxxxxxx>

  commit 228b687d9e20f367e4d5ea8723e3abbf0892db61
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Mon Aug 17 07:21:43 2015 -0700

      hwmon: (ltc2978) Add support for LTC3886

      LTC3886 is a is a dual PolyPhase DC/DC synchronous step-down switching
      regulator controller. It is mostly command compatible to LTC3883,
      but supports two phases instead of one.

      Suggested-by: Michael Jones <mike@xxxxxxxxxxxxx>
      Tested-by: Michael Jones <mike@xxxxxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit 52aae6af71e0e78e25c64e13266917bb323984d5
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Mon Aug 17 06:38:01 2015 -0700

      hwmon: (ltc2978) Add support for LTC2980 and LTM2987

      LTC2980 and LTM2987 are command compatible to LTC2977. They consist of
      two LTC2977 on a single die, and are instantiated as two separate chips,
      each supporting eight channels.

      Suggested-by: Michael Jones <mike@xxxxxxxxxxxxx>
      Tested-by: Michael Jones <mike@xxxxxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit acb092cdf9a285fd4706bc6ffd5f99840d53bba5
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Mon Aug 17 06:27:56 2015 -0700

      hwmon: (ltc2978) Add missing chip IDs for LTC2978 and LTC3882

      Add additional chip ID for an older revision of LTC2978, as well
      as two chip IDs for LTC3882. Turns out the LTC3882 does support the
      LTC2978_MFR_SPECIAL_ID register, and reading it returns its chip ID,
      but the register is undocumented.

      Suggested-by: Michael Jones <mike@xxxxxxxxxxxxx>
      Tested-by: Michael Jones <mike@xxxxxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit 00c83371911836c47654e1de5b4706a0e578922a
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Mon Aug 17 06:21:01 2015 -0700

      hwmon: (ltc2978) Use correct ID mask to detect all chips

      Per information from Linear Technologies, the ID mask is 12 bit
      for all chips of this series. Use this mask to detect chips to ensure
      that all chip revisions are detected.

      Suggested-by: Michael Jones <mike@xxxxxxxxxxxxx>
      Tested-by: Michael Jones <mike@xxxxxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit 5e8018fc61423e677398d4ad4d72df70b9788e77
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Fri Aug 14 16:03:40 2015 +0200

      netfilter: nf_conntrack: add efficient mark to zone mapping

      This work adds the possibility of deriving the zone id from the skb->mark
      field in a scalable manner. This allows for having only a single template
      serving hundreds/thousands of different zones, for example, instead of the
      need to have one match for each zone as an extra CT jump target.

      Note that we'd need to have this information attached to the template as 
at
      the time when we're trying to lookup a possible ct object, we already need
      to know zone information for a possible match when going into
      __nf_conntrack_find_get(). This work provides a minimal implementation for
      a possible mapping.

      In order to not add/expose an extra ct->status bit, the zone structure has
      been extended to carry a flag for deriving the mark.

      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit deedb59039f111c41aa5a54ee384c8e7c08bc78a
  Author: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
  Date:   Fri Aug 14 16:03:39 2015 +0200

      netfilter: nf_conntrack: add direction support for zones

      This work adds a direction parameter to netfilter zones, so identity
      separation can be performed only in original/reply or both directions
      (default). This basically opens up the possibility of doing NAT with
      conflicting IP address/port tuples from multiple, isolated tenants
      on a host (e.g. from a netns) without requiring each tenant to NAT
      twice resp. to use its own dedicated IP address to SNAT to, meaning
      overlapping tuples can be made unique with the zone identifier in
      original direction, where the NAT engine will then allocate a unique
      tuple in the commonly shared default zone for the reply direction.
      In some restricted, local DNAT cases, also port redirection could be
      used for making the reply traffic unique w/o requiring SNAT.

      The consensus we've reached and discussed at NFWS and since the initial
      implementation [1] was to directly integrate the direction meta data
      into the existing zones infrastructure, as opposed to the ct->mark
      approach we proposed initially.

      As we pass the nf_conntrack_zone object directly around, we don't have
      to touch all call-sites, but only those, that contain equality checks
      of zones. Thus, based on the current direction (original or reply),
      we either return the actual id, or the default NF_CT_DEFAULT_ZONE_ID.
      CT expectations are direction-agnostic entities when expectations are
      being compared among themselves, so we can only use the identifier
      in this case.

      Note that zone identifiers can not be included into the hash mix
      anymore as they don't contain a "stable" value that would be equal
      for both directions at all times, f.e. if only zone->id would
      unconditionally be xor'ed into the table slot hash, then replies won't
      find the corresponding conntracking entry anymore.

      If no particular direction is specified when configuring zones, the
      behaviour is exactly as we expect currently (both directions).

      Support has been added for the CT netlink interface as well as the
      x_tables raw CT target, which both already offer existing interfaces
      to user space for the configuration of zones.

      Below a minimal, simplified collision example (script in [2]) with
      netperf sessions:

        +--- tenant-1 ---+   mark := 1
        |    netperf     |--+
        +----------------+  |                CT zone := mark [ORIGINAL]
         [ip,sport] := X   +--------------+  +--- gateway ---+
                           | mark routing |--|     SNAT      |-- ... +
                           +--------------+  +---------------+       |
        +--- tenant-2 ---+  |                                     ~~~|~~~
        |    netperf     |--+                +-----------+           |
        +----------------+   mark := 2       | netserver |------ ... +
         [ip,sport] := X                     +-----------+
                                              [ip,port] := Y
      On the gateway netns, example:

        iptables -t raw -A PREROUTING -j CT --zone mark --zone-dir ORIGINAL
        iptables -t nat -A POSTROUTING -o <dev> -j SNAT --to-source <ip> 
--random-fully

        iptables -t mangle -A PREROUTING -m conntrack --ctdir ORIGINAL -j 
CONNMARK --save-mark
        iptables -t mangle -A POSTROUTING -m conntrack --ctdir REPLY -j 
CONNMARK --restore-mark

      conntrack dump from gateway netns:

        netperf -H 10.1.1.2 -t TCP_STREAM -l60 -p12865,5555 from each tenant 
netns

        tcp 6 431995 ESTABLISHED src=40.1.1.1 dst=10.1.1.2 sport=5555 
dport=12865 zone-orig=1
                                 src=10.1.1.2 dst=10.1.1.1 sport=12865 
dport=1024
                     [ASSURED] mark=1 secctx=system_u:object_r:unlabeled_t:s0 
use=1

        tcp 6 431994 ESTABLISHED src=40.1.1.1 dst=10.1.1.2 sport=5555 
dport=12865 zone-orig=2
                                 src=10.1.1.2 dst=10.1.1.1 sport=12865 
dport=5555
                     [ASSURED] mark=2 secctx=system_u:object_r:unlabeled_t:s0 
use=1

        tcp 6 299 ESTABLISHED src=40.1.1.1 dst=10.1.1.2 sport=39438 dport=33768 
zone-orig=1
                              src=10.1.1.2 dst=10.1.1.1 sport=33768 dport=39438
                     [ASSURED] mark=1 secctx=system_u:object_r:unlabeled_t:s0 
use=1

        tcp 6 300 ESTABLISHED src=40.1.1.1 dst=10.1.1.2 sport=32889 dport=40206 
zone-orig=2
                              src=10.1.1.2 dst=10.1.1.1 sport=40206 dport=32889
                     [ASSURED] mark=2 secctx=system_u:object_r:unlabeled_t:s0 
use=2

      Taking this further, test script in [2] creates 200 tenants and runs
      original-tuple colliding netperf sessions each. A conntrack -L dump in
      the gateway netns also confirms 200 overlapping entries, all in 
ESTABLISHED
      state as expected.

      I also did run various other tests with some permutations of the script,
      to mention some: SNAT in random/random-fully/persistent mode, no zones (no
      overlaps), static zones (original, reply, both directions), etc.

        [1] 
http://thread.gmane.org/gmane.comp.security.firewalls.netfilter.devel/57412/
        [2] https://paste.fedoraproject.org/242835/65657871/

      Signed-off-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: Pablo Neira Ayuso <pablo@xxxxxxxxxxxxx>

  commit 2af0a709134f842b67151d6b97d512184fcc4ad6
  Author: Loic Poulain <loic.poulain@xxxxxxxxx>
  Date:   Mon Aug 17 16:00:21 2015 +0200

      Bluetooth: hci_bcm: Use non-sleep version of gpio_set_value

      We should not sleep while holding a spinlock.
      bcm_gpio_set_power is called while holding the bcm_device_list lock.

      Signed-off-by: Loic Poulain <loic.poulain@xxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>

  commit dc028da54ed353edd44dca88b7eb19fd5126c354
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Sun Aug 16 17:13:27 2015 -0600

      inet: Move VRF table lookup to inlined function

      Table lookup compiles out when VRF is not enabled.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 808d28c468a89e8680396d98aea96024b6f5afdc
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Sun Aug 16 10:26:49 2015 -0600

      net: Fix docbook warning for IFF_VRF_MASTER enum

      kbuild test robot reported:
      tree:   git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 
master
      head:   d52736e24fe2e927c26817256f8d1a3c8b5d51a0
      commit: 4e3c89920cd3a6cfce22c6f537690747c26128dd [751/762] net: Introduce 
VRF related flags and helpers
      reproduce: make htmldocs

      >> Warning(include/linux/netdevice.h:1293): Enum value 'IFF_VRF_MASTER' 
not described in enum 'netdev_priv_flags'

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2f52bdcf6ba1bd81597b1505a222430676548b3a
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Sun Aug 16 07:49:20 2015 -0600

      net: Updates to netif_index_is_vrf

      As Eric noted netif_index_is_vrf is not called with rcu_read_lock held,
      so wrap the dev_get_by_index_rcu in rcu_read_lock and unlock.

      If VRF is not enabled or oif is 0 skip the device lookup. In both cases
      index cannot be the VRF master.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9cd3778cd7e8f165675705511cfcd4ea6eb88d27
  Merge: 0aa65cc bbceefc
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 15:51:36 2015 -0700

      Merge branch 'mlx5e-next'

      Achiad Shochat says:

      ====================
      Driver updates 16-Aug-2015

      This patchset contains bug fixes, new RSS and pause parameters ethtool
      options, and support for RX CHECKSUM_COMPLETE.

      Patchset was applied and tested over commit adc6310 ("Merge branch
      'mv88e6xxx-switchdev-fdb'").
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit bbceefce9adfc9cf7b4110727c96c841ba8c7964
  Author: Achiad Shochat <achiad@xxxxxxxxxxxx>
  Date:   Sun Aug 16 16:04:52 2015 +0300

      net/mlx5e: Support RX CHECKSUM_COMPLETE

      Only for packets with first ethertype set to IPv4/6 for now.

      Signed-off-by: Achiad Shochat <achiad@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3c2d18ef22df1bdccfb11a5b85b29e4e61b9d9c6
  Author: Achiad Shochat <achiad@xxxxxxxxxxxx>
  Date:   Sun Aug 16 16:04:51 2015 +0300

      net/mlx5e: Support ethtool get/set_pauseparam

      Only rx/tx pause settings.
      Autoneg setting is currently not supported.

      Signed-off-by: Achiad Shochat <achiad@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6fa1bcab6be6e9bd93f80e345c7e9a4ec7861df9
  Author: Achiad Shochat <achiad@xxxxxxxxxxxx>
  Date:   Sun Aug 16 16:04:50 2015 +0300

      net/mlx5e: Ethtool link speed setting fixes

      - Port speed settings are applied by the device only upon
        port admin status transition from DOWN to UP.
        So we enforce this transition regardless of the port's
        current operation state (which may be occasionally DOWN if
        for example the network cable is disconnected).
      - Fix the PORT_UP/DOWN device interface enum
      - Set the local_port bit in the device PAOS register
      - EXPORT the PAOS (Port Administrative and Operational Status)
        register set/query access functions.

      Signed-off-by: Achiad Shochat <achiad@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d9a40271cfe625950dc4ef0cbd8429c0d28e62d1
  Author: Achiad Shochat <achiad@xxxxxxxxxxxx>
  Date:   Sun Aug 16 16:04:49 2015 +0300

      net/mlx5e: HW LRO changes/fixes

      - Change the maximum LRO session size from 16KB to 64KB
      - Reduce the LRO session timeout from 512us to 32us in
        order to reduce the TCP latency of non-LRO'ed flows.
      - Fix skb_shinfo(skb)->gso_size and set skb_shinfo(skb)->gso_type.
      - Fix a bug accessing un-initialized mdev pointer.

      Signed-off-by: Achiad Shochat <achiad@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e842b1001dc9b90cc62b489b07ff18e123c8c858
  Author: Achiad Shochat <achiad@xxxxxxxxxxxx>
  Date:   Sun Aug 16 16:04:48 2015 +0300

      net/mlx5e: Support smaller RX/TX ring sizes

      We un-intentionally limited the minimum rings size too much.

      TX minimum ring size reduced from 128 to 64.
      RX minimum ring size reduced from 128 to 2.

      Signed-off-by: Achiad Shochat <achiad@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2d75b2bc8a8c0ce5567a6ecef52e194d117efe3f
  Author: Achiad Shochat <achiad@xxxxxxxxxxxx>
  Date:   Sun Aug 16 16:04:47 2015 +0300

      net/mlx5e: Add ethtool RSS configuration options

      - get_rxfh_key_size
      - get_rxfh_indir_size
      - get/set_rxfh indirection table and RSS Toeplitz hash key
      - get_rxnfc

      Signed-off-by: Achiad Shochat <achiad@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 936896e9080b84b0e8b9b23e84fb734e91f5ba6d
  Author: Achiad Shochat <achiad@xxxxxxxxxxxx>
  Date:   Sun Aug 16 16:04:46 2015 +0300

      net/mlx5e: Make RSS indirection table size a constant

      The indirection table size was defined by a variable that
      was actually assigned a constant value.
      Since we do not have any forseen intension to make it configurable
      we simply made it a constant.

      We also limit the number of channels such that the RSS indirection
      table could always populate all RX rings.

      Signed-off-by: Achiad Shochat <achiad@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 57afead5445de85658e3fa3811ef0cdbf5ed73bf
  Author: Achiad Shochat <achiad@xxxxxxxxxxxx>
  Date:   Sun Aug 16 16:04:45 2015 +0300

      net/mlx5e: Have a single RSS Toeplitz hash key

      No need to generate a unique key per TIR.
      Generating a single key per netdev and copying it to all
      its TIRs.

      Signed-off-by: Achiad Shochat <achiad@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0aa65cc0c2ca7e3908b1e4ae7946d909a4882249
  Merge: 863960b c0015bf
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 15:41:21 2015 -0700

      Merge branch 'for-upstream' of 
git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next

      Johan Hedberg says:

      ====================
      pull request: bluetooth-next 2015-08-16

      Here's what's likely the last bluetooth-next pull request for 4.3:

       - 6lowpan/802.15.4 refactoring, cleanups & fixes
       - Document 6lowpan netdev usage in Documentation/networking/6lowpan.txt
       - Support for UART based QCA Bluetooth controllers
       - Power management support for Broeadcom Bluetooth controllers
       - Change LE connection initiation to always use passive scanning first
       - Support for new Silicon Wave USB ID

      Please let me know if there are any issues pulling. Thanks.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e97fedb9ef9868ff24d588be781906cf7c1b59ae
  Author: Dave Chinner <dchinner@xxxxxxxxxx>
  Date:   Wed Mar 4 13:40:00 2015 -0500

      sync: serialise per-superblock sync operations

      When competing sync(2) calls walk the same filesystem, they need to
      walk the list of inodes on the superblock to find all the inodes
      that we need to wait for IO completion on. However, when multiple
      wait_sb_inodes() calls do this at the same time, they contend on the
      the inode_sb_list_lock and the contention causes system wide
      slowdowns. In effect, concurrent sync(2) calls can take longer and
      burn more CPU than if they were serialised.

      Stop the worst of the contention by adding a per-sb mutex to wrap
      around wait_sb_inodes() so that we only execute one sync(2) IO
      completion walk per superblock superblock at a time and hence avoid
      contention being triggered by concurrent sync(2) calls.

      Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Josef Bacik <jbacik@xxxxxx>
      Reviewed-by: Jan Kara <jack@xxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Tested-by: Dave Chinner <dchinner@xxxxxxxxxx>

  commit 74278da9f70d84d715601fe794567a6d2bfdf078
  Author: Dave Chinner <dchinner@xxxxxxxxxx>
  Date:   Wed Mar 4 12:37:22 2015 -0500

      inode: convert inode_sb_list_lock to per-sb

      The process of reducing contention on per-superblock inode lists
      starts with moving the locking to match the per-superblock inode
      list. This takes the global lock out of the picture and reduces the
      contention problems to within a single filesystem. This doesn't get
      rid of contention as the locks still have global CPU scope, but it
      does isolate operations on different superblocks form each other.

      Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Josef Bacik <jbacik@xxxxxx>
      Reviewed-by: Jan Kara <jack@xxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Tested-by: Dave Chinner <dchinner@xxxxxxxxxx>

  commit cbedaac63481dea52327127a9f1c60f092bd6b07
  Author: Josef Bacik <jbacik@xxxxxx>
  Date:   Thu Mar 12 08:19:11 2015 -0400

      inode: add hlist_fake to avoid the inode hash lock in evict

      Some filesystems don't use the VFS inode hash and fake the fact they
      are hashed so that all the writeback code works correctly. However,
      this means the evict() path still tries to remove the inode from the
      hash, meaning that the inode_hash_lock() needs to be taken
      unnecessarily. Hence under certain workloads the inode_hash_lock can
      be contended even if the inode is never actually hashed.

      To avoid this add hlist_fake to test if the inode isn't actually
      hashed to avoid taking the hash lock on inodes that have never been
      hashed.  Based on Dave Chinner's

      inode: add IOP_NOTHASHED to avoid inode hash lock in evict

      basd on Al's suggestions.  Thanks,

      Signed-off-by: Josef Bacik <jbacik@xxxxxx>
      Reviewed-by: Jan Kara <jack@xxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Tested-by: Dave Chinner <dchinner@xxxxxxxxxx>

  commit d353d7587d02116b9732d5c06615aed75a4d3a47
  Author: Dave Chinner <dchinner@xxxxxxxxxx>
  Date:   Wed Mar 4 11:16:36 2015 -0500

      writeback: plug writeback at a high level

      Doing writeback on lots of little files causes terrible IOPS storms
      because of the per-mapping writeback plugging we do. This
      essentially causes imeediate dispatch of IO for each mapping,
      regardless of the context in which writeback is occurring.

      IOWs, running a concurrent write-lots-of-small 4k files using fsmark
      on XFS results in a huge number of IOPS being issued for data
      writes.  Metadata writes are sorted and plugged at a high level by
      XFS, so aggregate nicely into large IOs. However, data writeback IOs
      are dispatched in individual 4k IOs, even when the blocks of two
      consecutively written files are adjacent.

      Test VM: 8p, 8GB RAM, 4xSSD in RAID0, 100TB sparse XFS filesystem,
      metadata CRCs enabled.

      Kernel: 3.10-rc5 + xfsdev + my 3.11 xfs queue (~70 patches)

      Test:

      $ ./fs_mark  -D  10000  -S0  -n  10000  -s  4096  -L  120  -d
      /mnt/scratch/0  -d  /mnt/scratch/1  -d  /mnt/scratch/2  -d
      /mnt/scratch/3  -d  /mnt/scratch/4  -d  /mnt/scratch/5  -d
      /mnt/scratch/6  -d  /mnt/scratch/7

      Result:

                wall    sys     create rate     Physical write IO
                time    CPU     (avg files/s)    IOPS   Bandwidth
                -----   -----   ------------    ------  ---------
      unpatched 6m56s   15m47s  24,000+/-500    26,000  130MB/s
      patched           5m06s   13m28s  32,800+/-600     1,500  180MB/s
      improvement       -26.44% -14.68%   +36.67%       -94.23% +38.46%

      If I use zero length files, this workload at about 500 IOPS, so
      plugging drops the data IOs from roughly 25,500/s to 1000/s.
      3 lines of code, 35% better throughput for 15% less CPU.

      The benefits of plugging at this layer are likely to be higher for
      spinning media as the IO patterns for this workload are going make a
      much bigger difference on high IO latency devices.....

      Signed-off-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Signed-off-by: Josef Bacik <jbacik@xxxxxx>
      Reviewed-by: Jan Kara <jack@xxxxxxx>
      Tested-by: Dave Chinner <dchinner@xxxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>

  commit 863960b4c5c564819b153d53cffdf3f68283eaa2
  Merge: 2ea273d 373fb08
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 15:25:30 2015 -0700

      Merge branch 'enic-devcmd2'

      Govindarajulu Varadarajan says:

      ====================
      enic: add devcmd2

      This series adds new devcmd2 support. The first two patches are code
      refactoring.

      devcmd is an interface for driver to communicate with fw/adaptor. It
      involves writing data to hardware registers and waiting for the result.
      This mechanism does not scale well. The queuing of "no wait" devcmds is
      done in firmware memory rather than on the host. Firmware memory is a
      rather more scarce and valuable resource than host memory. A devcmd storm
      from one vf can disrupt the service on other pf/vf. The lack of flow
      control allows for possible denial of server from one VM to another.
      Devcmd2 uses work queue to post the devcmds, just like tx work queue. This
      allows better flow control.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 373fb0873d4325a7afa04aec29ced0c122d1f8a9
  Author: Govindarajulu Varadarajan <_govind@xxxxxxx>
  Date:   Sun Aug 16 01:44:54 2015 +0530

      enic: add devcmd2

      devcmd is an interface for driver to communicate with fw/adaptor. It
      involves writing data to hardware registers and waiting for the result.
      This mechanism does not scale well. The queuing of "no wait" devcmds is
      done in firmware memory rather than on the host. Firmware memory is a
      rather more scarce and valuable resource than host memory. A devcmd storm
      from one vf can disrupt the service on other pf/vf. The lack of flow
      control allows for possible denial of server from one VM to another.

      Devcmd2 uses work queue to post the devcmds, just like tx work queue. This
      allows better flow control.

      Initialize devcmd2, if fails we fall back to devcmd1.

      Also change the driver version.

      Signed-off-by: N V V Satyanarayana Reddy <nalreddy@xxxxxxxxx>
      Signed-off-by: Govindarajulu Varadarajan <_govind@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit fda3f52bdbbe576d78ca9ea84912b48fa51f0e90
  Author: Govindarajulu Varadarajan <_govind@xxxxxxx>
  Date:   Sun Aug 16 01:44:53 2015 +0530

      enic: add devcmd2 resources

      Add devcmd resources to vnic_res_type. Add data types used by devcmd.

      Signed-off-by: N V V Satyanarayana Reddy <nalreddy@xxxxxxxxx>
      Signed-off-by: Govindarajulu Varadarajan <_govind@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6a3c2f838c69406688ed0dbae473c3a08eeb5519
  Author: Govindarajulu Varadarajan <_govind@xxxxxxx>
  Date:   Sun Aug 16 01:44:52 2015 +0530

      enic: use netdev_<foo> or dev_<foo> instead of pr_<foo>

      pr_info does not give any details about the interface involved. This patch
      uses netdev_info for printing the message. Use dev_info where netdev is 
not
      ready.

      Signed-off-by: Govindarajulu Varadarajan <_govind@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8b89f3a19de05992a70f727072b65f3ea1397075
  Author: Govindarajulu Varadarajan <_govind@xxxxxxx>
  Date:   Sun Aug 16 01:44:51 2015 +0530

      enic: move struct definition from .c to .h file

      Some of the structure definitions are in .c file to make them private to
      that file. This patch moves the struct definition to .h file, So that 
their
      definitions are accessible from other files.

      Signed-off-by: Govindarajulu Varadarajan <_govind@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7e94d6c4ab69562423fdc18801050a84462c2787
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 16:55:18 2015 -0500

      NFS: Don't fsync twice for O_SYNC/IS_SYNC files

      generic_file_write_iter() will already do an fsync on our behalf
      if the file descriptor is O_SYNC or the file is marked as IS_SYNC.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit e824410ffcf4b245296b56c6fdf7b9797fce8c3e
  Author: Keith Busch <keith.busch@xxxxxxxxx>
  Date:   Wed Aug 12 16:17:54 2015 -0600

      NVMe: Set queue max segments

      This sets the queue's max segment size to match the device's
      capabilities. The default of 128 is usable until a device's transfer
      capability exceeds 512k, assuming a device page size of 4k. Many nvme
      devices exceed that transfer limit, so this lets the block layer know what
      kind of commands it to allow to form rather than unnecessarily split them.

      One additional segment is added to account for a transfer that may start
      in the middle of a page.

      Signed-off-by: Keith Busch <keith.busch@xxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 2ea273d76a4869c097c6b1a1070162add2f66a6e
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 14:37:06 2015 -0700

      net: Export bpf_prog_create_from_user().

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ec120da6f0fe59f175c2a8faa0a7700280c39644
  Author: Ian Morris <ipm@xxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 22:43:38 2015 +0100

      ipv6: trivial whitespace fix

      Change brace placement to be in line with coding standards

      Signed-off-by: Ian Morris <ipm@xxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f4a3e90ba5739cfd761b6befadae9728bd3641ed
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Sat Aug 15 00:37:15 2015 +0200

      rhashtable-test: extend to test concurrency

      After having tested insertion, lookup, table walk and removal, spawn a
      number of threads running operations on the same rhashtable. Each of
      them will:

      1) insert it's own set of objects,
      2) lookup every successfully inserted object and finally
      3) remove objects in several rounds until all of them have been removed,
         making sure the remaining ones are still found after each round.

      This should put a good amount of load onto the system and due to
      synchronising thread startup via two semaphores also extensive
      concurrent table access.

      The default number of ten threads returned within half a second on my
      local VM with two cores. Running 200 threads took about four seconds. If
      slow systems suffer too much from this though, the default could be
      lowered or even set to zero so this extended test does not run at all by
      default.

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c1f066d4ee0bde4bb0ff4ac295218b631729e0de
  Merge: 2bd736f 53cf037
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 14:31:42 2015 -0700

      Merge tag 'batman-adv-for-davem' of git://git.open-mesh.org/linux-merge

      Antonio Quartulli says:

      ====================
      Included changes:
      - avoid integer overflow in GW selection routine
      - prevent race condition by making capability bit changes atomic (use
        clear/set/test_bit)
      - fix synchronization issue in mcast tvlv handler
      - fix crash on double list removal of TT Request objects
      - fix leak by puring packets enqueued for sending upon iface removal
      - ensure network header pointer is set in skb
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2bd736fa0d8a1da90e6ccaa6a79e56a8d2ae60c4
  Merge: 90eb7fa 8f9c98d
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 14:25:04 2015 -0700

      Merge tag 'mac80211-next-for-davem-2015-08-14' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next

      Johannes Berg says:

      ====================
      Another pull request for the next cycle, this time with quite
      a bit of content:
       * mesh fixes/improvements from Alexis, Bob, Chun-Yeow and Jesse
       * TDLS higher bandwidth support (Arik)
       * OCB fixes from Bertold Van den Bergh
       * suspend/resume fixes from Eliad
       * dynamic SMPS support for minstrel-HT (Krishna Chaitanya)
       * VHT bitrate mask support (Lorenzo Bianconi)
       * better regulatory support for 5/10 MHz channels (Matthias May)
       * basic support for MU-MIMO to avoid the multi-vif issue (Sara Sharon)
      along with a number of other cleanups.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 18df8a87badac0ab05679df9bd44b5033e30d97c
  Author: kbuild test robot <fengguang.wu@xxxxxxxxx>
  Date:   Tue Aug 18 04:50:36 2015 +0800

      dlm: sctp_accept_from_sock() can be static

      Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: David Teigland <teigland@xxxxxxxxxx>

  commit 90eb7fa51ccb9af58c437581af73c4a1d5fd2b9f
  Merge: a1c234f 30da679
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 14:22:48 2015 -0700

      Merge branch 'bpf_fanout'

      Willem de Bruijn says:

      ====================
      packet: add cBPF and eBPF fanout modes

      Allow programmable fanout modes. Support both classical BPF programs
      passed directly and extended BPF programs passed by file descriptor.

      One use case is packet steering by deep packet inspection, for
      instance for packet steering by application layer header fields.

      Separate the configuration of the fanout mode and the configuration
      of the program, to allow dynamic updates to the latter at runtime.

      Changes
        v1 -> v2:
          - follow SO_LOCK_FILTER semantics on filter updates
          - only accept eBPF programs of type BPF_PROG_TYPE_SOCKET_FILTER
          - rename PACKET_FANOUT_BPF to PACKET_FANOUT_CBPF to match
            man 2 bpf usage: "classic" vs. "extended" BPF.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 30da679e679dbe7bb103c5d9c137ec5a070b7150
  Author: Willem de Bruijn <willemb@xxxxxxxxxx>
  Date:   Fri Aug 14 22:31:37 2015 -0400

      selftests/net: test extended BPF fanout mode

      Test PACKET_FANOUT_EBPF by inserting a program into the the kernel
      with bpf(), then attaching it to the fanout group. Observe the same
      payload-based distribution as in the PACKET_FANOUT_CBPF test.

      Signed-off-by: Willem de Bruijn <willemb@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 95e22792fa5460e579a69171777ff79d8725be29
  Author: Willem de Bruijn <willemb@xxxxxxxxxx>
  Date:   Fri Aug 14 22:31:36 2015 -0400

      selftests/net: test classic bpf fanout mode

      Test PACKET_FANOUT_CBPF by inserting a cBPF program that selects a
      socket by payload. Requires modifying the test program to send
      packets with multiple payloads.

      Also fix a bug in testing the return value of mmap()

      Signed-off-by: Willem de Bruijn <willemb@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f2e520956a1ab636698f8160194c9b8ac0989aab
  Author: Willem de Bruijn <willemb@xxxxxxxxxx>
  Date:   Fri Aug 14 22:31:35 2015 -0400

      packet: add extended BPF fanout mode

      Add fanout mode PACKET_FANOUT_EBPF that accepts an en extended BPF
      program to select a socket.

      Update the internal eBPF program by passing to socket option
      SOL_PACKET/PACKET_FANOUT_DATA a file descriptor returned by bpf().

      Signed-off-by: Willem de Bruijn <willemb@xxxxxxxxxx>
      Acked-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Acked-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 47dceb8ecdc1c3ad1818dfea3d659a05b74c3fc2
  Author: Willem de Bruijn <willemb@xxxxxxxxxx>
  Date:   Fri Aug 14 22:31:34 2015 -0400

      packet: add classic BPF fanout mode

      Add fanout mode PACKET_FANOUT_CBPF that accepts a classic BPF program
      to select a socket.

      This avoids having to keep adding special case fanout modes. One
      example use case is application layer load balancing. The QUIC
      protocol, for instance, encodes a connection ID in UDP payload.

      Also add socket option SOL_PACKET/PACKET_FANOUT_DATA that updates data
      associated with the socket group. Fanout mode PACKET_FANOUT_CBPF is the
      only user so far.

      Signed-off-by: Willem de Bruijn <willemb@xxxxxxxxxx>
      Acked-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Acked-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Acked-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 00dcffaebf7b4ab0524c56694c22de6b0eb22feb
  Author: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
  Date:   Tue Aug 11 19:22:25 2015 -0300

      dlm: fix reconnecting but not sending data

      There are cases on which lowcomms_connect_sock() is called directly,
      which caused the CF_WRITE_PENDING flag to not bet set upon reconnect,
      specially on send_to_sock() error handling. On this last, the flag was
      already cleared and no further attempt on transmitting would be done.

      As dlm tends to connect when it needs to transmit something, it makes
      sense to always mark this flag right after the connect.

      Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
      Signed-off-by: David Teigland <teigland@xxxxxxxxxx>

  commit acee4e527d5f069351f835602b23602d01de5e1f
  Author: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
  Date:   Tue Aug 11 19:22:24 2015 -0300

      dlm: replace BUG_ON with a less severe handling

      BUG_ON() is a severe action for this case, specially now that DLM with
      SCTP will use 1 socket per association. Instead, we can just close the
      socket on this error condition and return from the function.

      Also move the check to an earlier stage as it won't change and thus we
      can abort as soon as possible.

      Although this issue was reported when still using SCTP with 1-to-many
      API, this cleanup wouldn't be that simple back then because we couldn't
      close the socket and making sure such event would cease would be hard.
      And actually, previous code was closing the association, yet SCTP layer
      is still raising the new data event. Probably a bug to be fixed in SCTP.

      Reported-by: <tan.hu@xxxxxxxxxx>
      Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
      Signed-off-by: David Teigland <teigland@xxxxxxxxxx>

  commit ee44b4bc054afc586c92558a225055ef9fd25d17
  Author: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
  Date:   Tue Aug 11 19:22:23 2015 -0300

      dlm: use sctp 1-to-1 API

      DLM is using 1-to-many API but in a 1-to-1 fashion. That is, it's not
      needed but this causes it to use sctp_do_peeloff() to mimic an
      kernel_accept() and this causes a symbol dependency on sctp module.

      By switching it to 1-to-1 API we can avoid this dependency and also
      reduce quite a lot of SCTP-specific code in lowcomms.c.

      The caveat is that now DLM won't always use the same src port. It will
      choose a random one, just like TCP code. This allows the peers to
      attempt simultaneous connections, which now are handled just like for
      TCP.

      Even more sharing between TCP and SCTP code on DLM is possible, but it
      is intentionally left for a later commit.

      Note that for using nodes with this commit, you have to have at least
      the early fixes on this patchset otherwise it will trigger some issues
      on old nodes.

      Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
      Signed-off-by: David Teigland <teigland@xxxxxxxxxx>

  commit 356344c4c36dc960f90a3457dd67fe2efcf92417
  Author: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
  Date:   Tue Aug 11 19:22:22 2015 -0300

      dlm: fix not reconnecting on connecting error handling

      If we don't clear that bit, lowcomms_connect_sock() will not schedule
      another attempt, and no further attempt will be done.

      Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
      Signed-off-by: David Teigland <teigland@xxxxxxxxxx>

  commit 0d737a8cfd8341d6ba8215443a3ddfe5ddd4e51a
  Author: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
  Date:   Tue Aug 11 19:22:21 2015 -0300

      dlm: fix race while closing connections

      When a connection have issues DLM may need to close it.  Therefore we
      should also cancel pending workqueues for such connection at that time,
      and not just when dlm is not willing to use this connection anymore.

      Also, if we don't clear CF_CONNECT_PENDING flag, the error handling
      routines won't be able to re-connect as lowcomms_connect_sock() will
      check for it.

      Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
      Signed-off-by: David Teigland <teigland@xxxxxxxxxx>

  commit 28926a0965a943f7c1586342f9482a6e41b4f0c9
  Author: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
  Date:   Tue Aug 11 19:22:20 2015 -0300

      dlm: fix connection stealing if using SCTP

      When using SCTP and accepting a new connection, DLM currently validates
      if the peer trying to connect to it is one of the cluster nodes, but it
      doesn't check if it already has a connection to it or not.

      If it already had a connection, it will be overwritten, and the new one
      will be used for writes, possibly causing the node to leave the cluster
      due to communication breakage.

      Still, one could DoS the node by attempting N connections and keeping
      them open.

      As said, but being explicit, both situations are only triggerable from
      other cluster nodes, but are doable with only user-level perms.

      Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@xxxxxxxxx>
      Signed-off-by: David Teigland <teigland@xxxxxxxxxx>

  commit 75e3b37d059856a972a5bf2bdfeac0f0f2db9ea3
  Author: Luiz Capitulino <lcapitulino@xxxxxxxxxx>
  Date:   Tue Aug 11 16:40:43 2015 -0400

      hrtimer: Drop return code of hrtimer_switch_to_hres()

      It's not checked by the caller.

      Signed-off-by: Luiz Capitulino <lcapitulino@xxxxxxxxxx>
      Link: http://lkml.kernel.org/r/20150811164043.538241ef@xxxxxxxxxx
      Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

  commit a1c234f95cae2d293047bb6c36e7a4840dbac815
  Author: Jiri Benc <jbenc@xxxxxxxxxx>
  Date:   Fri Aug 14 16:40:40 2015 +0200

      lwtunnel: rename ip lwtunnel attributes

      We already have IFLA_IPTUN_ netlink attributes. The IP_TUN_ attributes 
look
      very similar, yet they serve very different purpose. This is confusing for
      anyone trying to implement a user space tool supporting lwt.

      As the IP_TUN_ attributes are used only for the lightweight tunnels, 
prefix
      them with LWTUNNEL_IP_ instead to make their purpose clear. Also, it's 
more
      logical to have them in lwtunnel.h together with the encap enum.

      Fixes: 3093fbe7ff4b ("route: Per route IP tunnel metadata via lightweight 
tunnel")
      Signed-off-by: Jiri Benc <jbenc@xxxxxxxxxx>
      Acked-by: Thomas Graf <tgraf@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 62ee783bf1f872ba879e088a669b04afebee899b
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Mon Aug 17 13:45:36 2015 -0700

      smsc911x: Fix crash seen if neither ACPI nor OF is configured or used

      Commit 0b50dc4fc971 ("Convert smsc911x to use ACPI as well as DT") makes
      the call to smsc911x_probe_config() unconditional, and no longer fails if
      there is no device node. device_get_phy_mode() is called unconditionally,
      and if there is no phy node configured returns an error code. This error
      code is assigned to phy_interface, and interpreted elsewhere in the code
      as valid phy mode. This in turn causes qemu to crash when running a
      variant of realview_pb_defconfig.

        qemu: hardware error: lan9118_read: Bad reg 0x86

      Fixes: 0b50dc4fc971 ("Convert smsc911x to use ACPI as well as DT")
      Cc: Jeremy Linton <jeremy.linton@xxxxxxx>
      Cc Graeme Gregory <graeme.gregory@xxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c87acb2558db7a870575dd8e14ded2e5acbdc295
  Merge: fbaff3e e69948a
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 14:05:14 2015 -0700

      Merge branch 'master' of 
git://git.kernel.org/pub/scm/linux/kernel/git/klassert/ipsec-next

      Steffen Klassert says:

      ====================
      pull request (net-next): ipsec-next 2015-08-17

      1) Fix IPv6 ECN decapsulation for IPsec interfamily tunnels.
         From Thomas Egerer.

      2) Use kmemdup instead of duplicating it in xfrm_dump_sa().
         From Andrzej Hajda.

      3) Pass oif to the xfrm lookups so that it gets set on the flow
         and the resolver routines can match based on oif.
         From David Ahern.

      4) Add documentation for the new xfrm garbage collector threshold.
         From Alexander Duyck.

      Please pull or let me know if there are problems.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 05906dec7d7daf197b9b773295c95ad6b9af2a5a
  Author: Bas Nieuwenhuizen <bas@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 20:08:40 2015 +0200

      drm/amdgpu: wait on page directory changes. v2

      Pagetables can be moved and therefore the page directory update can be 
necessary
      for the current cs even if none of the the bo's are moved. In that 
scenario
      there is no fence between the sdma0 and gfx ring, so we add one.

      v2 (chk): rebased

      Signed-off-by: Bas Nieuwenhuizen <bas@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit b325a789c7e6554a14fae3c2310ee22fa4ca7cf6
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Fri Aug 14 12:50:12 2015 +0200

      drm/amdgpu: Select BACKLIGHT_LCD_SUPPORT

      Explicitly select BACKLIGHT_LCD_SUPPORT to satisfy the direct dependency
      of BACKLIGHT_CLASS_DEVICE.

      Cc: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: Christian König <christian.koenig@xxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 33610527907d532e5abedc2b1026b4992726c3b0
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Fri Aug 14 12:50:11 2015 +0200

      drm/radeon: Select BACKLIGHT_LCD_SUPPORT

      Explicitly select BACKLIGHT_LCD_SUPPORT to satisfy the direct dependency
      of BACKLIGHT_CLASS_DEVICE.

      Cc: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: Christian König <christian.koenig@xxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 432a4ff8b7224908a8bbc34b598f48af3f42b827
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Wed Aug 12 11:46:04 2015 +0200

      drm/amdgpu: cleanup sheduler rq handling v2

      Rework run queue implementation, especially remove the odd list handling.

      v2: cleanup the code only, no algorithem change.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit c3b95d4f9e460704e184ded7af60b9c4898f6181
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Fri Aug 14 14:55:27 2015 +0800

      drm/amdgpu: move prepare work out of scheduler to cs_ioctl

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 1c8f805af9af445a42b8dbda5f620752996cba44
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Thu Aug 13 13:04:06 2015 +0800

      drm/amdgpu: fix unnecessary wake up

      decrease CPU extra overhead.

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 6d1d0ef7433caf1df920116bfd445aa698a7f37d
  Author: monk.liu <monk.liu@xxxxxxx>
  Date:   Fri Aug 14 13:36:41 2015 +0800

      drm/amdgpu: fix duplicated mapping invoke bug

      fix the bug that there is duplicated bo_update_mapping issued

      Signed-off-by: monk.liu <monk.liu@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit 1939e3e265d2fb984b56829c51f5843bfc6d5292
  Author: monk.liu <monk.liu@xxxxxxx>
  Date:   Thu Aug 13 16:19:54 2015 +0800

      drm/amdgpu: drop bo_list_clone when no scheduler

      bo_list_clone() will take a lot of time when bo_list hold too much
      elements, like above 7000

      Signed-off-by: Monk.Liu <monk.liu@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Jammy Zhou <jammy.zhou@xxxxxxx>

  commit a895c222e7ab5f50ec10e209cd4548ecd5dd9443
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Thu Aug 13 13:20:20 2015 -0400

      drm/amdgpu: disable GPU reset by default

      It's not validated yet and causes more harm than good.
      Avoids spurious resets.

      Reviewed-by: Leo Liu <leo.liu@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit a8f5bf0b220c28b1b600a5ff3cae0b53c5c2079b
  Author: monk.liu <monk.liu@xxxxxxx>
  Date:   Wed Aug 12 17:56:52 2015 +0800

      drm/amdgpu: fix type mismatch error

      remaining timeout returned by amdgpu_fence_wait_any can be larger than
      max int value, thus the truncated 32 bit value in r ends up being
      negative while its original long value is positive.

      Signed-off-by: monk.liu <monk.liu@xxxxxxx>
      Reviewed-by: Michel Dänzer <michel.daenzer@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <jammy.zhou@xxxxxxx>

  commit 281b42230175608dec0cd8dab9908250e7aa36a9
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Wed Aug 12 12:58:31 2015 +0800

      drm/amdgpu: add reference for **fence

      fix fence is released when pass to **fence sometimes.
      add reference for it.

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 1ffd265243803ac5de9927dfc32541f41da2acf3
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Aug 11 17:29:52 2015 +0200

      drm/amdgpu: fix waiting for all fences before flipping

      Otherwise we might see corruption.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 4127a59e0b3f914ae8d9843d521a07e117db045a
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Aug 11 16:35:54 2015 +0200

      drm/amdgpu: fix UVD return code checking

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Tested-and-Reviewed-by: Leo Liu <leo.liu@xxxxxxx>

  commit 5b232c2a717684d0dffc27e50bf05e1fb72f9d6e
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Aug 10 14:16:24 2015 +0200

      drm/amdgpu: remove scheduler fence list v2

      Unused and missing proper locking.

      v2: add locking comment to commit message.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx> (v1)

  commit 05caae8515e12073f4a3beb048e0d289cbe687b7
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Aug 10 14:04:12 2015 +0200

      drm/amdgpu: remove amd_sched_wait_emit v2

      Not used any more.

      v2: remove amd_sched_emit as well.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 2983e5cef33b48dede6c023230cc0b54d6f67362
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Aug 10 14:20:55 2015 +0200

      drm/amdgpu: remove unecessary scheduler fence callbacks

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit db789d34514b1b1bec20b30f9ae0b61c36f028b8
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Aug 10 17:27:23 2015 +0200

      drm/amdgpu: fix scheduler fence implementation

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 5516ab86a873efc78fc356b0979294203f1cffb0
  Author: Daniel Vetter <daniel.vetter@xxxxxxxx>
  Date:   Thu Jul 9 23:32:50 2015 +0200

      drm/amdgpu: don't grab dev->struct_mutex in pm functions

      Similar to radeon, except that amdgpu doesn't even use struct_mutex to
      protect anything like the shared z buffer (sane gpu architecture,
      yay!). And the code already grabs the globa adev->ring_lock, so this
      code can't race with itself. Which makes struct_mutex completely
      redundnant. Remove it.

      Cc: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: "Christian König" <christian.koenig@xxxxxxx>
      Reviewed-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit db4448f78d5982997751120ca358c97a7f96e122
  Author: Daniel Vetter <daniel.vetter@xxxxxxxx>
  Date:   Thu Jul 9 23:32:49 2015 +0200

      drm/amdgpu: Don't take dev->struct_mutex in bo_force_delete

      It really doesn't protect anything which doesn't have other locks
      already. Also this is run from driver unload code so not much need for
      locks anyway.

      Same changes as for radeon really.

      Cc: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: "Christian König" <christian.koenig@xxxxxxx>
      Reviewed-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 34ddc3e9d1781a4914c673013c0eaca3ae642641
  Author: Daniel Vetter <daniel.vetter@xxxxxxxx>
  Date:   Thu Jul 9 23:32:48 2015 +0200

      drm/radeon: Don't take dev->struct_mutex in pm functions

      We already grab 2 device-global locks (write-sema rdev->pm.mclk_lock
      and rdev->ring_lock), adding another global mutex won't serialize this
      code more. And since there's really nothing interesting that gets
      protected in radeon by dev->struct mutex (we only have the global z
      buffer owners and it's still serializing gem bo destruction in the drm
      core - which is irrelevant since radeon uses ttm anyway internally)
      this doesn't add protection. Remove it.

      Cc: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: "Christian König" <christian.koenig@xxxxxxx>
      Reviewed-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 42192a941e427440e642623c64bda4486c527a54
  Author: Daniel Vetter <daniel.vetter@xxxxxxxx>
  Date:   Thu Jul 9 23:32:47 2015 +0200

      drm/radeon: Don't take dev->struct_mutex in bo_force_delete

      It really doesn't protect anything which doesn't have other locks
      already. Also this is run from driver unload code so not much need for
      locks anyway.

      Cc: Alex Deucher <alexander.deucher@xxxxxxx>
      Cc: "Christian König" <christian.koenig@xxxxxxx>
      Reviewed-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit c548b345d15092bf46469a0339d41ae3e106987d
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Fri Aug 7 20:22:40 2015 +0200

      drm/amdgpu: remove VI hw bug workaround v3

      The workaround simply doesn't work because VM mappings
      are controlled by userspace not the kernel.

      Additional to that this is just a performance problem
      which happens if you have holes in your VM mapping.

      v2: adjust virtual addr alignment as well.
      v3: fix trivial warning

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Monk Liu  <monk.liu@xxxxxxx> (v1)
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx> (v2)

  commit 00d2a2b21dbd6010247d44cd0cd05e5bc40af8e6
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Fri Aug 7 16:15:36 2015 +0200

      drm/amdgpu: cleanup amdgpu_fence_ring_wait_seq

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 68ed3de43428def8ca0105bb53da8863ba456114
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Fri Aug 7 15:57:21 2015 +0200

      drm/amdgpu: remove duplicate amdgpu_fence_process implementation

      Looks like that somehow got missed while during porting the radeon 
changes.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 02bc0650bc930105346773253e5bf33c2917c601
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Fri Aug 7 13:53:36 2015 +0200

      drm/amdgpu: remove amdgpu_fence_wait

      It was just a wrapper for fence_wait anyway.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 713293b82563006df3cc91582b5b36b092481d76
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Aug 6 20:44:47 2015 +0200

      drm/amdgpu: use the reservation obj wait for the UVD msg

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 3cdb8119d95411ddbca9f9af13b72e4afce6e6d2
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Aug 6 17:49:25 2015 +0200

      drm/amdgpu: remove amdgpu_fence_signaled

      The common kernel function does the same thing.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit f556cb0caeec1ba9b8e5e2aa85b47e76277f5d4b
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Sun Aug 2 11:18:04 2015 +0800

      drm/amd: add scheduler fence implementation (v2)

      scheduler fence is based on kernel fence framework.

      v2: squash in Christian's build fix

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 4af9f07ccdac96e16f7a0ddaf983891a29ebd11a
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Aug 3 12:57:31 2015 +0800

      drm/amdgpu: use kernel submit helper in vm

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 953e8fd4e734857f6dabbaf325035bf10c4a9c7a
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Thu Aug 6 15:19:12 2015 +0800

      drm/amdgpu: use amd_sched_job in its backend ops

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 6f0e54a964932d3d5252ac1ff7ab153c984a5d51
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Wed Aug 5 21:22:10 2015 +0200

      drm/amdgpu: cleanup and fix scheduler fence handling v2

      v2: rebased

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx> (v1)
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 91404fb20825418fd9ab8e6533bc336e1ffc748e
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Wed Aug 5 18:33:21 2015 +0200

      drm/amdgpu: merge amd_sched_entity and amd_context_entity v2

      Avoiding a couple of casts.

      v2: rename c_entity to entity as well

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 4cd7f42cf8f57512b13a13bb7dcbeabb644f5264
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Wed Aug 5 18:18:52 2015 +0200

      drm/amdgpu: fix coding style in a couple of places

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit ddf94d33d6434199be08f8965f63d408e2787539
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Wed Aug 5 18:11:14 2015 +0200

      drm/amdgpu: remove unused parent entity

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 4cef92670bc908aaa48771fc9c72f4bcfb7d6a35
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Wed Aug 5 19:52:14 2015 +0800

      drm/amdgpu: process sched job exactly triggered by fence signal

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 80de5913cf31c86d64547af0715de4822c9b1abe
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Wed Aug 5 19:07:08 2015 +0800

      Revert "drm/amdgpu: return new seq_no for amd_sched_push_job"

      This reverts commit d1d33da8eb86b8ca41dd9ed95738030df5267b95.

      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

      Conflicts:
        drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c
        drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c

  commit 47f38501f11fa45d8a7797f1965448c1e20049d4
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Aug 4 17:51:05 2015 +0200

      drm/amdgpu: cleanup amdgpu_ctx inti/fini v2

      Cleanup the kernel context handling.

      v2: rebased

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx> (v1)

  commit 0e89d0c16b9446a094215e71734e583c438bf83d
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Aug 4 16:58:36 2015 +0200

      drm/amdgpu: stop leaking the ctx id into the scheduler v2

      Id's are for the IOCTL ABI only.

      v2: remove tgid as well

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit efd4ccb59a4acb8b85835d6b053362dbacee40f9
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Aug 4 16:20:31 2015 +0200

      drm/amdgpu: cleanup ctx_mgr init/fini

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 34cb581a7d99401cad0e1c43b528690885435f5b
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Aug 4 11:54:48 2015 +0200

      drm/amdgpu: fix bo list handling in CS

      We didn't initialized the mutex in the cloned bo list resulting in nice
      warnings from lockdep. Also fixes error handling in this function.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 351dba73691fc632b269f531bbce80157f79c5b3
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Aug 3 20:39:12 2015 +0200

      drm/amdgpu: reorder the code to avoid forward declerations

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 7484667c6a8a9122d139a287454bc9c8799c3def
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Aug 4 11:30:09 2015 +0800

      drm/amdgpu: move sched job process from isr to fence callback

      This way can avoid interrupt lost, and can process sched job exactly.

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 27f6642d066ecea7b535dd9b24e2f41e54f3dd85
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Mon Aug 3 10:27:57 2015 +0800

      drm/amdgpu: add amd_sched_next_queued_seq function

      This function is used to get the next queued sequence number

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 63ad8d5882fcd466861fdbe51fc3a119b894d9a3
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Fri Jul 31 17:54:29 2015 +0800

      drm/amdgpu: make last_handled_seq atomic

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit f95b7e3e8664fbea4e60f15e7e8a975e4b2b7c3f
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Fri Jul 31 17:18:15 2015 +0800

      drm/amdgpu: add amd_sched_commit

      This function is to update last_emitted_v_seq and wake up the waiters.

      It should be called by driver in the run_job backend function

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit ea199cc9f825f3ef5aab3db5f00dcc639f8a8b02
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Fri Jul 31 16:47:28 2015 +0800

      drm/amdgpu: return new seq_no for amd_sched_push_job

      It is clean to update last_queued_v_seq in the scheduler module

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit dd01d071957ded58d9bae3d3bf6061ada1d84692
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Thu Jul 30 17:19:52 2015 +0800

      drm/amdgpu: some code refinement v2

      Fix the code alignment, etc.

      v2: rebase the code

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 03d3a3e634894259a27979f4a372273162611e78
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Aug 3 20:02:43 2015 +0800

      drm/amdgpu: fix null pointer by previous cleanup

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 1763552ee8a7f39a1788d24e27b50d4dee383520
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Aug 3 11:43:19 2015 +0800

      drm/amdgpu: add kernel fence in ib_submit_kernel_helper

      every sbumission should be able to get a fence.

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <jammy.zhou@xxxxxxx>

  commit ed88a0ee7ff53c292350fc5d38eae161c2372d51
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Aug 3 13:22:35 2015 +0800

      drm/amdgpu: use kernel fence for sdma ib test

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <jammy.zhou@xxxxxxx>

  commit ab3cb0ce9e865c53f2027068f49a0edb40666f3f
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Aug 3 13:19:43 2015 +0800

      drm/amdgpu: use kernel fence for gfx ib test

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <jammy.zhou@xxxxxxx>

  commit 6863bc8bb3750049d1b63574ef29cbf94d52eb47
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Aug 3 16:19:29 2015 +0800

      drm/amdgpu: use kernel fence in amdgpu_test

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <jammy.zhou@xxxxxxx>

  commit ed40bfb81af54fcdc1b96ffdeb14d69458234642
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Aug 3 13:28:16 2015 +0800

      drm/amdgpu: use kernel fence for vce ib test

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <jammy.zhou@xxxxxxx>

  commit 0e3f154a9eb9f7a5ec365c4586a606ba882a3f15
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Aug 3 13:11:04 2015 +0800

      drm/amdgpu: change uvd ib test to use kernel fence directly

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <jammy.zhou@xxxxxxx>

  commit bb1e38a4bead5025ecca90544f0f733f59996b13
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Aug 3 18:19:38 2015 +0800

      drm/amdgpu: use kernel fence for last_pt_update

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <jammy.zhou@xxxxxxx>

  commit e40a31159b72742224c249cf57c5313be7ccd629
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Aug 3 11:38:09 2015 +0800

      drm/amdgpu: use kernel fence diretly in amdgpu_bo_fence

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <jammy.zhou@xxxxxxx>

  commit 1d7dd229f5dded247bc8800f8f4551d3d6314afa
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Fri Jul 31 14:31:49 2015 +0200

      drm/amdgpu: clean up amd sched wait_ts and wait_signal

      Remove code not used at the moment.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 7fc11959018f8ba2d92025679a72339da18a74ad
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Jul 30 11:53:42 2015 +0200

      drm/amdgpu: stop using addr to check for BO move v3

      It is theoretically possible that a swapped out BO gets the
      same GTT address, but different backing pages while being swapped in.

      Instead just use another VA state to note updated areas.
      Ported from not upstream yet radeon commit with the same name.

      v2: fix some bugs in the original implementation found in the radeon code.
      v3: squash in VCE/UVD fix

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 7f06c236b964db3d8d086c5a0087b2eb4de3bf7a
  Author: monk.liu <monk.liu@xxxxxxx>
  Date:   Thu Jul 30 18:28:12 2015 +0800

      drm/amdgpu: move wait_queue_head from adev to ring (v2)

      thus unnecessary wake up could be avoid between rings
      v2:
      move wait_queue_head to fence_drv from ring

      Signed-off-by: monk.liu <monk.liu@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit e29551556e055f463fb80cfb07e1cb15641e60a3
  Author: monk.liu <monk.liu@xxxxxxx>
  Date:   Thu Jul 30 18:26:18 2015 +0800

      drm/amdgpu: re-implement fence_default_wait

      use fence_wait_any to implement fence_default_wait

      Signed-off-by: monk.liu <monk.liu@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit 332dfe907bef6f299f5844f947c4e141eebb8091
  Author: monk.liu <monk.liu@xxxxxxx>
  Date:   Thu Jul 30 15:19:05 2015 +0800

      drm/amdgpu: new implement for fence_wait_any (v2)

      origninal method will sleep/schedule at the granurarity of HZ/2 and
      based on seq signal method, the new implement is based on kernel fance
      interface, no unnecessary schedule at all

      v2: replace logic of original amdgpu_fence_wait_any

      Signed-off-by: monk.liu <monk.liu@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit 2e536084f24f99f0a2cc0b6ce38ad8298ea58b22
  Author: monk.liu <monk.liu@xxxxxxx>
  Date:   Thu Jul 30 14:56:18 2015 +0800

      drm/amdgpu: use kernel fence interface when possible

      Signed-off-by: monk.liu <monk.liu@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit 8128765ce5fb68e3b34a8f524791d5758514f511
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Fri Jul 3 14:18:26 2015 +0800

      drm/amdgpu: use scheduler for VCE ib test

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 7b5ec431770ac581aa23d460f670cfb97c14280d
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Fri Jul 3 14:08:18 2015 +0800

      drm/amdgpu: use scheduler for UVD ib test

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 0011fdaa4dab19bf545a28c0d4d164bba4745d29
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Jun 1 15:33:20 2015 +0800

      drm/amdgpu: use gpu scheduler for sdma ib test

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 42d13693c01f895d7918ed49c65c0c4844027314
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Jun 1 15:16:03 2015 +0800

      drm/amdgpu: Use gpu scheduler for gfx ring ib test

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 3c704e934d07bcb5fdf9725db190e2ae60fba1bd
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Wed Jul 29 10:33:14 2015 +0800

      drm/amdgpu: add helper function for kernel submission

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit d1ff9086c1b8e67390161599006a34056b437a72
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Thu Jul 30 17:59:43 2015 +0800

      drm/amdgpu: fix seq in ctx_add_fence

      if enabling scheduler, then the queued seq is assigned
      when pushing job before emitting job.

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 51b9db27d07869cf565ba135e97e2ed5f858612e
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Jul 28 17:31:04 2015 +0800

      drm/amdgpu: wait forever for wait emit

      the job must be emitted by scheduler, otherwise scheduler is abnormal.

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 4afcb30383bef8bf972c6aae47995ef314e5f8a1
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Thu Jul 30 16:44:05 2015 +0800

      drm/amdgpu: add amdgpu.sched_hw_submission option

      This option can be used to specify the max number of submissions in the
      active HW queue. The default value is 2 now.

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 1333f723fb6f1356a54135586f1ede44dcaa9652
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Thu Jul 30 16:36:58 2015 +0800

      drm/amdgpu: add amdgpu.sched_jobs option

      This option can be used to specify the max job number in the job queue,
      and it is 16 by default.

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit c0044bc2c62dc3267f2a555ed8342181516008a5
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Thu Jul 30 16:24:53 2015 +0800

      drm/amdgpu: silent the message for GPU scheduler creation

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 1d3897e056d2ff2bb3b17e054aa75d36adacaacc
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Jul 27 15:40:35 2015 +0200

      drm/amdgpu: fix syncing to VM updates

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit afe10081498fdf2c5b92c7fcc534e49544218fb9
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Jul 28 16:11:52 2015 +0800

      drm/amdgpu: add check for callback

      it is possible that the callback isn't defined sometimes.

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Christian K?nig <christian.koenig@xxxxxxx>

  commit 02b9f0bfd49da01629eef6d250c477490047acd6
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Wed May 27 18:23:34 2015 +0800

      drm/amdgpu: add enable_scheduler module option

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Acked-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 176e1ab1b534368d0cd338a010aaea99067c3c6e
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Fri Jul 24 10:49:47 2015 +0800

      drm/amdgpu: protect fence_process from multiple context

      fence_process may be called from kthread, user thread and interrupt 
context.
      it is possible to called concurrently, then will wake up fence queue 
multiple times.

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit e0d8f3c34e54b7f7563360131e89be0d9405d436
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Jul 21 17:43:41 2015 +0800

      drm/amdgpu: add sched isr to fence process

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit d5fc5e82a3127b8839c4a4457f3b950a009737a7
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Jul 21 16:52:10 2015 +0800

      drm/amdgpu: dispatch job for vm

      use kernel context to submit command for vm

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Acked-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 23ca0e4e478836dcb93a54aa68cb48fbc66fb0ed
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Jul 6 13:42:58 2015 +0800

      drm/amdgpu: add kernel ctx support (v2)

      v2: rebase against kfd changes

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Acked-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 4274f5d45cf11f88d7380702a7147b70553ddd6e
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Jul 21 16:04:39 2015 +0800

      drm/amdgpu: prepare job before push to sw queue for pte ring

      user mode will still use pte ring as a normal ring.
      if the prepare job generates another command(update pte) on its ring in 
scheduler,
      then will kill scheduler which is going to waiting later job but pending 
running job.

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Acked-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 4b559c90bc1870313f02cceef680884519af6b2b
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Jul 21 15:53:04 2015 +0800

      drm/amdgpu: make sure the fence is emitted before ring to get it.

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Acked-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit b43a9a7e87d2bbb8d0c6ae4ff06dcc604f00e31a
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Jul 21 15:13:53 2015 +0800

      drm/amdgpu: use scheduler user seq instead of previous user seq

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Acked-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 049fc527b4641f99e573b26f1a726a3eadd0cc25
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Jul 21 14:36:51 2015 +0800

      drm/amdgpu: dispatch jobs in cs

      BO validation is moved to scheduler except usrptr which must be validated
      in user process

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Acked-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 372bc1e18ca961ef51997df235e822aed6283726
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Jul 21 13:47:05 2015 +0800

      drm/amdgpu: add bo list copy

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Acked-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit c1b69ed0c62f9d86599600f4c1a3bd82db1b7362
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Jul 21 13:45:14 2015 +0800

      drm/amdgpu: add backend implementation of gpu scheduler (v2)

      v2: fix rebase breakage

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Acked-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 2c4888a0d392b206eb348d4fc6dec539eee2c534
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Jul 21 13:19:45 2015 +0800

      drm/amdgpu: disable hw semaphore with scheduler

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Acked-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 9cb7e5a91f6cd4dc018cca7120d2da067f816d3a
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Tue Jul 21 13:17:19 2015 +0800

      drm/amdgpu: add context entity init

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Acked-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit b80d8475c1fdf5f4bcabb65168b2e8a9c3d77731
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Sun Aug 16 22:55:02 2015 -0400

      drm/amdgpu: add scheduler initialization

      1. Add kernel parameter option, default 0
      2. Add scheduler initialization for amdgpu

      Signed-off-by: Chunming Zhou <David1.Zhou@xxxxxxx>
      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Acked-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit a72ce6f84109c1dec1ab236d65979d3250668af3
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Fri May 22 18:55:07 2015 +0800

      drm/amd: add basic scheduling framework

      run queue:
      A set of entities scheduling commands for the same ring. It
      implements the scheduling policy that selects the next entity to
      emit commands from.

      entity:
      A scheduler entity is a wrapper around a job queue or a group of
      other entities. This can be used to build hierarchies of entities.
      For example all job queue entities belonging to the same process
      may be placed in a higher level entity and scheduled against other
      process entities.
      Entities take turns emitting jobs from their job queue to the
      corresponding hardware ring, in accordance with the scheduler policy.

      Signed-off-by: Shaoyun Liu <Shaoyun.Liu@xxxxxxx>
      Signed-off-by: Chunming Zhou <David1.Zhou@xxxxxxx>
      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Acked-by: Christian K?nig <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 2da78e21d153d333778d6566f159be06548418f9
  Author: David Zhang <david1.zhang@xxxxxxx>
  Date:   Sat Jul 11 23:13:40 2015 +0800

      drm/amdgpu: Enable the Fiji DID 0x7300 support

      Signed-off-by: David Zhang <david1.zhang@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit d07f5c4c235670fa4686eb08cb6211eb3bd0c864
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Thu Aug 6 11:51:23 2015 -0400

      drm/amdgpu: remove VM workaround for Fiji

      The bug is fixed in fiji.

      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 188a9bcd6cbe55c6fea23309548741d8e34bb590
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Mon Jul 27 14:24:14 2015 -0400

      drm/amdgpu: add support for VCE 3.x on Fiji

      VCE on fiji is single pipe only.

      Reviewed-by: David Zhang <david1.zhang@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 974ee3db0ff88e5413b734e634119d1e8a10a77f
  Author: David Zhang <david1.zhang@xxxxxxx>
  Date:   Wed Jul 8 17:32:15 2015 +0800

      drm/amdgpu: Add Fiji support to the UVD 6.0 IP module

      Signed-off-by: David Zhang <david1.zhang@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit 1a5bbb669597d7c47da2d7fd03ed7c33989257b8
  Author: David Zhang <david1.zhang@xxxxxxx>
  Date:   Wed Jul 8 17:29:27 2015 +0800

      drm/amdgpu: Add Fiji support to the SDMA 3.0 IP module

      Signed-off-by: David Zhang <david1.zhang@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit af15a2d51dba75498b7802fd67399a093961ddc4
  Author: David Zhang <david1.zhang@xxxxxxx>
  Date:   Thu Jul 30 19:42:11 2015 -0400

      drm/amdgpu: Add Fiji support to the GFX 8.0 IP module (v2)

      v2: agd5f: fix the rb setup.

      Signed-off-by: David Zhang <david1.zhang@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit 843908604d72a1988d94936d9c34768eb8de97a6
  Author: David Zhang <david1.zhang@xxxxxxx>
  Date:   Wed Jul 8 01:28:20 2015 +0800

      drm/amdgpu: Add Fiji support to the DCE 10.0 IP module (v2)

      v2: agd5f: fix up XDMA golden settings

      Signed-off-by: David Zhang <david1.zhang@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit 8e711e1a1ad3a95883ae15deead593d22e57c3f1
  Author: David Zhang <david1.zhang@xxxxxxx>
  Date:   Wed Jul 8 01:23:25 2015 +0800

      drm/amdgpu: Add Fiji support to SMC and DPM (v2)

      v2: agd5f: prepare for release

      Signed-off-by: David Zhang <david1.zhang@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit d1c4dcfb76a0053ca7bcc90608b3699ac1e1b39d
  Author: David Zhang <david1.zhang@xxxxxxx>
  Date:   Wed Jul 8 19:13:25 2015 +0800

      drm/amdgpu: Add Fiji smu 7.1.3 headers (v2)

      v2: agd5f: prepare for release

      Signed-off-by: David Zhang <david1.zhang@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit aa8a3b5395f61ee2418ea33c6f2d95b432a13f35
  Author: David Zhang <david1.zhang@xxxxxxx>
  Date:   Wed Jul 8 21:40:31 2015 +0800

      drm/amdgpu: Add Fiji support to IH module

      Signed-off-by: David Zhang <david1.zhang@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit 127a262853a4ca8a9284f58241c733ff074f8327
  Author: David Zhang <david1.zhang@xxxxxxx>
  Date:   Wed Jul 8 01:11:52 2015 +0800

      drm/amdgpu: Add Fiji support to the GMC 8.5 IP module

      Signed-off-by: David Zhang <david1.zhang@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit 48299f95f75b695329c53a33dd6673ccf1b5a03f
  Author: David Zhang <david1.zhang@xxxxxxx>
  Date:   Wed Jul 8 01:05:16 2015 +0800

      drm/amdgpu: Add Fiji DID 0x7300 common support

      Signed-off-by: David Zhang <david1.zhang@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit 41548ef78bbf26994546ea5225ad4b4c1bf96d1f
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Fri Jul 31 17:20:14 2015 -0400

      drm/amdgpu: handle conditional support for CIK properly

      gfx7 support is not necessary or available if CIK support
      is not enabled.

      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit e60b344f6c0eff03362b5083db746ef5442c4b36
  Author: monk.liu <monk.liu@xxxxxxx>
  Date:   Fri Jul 17 18:39:25 2015 +0800

      drm/amdgpu: optimize amdgpu_parser_init

      use kmalloc_array instead of kcalloc where appropriate and other
      cleanups.

      Signed-off-by: monk.liu <monk.liu@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit 2f7d10b393c83acd3eedc3d6ab94dce29ac6a890
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Wed Jul 22 11:29:01 2015 +0800

      drm/amdgpu: merge amdgpu_family.h into amd_shared.h (v2)

      Make the definitions common for all driver components

      v2: fix kfd

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit fa9f1d4e86f67a4df03e153d9b9cd1bd1838767c
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Tue Jul 21 21:17:16 2015 +0800

      drm/amdgpu: add some pptable definitions

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 0b2daf09cf3c9893872d68f0ce9a3f4b7e3ff06c
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Tue Jul 21 17:41:48 2015 +0800

      drm/amdgpu: add some common definitions to amd_shared.h

      Add GPU family definitions and timeout value for IP components.

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit c7890fea04acbaa89f572adcd9efe0b2d390a8e7
  Author: Marek Olšák <marek.olsak@xxxxxxx>
  Date:   Sat Jul 11 12:08:46 2015 +0200

      drm/amdgpu: allow userspace to read more debug registers

      Feel free to suggest more.

      Signed-off-by: Marek Olšák <marek.olsak@xxxxxxx>
      Acked-by: Michel Dänzer <michel.daenzer@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>

  commit 8e9198d0698a4a748bac9a7b33ed1300cf5f3793
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Sun Aug 16 22:51:50 2015 -0400

      drm/amdgpu: move some atombios definitions to common folder (v2)

      the definitions can be shared by different IP components.

      v2: fix include path

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 5430a3ffb0b1902e8aea4ed2ba256b1263126e8d
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Jul 21 18:02:21 2015 +0200

      drm/amdgpu: fix UVD/VCE fence handling

      We need to return the sequence number to userspace
      even when we don't use user fences.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 5ceb54c68a28fc8af5cf8d32c4fde29c97dd3c18
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Wed Aug 5 12:41:48 2015 -0400

      drm/amdgpu: add fence suspend/resume functions

      Added to:
      - handle draining the ring on suspend
      - properly enable/disable interrupts on suspend and resume

      Fix breakages from:
      commit 467ee3be53d240d08beed2e82a941e820c1ac323
      Author: Chunming Zhou <david1.zhou@xxxxxxx>
      Date:   Mon Jun 1 14:14:32 2015 +0800

          drm/amdgpu: always enable EOP interrupt v2

      Tested-by: Audrey Grodzovsky <audrey.grodzovsky@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit c6a4079badc2f0eda69a028622c7080a284ae147
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Mon Jun 1 14:14:32 2015 +0800

      drm/amdgpu: always enable EOP interrupt v2

      v2 (chk): always enable EOP interrupt, independent of scheduler,
          remove now unused delayed_irq handling.

      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 7f8a5290f5b6c14dd1d295e2508e0dd193a9fda5
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Jul 20 16:09:40 2015 +0200

      drm/amdgpu: rework vm_grab_id interface

      This makes assigning VM IDs independent from the use of VM IDs.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit fc8fa5e428ae937f79a36ccbe303fa871ffbbbf7
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Jul 20 15:47:30 2015 +0200

      drm/amdgpu: no updates shouldn't cause vm flush v2

      v2 (chk): split fix from original patch

      Signed-off-by: monk.liu <monk.liu@xxxxxxx>
      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit cf6f1d39496e9b5dd62953f8dca9f995d80ab4ff
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Sat Jul 18 19:20:05 2015 +0200

      drm/amdgpu: fix signed overrun in amdgpu_ctx_get_fence

      Otherwise the first 16 fences of a context will always signal immediately.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit cdecb65b4eaba1d45abbfe34b724664f65623531
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Thu Jul 16 12:01:06 2015 +0200

      drm/amdgpu: fix context memory leak

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>

  commit 0753b45242059f523a6238ec2741a4436db2fbd0
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Jul 7 18:44:01 2015 +0200

      drm/amdgpu: remove amdgpu_fence_recreate

      It's not used any more.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 21c16bf634e62cf9673946f509b469e7f0953ecf
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Tue Jul 7 17:24:49 2015 +0200

      drm/amdgpu: add user fence context map v2

      This is a prerequisite for the GPU scheduler to make the order
      of submission independent from the order of execution.

      v2: properly implement the locking

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 91e1a5207edec9e4f888e44478a9a254186e0ba8
  Author: Christian König <christian.koenig@xxxxxxx>
  Date:   Mon Jul 6 22:06:40 2015 +0200

      drm/amdgpu: deal with foreign fences in amdgpu_sync

      This also requires some error handling from the callers of that function.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 0b492a4c92050862a9780b941d52c05923fcd669
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Sun Aug 16 22:48:26 2015 -0400

      drm/amdgpu: cleanup context structure v2

      The comment is misleading and incorrect, remove it.

      Printing the id is completely meaningless and this practice
      can cause a race conditions on command submission.

      The flags and hangs fields are completely unused.

      Give all fields a common indentation.

      v2: remove fpriv reference and unused flags as well, fix debug message.

      Signed-off-by: Christian König <christian.koenig@xxxxxxx>
      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Chunming Zhou <david1.zhou@xxxxxxx>

  commit 404b2fa3385565b1c472a0482f6564a1550fc8d1
  Author: rezhu <rezhu@xxxxxxx>
  Date:   Fri Aug 7 13:37:56 2015 +0800

      drm/amdgpu: add cgs_interface for pg and cg

      v3: check whether ip_blocks is enable
      v2: add break in the for loop.

      Signed-off-by: Rex zhu <rezhu@xxxxxxx>

  commit 97baee7170099dac2ce5671d3bb9cb364194b052
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Tue Jul 21 17:02:44 2015 +0800

      drm/amdgpu: fix some typo for cgs definitions

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit bf3911b06fa9c551b852af563fed393a02e48a7a
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Wed May 13 18:58:05 2015 +0800

      drm/amdgpu: add cgs_get_firmware_info interface v2

      This new interface can be used by IP components to retrieve the
      firmware information from the core driver.

      v2: fix one typo

      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Signed-off-by: Rex Zhu <Rex.Zhou@xxxxxxx>
      Signed-off-by: Young Yang <Young.Yang@xxxxxxx>
      Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 57ff96cf471a30104c1ffdc49d237942d4908608
  Author: Chunming Zhou <david1.zhou@xxxxxxx>
  Date:   Fri Apr 24 17:38:20 2015 +0800

      drm/amdgpu: implement cgs gpu memory callbacks

      This implements the cgs interface for allocating
      GPU memory.

      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Signed-off-by: Chunming Zhou <david1.zhou@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 25da442779041e5fac7ceba552264fda55106e3f
  Author: Chunming Zhou <David1.Zhou@xxxxxxx>
  Date:   Fri May 22 12:14:04 2015 -0400

      drm/amdgpu: add atom interfaces for CGS

      This implements the interface for atombios command
      and data table access.

      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Signed-off-by: Chunming Zhou <David1.Zhou@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 0cf3be21782f8d5b74cce98a2b934e14ef418ef3
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Tue Jul 28 14:24:53 2015 -0400

      drm/amdgpu: Implement irq interfaces for CGS

      This implements the irq src registrar.

      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Signed-off-by: Chunming Zhou <David1.Zhou@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 97cb7f6e6c4d7d78de7e174d8776a95ef7fd1e8a
  Author: Chunming Zhou <David1.Zhou@xxxxxxx>
  Date:   Fri May 22 11:33:31 2015 -0400

      drm/amdgpu: Implement the pciconfig callbacks for CGS

      This implements the pciconfig register accessors.

      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Signed-off-by: Chunming Zhou <David1.Zhou@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit aba684d87a4d6805feddc7c4bc77c3c24f913ed1
  Author: Chunming Zhou <David1.Zhou@xxxxxxx>
  Date:   Fri May 22 11:29:30 2015 -0400

      drm/amdgpu: Implement mmio callbacks for CGS

      This implements the MMIO register accessors.

      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Signed-off-by: Chunming Zhou <David1.Zhou@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit d03846af92750f83d36ff2110a0cee444979b2a2
  Author: Chunming Zhou <David1.Zhou@xxxxxxx>
  Date:   Tue Jul 28 14:20:03 2015 -0400

      drm/amd: Add CGS interfaces

      CGS (Common Graphics Services) is an AMD cross component
      abstraction layer to designed to better encapsulate
      specific IP block drivers so different teams can effectively
      work on differnet IP block drivers independently. It provides
      a common interface for things like accessing registers,
      allocating GPU memory, and registering interrupt sources.
      The plan is to eventually move more and more IP drivers to
      this interface.  The first user is the ACP IP driver.

      Reviewed-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Signed-off-by: Chunming Zhou <David1.Zhou@xxxxxxx>
      Acked-by: Christian König <christian.koenig@xxxxxxx>
      Acked-by: Alex Deucher <alexander.deucher@xxxxxxx>
      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 553de19a0e2f21809bc3864d40308864652521eb
  Author: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
  Date:   Sat Aug 15 08:01:55 2015 +0530

      ASoC: davinci-vcif: Use devm_snd_soc_register_component

      Use resource managed function devm_snd_soc_register_component for
      component registration instead of snd_soc_register_component.

      Also, remove davinci_vcif_remove as it is now redundant.

      Signed-off-by: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
      Acked-by: Peter Ujfalusi <peter.ujfalusi@xxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 93576842718edf302b03f30b9915d3e704b0c78a
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Aug 17 12:30:58 2015 +0530

      regulator: core: Use IS_ERR_OR_NULL()

      Use IS_ERR_OR_NULL() rather than open coding it.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 507d7fc56154031a1d023d74e02ed9d3c4f4da31
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 12:59:42 2015 -0700

      staging: wilc1000: fix build warning with setup_timer()

      I forgot to properly cast a pointer to unsigned long in a conversion to
      setup_timer() which resulted in a build warning.  Fix that up.

      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit db93ec4f30f1826cc64560ffdf9cc6f2f4eff49f
  Author: Raphaël Beamonte <raphael.beamonte@xxxxxxxxx>
  Date:   Mon Aug 17 15:28:28 2015 -0400

      staging: wilc1000: remove DECLARE_WILC_BUFFER()

      It was just a wrapper to initialize a variable. Initialize it
      directly instead.

      Signed-off-by: Raphaël Beamonte <raphael.beamonte@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit dec180c86425e4ffcf9699c6cbc6682a63e8d11c
  Author: Raphaël Beamonte <raphael.beamonte@xxxxxxxxx>
  Date:   Mon Aug 17 15:28:26 2015 -0400

      staging: wilc1000: remove void function return statements that are not 
useful

      Signed-off-by: Raphaël Beamonte <raphael.beamonte@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 30f93ca8323f0c21b789bea0f7db8e8e3a7915c6
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Aug 17 08:16:51 2015 +0530

      regulator: core: Define regulator_set_voltage_triplet()

      Voltage tolerance isn't necessarily same on both sides of the target
      voltage and regulator_set_voltage_tol() wouldn't be suitable in such
      cases.

      Add another routine regulator_set_voltage_triplet(), which accepts
      target, min and max voltages as arguments.

      This first tries to set the voltage between the target voltage and the
      upper limit, then fall back on the full range. The idea behind this is
      to set regulator's voltage as close to the target voltage, as possible.

      Based on regulator_set_voltage_tol().

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit da65e367b67e15fc41cbf646c506c802dd5213b7
  Author: Bjorn Andersson <bjorn.andersson@xxxxxxxxxxxxxx>
  Date:   Mon Aug 17 11:43:59 2015 -0700

      regulator: Regulator driver for the Qualcomm RPM

      Driver for regulators exposed by the Resource Power Manager (RPM) found
      in devices based on Qualcomm 8974 and newer platforms.

      Signed-off-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxxxxxx>
      Acked-by: Andy Gross <agross@xxxxxxxxxxxxxx>
      Tested-by: Tim Bird <tim.bird@xxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit a78d9a38a52fc0660e6efb8eaf6540f975db87c6
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 17 11:05:15 2015 +0900

      staging: wilc1000: coreconfigurator.c: fix kmalloc error check

      It is added and fixed error check when kmalloc is failed.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 0ac87998784e261e1080907da912afb562737c69
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 17 11:05:14 2015 +0900

      staging: wilc1000: coreconfigurator.c: use kmalloc instead of WILC_MALLOC

      The kmalloc is used to handle host interface message within kernel thread.
      The manipulation of host interface message is not called on IRQ context
      and I could not find any spinlock inside function.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 280f1fa0808ea6e3b6bd5b39d67a0bb0a35a6761
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 17 11:05:13 2015 +0900

      staging: wilc1000: remove unused codes of gps8ConfigPacket

      This patch removes unused codes of gps8ConfigPacket declared by global 
variable.
      It is allocated and freed memory within CoreConfiguratorInit and 
CoreConfiguratorDeInit.
      There is no used anywhere except within two functions.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit dc0ad74bc432eccb96f3249de20f3b2b468d0919
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 17 11:05:12 2015 +0900

      staging: wilc1000: remove unnecessary void pointer cast

      This patch removes unnecessary void pointer cast of WILC_MALLOC.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 355c06633e233a57155b827ebe99b91c35bc1f5c
  Author: Jonathan Corbet <corbet@xxxxxxx>
  Date:   Thu Aug 13 17:52:02 2015 -0600

      workqueue: fix some docbook warnings

      There are some errors in the docbook comments in workqueue.h that cause
      warnings when the docs are built; this only recently came to light because
      these comments were not used until now.  Fix the comments to make the
      warnings go away.

      The "args..." "fix" is a hack.  kerneldoc doesn't deal properly with named
      variadic arguments in macros, so all I've really achieved here is to make
      it shut up.  Fixing kerneldoc will have to wait for more time.

      Signed-off-by: Jonathan Corbet <corbet@xxxxxxx>
      Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>

  commit 9fba8e30f704d49627ab8a4a57213862206b3e5f
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 14:46:51 2015 -0500

      SUNRPC: Drop double-underscores from __rpc_cmp_addr6()

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Fixes: 7b0ce60c0b20 ("SUNRPC: Drop double-underscores from 
rpc_cmp_addr{4|6}()")
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 636dcf9716306bc93afffe8f968a3f232c42f6d7
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 17 11:05:11 2015 +0900

      staging: wilc1000: remove WILC_NEW and WILC_NEW_EX

      This patch removes WILC_NEW and WILC_NEW_EX defines that are not used 
anywhere.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 5c07828f5db4c620a4f574b3a4bb0a0bba82826b
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 17 11:05:10 2015 +0900

      staging: wilc1000: use kmalloc instead of WILC_NEW

      WILC_NEW is replaced by kmallo with GFP_ATOMIC.
      This kmalloc is inside a spin_lock_irqsave region.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 6e3f05bfc02b61adf50709c4a96f07314addeeb6
  Author: Chandra S Gorentla <csgorentla@xxxxxxxxx>
  Date:   Sat Aug 15 12:23:31 2015 +0530

      staging: wilc1000: Process WARN, INFO options of debug levels from user

      This patch enables setting the module's debug options WARN and INFO in the
      debugfs file 'wilc_debug_level'.  This functionality allows the user to
      enable logging of warnings and other information.  Before this change,
      writes to this debugfs file set only one option - DEBUG.  Another option
      that is enabled by default is ERR.

      As a side effect, this patch removes the 'sparse' warning -
      'warning: incorrect type in argument 2 (different address spaces)'.

      Signed-off-by: Chandra S Gorentla <csgorentla@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit fbaff3ef859a86dc3df2128d2de9f8a6e255a967
  Author: Jesse Brandeburg <jesse.brandeburg@xxxxxxxxx>
  Date:   Thu Aug 13 18:34:03 2015 -0700

      net: fix endian check warning in etherdevice.h

      Sparse builds have been warning for a really long time now
      that etherdevice.h has a conversion that is unsafe.

        include/linux/etherdevice.h:79:32: warning: restricted __be16 degrades 
to integer

      This code change fixes the issue and generates the exact
      same assembly before/after (checked on x86_64)

      Fixes: 2c722fe1c821 (etherdevice: Optimize a few is_<foo>_ether_addr 
functions)
      Signed-off-by: Jesse Brandeburg <jesse.brandeburg@xxxxxxxxx>
      CC: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit ee847a252664f54d06bcc6ab2864322cbcb52692
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Sat Aug 15 17:17:53 2015 -0700

      hwmon: (ltc2978) Introduce helper functions for min and max values

      The code used to determine historic low and high peaks is repeated
      several times. Introduce helper functions to simplify it.

      Tested-by: Michael Jones <mike@xxxxxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit 8582bcc8ebb21375b37f337c58ca783b997a0355
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Sat Aug 15 17:02:09 2015 -0700

      hwmon: (ltc2978) Introduce feature flags

      It is becoming cumbersom to track per-chip feature support.
      Introduce feature flag to simplify the code.

      Tested-by: Michael Jones <mike@xxxxxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit 2238835c5ce9f8eae5cb4dd6a6c05a6c82743282
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Wed Aug 12 21:05:38 2015 -0700

      hwmon: (pmbus) Convert command register definitions to enum

      This will simplify adding new virtual commands.

      Tested-by: Michael Jones <mike@xxxxxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit 649ca820dab3d76e12408b74af3e8e97abb07ae0
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Mon Jun 8 09:56:20 2015 -0700

      hwmon: (ltc2978) Add support for LTC2975

      LTC2975 is mostly compatible to LTC2974, but supports input current
      and power measurement.

      Tested-by: Michael Jones <mike@xxxxxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit f3ae683f09aff7c53dab8b85d2425d746c8e0d5f
  Merge: 8f8ff913 4b46995
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Mon Aug 17 11:50:25 2015 -0700

      Merge branch 'iff_no_queue'

      Phil Sutter says:

      ====================
      net: introduce IFF_NO_QUEUE as successor of zero tx_queue_len

      This series adds a new private net_device flag indicating that a device 
may
      (and probably should) be used without a queueing discipline attached to 
it.
      This is already common practice for many virtual device types like e.g.
      loopback, VLAN (802.1Q) or bridges (802.1D). The reason for this is that 
these
      devices lack an underlying layer which could impose back pressure and 
therefore
      making a TX queue necessary to not slow down senders.

      Up to now, drivers being aware of the above applying to them set
      dev->tx_queue_len to zero to indicate no qdisc should be attached to the
      interface they drive and the kernel reacts upon this by assigning the noop
      qdisc instead of the default pfifo_fast. This implicit agreement though 
leads
      to an inconvenient situation once a user tries to attach a real qdisc to 
these
      devices, as the formerly special tx_queue_len value becomes a regular one,
      limiting the queue to zero packets and thus prevents any TX from 
happening. To
      overcome this, practically all qdisc implementations intercept and 
sanitize the
      malicious value.

      With this series applied, drivers may signal the lack of need for a qdisc
      without having to tamper with tx_queue_len, making fallbacks in qdiscs and
      caveats in userspace unnecessary.

      Upon upstream acceptance, this series will be followed up by a set of 
patches
      converting device drivers, adding a warning so out-of-tree driver authors 
get
      aware of this change and dropping all special handling of tx_queue_len in
      net/sched/.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4b469955685d58c2f8198bf817fc661600b7e3d0
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Thu Aug 13 19:01:07 2015 +0200

      net: sch_generic: react upon IFF_NO_QUEUE flag

      Handle IFF_NO_QUEUE as alternative to tx_queue_len being zero.

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Acked-by: Jesper Dangaard Brouer <brouer@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit fa8187c96471c49419c25d4ec3299d17d3f274b2
  Author: Phil Sutter <phil@xxxxxx>
  Date:   Thu Aug 13 19:01:06 2015 +0200

      net: declare new net_device priv_flag IFF_NO_QUEUE

      This private net_device flag can be set by drivers to inform that a
      device runs fine without a qdisc attached. This was formerly done by
      setting tx_queue_len to zero.

      Signed-off-by: Phil Sutter <phil@xxxxxx>
      Acked-by: Jesper Dangaard Brouer <brouer@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7c2dad99d60c86ec686b3bfdcb787c450a7ea89f
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 6 12:06:30 2015 -0400

      NFS: Don't let the ctime override attribute barriers.

      Chuck reports seeing cases where a GETATTR that happens to race
      with an asynchronous WRITE is overriding the file size, despite
      the attribute barrier being set by the writeback code.

      The culprit turns out to be the check in nfs_ctime_need_update(),
      which sees that the ctime is newer than the cached ctime, and
      assumes that it is safe to override the attribute barrier.
      This patch removes that override, and ensures that attribute
      barriers are always respected.

      Reported-by: Chuck Lever <chuck.lever@xxxxxxxxxx>
      Fixes: a08a8cd375db9 ("NFS: Add attribute update barriers to NFS 
writebacks")
      Cc: stable@xxxxxxxxxxxxxxx # v4.0+
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 74918f937d9896aa2910cfe81f06499abd1dba59
  Merge: 37bfcc1 5883055
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 13:36:32 2015 -0500

      Merge branch 'layoutfixes'

      * layoutfixes:
        NFSv4.1/pnfs: Remove redundant wakeup in pnfs_send_layoutreturn()
        NFSv4.1/pnfs: Remove redundant check in pnfs_layoutgets_blocked()
        NFSv4.1/pnfs: Remove redundant lo->plh_block_lgets in layoutreturn
        NFSv4.1/pnfs: Don't prevent layoutgets when doing return-on-close
        NFSv4.1/pnfs: Fix serialisation of layout return and layoutget
        NFSv4.1/pnfs: Remove redundant checks in pnfs_layoutgets_blocked()
        pNFS: Tighten up locking around DS commit buckets

  commit 37bfcc14b2b44ce03930eeb2c3de1c20f7da6fb9
  Merge: eed889b 99b1a4c
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 13:36:22 2015 -0500

      Merge branch 'bugfixes'

      * bugfixes:
        SUNRPC: Fix a thinko in xs_connect()
        NFSv4.1/pNFS: Fix borken function _same_data_server_addrs_locked()
        NFS: nfs_set_pgio_error sometimes misses errors

  commit eed889b161ce4817e594c28906269d776f4806a5
  Merge: aff8d8d d0f36c4
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 13:33:58 2015 -0500

      Merge tag 'nfs-rdma-for-4.3' of 
git://git.linux-nfs.org/projects/anna/nfs-rdma

      NFS: NFS over RDMA Client Side Changes

      These patches improve both client performance and scalability, most 
notably
      by increasing the maixmum allowed rsize and wsize and by increasing the 
number
      of RDMA "credits".  There are also several bugfixes, such as correcting 
how
      WRITE compounds are encoded and fixing large NFS symlink operations.

      Signed-off-by: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>

  commit aff8d8dc4c34804c6a1de04f1b3313aa9063bf46
  Author: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
  Date:   Mon Jul 13 14:01:33 2015 -0400

      NFS: Remove nfs_release()

      And call nfs_file_clear_open_context() directly.  This makes it obvious
      that nfs_file_release() will always return 0.

      Signed-off-by: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit c4f83a5571981c92b028c8e9a9da827598905059
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 11:32:38 2015 -0700

      staging: wilc1000: remove unneeded tstrWILC_MsgQueueAttrs typedef

      No one uses it, so remove it and all of the NULL parameters being used
      to pass it into the msg code.

      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ae09c31f66cc673bb8c64a5dbfdc04ab67f66d7e
  Author: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
  Date:   Mon Jul 13 14:01:32 2015 -0400

      NFS: Rename nfs_commit_unstable_pages() to nfs_write_inode()

      All nfs_write_inode() does is pass its arguments to
      nfs_commit_unstable_pages().  Let's cut out the middle man and have
      nfs_write_pages() do the work directly.

      Signed-off-by: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 3f10a6af4b577da2117907ac8420f27af81d57de
  Author: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
  Date:   Mon Jul 13 14:01:31 2015 -0400

      NFS: Remove nfs41_server_notify_{target|highest}_slotid_update()

      All these functions do is call nfs41_ping_server() without adding
      anything.  Let's remove them and give nfs41_ping_server() a better name
      instead.

      Signed-off-by: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit fb2a525cf086bb080f84b0b748ee823ef79e539c
  Author: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
  Date:   Mon Jul 13 14:01:29 2015 -0400

      NFS: Combine nfs_idmap_{init|quit}() and nfs_idmap_{init|quit}_keyring()

      The idmap_init() and idmap_quit() functions only exist to call the
      _keyring() version.  Let's just call the keyring() functions directly.

      Signed-off-by: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit d8efa4e62505f5113e363572b5438b7be0d08b12
  Author: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
  Date:   Mon Jul 13 14:01:28 2015 -0400

      NFS: Use RPC functions for matching sockaddrs

      They already exist and do the exact same thing.  Let's save ourselves
      several lines of code!

      Signed-off-by: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 58cc8a55aa38655d472a4c381df465c9ab97b4d6
  Author: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
  Date:   Mon Jul 13 14:01:27 2015 -0400

      SUNRPC: Add an rpc_cmp_addr_port() function

      This function is to help determine if two sockaddrs are really the same
      socket.

      Signed-off-by: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 7b0ce60c0b203a2a037f308e387152acbf99c445
  Author: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
  Date:   Mon Jul 13 14:01:26 2015 -0400

      SUNRPC: Drop double-underscores from rpc_cmp_addr{4|6}()

      I'm planning on using these functions inside the client, so remove the
      underscores to make it feel like I'm using a public interface.

      Signed-off-by: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit c7e9668e78eab69b7ade9897bea1fbd77dd18775
  Author: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
  Date:   Mon Jul 13 14:01:25 2015 -0400

      NFS: Rename nfs_readdir_free_pagearray() and nfs_readdir_large_page()

      nfs_readdir_xdr_to_array() uses both a cache array and an array of
      pages, so I rename these functions to make it clearer how the code
      works.  nfs_readdir_large_page() becomes nfs_readdir_alloc_pages()
      because this function has absolutely nothing to do with setting up a
      large page.  nfs_readdir_free_pagearray() becomes
      nfs_readdir_free_pages() to stay consistent with the new alloc_pages()
      function.

      Signed-off-by: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 0b936e37df8111ea727263a5a246b58e05b7aa1b
  Author: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
  Date:   Mon Jul 13 14:01:24 2015 -0400

      NFS: Remove unused variable "pages_ptr"

      This variable is initialized to NULL and is never modified before being
      passed to nfs_readdir_free_large_page().  But that's okay, because
      nfs_readdir_free_large_page() only seems to exist as a way of calling
      nfs_readdir_free_pagearray() without this parameter.  Let's simplify by
      removing pages_ptr and nfs_readdir_free_pagearray().

      Signed-off-by: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 9ca308506062fc4a4ee8ca7ad2f71033c831c2fb
  Author: Baolin Wang <baolin.wang@xxxxxxxxxx>
  Date:   Wed Jul 29 20:18:31 2015 +0800

      time: Introduce timespec64_to_jiffies()/jiffies_to_timespec64()

      The conversion between struct timespec and jiffies is not year 2038
      safe on 32bit systems. Introduce timespec64_to_jiffies() and
      jiffies_to_timespec64() functions which use struct timespec64 to
      make it ready for 2038 issue.

      Cc: Prarit Bhargava <prarit@xxxxxxxxxx>
      Cc: Richard Cochran <richardcochran@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Signed-off-by: Baolin Wang <baolin.wang@xxxxxxxxxx>
      Signed-off-by: John Stultz <john.stultz@xxxxxxxxxx>

  commit 8758a240e2d74c5932ab51a73377e6507b7fd441
  Author: Baolin Wang <baolin.wang@xxxxxxxxxx>
  Date:   Wed Jul 29 20:09:43 2015 +0800

      time: Introduce current_kernel_time64()

      The current_kernel_time() is not year 2038 safe on 32bit systems
      since it returns a timespec value. Introduce current_kernel_time64()
      which returns a timespec64 value.

      Cc: Prarit Bhargava <prarit@xxxxxxxxxx>
      Cc: Richard Cochran <richardcochran@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Signed-off-by: Baolin Wang <baolin.wang@xxxxxxxxxx>
      Signed-off-by: John Stultz <john.stultz@xxxxxxxxxx>

  commit 19a46fe57a005a884ccb38419071f772ac2fca2b
  Author: Baolin Wang <baolin.wang@xxxxxxxxxx>
  Date:   Wed Jul 29 19:58:15 2015 +0800

      time: Introduce struct itimerspec64

      The struct itimerspec is not year 2038 safe on 32bit systems due to
      the limitation of the struct timespec members. Introduce itimerspec64
      which uses struct timespec64 instead and provide conversion functions.

      Cc: Prarit Bhargava <prarit@xxxxxxxxxx>
      Cc: Richard Cochran <richardcochran@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Signed-off-by: Baolin Wang <baolin.wang@xxxxxxxxxx>
      Signed-off-by: John Stultz <john.stultz@xxxxxxxxxx>

  commit 7494e9eedee2121305a48af4fbbcedb69a2c2b93
  Author: Xunlei Pang <pang.xunlei@xxxxxxxxxx>
  Date:   Sun Jul 26 18:45:39 2015 +0800

      time: Add the common weak version of update_persistent_clock()

      The weak update_persistent_clock64() calls update_persistent_clock(),
      if the architecture defines an update_persistent_clock64() to replace
      and remove its update_persistent_clock() version, when building the
      kernel the linker will throw an undefined symbol error, that is, any
      arch that switches to update_persistent_clock64() will have this issue.

      To solve the issue, we add the common weak update_persistent_clock().

      Cc: Prarit Bhargava <prarit@xxxxxxxxxx>
      Cc: Richard Cochran <richardcochran@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Signed-off-by: Xunlei Pang <pang.xunlei@xxxxxxxxxx>
      Signed-off-by: John Stultz <john.stultz@xxxxxxxxxx>

  commit ce603281468cf1be0a70a45fdaef761db134b900
  Author: Jeff Layton <jlayton@xxxxxxxxxxxxxxx>
  Date:   Fri Jul 10 15:59:26 2015 -0400

      nfs: remove some dead code in ff_layout_pg_get_mirror_count_write

      We already know that pg_lseg is NULL here.

      Signed-off-by: Jeff Layton <jeff.layton@xxxxxxxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit e1d7ba8735551ed79c7a0463a042353574b96da3
  Author: Wang YanQing <udknight@xxxxxxxxx>
  Date:   Tue Jun 23 18:38:54 2015 +0800

      time: Always make sure wall_to_monotonic isn't positive

      Two issues were found on an IMX6 development board without an
      enabled RTC device(resulting in the boot time and monotonic
      time being initialized to 0).

      Issue 1:exportfs -a generate:
             "exportfs: /opt/nfs/arm does not support NFS export"
      Issue 2:cat /proc/stat:
             "btime 4294967236"

      The same issues can be reproduced on x86 after running the
      following code:
        int main(void)
        {
            struct timeval val;
            int ret;

            val.tv_sec = 0;
            val.tv_usec = 0;
            ret = settimeofday(&val, NULL);
            return 0;
        }

      Two issues are different symptoms of same problem:
      The reason is a positive wall_to_monotonic pushes boot time back
      to the time before Epoch, and getboottime will return negative
      value.

      In symptom 1:
                negative boot time cause get_expiry() to overflow time_t
                when input expire time is 2147483647, then cache_flush()
                always clears entries just added in ip_map_parse.
      In symptom 2:
                show_stat() uses "unsigned long" to print negative btime
                value returned by getboottime.

      This patch fix the problem by prohibiting time from being set to a value 
which
      would cause a negative boot time. As a result one can't set the 
CLOCK_REALTIME
      time prior to (1970 + system uptime).

      Cc: Prarit Bhargava <prarit@xxxxxxxxxx>
      Cc: Richard Cochran <richardcochran@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Signed-off-by: Wang YanQing <udknight@xxxxxxxxx>
      [jstultz: reworded commit message]
      Signed-off-by: John Stultz <john.stultz@xxxxxxxxxx>

  commit de4a95faf173be1e798c37ca486dfcb234a0941b
  Author: Karsten Blees <karsten.blees@xxxxxxxxx>
  Date:   Thu Jun 25 14:13:55 2015 +0200

      time: Fix nanosecond file time rounding in timespec_trunc()

      timespec_trunc() avoids rounding if granularity <= nanoseconds-per-jiffie
      (or TICK_NSEC). This optimization assumes that:

       1. current_kernel_time().tv_nsec is already rounded to TICK_NSEC (i.e.
          with HZ=1000 you'd get 1000000, 2000000, 3000000... but never 
1000001).
          This is no longer true (probably since hrtimers introduced in 2.6.16).

       2. TICK_NSEC is evenly divisible by all possible granularities. This may
          be true for HZ=100, 250, 1000, but obviously not for HZ=300 /
          TICK_NSEC=3333333 (introduced in 2.6.20).

      Thus, sub-second portions of in-core file times are not rounded to on-disk
      granularity. I.e. file times may change when the inode is re-read from 
disk
      or when the file system is remounted.

      This affects all file systems with file time granularities > 1 ns and < 
1s,
      e.g. CEPH (1000 ns), UDF (1000 ns), CIFS (100 ns), NTFS (100 ns) and FUSE
      (configurable from user mode via struct fuse_init_out.time_gran).

      Steps to reproduce with e.g. UDF:

        $ dd if=/dev/zero of=udfdisk count=10000 && mkudffs udfdisk
        $ mkdir udf && mount udfdisk udf
        $ touch udf/test && stat -c %y udf/test
        2015-06-09 10:22:56.130006767 +0200
        $ umount udf && mount udfdisk udf
        $ stat -c %y udf/test
        2015-06-09 10:22:56.130006000 +0200

      Remounting truncates the mtime to 1 µs.

      Fix the rounding in timespec_trunc() and update the documentation.

      timespec_trunc() is exclusively used to calculate inode's [acm]time 
(mostly
      via current_fs_time()), and always with super_block.s_time_gran as second
      argument. So this can safely be changed without side effects.

      Note: This does _not_ fix the issue for FAT's 2 second mtime resolution,
      as super_block.s_time_gran isn't prepared to handle different ctime /
      mtime / atime resolutions nor resolutions > 1 second.

      Cc: Prarit Bhargava <prarit@xxxxxxxxxx>
      Cc: Richard Cochran <richardcochran@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Signed-off-by: Karsten Blees <blees@xxxxxxx>
      Signed-off-by: John Stultz <john.stultz@xxxxxxxxxx>

  commit 38bf985b05625df3fbbc1dbf543bdd2da447c2af
  Author: John Stultz <john.stultz@xxxxxxxxxx>
  Date:   Wed May 27 16:44:48 2015 -0700

      timer_list: Add the base offset so remaining nsecs are accurate for non 
monotonic timers

      I noticed for non-monotonic timers in timer_list, some of the
      output looked a little confusing.

      For example:
       #1: <0000000000000000>, posix_timer_fn, S:01, hrtimer_start_range_ns, 
leap-a-day/2360
       # expires at 1434412800000000000-1434412800000000000 nsecs [in 
1434410725062375469 to 1434410725062375469 nsecs]

      You'll note the relative time till the expiration "[in xxx to
      yyy nsecs]" is incorrect. This is because its printing the delta
      between CLOCK_MONOTONIC time to the CLOCK_REALTIME expiration.

      This patch fixes this issue by adding the clock offset to the
      "now" time which we use to calculate the delta.

      Cc: Prarit Bhargava <prarit@xxxxxxxxxx>
      Cc: Daniel Bristot de Oliveira <bristot@xxxxxxxxxx>
      Cc: Richard Cochran <richardcochran@xxxxxxxxx>
      Cc: Jan Kara <jack@xxxxxxx>
      Cc: Jiri Bohac <jbohac@xxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Shuah Khan <shuahkh@xxxxxxxxxxxxxxx>
      Signed-off-by: John Stultz <john.stultz@xxxxxxxxxx>

  commit 8bb28975823aee062f82b99ddacc499601c0cfd1
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Mon Aug 17 18:41:01 2015 +0200

      pnfs: move common blocklayout XDR defintions to nfs4.h

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 513d6d7a9591d7c5ebb5f05465942185db9299a4
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Mon Aug 17 18:41:00 2015 +0200

      pnfs/blocklayout: pass proper file mode to blkdev_get/put

      We generally want to read and write to a block device that's used by
      the pNFS block layout client (and even if it's read only the server
      has no way of telling us).  Add FMODE_WRITE to the mode argument
      so that we don't incorrectly tell the block driver that we want a
      read-only open.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 2bd3c63a333c364cfde4701b51f82e1fae106a88
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Mon Aug 17 18:40:59 2015 +0200

      pnfs/blocklayout: reject too long signatures

      Instead of overwriting kernel memory reject too long signatures.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 68596bd188e5e621c28a2f6fc0a3dd80a606d16b
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Mon Aug 17 18:40:58 2015 +0200

      pnfs/blocklayout: set up layoutupdate_pages properly

      We need to replace the __be32 with a void pointer to do proper 
arithmentics
      on the virtual addresses so that we can get the right page pointers.

      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 29662fa646b41492a9c298a83399126f94847e93
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Mon Aug 17 18:40:57 2015 +0200

      pnfs/blocklayout: calculate layoutupdate size correctly

      We need to include the first u32 for the number of entries.  Add a helper
      for the calculation instead of opencoding it so that it's in one place.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 18e3b739fdc826481c6a1335ce0c5b19b3d415da
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Sat Aug 15 21:52:10 2015 +0800

      NFS: Fix a NULL pointer dereference of migration recovery ops for v4.2 
client

      ---Steps to Reproduce--
      <nfs-server>
      # cat /etc/exports
      /nfs/referal  *(rw,insecure,no_subtree_check,no_root_squash,crossmnt)
      /nfs/old      *(ro,insecure,subtree_check,root_squash,crossmnt)

      <nfs-client>
      # mount -t nfs nfs-server:/nfs/ /mnt/
      # ll /mnt/*/

      <nfs-server>
      # cat /etc/exports
      /nfs/referal   
*(rw,insecure,no_subtree_check,no_root_squash,crossmnt,refer=/nfs/old/@nfs-server)
      /nfs/old       *(ro,insecure,subtree_check,root_squash,crossmnt)
      # service nfs restart

      <nfs-client>
      # ll /mnt/*/    --->>>>> oops here

      [ 5123.102925] BUG: unable to handle kernel NULL pointer dereference at   
        (null)
      [ 5123.103363] IP: [<ffffffffa03ed38b>] 
nfs4_proc_get_locations+0x9b/0x120 [nfsv4]
      [ 5123.103752] PGD 587b9067 PUD 3cbf5067 PMD 0
      [ 5123.104131] Oops: 0000 [#1]
      [ 5123.104529] Modules linked in: nfsv4(OE) nfs(OE) fscache(E) nfsd(OE) 
xfs libcrc32c iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi coretemp 
crct10dif_pclmul crc32_pclmul crc32c_intel ghash_clmulni_intel ppdev 
vmw_balloon parport_pc parport i2c_piix4 shpchp auth_rpcgss nfs_acl vmw_vmci 
lockd grace sunrpc vmwgfx drm_kms_helper ttm drm mptspi serio_raw 
scsi_transport_spi e1000 mptscsih mptbase ata_generic pata_acpi [last unloaded: 
nfsd]
      [ 5123.105887] CPU: 0 PID: 15853 Comm: ::1-manager Tainted: G           
OE   4.2.0-rc6+ #214
      [ 5123.106358] Hardware name: VMware, Inc. VMware Virtual Platform/440BX 
Desktop Reference Platform, BIOS 6.00 05/20/2014
      [ 5123.106860] task: ffff88007620f300 ti: ffff88005877c000 task.ti: 
ffff88005877c000
      [ 5123.107363] RIP: 0010:[<ffffffffa03ed38b>]  [<ffffffffa03ed38b>] 
nfs4_proc_get_locations+0x9b/0x120 [nfsv4]
      [ 5123.107909] RSP: 0018:ffff88005877fdb8  EFLAGS: 00010246
      [ 5123.108435] RAX: ffff880053f3bc00 RBX: ffff88006ce6c908 RCX: 
ffff880053a0d240
      [ 5123.108968] RDX: ffffea0000e6d940 RSI: ffff8800399a0000 RDI: 
ffff88006ce6c908
      [ 5123.109503] RBP: ffff88005877fe28 R08: ffffffff81c708a0 R09: 
0000000000000000
      [ 5123.110045] R10: 00000000000001a2 R11: ffff88003ba7f5c8 R12: 
ffff880054c55800
      [ 5123.110618] R13: 0000000000000000 R14: ffff880053a0d240 R15: 
ffff880053a0d240
      [ 5123.111169] FS:  0000000000000000(0000) GS:ffffffff81c27000(0000) 
knlGS:0000000000000000
      [ 5123.111726] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [ 5123.112286] CR2: 0000000000000000 CR3: 0000000054cac000 CR4: 
00000000001406f0
      [ 5123.112888] Stack:
      [ 5123.113458]  ffffea0000e6d940 ffff8800399a0000 00000000000167d0 
0000000000000000
      [ 5123.114049]  0000000000000000 0000000000000000 0000000000000000 
00000000a7ec82c6
      [ 5123.114662]  ffff88005877fe18 ffffea0000e6d940 ffff8800399a0000 
ffff880054c55800
      [ 5123.115264] Call Trace:
      [ 5123.115868]  [<ffffffffa03fb44b>] nfs4_try_migration+0xbb/0x220 [nfsv4]
      [ 5123.116487]  [<ffffffffa03fcb3b>] nfs4_run_state_manager+0x4ab/0x7b0 
[nfsv4]
      [ 5123.117104]  [<ffffffffa03fc690>] ? nfs4_do_reclaim+0x510/0x510 [nfsv4]
      [ 5123.117813]  [<ffffffff810a4527>] kthread+0xd7/0xf0
      [ 5123.118456]  [<ffffffff810a4450>] ? kthread_worker_fn+0x160/0x160
      [ 5123.119108]  [<ffffffff816d9cdf>] ret_from_fork+0x3f/0x70
      [ 5123.119723]  [<ffffffff810a4450>] ? kthread_worker_fn+0x160/0x160
      [ 5123.120329] Code: 4c 8b 6a 58 74 17 eb 52 48 8d 55 a8 89 c6 4c 89 e7 
e8 4a b5 ff ff 8b 45 b0 85 c0 74 1c 4c 89 f9 48 8b 55 90 48 8b 75 98 48 89 df 
<41> ff 55 00 3d e8 d8 ff ff 41 89 c6 74 cf 48 8b 4d c8 65 48 33
      [ 5123.121643] RIP  [<ffffffffa03ed38b>] 
nfs4_proc_get_locations+0x9b/0x120 [nfsv4]
      [ 5123.122308]  RSP <ffff88005877fdb8>
      [ 5123.122942] CR2: 0000000000000000

      Fixes: ec011fe847 ("NFS: Introduce a vector of migration recovery ops")
      Cc: stable@xxxxxxxxxxxxxxx # v3.13+
      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 2b5f12eac0ce4e6ffa5788400750da0a60fe8678
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 11:20:57 2015 -0700

      staging: wilc1000: delete wilc_osconfig.h

      This .h file isn't needed at all, so delete it, and the one line that
      added it to the build.

      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 6e53191d6e15b7afb71dfbd3134c567fcc4eb2cd
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 11:17:57 2015 -0700

      staging: wilc1000: delete wilc_log.h

      The macros are not used in the driver at all, except in one commented
      out line, so just remove the .h file so that no one thinks it is a good
      idea to add any code to use them in the future.

      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 97fd0f07d4d3f71c20ef4a4f5a65eb461290ca1c
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 11:12:49 2015 -0700

      staging: wilc1000: delete wilc_timer.h

      It is no longer needed at all, so remove this header file.

      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 9eb066438b01bc70ef915987f881d3e57e698a30
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 11:10:55 2015 -0700

      staging: wilc1000: remove WILC_TimerStart()

      It was a wrapper around mod_timer() so replace it with the real timer
      call and remove wilc_timer.c as it's now empty.

      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 99b1a4c32ad22024ac6198a4337aaec5ea23168f
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 15:33:51 2015 -0400

      SUNRPC: Fix a thinko in xs_connect()

      It is rather pointless to test the value of transport->inet after
      calling xs_reset_transport(), since it will always be zero, and
      so we will never see any exponential back off behaviour.
      Also don't force early connections for SOFTCONN tasks. If the server
      disconnects us, we should respect the exponential backoff.

      Cc: stable@xxxxxxxxxxxxxxx # 4.0+
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 6f536936b79bd4b5cea8fb0e5b8b0bce8cd1ea4a
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 10:59:07 2015 -0400

      NFSv4.1/pNFS: Fix borken function _same_data_server_addrs_locked()

      - Switch back to using list_for_each_entry(). Fixes an incorrect test
        for list NULL termination.
      - Do not assume that lists are sorted.
      - Finally, consider an existing entry to match if it consists of a subset
        of the addresses in the new entry.

      Cc: stable@xxxxxxxxxxxxxxx # 4.0+
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit e9ae58aeee8842a50f7e199d602a5ccb2e41a95f
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 12:57:07 2015 -0500

      NFS: nfs_set_pgio_error sometimes misses errors

      We should ensure that we always set the pgio_header's error field
      if a READ or WRITE RPC call returns an error. The current code depends
      on 'hdr->good_bytes' always being initialised to a large value, which
      is not always done correctly by callers.
      When this happens, applications may end up missing important errors.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 0643558f85e740019e0632072c55e8b2f79a8d7d
  Author: Koro Chen <koro.chen@xxxxxxxxxxxx>
  Date:   Mon Aug 17 19:16:51 2015 +0800

      ASoC: mediatek: Remove AIF widgets for backend DAIs

      DAPM core already creates widgets for DAIs. It is not necessary
      to declare them by SND_SOC_DAPM_AIF_IN/SND_SOC_DAPM_AIF_OUT.
      Furthermore, original codes use backend DAI's stream name to be the AIF
      widget name. It causes the same widget to be created twice, and after
      commit 92fa12426741 ("ASoC: dapm: Add new widgets to the end of the
      widget list") the first created widget (by snd_soc_dapm_new_controls)
      is used, not the 2nd created one (by snd_soc_dapm_new_dai_widgets),
      so audio path is broken.

      Signed-off-by: Koro Chen <koro.chen@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 8f8ff9135b28a7560a5627aceaf289e3f0d4cd64
  Author: Richard Alpe <richard.alpe@xxxxxxxxxxxx>
  Date:   Mon Aug 17 14:15:10 2015 +0200

      tipc: don't sanity check non-existing TLV (NL compat)

      A zero length payload means that no TLV (Type Length Value) data has
      been passed. Prior to this patch a non-existing TLV could be sanity
      checked with TLV_OK() resulting in random behavior where a user
      sending an empty message occasionally got a incorrect "operation not
      supported" message back.

      Signed-off-by: Richard Alpe <richard.alpe@xxxxxxxxxxxx>
      Reviewed-by: Erik Hugne <erik.hugne@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit da3cc2da7c08dc1f4371a4cc2eb83b22a0cf83a8
  Author: Yuval Mintz <Yuval.Mintz@xxxxxxxxxx>
  Date:   Mon Aug 17 08:28:25 2015 +0300

      bnx2: Fix bandwidth allocation for some MF modes

      Management firmware tells driver in case bandwidth configuration for
      a specific function exists, but [regretably] the same field has different
      meanings depending on the multi-function mode - it can either be
      a percentile value or an actual speed.

      For newer multi-function modes current logic is incorrect -
      driver understands values as actual speeds instead of percentages,
      causing the resulting chip configuration to be incorrect.

      Signed-off-by: Yuval Mintz <Yuval.Mintz@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 672cfeeb93e572f108965cf964c3e2a869a549cc
  Merge: 92f2618 ac22a1d
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 09:12:15 2015 -0700

      Merge tag 'extcon-next-for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/extcon into 
char-misc-testing

      Chanwoo writes:

      Update extcon for v4.3

      This patchset include the function update of extcon drivers without 
critical
      update and fix minor issue of extcon drivers.

      Detailed description for patchset:
      1. Update the extcon drivers:
      - Update the logic of microphone detection for extcon-arizona driver
      - Support GPIO based USB ID detection of extcon-palmas driver

      2. Fix minor issues:
      - Clean code and remove the opitonal print_state() function pointer from 
extcon
        core driver
      - Clear interrupt bit state before requesting irq on extcon-max778433 
driver
      - Fix signedness bugs of extcon core driver

  commit 02dc2723f2b0b94bb3e47c08e1543b84b1836086
  Merge: 1724856 26c78da
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 09:09:51 2015 -0700

      Merge tag 'usb-serial-4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/johan/usb-serial into usb-next

      Johan writes:

      USB-serial updates for v4.3-rc1

      Here's a fix for a long-standing issue with the pl2303 divisor
      calculations that affects some non-standard baudrates that were enabled
      in v3.18.

      Adding support for newer Edgeport devices and firmware required changes
      to the io_ti driver and also exposed some issues with the driver's
      current firmware handling.

      Included is also a URL comment-typo fix.

      Signed-off-by: Johan Hovold <johan@xxxxxxxxxx>

  commit 3a6b0605c73d1d695f6d4e49289deaa3fa3e73ee
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 11:51:35 2015 -0300

      Revert "[media] ARM: DT: STi: STiH407: Add c8sectpfe LinuxDVB DT node"

      There are some missing dependencies at the DT, as it looks for
      an I2C bus named "ssc2", but this is not defined.

      Probably, it misses some dependencies from some other tree.
      For now, revert this patch, to avoid build breakages.

      This reverts commit 5d8877b6ae0d47897b821b8a11a2e8dee9a22686.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit b2887410f0d00f376b250f78d34654b4ac093900
  Author: Vasanthakumar Thiagarajan <vthiagar@xxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 21:10:54 2015 +0530

      ath10k: fill in wmi 10.4 command handlers for addba/delba debug commands

      WMI 10.4 uses the same command interface as QCA988X for addba/delba
      debug wmi commands. Fill wmi_10_4_ops table with the functions used
      for QCA988X for these commands.

      With this change, the following debugfs entries can be used to
      configure the aggregation mode and to send addba request,
      addba response and delba respectively in manual aggregation mode
      for QCA99X0 chip.

      
/sys/kernel/debug/ieee80211/phyX/netdev:wlanX/stations/XX:XX:XX:XX:XX:XX/aggr_mode
      
/sys/kernel/debug/ieee80211/phyX/netdev:wlanX/stations/XX:XX:XX:XX:XX:XX/addba
      
/sys/kernel/debug/ieee80211/phyX/netdev:wlanX/stations/XX:XX:XX:XX:XX:XX/addba_resp
      
/sys/kernel/debug/ieee80211/phyX/netdev:wlanX/stations/XX:XX:XX:XX:XX:XX/delba

      Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@xxxxxxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 2b0a2e0d7c2f12d06575fdc2a0f5cc04b131202d
  Author: Raja Mani <rmani@xxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 11:13:34 2015 +0300

      ath10k: handle 10.4 firmware phyerr event

      Header format of 10.4 firmware phyerr event is not alligned
      with pre 10.4 firmware. Introduce new wmi handlers to parse
      10.4 firmware specific phyerror event header.

      With changes covered in this patch, radar detection works on
      qca9x0 hw 2.0 which uses 10.4 firmware.

      Signed-off-by: Raja Mani <rmani@xxxxxxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 991adf71a6cd993c3e6a1a0d8ea9f88b2fa51b95
  Author: Raja Mani <rmani@xxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 11:13:29 2015 +0300

      ath10k: refactor phyerr event handlers

      Existing phyerr event handlers directly uses phyerr header format
      (ie, struct wmi_phyerr and struct wmi_phyerr_event) in the code
      exactly on how firmware packs it. This is the problem in 10.4 fw
      specific phyerr event handling where it uses different phyerror
      header format. Before adding 10.4 specific handler, little bit of
      refactor is done in existing phyerr handlers.

      Two new abstracted structures (struct wmi_phyerr_ev_hdr_arg and
      struct wmi_phyerr_ev_arg) are introduced to remove dependency of using
      firmware specific header format in the code. So that firmware specific
      phyerror handlers can populate values to abstracted structures and
      the following code can use abstracted struct for further operation.

      .pull_phyerr_hdr is added newly to pull common phyerr header info
      like tsf, buf_len, number of phyerr packed. Existing .pull_phyerr
      handler is changed and called to parse every sub phyerrs in the event.

      Validated these refactoring on qca988x hw2.0 using fw 10.2.4 version.

      Signed-off-by: Raja Mani <rmani@xxxxxxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit f4bbb8290143b61904a082e9c6d69b6633721925
  Author: Nicholas Mc Guire <hofrat@xxxxxxxxx>
  Date:   Thu Aug 13 15:38:31 2015 +0300

      wil6210: match wait_for_completion_timeout return type

      Return type of wait_for_completion_timeout is unsigned long not int.
      As remain is exclusively used for wait_for_completion_timeout here its
      type is simply changed to unsigned long.

      API conformance testing for completions with coccinelle spatches are being
      used to locate API usage inconsistencies:
      ./drivers/net/wireless/ath/wil6210/wmi.c:827
        int return assigned to unsigned long

      Patch was compile tested with x86_64_defconfig + CONFIG_ATH_CARDS=m,
      CONFIG_WIL6210=m

      Patch is against 4.1-rc3 (localversion-next is -next-20150514)

      Signed-off-by: Nicholas Mc Guire <hofrat@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 8674d909fabf49140e266f124af68daa3ac93ab3
  Author: Michal Kazior <michal.kazior@xxxxxxxxx>
  Date:   Thu Aug 13 14:10:46 2015 +0200

      ath10k: split ap/ibss wep key install process

      Apparently it's not safe to install both pairwise
      and groupwise keys on AP vdevs as it can cause
      traffic to stop working in some multi-vif
      (WPA+WEP) cases.

      Fixes: ce90b27128c2 ("ath10k: fix multiple key static wep with ibss")
      Signed-off-by: Michal Kazior <michal.kazior@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 01ec8472009c973413d4dc6fb198f0cc40abb9b4
  Author: Clemens Gruber <clemens.gruber@xxxxxxxxxxxx>
  Date:   Thu Jul 23 17:19:02 2015 +0200

      pwm-pca9685: Support changing the output frequency

      Previously, period_ns and duty_ns were only used to determine the
      ratio of ON and OFF time, the default frequency of 200 Hz was never
      changed.
      The PCA9685 however is capable of changing the PWM output frequency,
      which is expected when changing the period.

      This patch configures the prescaler accordingly, using the formula
      and notes provided in the PCA9685 datasheet.
      Bounds checking for the minimum and maximum frequencies, last updated
      in revision v.4 of said datasheet, is also added.

      The prescaler is only touched if the period changed, because we have to
      put the chip into sleep mode to unlock the prescale register.
      If it is changed, the PWM output frequency changes for all outputs,
      because there is one prescaler per chip. This is documented in the
      PCA9685 datasheet and in the comments.

      If the duty cycle is not changed at the same time as the period, then
      we restart the PWM output using the duty cycle to period ratio from
      before the period change.
      When using LEDs for example, previously set brightness levels stay the
      same when the frequency changes.

      Cc: Thierry Reding <thierry.reding@xxxxxxxxx>
      Cc: Steffen Trumtrar <s.trumtrar@xxxxxxxxxxxxxx>
      Signed-off-by: Clemens Gruber <clemens.gruber@xxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <thierry.reding@xxxxxxxxx>

  commit 4a627b52e47ee09348773a981f2097f69ff349ee
  Author: Clemens Gruber <clemens.gruber@xxxxxxxxxxxx>
  Date:   Thu Jul 23 17:19:01 2015 +0200

      pwm-pca9685: Fix several driver bugs

      Problems:
      - When duty_ns == period_ns, the full OFF bit was not cleared and the
        PWM output of the PCA9685 stayed off.
      - When duty_ns == period_ns and the catch-all channel was used, the
        ALL_LED_OFF_L register was not cleared.
      - The full ON bit was not cleared when setting the OFF time, therefore
        the exact OFF time was ignored when setting a duty_ns < period_ns

      Solution: Clear both OFF registers when setting full ON and clear the
      full ON bit when changing the OFF registers.

      Cc: Thierry Reding <thierry.reding@xxxxxxxxx>
      Cc: Steffen Trumtrar <s.trumtrar@xxxxxxxxxxxxxx>
      Signed-off-by: Clemens Gruber <clemens.gruber@xxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <thierry.reding@xxxxxxxxx>

  commit 22d109c1bb312dbf321f3d0ab1b0ed94f1a7e304
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Mon Aug 17 08:20:09 2015 +0200

      nbd: flags is a u32 variable

      The flags variable is used as u32 variable. This patch changes the type
      to be u32.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit cad73b2703cff68b140d68221eeecd5a30322b44
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Mon Aug 17 08:20:08 2015 +0200

      nbd: Rename functions for clearness of recv/send path

      This patch renames functions so that it is clear what the function does.
      Otherwise it is not directly understandable what for example 'do_it' 
means.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 696697cb50e4b57d4163d59a496ad9e52f6bff8a
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Mon Aug 17 08:20:07 2015 +0200

      nbd: Change 'disconnect' to be boolean

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Acked-by: Pavel Machek  <pavel@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 30d53d9c11b6c2f71253a2be582969d7e6fa7f10
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Mon Aug 17 08:20:06 2015 +0200

      nbd: Add debugfs entries

      Add some debugfs files that help to understand the internal state of
      NBD. This exports the different sizes, flags, tasks and so on.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 6521d39a64b3f9c3acb0fd25a34cfaf9a40e548e
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Mon Aug 17 08:20:05 2015 +0200

      nbd: Remove variable 'pid'

      This patch uses nbd->task_recv to determine the value of the previously
      used variable 'pid' for sysfs.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit e78273c80b213806ec7c51176ec81e034fe5cb9f
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Mon Aug 17 08:20:04 2015 +0200

      nbd: Move clear queue debug message

      This message was a warning without a reason. This patch moves it into
      nbd_clear_que and transforms it to a debug message.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 193918307f4e66eb6a811f30795991c6f7680b34
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Mon Aug 17 08:20:03 2015 +0200

      nbd: Remove 'harderror' and propagate error properly

      Instead of a variable 'harderror' we can simply try to correctly
      propagate errors to the userspace.

      This patch removes the harderror variable and passes errors through
      error pointers and nbd_do_it back to the userspace.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Acked-by: Pavel Machek <pavel@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 260bbce403e2ac601b422fd926f48b9924051f92
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Mon Aug 17 08:20:02 2015 +0200

      nbd: restructure sock_shutdown

      This patch restructures sock_shutdown to avoid having the main code path
      in an if block.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Acked-by: Pavel Machek <pavel@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 36e47bee7c9bc7771aad6e972dea92e2324338a4
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Mon Aug 17 08:20:01 2015 +0200

      nbd: sock_shutdown, remove conditional lock

      Move the conditional lock from sock_shutdown into the surrounding code.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Acked-by: Pavel Machek <pavel@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 7e2893a16d3e71035a38122a77bc55848a29f0e4
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Mon Aug 17 08:20:00 2015 +0200

      nbd: Fix timeout detection

      At the moment the nbd timeout just detects hanging tcp operations. This
      is not enough to detect a hanging or bad connection as expected of a
      timeout.

      This patch redesigns the timeout detection to include some more cases.
      The timeout is now in relation to replies from the server. If the server
      does not send replies within the timeout the connection will be shut
      down.

      The patch adds a continous timer 'timeout_timer' that is setup in one of
      two cases:
       - The request list is empty and we are sending the first request out to
         the server. We want to have a reply within the given timeout,
         otherwise we consider the connection to be dead.
       - A server response was received. This means the server is still
         communicating with us. The timer is reset to the timeout value.

      The timer is not stopped if the list becomes empty. It will just trigger
      a timeout which will directly leave the handling routine again as the
      request list is empty.

      The whole patch does not use any additional explicit locking. The
      list_empty() calls are safe to be used concurrently. The timer is locked
      internally as we just use mod_timer and del_timer_sync().

      The patch is based on the idea of Michal Belczyk with a previous
      different implementation.

      Cc: Michal Belczyk <belczyk@xxxxxxxxxxxxx>
      Cc: Hermann Lauer <Hermann.Lauer@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Tested-by: Hermann Lauer <Hermann.Lauer@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit fe0aea7978d25d8df6c128481b8111e76d972657
  Author: Jonathan Richardson <jonathar@xxxxxxxxxxxx>
  Date:   Mon Jun 15 14:21:01 2015 -0700

      pwm: kona: Modify settings application sequence

      Update the driver so that settings are applied in accordance with the
      most recent version of the hardware spec.  The revised sequence clears
      the trigger bit, waits 400ns, writes settings, sets the trigger bit,
      and waits another 400ns.  This corrects an issue where occasionally a
      requested change was not properly reflected in the PWM output.

      Reviewed-by: Arun Ramamurthy <arunrama@xxxxxxxxxxxx>
      Reviewed-by: Scott Branden <sbranden@xxxxxxxxxxxx>
      Tested-by: Scott Branden <sbranden@xxxxxxxxxxxx>
      Reviewed-by: Tim Kryger <tim.kryger@xxxxxxxxx>
      Signed-off-by: Jonathan Richardson <jonathar@xxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <thierry.reding@xxxxxxxxx>

  commit db0fa0cb015794dd19f664933d49c6ce902ec1e1
  Author: Dan Williams <dan.j.williams@xxxxxxxxx>
  Date:   Mon Aug 17 08:13:26 2015 -0600

      scatterlist: use sg_phys()

      Coccinelle cleanup to replace open coded sg to physical address
      translations.  This is in preparation for introducing scatterlists that
      reference __pfn_t.

      // sg_phys.cocci: convert usage page_to_phys(sg_page(sg)) to sg_phys(sg)
      // usage: make coccicheck COCCI=sg_phys.cocci MODE=patch

      virtual patch

      @@
      struct scatterlist *sg;
      @@

      - page_to_phys(sg_page(sg)) + sg->offset
      + sg_phys(sg)

      @@
      struct scatterlist *sg;
      @@

      - page_to_phys(sg_page(sg))
      + sg_phys(sg) & PAGE_MASK

      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 89e2a8404e4415da1edbac6ca4f7332b4a74fae2
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Fri Aug 7 18:15:15 2015 +0200

      crypto/omap-sham: remove an open coded access to ->page_link

      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      [hch: split from a larger patch by Dan]
      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Acked-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit da81ed16bdb3bc1bf92e6cb3340915a3204d5ace
  Author: Dan Williams <dan.j.williams@xxxxxxxxx>
  Date:   Fri Aug 7 18:15:14 2015 +0200

      scatterlist: remove open coded sg_unmark_end instances

      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      [hch: split from a larger patch by Dan]
      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit c56f6d1270b9fc31144b59106bc8590c2acf4a8e
  Author: Dan Williams <dan.j.williams@xxxxxxxxx>
  Date:   Fri Aug 7 18:15:13 2015 +0200

      crypto: replace scatterwalk_sg_chain with sg_chain

      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      [hch: split from a larger patch by Dan]
      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Acked-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 02c4de53add1b799f5663d5e9c8e9a5d9366a507
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Fri Aug 7 18:15:12 2015 +0200

      target/rd: always chain S/G list

      The rd sg lists are never passed to hardware, so use S/G chaining
      unonditionally.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 10c95ed9aa2970e05fedb4ac8b3ce1b934dab17b
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Fri Aug 7 18:15:11 2015 +0200

      scatterlist: allow limited chaining without ARCH_HAS_SG_CHAIN

      There are a couple of uses of struct scatterlist that never go to
      the dma_map_sg() helper and thus don't care about ARCH_HAS_SG_CHAIN
      which indicates that we can map chained S/G list.

      The most important one is the crypto code, which currently has
      to open code a few helpers to always allow chaining.  This patch
      removes a few #ifdef ARCH_HAS_SG_CHAIN statements so that we can
      switch the crypto code to these common helpers.

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 5efb1d5489520ce72232bbc28e9156f0ebddc44e
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:42 2015 +0300

      perf tools: Take Intel PT into use

      To record an AUX area, the weak function auxtrace_record__init() must be
      implemented.

      Equally to decode an AUX area, the AUX area tracing type must be added
      to the perf_event__process_auxtrace_info() function.

      This patch makes those two changes plus hooks up default config for the
      intel_pt PMU.  Also some brief documentation is provided for using the
      tools with intel_pt.

      Commiter note:

      E.g:

        [root@perf4 ~]# dmesg
        451 [0.405807] Performance Events: PEBS fmt2+, 16-deep LBR, Broadwell 
events, full-width counters, Intel PMU driver.
        [root@perf4 ~]# perf --version
        perf version 4.1.g53874a
        [root@perf4 ~]#  perf record -e intel_pt//u -a sleep 10
        [ perf record: Woken up 1 times to write data ]
        [ perf record: Captured and wrote 0.383 MB perf.data ]
        [root@perf4 ~]# perf evlist
        intel_pt//u
        sched:sched_switch
        dummy:u
        [root@perf4 ~]# perf report --stdio
        # To display the perf.data header info, please use 
--header/--header-only options.
        #
        #
        # Total Lost Samples: 0
        #
        # Samples: 0  of event 'intel_pt//u'
        # Event count (approx.): 0
        #
        # Overhead  Command  Shared Object  Symbol
        # ........  .......  .............  ......
        #

        # Samples: 393  of event 'sched:sched_switch'
        # Event count (approx.): 393
        #
        # Overhead  Command         Shared Object     Symbol
        # ........  ..............  ................  ..............
          49.62%  swapper         [kernel.vmlinux]  [k] __schedule
          10.69%  rcu_sched       [kernel.vmlinux]  [k] __schedule
           6.62%  rcuos/0         [kernel.vmlinux]  [k] __schedule
           5.60%  kworker/0:1     [kernel.vmlinux]  [k] __schedule
           3.56%  rcuos/3         [kernel.vmlinux]  [k] __schedule
           3.05%  kworker/u384:2  [kernel.vmlinux]  [k] __schedule
           2.54%  kworker/2:0     [kernel.vmlinux]  [k] __schedule
           2.54%  tuned           [kernel.vmlinux]  [k] __schedule
        <SNIP>
        # Samples: 0  of event 'dummy:u'
        # Event count (approx.): 0
        #
        # Overhead  Command  Shared Object  Symbol
        # ........  .......  .............  ......

        # Samples: 28  of event 'instructions:u'
        # Event count (approx.): 5030172
        #
        # Overhead  Command     Shared Object        Symbol
        # ........  ..........  ...................  
................................
        #
          21.43%  tuned       libpython2.7.so.1.0  [.] PyEval_EvalFrameEx
                       |
                       ---PyEval_EvalFrameEx
                          |
                          |--83.33%-- PyEval_EvalCodeEx
                          |          PyEval_EvalFrameEx
                          |          |
                          |          |--60.00%-- PyEval_EvalCodeEx
                          |          |          PyEval_EvalFrameEx
                          |          |          PyEval_EvalFrameEx
                          |          |
                          |           --40.00%-- PyEval_EvalFrameEx
                          |
                           --16.67%-- PyEval_EvalFrameEx
                                     PyEval_EvalCodeEx
                                     PyEval_EvalFrameEx
                                     PyEval_EvalCodeEx
                                     PyEval_EvalFrameEx
                                     PyEval_EvalFrameEx

          14.29%  tuned       libpython2.7.so.1.0  [.] _PyType_Lookup
                       |
                       ---_PyType_Lookup
                          _PyObject_GenericGetAttrWithDict
                          PyEval_EvalFrameEx
                          PyEval_EvalCodeEx
                          PyEval_EvalFrameEx
                          PyEval_EvalCodeEx
                          PyEval_EvalFrameEx
                          |
                          |--75.00%-- PyEval_EvalFrameEx
                          |
                           --25.00%-- PyEval_EvalCodeEx
                                     PyEval_EvalFrameEx
                                     PyEval_EvalFrameEx

           3.57%  irqbalance  irqbalance           [.] 0x0000000000004038
                  |
                  ---0x4038
                     0x4761
                     0x4761
                     0x4761
                     0x49f1
                     0x2295

           3.57%  irqbalance  libc-2.17.so         [.] 
__GI_____strtoull_l_internal
                  |
                  ---__GI_____strtoull_l_internal
                     0x6f49
                     0x229a

           3.57%  irqbalance  libc-2.17.so         [.] __strchrnul
                  |
                  ---__strchrnul
                     vfprintf
                     __vsprintf_chk
                     __sprintf_chk
                     0x2724
                     0x4038
                     0x2331

           3.57%  irqbalance  libc-2.17.so         [.] __strstr_sse42
                  |
                  ---__strstr_sse42
                     0x71e0
                     0x229f

        # And now to some userspace ftrace on uninstrumented binaries 8-) :
        # Hand edited to make it a bit more compact, replacing 
/home/acme/bin/perf
        # with /bin/perf:

        [root@perf4 ~]# perf script
           perf 8921 [3] 7.310889: 1 branches:u:            0 [unknown] 
([unknown]) => 7fcecadbf257 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.310889: 1 branches:u: 7fcecadbf25f __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 481689 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310889: 1 branches:u:       481694 
perf_evlist__enable (/bin/perf) => 481614 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310889: 1 branches:u:       481630 
perf_evlist__enable (/bin/perf) => 4816d8 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310889: 1 branches:u:       4816de 
perf_evlist__enable (/bin/perf) => 48164f perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310889: 1 branches:u:       481652 
perf_evlist__enable (/bin/perf) => 48165f perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310889: 1 branches:u:       481684 
perf_evlist__enable (/bin/perf) => 41d250 ioctl@plt (/bin/perf)
           perf 8921 [3] 7.310889: 1 branches:u:       41d250 ioctl@plt 
(/bin/perf) => 7fcecadbf250 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.310889: 1 branches:u: 7fcecadbf255 __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 0 [unknown] ([unknown])
           perf 8921 [3] 7.310890: 1 branches:u:            0 [unknown] 
([unknown]) => 7fcecadbf257 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.310890: 1 branches:u: 7fcecadbf25f __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 481689 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310890: 1 branches:u:       481694 
perf_evlist__enable (/bin/perf) => 481614 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310890: 1 branches:u:       481652 
perf_evlist__enable (/bin/perf) => 48165f perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310890: 1 branches:u:       481684 
perf_evlist__enable (/bin/perf) => 41d250 ioctl@plt (/bin/perf)
           perf 8921 [3] 7.310890: 1 branches:u:       41d250 ioctl@plt 
(/bin/perf) => 7fcecadbf250 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.310890: 1 branches:u: 7fcecadbf255 __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 0 [unknown] ([unknown])
           perf 8921 [3] 7.310893: 1 branches:u:            0 [unknown] 
([unknown]) => 7fcecadbf257 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.310893: 1 branches:u: 7fcecadbf25f __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 481689 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310893: 1 branches:u:       4816a8 
perf_evlist__enable (/bin/perf) => 4815f8 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310893: 1 branches:u:       4815fe 
perf_evlist__enable (/bin/perf) => 481614 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310893: 1 branches:u:       481652 
perf_evlist__enable (/bin/perf) => 48165f perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310893: 1 branches:u:       481684 
perf_evlist__enable (/bin/perf) => 41d250 ioctl@plt (/bin/perf)
           perf 8921 [3] 7.310893: 1 branches:u:       41d250 ioctl@plt 
(/bin/perf) => 7fcecadbf250 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.310893: 1 branches:u: 7fcecadbf255 __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 0 [unknown] ([unknown])
           perf 8921 [3] 7.310956: 1 branches:u:            0 [unknown] 
([unknown]) => 7fcecadbf257 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.310956: 1 branches:u: 7fcecadbf25f __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 481689 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310956: 1 branches:u:       481694 
perf_evlist__enable (/bin/perf) => 481614 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310956: 1 branches:u:       481630 
perf_evlist__enable (/bin/perf) => 4816d8 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310956: 1 branches:u:       4816de 
perf_evlist__enable (/bin/perf) => 48164f perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310956: 1 branches:u:       481652 
perf_evlist__enable (/bin/perf) => 48165f perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310956: 1 branches:u:       481684 
perf_evlist__enable (/bin/perf) => 41d250 ioctl@plt (/bin/perf)
           perf 8921 [3] 7.310956: 1 branches:u:       41d250 ioctl@plt 
(/bin/perf) => 7fcecadbf250 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.310956: 1 branches:u: 7fcecadbf255 __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 0 [unknown] ([unknown])
           perf 8921 [3] 7.310961: 1 branches:u:            0 [unknown] 
([unknown]) => 7fcecadbf257 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.310961: 1 branches:u: 7fcecadbf25f __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 481689 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310961: 1 branches:u:       481694 
perf_evlist__enable (/bin/perf) => 481614 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310961: 1 branches:u:       481652 
perf_evlist__enable (/bin/perf) => 48165f perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310961: 1 branches:u:       481684 
perf_evlist__enable (/bin/perf) => 41d250 ioctl@plt (/bin/perf)
           perf 8921 [3] 7.310961: 1 branches:u:       41d250 ioctl@plt 
(/bin/perf) => 7fcecadbf250 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.310961: 1 branches:u: 7fcecadbf255 __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 0 [unknown] ([unknown])
           perf 8921 [3] 7.310968: 1 branches:u:            0 [unknown] 
([unknown]) => 7fcecadbf257 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.310968: 1 branches:u: 7fcecadbf25f __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 481689 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310968: 1 branches:u:       4816a8 
perf_evlist__enable (/bin/perf) => 4815f8 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310968: 1 branches:u:       4815fe 
perf_evlist__enable (/bin/perf) => 481614 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310968: 1 branches:u:       481652 
perf_evlist__enable (/bin/perf) => 48165f perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.310968: 1 branches:u:       481684 
perf_evlist__enable (/bin/perf) => 41d250 ioctl@plt (/bin/perf)
           perf 8921 [3] 7.310968: 1 branches:u:       41d250 ioctl@plt 
(/bin/perf) => 7fcecadbf250 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.310968: 1 branches:u: 7fcecadbf255 __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 0 [unknown] ([unknown])
           perf 8921 [3] 7.311040: 1 branches:u:            0 [unknown] 
([unknown]) => 7fcecadbf257 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.311040: 1 branches:u: 7fcecadbf25f __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 481689 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.311040: 1 branches:u:       481694 
perf_evlist__enable (/bin/perf) => 481614 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.311040: 1 branches:u:       481630 
perf_evlist__enable (/bin/perf) => 4816d8 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.311040: 1 branches:u:       4816de 
perf_evlist__enable (/bin/perf) => 48164f perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.311040: 1 branches:u:       481652 
perf_evlist__enable (/bin/perf) => 48165f perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.311040: 1 branches:u:       481684 
perf_evlist__enable (/bin/perf) => 41d250 ioctl@plt (/bin/perf)
           perf 8921 [3] 7.311040: 1 branches:u:       41d250 ioctl@plt 
(/bin/perf) => 7fcecadbf250 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.311040: 1 branches:u: 7fcecadbf255 __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 0 [unknown] ([unknown])
           perf 8921 [3] 7.311046: 1 branches:u:            0 [unknown] 
([unknown]) => 7fcecadbf257 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.311046: 1 branches:u: 7fcecadbf25f __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 481689 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.311046: 1 branches:u:       481694 
perf_evlist__enable (/bin/perf) => 481614 perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.311046: 1 branches:u:       481652 
perf_evlist__enable (/bin/perf) => 48165f perf_evlist__enable (/bin/perf)
           perf 8921 [3] 7.311046: 1 branches:u:       481684 
perf_evlist__enable (/bin/perf) => 41d250 ioctl@plt (/bin/perf)
           perf 8921 [3] 7.311046: 1 branches:u:       41d250 ioctl@plt 
(/bin/perf) => 7fcecadbf250 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.311046: 1 branches:u: 7fcecadbf255 __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 0 [unknown] ([unknown])
           perf 8921 [3] 7.311050: 1 branches:u:            0 [unknown] 
([unknown]) => 7fcecadbf257 __GI___ioctl (/usr/lib64/libc-2.17.so)
           perf 8921 [3] 7.311050: 1 branches:u: 7fcecadbf25f __GI___ioctl 
(/usr/lib64/libc-2.17.so) => 481689 perf_evlist__enable (/bin/perf)
      :

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Tested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-8-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 90e457f7be0870052724b2d9c2c106e5847f2c19
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:41 2015 +0300

      perf tools: Add Intel PT support

      Add support for Intel Processor Trace.

      Intel PT support fits within the new auxtrace infrastructure.  Recording
      is supporting by identifying the Intel PT PMU, parsing options and
      setting up events.

      Decoding is supported by queuing up trace data by cpu or thread and then
      decoding synchronously delivering synthesized event samples into the
      session processing for tools to consume.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-7-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit f4aa081949e7b6b01e711229c5a47ee3482a169c
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:40 2015 +0300

      perf tools: Add Intel PT decoder

      Add support for decoding an Intel Processor Trace.

      Intel PT trace data must be 'decoded' which involves walking the object
      code and matching the trace data packets.

      The decoder requests a buffer of binary data via a get_trace()
      call-back, which it decodes using instruction information which it gets
      via another call-back walk_insn().

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-6-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 53af92849d793662e943d61bb16f7d3eb2d7a072
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:39 2015 +0300

      perf tools: Add Intel PT log

      Add a facility to log Intel Processor Trace decoding.  The log is
      intended for debugging purposes only.

      The log file name is "intel_pt.log" and is opened in the current
      directory.  The log contains a record of all packets and instructions
      decoded and can get very large (10 MB would be a small one).

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-5-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 237fae79f50d2d0c7bdeb039bc2c87fc6d52c7e7
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Thu Aug 13 10:14:55 2015 +0300

      perf tools: Add Intel PT instruction decoder

      Add support for decoding instructions for Intel Processor Trace.  The
      kernel x86 instruction decoder is copied for this.

      This essentially provides intel_pt_get_insn() which takes a binary
      buffer, uses the kernel's x86 instruction decoder to get details of the
      instruction and then categorizes it for consumption by an Intel PT
      decoder.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439450095-30122-1-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit a4e925905c98fb83538c164878946d77d0df1433
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:37 2015 +0300

      perf tools: Add Intel PT packet decoder

      Add support for decoding Intel Processor Trace packets.

      This essentially provides intel_pt_get_packet() which takes a buffer of
      binary data and returns the decoded packet.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-3-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 55ea4ab4260f42b824450faa47fe4d129fce0918
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Jul 17 19:33:36 2015 +0300

      perf auxtrace: Add Intel PT as an AUX area tracing type

      Add the Intel Processor Trace type constant PERF_AUXTRACE_INTEL_PT.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1437150840-31811-2-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 835095653ebfe4b16596a30db1c4e7c414014b5e
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Thu Aug 13 12:40:56 2015 +0300

      perf tools: Add a helper function to probe whether cpu-wide tracing is 
possible

      Add a helper function to probe whether cpu-wide tracing is possible.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439458857-30636-2-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit f0ee3b467ab7a74ffce75190259eb59dbf30ecad
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Aug 14 15:50:06 2015 +0300

      perf symbols: Fix annotation of vdso

      Older kernels attempt to prelink vdso to its virtual address.  To permit
      annotation using objdump, the map__rip_2objdump() calculation must
      result in that same address which we can infer from the start and offset
      of the text section.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Will Deacon <will.deacon@xxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439556606-11297-1-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 3d7245b0946c13a97e3a10213b8fd0152972a0d5
  Author: Adrian Hunter <adrian.hunter@xxxxxxxxx>
  Date:   Fri Aug 14 10:11:34 2015 +0300

      perf annotate: Fix 32-bit compilation error in util/annotate.c

      Fix the following 32-bit compilation errors:

        util/annotate.c: In function â??addr_map_symbol__account_cyclesâ??:
        util/annotate.c:643:3: error: format â??%lxâ?? expects argument of type 
â??long unsigned intâ??, but argument 4 has type â??u64â?? [-Werror=format=]
          pr_debug2("BB with bad start: addr %lx start %lx sym %lx saddr %lx\n",
            ^
        util/annotate.c:643:3: error: format â??%lxâ?? expects argument of type 
â??long unsigned intâ??, but argument 5 has type â??u64â?? [-Werror=format=]
        util/annotate.c:643:3: error: format â??%lxâ?? expects argument of type 
â??long unsigned intâ??, but argument 6 has type â??u64â?? [-Werror=format=]

      These were introduced by the patch:

      "perf report: Add infrastructure for a cycles histogram"

      Also change the 'saddr' variable from 'unsigned long' to 'u64'
      noting that theoretically we could be processing data captured
      on a 64-bit machine but processing it on a 32-bit machine.

      Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Fixes: d4957633bf9d ("perf report: Add infrastructure for a cycles 
histogram")
      Link: 
http://lkml.kernel.org/r/1439536294-18241-1-git-send-email-adrian.hunter@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 09c14459f2622ccacdff13461c5c864bff80cc07
  Author: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
  Date:   Fri Jul 10 15:28:10 2015 +0900

      pwm: pca9685: Drop owner assignment

      i2c_driver does not need to set an owner because i2c_register_driver()
      will set it.

      Signed-off-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Thierry Reding <thierry.reding@xxxxxxxxx>

  commit 21df89a5667de5fcd061753d3833e7dfcf5509d3
  Author: Jammy Zhou <Jammy.Zhou@xxxxxxx>
  Date:   Fri Aug 7 15:30:44 2015 +0800

      drm/amdgpu: fix one warning message

      In function 'amdgpu_uvd_cs_pass2':
      warning: 'min_ctx_size' may be used uninitialized in this function
        buf_sizes[0x4] = min_ctx_size;
                       ^
      note: 'min_ctx_size' was declared here
        unsigned image_size, tmp, min_dpb_size, num_dpb_buffer, min_ctx_size;
                                                                ^
      Signed-off-by: Jammy Zhou <Jammy.Zhou@xxxxxxx>
      Reviewed-by: Christian König <christian.koenig@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 7322d6c98dd214252bd697f8dde64a3576977fab
  Author: Jiri Olsa <jolsa@xxxxxxxxxx>
  Date:   Thu Aug 13 09:17:24 2015 +0200

      perf script: Initialize callchain_param.record_mode

      Milian Wolff reported non functional DWARF unwind under perf script. The
      reason is that perf script does not properly configure
      callchain_param.record_mode, which is needed by unwind code.

      Stealing the code from report and leaving the place for more
      initialization code in a hope we could merge it with
      report__setup_sample_type one day.

      Reported-by: Milian Wolff <mail@xxxxxxxxxx>
      Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
      Tested-by: Milian Wolff <milian.wolff@xxxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Link: http://lkml.kernel.org/r/20150813071724.GA21322@xxxxxxxxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 9c8fb548fb242b462657151eb9c5dd6b6def5b62
  Author: Vasanthakumar Thiagarajan <vthiagar@xxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 16:24:05 2015 +0530

      ath10k: add cycle/rx_clear counters frequency to hw_params

      The frequency at which cycle/rx_clear counters are running might
      change from one target type to another. QCA99X0 is running the
      counters at 150Mhz while QCA9888X and QCA6174 are running at 88Mhz.
      Add a new entry to hw_params to store the target specific frequency
      and use it in msecs conversion. This change fixes inconsistent
      channel active/busy time.

      Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@xxxxxxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 3d2a2e293e9578f59b182c8e5ad7b54ec4e28318
  Author: Vasanthakumar Thiagarajan <vthiagar@xxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 16:24:04 2015 +0530

      ath10k: fix invalid survey reporting for QCA99X0

      There are three WMI_CHAN_INFO events reported per channel
      in QCA99X0 firmware. First one is a notification at the begining
      of the channel dwell time with cmd_flag as CHAN_INFO_START(cmd_flag = 0),
      second one is a notification at the end of the dwell time with cmd_flag
      CHAN_INFO_PRE_COMPLETE (cmd_flag = 2) and the third is the indication
      with CHAN_INFO_COMPLETE (cmd_flag = 1) which is the last indication for
      the channel. Since there is a new state before the completion, the handler
      is to fixed so that the counts are deducted from the ones reported with
      CHAN_INFO_START rather than the ones reported with CHAN_INFO_PRE_COMPLETE.
      Without this fix there will be lots of 0 msecs reported as active
      and busy time.

      Signed-off-by: Vasanthakumar Thiagarajan <vthiagar@xxxxxxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit d0465208206c7c6859afffc405570c1921e2d896
  Author: Alex Deucher <alexander.deucher@xxxxxxx>
  Date:   Thu Jul 23 10:53:51 2015 -0400

      drm/radeon/dce6: assign different audio pins to each encoder

      This allows you to send different audio to each audio capable
      display.

      Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

  commit 6d2d51ecfff13f5f6ffc476dccf4d5b2668072eb
  Author: Michal Kazior <michal.kazior@xxxxxxxxx>
  Date:   Fri Aug 7 09:08:21 2015 +0200

      ath10k: wake up queue upon vif creation

      Vif's vdev_id is used as queue number. However due
      to the tx pausing design in ath10k it was possible
      for a new interface to be created with its tx
      queue stopped (via ieee80211_stop_queues). This
      could in turn leave the interface inoperable until
      ath10k_mac_tx_unlock() was called.

      This problem only affected multi-vif scenarios when
      new interfaces were created some time later after
      other interfaces have been running for some time
      and had Tx queue full at some point prior.

      Possible manifestation of the bug was
      authentication timeout for a client vif.

      Fixes: 96d828d45e16 ("ath10k: rework tx queue locking")
      Signed-off-by: Michal Kazior <michal.kazior@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 6e146f5c41da7e9601fe92fb4d06b45431dbf95b
  Author: Thierry Reding <thierry.reding@xxxxxxxxx>
  Date:   Mon Jul 27 12:00:23 2015 +0200

      pwm: Add to device-drivers documentation

      Add a short introductory text along with API documentation generated
      from kerneldoc comments for the PWM framework.

      Signed-off-by: Thierry Reding <thierry.reding@xxxxxxxxx>

  commit 048838027667872a75d3af40c51a22088bafd968
  Author: Thierry Reding <thierry.reding@xxxxxxxxx>
  Date:   Mon Jul 27 11:58:32 2015 +0200

      pwm: Clean up kerneldoc

      Clean up kerneldoc in preparation for including the PWM documentation in
      DocBook.

      Signed-off-by: Thierry Reding <thierry.reding@xxxxxxxxx>

  commit 6bc7064a69fc5b1f774771ea9e2c50e497311766
  Author: Thierry Reding <thierry.reding@xxxxxxxxx>
  Date:   Mon Jul 27 11:57:28 2015 +0200

      pwm: Remove useless whitespace

      Remove useless tabs used for padding in structure definitions as well as
      some blank lines.

      Signed-off-by: Thierry Reding <thierry.reding@xxxxxxxxx>

  commit 3a73d1a6f22bf13044056543ad43b2a304ee0022
  Author: Michal Kazior <michal.kazior@xxxxxxxxx>
  Date:   Thu Aug 6 14:46:54 2015 +0200

      ath10k: wake up offchannel queue properly

      Once HTT Tx queue got full offchannel queue was
      stopped and never woken up again. This broke, e.g.
      P2P. This could be reproduced after running a lot
      of traffic enough to saturate 100% of the driver
      Tx queue and then trying to send offchannel
      traffic.

      Fixes: 96d828d45e16 ("ath10k: rework tx queue locking")
      Signed-off-by: Michal Kazior <michal.kazior@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit a0a8bcf4670c2c696e6e83742539a5e0dd7a62d6
  Author: Grygorii Strashko <grygorii.strashko@xxxxxx>
  Date:   Mon Aug 17 15:35:23 2015 +0300

      gpiolib: irqchip: use different lockdep class for each gpio irqchip

      Since IRQ chip helpers were introduced drivers lose ability to
      register separate lockdep classes for each registered GPIO IRQ
      chip and the gpiolib now is using shared lockdep class for
      all GPIO IRQ chips (gpiochip_irq_lock_class).
      As result, lockdep will produce warning when there are min two
      stacked GPIO chips and all of them are interrupt controllers.

      HW configuration which generates lockdep warning (TI dra7-evm):

      [SOC GPIO bankA.gpioX]
        <- irq - [pcf875x.gpioY]
                  <- irq - DevZ.enable_irq_wake(pcf_gpioY_irq);
      The issue was reported in [1] and discussed [2].

      =============================================
      [ INFO: possible recursive locking detected ]
      4.2.0-rc6-00013-g5d050ed-dirty #55 Not tainted
      ---------------------------------------------
      sh/63 is trying to acquire lock:
       (class){......}, at: [<c009b91c>] __irq_get_desc_lock+0x50/0x94

      but task is already holding lock:
       (class){......}, at: [<c009b91c>] __irq_get_desc_lock+0x50/0x94

      other info that might help us debug this:
       Possible unsafe locking scenario:

             CPU0
             ----
        lock(class);
        lock(class);

       *** DEADLOCK ***

       May be due to missing lock nesting notation

      7 locks held by sh/63:
       #0:  (sb_writers#4){.+.+.+}, at: [<c016bbb8>] vfs_write+0x13c/0x164
       #1:  (&of->mutex){+.+.+.}, at: [<c01debf4>] kernfs_fop_write+0x4c/0x1a0
       #2:  (s_active#36){.+.+.+}, at: [<c01debfc>] kernfs_fop_write+0x54/0x1a0
       #3:  (pm_mutex){+.+.+.}, at: [<c009758c>] pm_suspend+0xec/0x4c4
       #4:  (&dev->mutex){......}, at: [<c03f77f8>] __device_suspend+0xd4/0x398
       #5:  (&gpio->lock){+.+.+.}, at: [<c009b940>] 
__irq_get_desc_lock+0x74/0x94
       #6:  (class){......}, at: [<c009b91c>] __irq_get_desc_lock+0x50/0x94

      stack backtrace:
      CPU: 0 PID: 63 Comm: sh Not tainted 4.2.0-rc6-00013-g5d050ed-dirty #55
      Hardware name: Generic DRA74X (Flattened Device Tree)
      [<c0016e24>] (unwind_backtrace) from [<c0013338>] (show_stack+0x10/0x14)
      [<c0013338>] (show_stack) from [<c05f6b24>] (dump_stack+0x84/0x9c)
      [<c05f6b24>] (dump_stack) from [<c00903f4>] (__lock_acquire+0x19c0/0x1e20)
      [<c00903f4>] (__lock_acquire) from [<c0091098>] (lock_acquire+0xa8/0x128)
      [<c0091098>] (lock_acquire) from [<c05fd61c>] 
(_raw_spin_lock_irqsave+0x38/0x4c)
      [<c05fd61c>] (_raw_spin_lock_irqsave) from [<c009b91c>] 
(__irq_get_desc_lock+0x50/0x94)
      [<c009b91c>] (__irq_get_desc_lock) from [<c009c4f4>] 
(irq_set_irq_wake+0x20/0xfc)
      [<c009c4f4>] (irq_set_irq_wake) from [<c0393ac4>] 
(pcf857x_irq_set_wake+0x24/0x54)
      [<c0393ac4>] (pcf857x_irq_set_wake) from [<c009c560>] 
(irq_set_irq_wake+0x8c/0xfc)
      [<c009c560>] (irq_set_irq_wake) from [<c04a02ac>] 
(gpio_keys_suspend+0x70/0xd4)
      [<c04a02ac>] (gpio_keys_suspend) from [<c03f6a00>] 
(dpm_run_callback+0x50/0x124)
      [<c03f6a00>] (dpm_run_callback) from [<c03f7830>] 
(__device_suspend+0x10c/0x398)
      [<c03f7830>] (__device_suspend) from [<c03f90f0>] 
(dpm_suspend+0x134/0x2f4)
      [<c03f90f0>] (dpm_suspend) from [<c0096e20>] 
(suspend_devices_and_enter+0xa8/0x728)
      [<c0096e20>] (suspend_devices_and_enter) from [<c00977cc>] 
(pm_suspend+0x32c/0x4c4)
      [<c00977cc>] (pm_suspend) from [<c0096060>] (state_store+0x64/0xb8)
      [<c0096060>] (state_store) from [<c01dec64>] (kernfs_fop_write+0xbc/0x1a0)
      [<c01dec64>] (kernfs_fop_write) from [<c016b280>] (__vfs_write+0x20/0xd8)
      [<c016b280>] (__vfs_write) from [<c016bb0c>] (vfs_write+0x90/0x164)
      [<c016bb0c>] (vfs_write) from [<c016c330>] (SyS_write+0x44/0x9c)
      [<c016c330>] (SyS_write) from [<c000f500>] (ret_fast_syscall+0x0/0x54)

      Lets fix it by using separate lockdep class for each registered GPIO
      IRQ Chip. This is done by wrapping gpiochip_irqchip_add call into macros.

      The implementation of this patch inspired by solution done by Nicolas
      Boichat for regmap [3]

      [1] http://www.spinics.net/lists/linux-gpio/msg05844.html
      [2] http://www.spinics.net/lists/linux-gpio/msg06021.html
      [3] http://www.spinics.net/lists/arm-kernel/msg429834.html

      Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Cc: Roger Quadros <rogerq@xxxxxx>
      Reported-by: Roger Quadros <rogerq@xxxxxx>
      Tested-by: Roger Quadros <rogerq@xxxxxx>
      Signed-off-by: Grygorii Strashko <grygorii.strashko@xxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit d5cf00c7ac2bf6b9d10c393b1e3b7551176c7f40
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Mon Aug 17 15:06:52 2015 +0200

      ALSA: hda/eld - Add const to possible places

      Similar like the previous fix to hda_proc.c, adding const prefix will
      save our world (a little bit).

      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 1d260d7b3b03f96dfbc9781ec046edc729220f09
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Mon Aug 17 14:57:32 2015 +0200

      ALSA: hda/proc - Fix racy string access for power states

      The power states in a proc file are printed in a racy manner on a
      single static string buffer.  Fix it by calling snd_iprintf() directly
      for each state instead of processing on a temporary buffer.

      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit cc75cdfe1d64585d82013632b81199b1e9f1da97
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Mon Aug 17 14:52:51 2015 +0200

      ALSA: hda/proc - Add const to possible places

      Many arrays in hda_proc.c are string arrays that should be covered by
      const prefix for increasing the safety and reducing the size.

      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit d2c6b63df5c143ea1535398e0874432277285765
  Author: Takashi Iwai <tiwai@xxxxxxx>
  Date:   Mon Aug 17 14:44:24 2015 +0200

      ALSA: hda - Make some helper functions local

      A few helper functions to convert the pin information to strings have
      been exported with assumption that they were used by other drivers.
      But they are referred only in the proc interface in the end.

      Let's make them local so that we can get rid of a few exports.

      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit dd43c4e92fbb135dcbf02845578db60be56a453a
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 20:39:40 2015 +0800

      crypto: null - Add missing Kconfig tristate for NULL2

      This patch adds a missing tristate statement to Kconfig for the
      new CRYPTO_NULL2 option.

      Fixes: 149a39717dcc ("crypto: aead - Add type-safe geniv init/exit 
helpers")
      Reported-by: Stephan Mueller <smueller@xxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 54e466fde4816455cc5b1893b73c2f3c7ca52e49
  Merge: 2c6625c 11cec15
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Mon Aug 17 14:16:59 2015 +0200

      Merge tag 'tegra-for-4.3-iommu' of 
git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into arm/tegra

      iommu/tegra-smmu: Changes for v4.3-rc1

      A bunch of improvements by Russell King, along with a fix to restore
      display support when using the SMMU. This was due to the SMMU driver
      writing the wrong value of active TLB lines, effectively disabling the
      TLB and causing massive underflows on the display controller because
      of the latency introduced by the SMMU.

  commit 9129c26da1711aba1e6295c28de8814301869732
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 18:04:17 2015 +0800

      crypto: nx - Add forward declaration for struct crypto_aead

      The file nx.h has function prototypes that use struct crypto_aead.
      However, as crypto/aead.h is not included we don't have a definition
      for it.  This patch adds a forward declaration to fix this.

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit a26bcb04861db3061bb7db11ce905aa037111f81
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 17 17:45:27 2015 +0800

      crypto: null - Use NULL2 in Makefile

      The Kconfig option NULL2 has been added as CRYPTO_MANAGER now
      depends indirectly on NULL2.  However, the Makefile was not updated
      to use the new option, resulting in potential build failures when
      only NULL2 is enabled.

      Fixes: 149a39717dcc ("crypto: aead - Add type-safe geniv init/exit 
helpers")
      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 57e104864bc4874a36796fd222d8d084dbf90b9b
  Author: Addy Ke <addy.ke@xxxxxxxxxxxxxx>
  Date:   Tue Aug 11 01:27:18 2015 +0900

      mmc: dw_mmc: add quirk for broken data transfer over scheme

      This patch add a new quirk to add a s/w timer to notify the driver
      to terminate current transfer and report a data timeout to the core,
      if DTO interrupt does NOT come within the given time.

      dw_mmc call mmc_request_done func to finish transfer depends on
      DTO interrupt. If DTO interrupt does not come in sending data state,
      the current transfer will be blocked.

      We got the reply from synopsys:
      There are two counters but both use the same value of [31:8] bits.
      Data timeout counter doesn't wait for stop clock and you should get
      DRTO even when the clock is not stopped.
      Host Starvation timeout counter is triggered with stop clock condition.

      This means that host should get DRTO and DTO interrupt.

      But this case really exists, when driver reads tuning data from
      card on RK3288-pink2 board. I measured waveforms by oscilloscope
      and found that card clock was always on and data lines were always
      holded high level in sending data state.

      There are two possibility that data over interrupt doesn't come in
      reading data state on RK3X SoCs:
      - get command done interrupt, but doesn't get any data-related interrupt.
      - get data error interrupt, but doesn't get data over interrupt.

      Signed-off-by: Addy Ke <addy.ke@xxxxxxxxxxxxxx>
      Signed-off-by: Heiko Stuebner <heiko@xxxxxxxxx>
      Signed-off-by: Jaehoon Chung <jh80.chung@xxxxxxxxxxx>

  commit 40a7a463a80ae9e3b85a9fd85cf704fb9ac28b6f
  Author: Jaehoon Chung <jh80.chung@xxxxxxxxxxx>
  Date:   Thu Aug 6 16:23:26 2015 +0900

      mmc: dw_mmc: print the message for deprecated property

      supports-highspeed was deprecated.
      If someone use it, we need to notice information for it.

      Signed-off-by: Jaehoon Chung <jh80.chung@xxxxxxxxxxx>

  commit 2b708df2b3edf6e91a4c8d89e7aedb0f861d0e41
  Author: Jaehoon Chung <jh80.chung@xxxxxxxxxxx>
  Date:   Thu Aug 6 16:23:25 2015 +0900

      mmc: dw_mmc: remove the unused blk_setting

      "blk_setting" doesn't use anywhere.

      Signed-off-by: Jaehoon Chung <jh80.chung@xxxxxxxxxxx>

  commit 9e747b7e4af090a4974005f3064963026f519fcc
  Author: Jaehoon Chung <jh80.chung@xxxxxxxxxxx>
  Date:   Thu Aug 6 16:23:24 2015 +0900

      mmc: dw_mmc: fix the wrong condition checking

      When num-slots is lower than 1, it's right that should be returned 
-ENODEV.

      Signed-off-by: Jaehoon Chung <jh80.chung@xxxxxxxxxxx>

  commit 575c319dfe872fc8bf1d57b244fb40f497ab3a47
  Author: Heiko Stuebner <heiko@xxxxxxxxx>
  Date:   Mon Aug 3 17:04:10 2015 +0200

      mmc: dw_mmc: fix pio mode when internal dmac is enabled

      The dw_mci_init_dma() may decide to not use dma, but pio instead, caused
      by things like wrong dma settings in the system.

      Till now the code dw_mci_init_slot() always assumed that dma is available
      when CONFIG_MMC_DW_IDMAC was defined, ignoring the host->use_dma var
      set during dma init.

      So when now the dma init failed for whatever reason, the transfer sizes
      would still be set for dma transfers, especially including the maximum
      block-count calculated from host->ring_size and resulting in a

      [    4.991109] ------------[ cut here ]------------
      [    4.991111] kernel BUG at drivers/mmc/core/core.c:256!
      [    4.991113] Internal error: Oops - BUG: 0 [#1] SMP ARM

      because host->ring_size is 0 in this case and the slot init code uses
      the wrong code to calculate the values.

      Fix this by selecting the correct calculations using the host->use_dma
      variable instead of the CONFIG_MMC_DW_IDMAC config option.

      Signed-off-by: Heiko Stuebner <heiko@xxxxxxxxx>
      Signed-off-by: Jaehoon Chung <jh80.chung@xxxxxxxxxxx>

  commit 0e3a22c044478b6114a767af4a765c0e33eddd53
  Author: Shawn Lin <shawn.lin@xxxxxxxxxxxxxx>
  Date:   Mon Aug 3 15:07:21 2015 +0800

      mmc: dw_mmc: Fix coding style issues

      This patch fixes the following issues reported by checkpatch.pl:
      - use -EINVAL instead of -ENOSYS, to fix warning message:
         "ENOSYS means 'invalid syscall nr' and nothing else"
      - split lines whose length is greater than 80 characters
      - avoid quoted string split across lines
      - use min_t instead of min, to fix warning message:
         "min() should probably be min_t(int, cnt, host->part_buf_count)"
      - fix missing a blank line after declarations

      Signed-off-by: Shawn Lin <shawn.lin@xxxxxxxxxxxxxx>
      Signed-off-by: Jaehoon Chung <jh80.chung@xxxxxxxxxxx>

  commit 5959b32e3636f9bfe3f869d1e440bc4a4d660965
  Author: Alexey Brodkin <Alexey.Brodkin@xxxxxxxxxxxx>
  Date:   Thu Jun 25 11:25:07 2015 +0300

      mmc: dw_mmc: handle data blocks > than 4kB if IDMAC is used

      As per DW MobileStorage databook "each descriptor can transfer up to 4kB
      of data in chained mode", moreover buffer size that is put in "des1" is
      limited to 13 bits, i.e. for example on attempt to
      IDMAC_SET_BUFFER1_SIZE(desc, 8192) size value that's effectively written
      will be 0.

      On the platform with 8kB PAGE_SIZE I see dw_mmc gets data blocks in
      SG-list of 8kB size and that leads to unpredictable behavior of the
      SD/MMC controller.

      In particular on write to FAT partition of SD-card the controller will
      stuck in the middle of DMA transaction.

      Solution to the problem is simple - we need to pass large (> 4kB) data
      buffers to the controller via multiple descriptors. And that's what
      that change does.

      What's interesting I did try original driver on same platform but
      configured with 4kB PAGE_SIZE and may confirm that data blocks passed
      in SG-list to dw_mmc never exeed 4kB limit - that explains why nobody
      ever faced a problem I did.

      Signed-off-by: Alexey Brodkin <abrodkin@xxxxxxxxxxxx>
      Cc: Seungwon Jeon <tgih.jun@xxxxxxxxxxx>
      Cc: Jaehoon Chung <jh80.chung@xxxxxxxxxxx>
      Cc: Ulf Hansson <ulf.hansson@xxxxxxxxxx>
      Cc: arc-linux-dev@xxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Jaehoon Chung <jh80.chung@xxxxxxxxxxx>

  commit 7d70d476d0112b44bf93747934ff089c50549e6d
  Author: Yangbo Lu <yangbo.lu@xxxxxxxxxxxxx>
  Date:   Fri Jul 10 11:44:03 2015 +0800

      mmc: block: add fixup of broken CMD23 for Sandisk card

      Some Sandisk cards(such as "SDMB-32" and "SDM032" cards)
      can't support CMD23, and would generate CMD timeout. So add
      FIX-UP for these two types Sandisk cards.

      Error log:
      mmcblk0: timed out sending SET_BLOCK_COUNT command, card status 0x400900
      mmcblk0: timed out sending SET_BLOCK_COUNT command, card status 0x400900
      mmcblk0: timed out sending SET_BLOCK_COUNT command, card status 0x400900
      end_request: I/O error, dev mmcblk0, sector 0
      Buffer I/O error on device mmcblk0, logical block 0
      mmcblk0: timed out sending SET_BLOCK_COUNT command, card status 0x400900

      Signed-off-by: Yangbo Lu <yangbo.lu@xxxxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 67b589a2ebe3f9705e8a70275cedec78447f803a
  Author: Yangbo Lu <yangbo.lu@xxxxxxxxxxxxx>
  Date:   Fri Jul 10 11:42:37 2015 +0800

      mmc: sdhci-esdhc: add default quirk SDHCI_QUIRK_NO_HISPD_BIT

      eSDHC supports high speed mode, but has no enabling bit for it.
      Add this quirk to avoid writing to eSDHC_PROCTL[DTW] by mistake.

      Signed-off-by: Yangbo Lu <yangbo.lu@xxxxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit f13e5b9f3c625916d7658ba526574a5d24e4d664
  Author: Yangbo Lu <yangbo.lu@xxxxxxxxxxxxx>
  Date:   Fri Jul 10 11:36:45 2015 +0800

      mmc: sdio: avoid using NULL sdio_irq_thread pointer

      For Freescale QorIQ LS1021AQDS board, there is a SDIO interrupt
      in the process of resume without inserting SD adapter because of
      some unknown issue. But the driver doesn't assign sdio_irq_thread
      pointer. This will block the resume of kernel. This patch is used
      to avoid using NULL sdio_irq_thread pointer.

      Signed-off-by: Yangbo Lu <yangbo.lu@xxxxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 4c06654c47ee2ff5308b7e89994225ff81b48ef2
  Author: Andreas Fenkart <afenkart@xxxxxxxxx>
  Date:   Tue Jul 7 20:38:44 2015 +0200

      mmc: omap_hsmmc: regulator automatically released by devm

      Signed-off-by: Andreas Fenkart <afenkart@xxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit f7f0f03506d00fc2939a8625ed141c2dda568fad
  Author: Andreas Fenkart <afenkart@xxxxxxxxx>
  Date:   Tue Jul 7 20:38:43 2015 +0200

      mmc: omap_hsmmc: call omap_hsmmc_set_power directly

      If no pdata.set_power was set by the platform code, the driver
      was updating pdata with its own fallback function. This is a no-no
      since pdata shall be read-only.
      This patch pushes the check 'pdata->set_power != NULL' down into
      the fallback functions. If pdata.set_power is really set, it calls them
      and exits, otherwise the fallback code is used.

      Signed-off-by: Andreas Fenkart <afenkart@xxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit c21e678b256baec428662704138d85cfc593abf4
  Author: Andreas Fenkart <afenkart@xxxxxxxxx>
  Date:   Tue Jul 7 19:53:10 2015 +0200

      Documentation: dt: update ti,am33xx-hsmmc swakeup workaround

      Before 5b83b2234be6733cf the driver was hard coding the wakeup irq to
      be active low. The generic pm wakeirq does not override the active
      high/low parameter, hence it must be specified correctly in the
      device tree.
      Mind that SDIO IRQ is active low as defined in the SDIO specification

      Signed-off-by: Andreas Fenkart <afenkart@xxxxxxxxx>
      Acked-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 135b0a284d9c2bcfb64a5f7d90c439ede8bc5e06
  Author: Ivan T. Ivanov <ivan.ivanov@xxxxxxxxxx>
  Date:   Mon Jul 6 15:16:21 2015 +0300

      mmc: sdhci: properly check card present state when quirk NO_CARD_NO_RESET 
is set

      Controller could have both NO_CARD_NO_RESET and BROKEN_CARD_DETECTION
      quirks set. Use sdhci_do_get_cd() when applying NO_CARD_NO_RESET, which
      properly check for BROKEN_CARD_DETECTION quirk.

      Signed-off-by: Ivan T. Ivanov <ivan.ivanov@xxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit c31d22eb335d4e3d2016135038fac8daaa9708d6
  Author: Ivan T. Ivanov <ivan.ivanov@xxxxxxxxxx>
  Date:   Mon Jul 6 15:16:20 2015 +0300

      mmc: sdhci: don't use card state polling when CD GPIO is defined

      There is no reason to use polling for card detection state change when
      drivers are using dedicated GPIO for this. Don't poll in this case.

      Signed-off-by: Ivan T. Ivanov <ivan.ivanov@xxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 88af56552b121295ba905db2523b1622fb4fc1e4
  Author: Ivan T. Ivanov <ivan.ivanov@xxxxxxxxxx>
  Date:   Mon Jul 6 15:16:19 2015 +0300

      mmc: sdhci: let GPIO based card detection have higher precedence

      Controller could have BROKEN_CARD_DETECTION quirk set, but drivers
      could use GPIO to detect card present state. Let, when defined, GPIO
      take precedence, so drivers could properly detect card state and not
      use polling.

      Signed-off-by: Ivan T. Ivanov <ivan.ivanov@xxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 951b8c875ac905aa9d348c825c380e7ce66c0f62
  Author: Ivan T. Ivanov <ivan.ivanov@xxxxxxxxxx>
  Date:   Mon Jul 6 14:53:38 2015 +0300

      mmc: sdhci-msm: Boost controller core clock

      Ensure SDCC is working with maximum clock otherwise card
      detection could be extremely slow, up to 7 seconds.

      Signed-off-by: Ivan T. Ivanov <ivan.ivanov@xxxxxxxxxx>
      Reviewed-by: Georgi Djakov <georgi.djakov@xxxxxxxxxx>
      Acked-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 829b6962f7e3cfc06f7c5c26269fd47ad48cf503
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Wed Jun 24 14:32:21 2015 +0300

      mmc: block: don't use parameter prefix if built as module

      It's excessive to use prefix for the parameters when you do
      modprobe mmc-block mmcblk.perdev_minors=16

      Make this available only for built-in case.

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 8292adc6ba1d59fa227bcc43cec2ce207cbb588c
  Author: Fabian Frederick <fabf@xxxxxxxxx>
  Date:   Tue Jun 16 21:15:15 2015 +0200

      mmc: omap: use for_each_sg() for scatterlist parsing

      See Documentation/DMA-API.txt - Part Id

      Signed-off-by: Fabian Frederick <fabf@xxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 2d532d458b43ea273632bf1cbc56c040a4b40898
  Author: Suneel Garapati <suneel.garapati@xxxxxxxxxx>
  Date:   Tue Jun 9 13:01:51 2015 +0530

      mmc: sdhci-of-arasan: add quirks for broken clock base

      adding SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN,SDHCI_QUIRK2_PRESET_VALUE_BROKEN
      flags for arasan sdhc.

      Signed-off-by: Suneel Garapati <suneel.garapati@xxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit d1955c3a9a1d89c53c9e7ce3b87799f8db1855c1
  Author: Suneel Garapati <suneel.garapati@xxxxxxxxxx>
  Date:   Tue Jun 9 13:01:50 2015 +0530

      mmc: sdhci: add quirk SDHCI_QUIRK_CLOCK_DIV_ZERO_BROKEN

      adds quirk for controllers whose clock divider zero is broken,
      sdhci_set_clock function will incorporate this modification.

      Signed-off-by: Suneel Garapati <suneel.garapati@xxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 6464b71409511939efce1ae4fb4ec6e3483b11b2
  Author: Daniel Mack <zonque@xxxxxxxxx>
  Date:   Sat Jun 6 23:15:22 2015 +0200

      mmc: pxamci: switch over to dmaengine use

      Switch over pxamci to dmaengine. This prepares the devicetree full
      support of pxamci.

      This was successfully tested on a PXA3xx board, as well as PXA27x.

      Signed-off-by: Daniel Mack <zonque@xxxxxxxxx>
      [adapted to pxa-dma]
      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 642c28ab86f7666d2ac62a0dc391b4c3121f1d6e
  Author: David Jander <david@xxxxxxxxxxx>
  Date:   Tue Jun 23 11:43:52 2015 +0200

      mmc: core: Optimize case for exactly one erase-group budget

      In the (not so unlikely) case that the mmc controller timeout budget is
      enough for exactly one erase-group, the simplification of allowing one
      sector has an enormous performance penalty. We optimize this special case
      by introducing a flag that prohibits erase-group boundary crossing, so
      that we can allow trimming more than one sector at a time.

      Signed-off-by: David Jander <david@xxxxxxxxxxx>
      Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx>

  commit 1dc042885456dff457d0b758b69209dcafa688ec
  Author: Jarkko Nikula <jarkko.nikula@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 11:30:59 2015 +0300

      dmaengine: Make __dma_request_slave_channel_compat() name argument 
constant

      Inline function __dma_request_slave_channel_compat() doesn't modify "name"
      argument but passes it to dma_request_slave_channel() which already takes
      it as a constant.

      Signed-off-by: Jarkko Nikula <jarkko.nikula@xxxxxxxxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 0e95fb9ceb82433f4f910d1cece0f4d6b0c25c51
  Author: Robert Jarzmik <rj@xxxxxxxxxxxxxx>
  Date:   Tue Aug 11 22:16:32 2015 +0200

      dmaengine: pxa_dma: don't use config direction parameter

      Don't use the direction passed in the configuration, and rely on each
      transfer's direction to prepare the transfers. This will enable
      future removal of direction parameter from dma_slave_config.

      Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 272420214d261e97f08a4c555defb3924de06ae8
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Wed Aug 5 08:42:05 2015 +0530

      dmaengine: Add DMA_CTRL_REUSE

      This adds new descriptor flag for reusing a descriptor by submitting
      multiple times by a client, for example video buffer.
      Add helper APIs for this as well

      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>
      Acked-by:Robert Jarzmik <robert.jarzmik@xxxxxxx>

  commit 7fa25937542358bfa01ef5c5a1e9a00bd164c000
  Author: Alexandre Courbot <acourbot@xxxxxxxxxx>
  Date:   Mon Aug 17 17:23:52 2015 +0900

      gpio/grgpio: fix deadlock in grgpio_irq_unmap()

      As reported by Alexey Khoroshilov:

          grgpio_irq_unmap() code looks quite suspicious regarding usage of
          priv->bgc.lock spinlock.

          It locks the spinlock in line 310:

        spin_lock_irqsave(&priv->bgc.lock, flags);

          and then it can call grgpio_set_imask() in line 317:

        grgpio_set_imask(priv, i, 0);

          But grgpio_set_imask() unconditionally locks the spinlock by itself.

      Fix this by moving the spinlock acquisition outside of
      grgpio_set_imask().

      Found by Linux Driver Verification project (linuxtesting.org).

      Reported-by: Alexey Khoroshilov <khoroshilov@xxxxxxxxx>
      Signed-off-by: Alexandre Courbot <acourbot@xxxxxxxxxx>
      Cc: Alexey Khoroshilov <khoroshilov@xxxxxxxxx>
      Cc: Andreas Larsson <andreas@xxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 58268e58e63550e24dee7d6125078ab2a2a22272
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Fri Aug 14 00:09:29 2015 -0300

      crypto: amcc - Do a NULL check for pointer

      Compare pointer-typed values to NULL rather than 0.

      The semantic patch that makes this change is available
      in scripts/coccinelle/null/badzero.cocci

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 5e4b8c1fcc70016f43926203ae1820c3b380d5cd
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:29:06 2015 +0800

      crypto: aead - Remove CRYPTO_ALG_AEAD_NEW flag

      This patch removes the CRYPTO_ALG_AEAD_NEW flag now that everyone
      has been converted.

      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit b0d955ba4688fcba8112884931aea1f1e6f50f03
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 15:30:41 2015 +0800

      crypto: aead - Remove old AEAD interfaces

      Now that the AEAD conversion is complete we can rip out the old
      AEAD interafce and associated code.

      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 0a139416eed5f05118cb05aba37470de68c55272
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:29:04 2015 +0800

      crypto: qat - Remove reference to crypto_aead_crt

      The qat driver uses crypto_aead_crt in order to get the authsize.
      This patch replaces it with the crypto_aead_authsize helper instead.

      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit ba3749a719a6da4297fb8e1bb56ee06d74129c0f
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:29:02 2015 +0800

      crypto: cryptd - Remove reference to crypto_aead_crt

      Pretty soon the crypto_aead encrypt/decrypt hooks will disappear
      as they are now always identical to those in struct aead_alg.

      This patch replaces the references to these hooks with the ones
      from aead_alg instead.

      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 376e0d697a8194a5ab684d7fc57b2ce5483bda53
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:29:01 2015 +0800

      crypto: echainiv - Use generic geniv init/exit helpers

      This patch replaces the echainiv init/exit handlers with the generic
      geniv helpers.

      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 659e7f528317d5a97e5100abcaf6e00552c23417
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:28:59 2015 +0800

      crypto: seqiv - Use generic geniv init/exit helpers

      This patch replaces the seqiv init/exit handlers with the generic
      geniv helpers.

      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 149a39717dcce3b6ba15285c9fc86e4423437e05
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:28:58 2015 +0800

      crypto: aead - Add type-safe geniv init/exit helpers

      This patch adds the helpers aead_init_geniv and aead_exit_geniv
      which are type-safe and intended the replace the existing geniv
      init/exit helpers.

      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 66008d4230f6e599275f1cf01db268fcaaadda44
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:28:56 2015 +0800

      crypto: echainiv - Remove AEAD compatibility code

      Now that we no longer have any legacy AEAD implementations the
      compatibility code path can no longer be triggered.  This patch
      removes it.

      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 92932d03c2b3613f40ce49ff42088e814e403afc
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:28:54 2015 +0800

      crypto: seqiv - Remove AEAD compatibility code

      Now that we no longer have any legacy AEAD implementations the
      compatibility code path can no longer be triggered.  This patch
      removes it.

      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 8a2cd1c4a7aa0b4a24eafd6914756be6fbe7f361
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:28:53 2015 +0800

      crypto: seqiv - Remove seqniv

      Now that IPsec no longer uses seqniv we can remove it.

      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit de0ded77b995552ad650d22748a507a1ede7fa72
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:28:52 2015 +0800

      ipsec: Replace seqniv with seqiv

      Now that seqniv is identical with seqiv we no longer need it.

      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Steffen Klassert <steffen.klassert@xxxxxxxxxxx>

  commit 60333f7b5dccd0adcdcc7ec9eb3f9f1039e257ed
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:28:50 2015 +0800

      crypto: user - Remove crypto_lookup_aead call

      As IV generators are now standalone AEAD transforms, we no longer
      need to use the crypto_lookup_aead call.

      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit aa1b6bb7d7f5cb0d21eacea3639da8cb24c5092a
  Author: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:28:49 2015 +0800

      crypto: algboss - Remove reference to nivaead

      This patch removes a legacy reference to nivaead which is no longer
      used.

      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit adca3c38d807b341a965d0aba8721d0784d8471b
  Author: Christophe Ricard <christophe.ricard@xxxxxxxxx>
  Date:   Mon Aug 17 08:33:43 2015 +0200

      nfc: netlink: Warning fix

      When NFC_ATTR_VENDOR_DATA is not set, data_len is 0 and data is NULL.

      Fixes the following warning:

      net/nfc/netlink.c:1536:3: warning: 'data' may be used uninitialized
      +in this function [-Wmaybe-uninitialized]
            return cmd->doit(dev, data, data_len);

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Christophe Ricard <christophe-h.ricard@xxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit 656bba306827a44ed73b3f93f75bb3147de17fae
  Author: Len Brown <len.brown@xxxxxxxxx>
  Date:   Sun Aug 16 11:45:48 2015 -0400

      x86/smpboot: Remove APIC.wait_for_init_deassert and atomic init_deasserted

      Both the per-APIC flag ".wait_for_init_deassert",
      and the global atomic_t "init_deasserted"
      are dead code -- remove them.

      For all APIC types, "wait_for_master()"
      prevents an AP from proceeding until the BSP has set
      cpu_callout_mask, making "init_deasserted" {unnecessary}:

        BSP: <de-assert INIT>
        ...
        BSP: {set init_deasserted}
        AP: wait_for_master()
                set cpu_initialized_mask
                wait for cpu_callout_mask
        BSP: test cpu_initialized_mask
        BSP: set cpu_callout_mask
        AP: test cpu_callout_mask
        AP: {wait for init_deasserted}
        ...
        AP: <touch APIC>

      Deleting the {dead code} above is necessary to enable
      some parallelism in a future patch.

      Signed-off-by: Len Brown <len.brown@xxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Arjan van de Ven <arjan@xxxxxxxxxxxxxxx>
      Cc: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: Igor Mammedov <imammedo@xxxxxxxxxx>
      Cc: Jan H. Schönherr <jschoenh@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Zhu Guihua <zhugh.fnst@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/de4b3a9bab894735e285870b5296da25ee6a8a5a.1439739165.git.len.brown@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit a9bcaa02a5104ace6a9d9e4a9cd9192a9e7744d6
  Author: Len Brown <len.brown@xxxxxxxxx>
  Date:   Sun Aug 16 11:45:47 2015 -0400

      x86/smpboot: Remove SIPI delays from cpu_up()

      MPS 1.4 example code shows the following required delays during processor
      on-lining:

        INIT
         udelay(10,000)
        SIPI
         udelay(200)
        SIPI
         udelay(200) /* Linux actually implements this as udelay(300) */

      Linux skips the udelay(10,000) on modern processors.
      This patch removes the udelay(200) after each SIPI
      on those same processors.

      All three legacy delays can be restored by the cmdline
      "cpu_init_udelay=10000".

      As measured by analyze_suspend.py, this patch speeds
      processor resume time on my desktop from 2.4ms to 1.8ms, per AP.

      Signed-off-by: Len Brown <len.brown@xxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Arjan van de Ven <arjan@xxxxxxxxxxxxxxx>
      Cc: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: Igor Mammedov <imammedo@xxxxxxxxxx>
      Cc: Jan H. Schönherr <jschoenh@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Zhu Guihua <zhugh.fnst@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/a5dfdbc8fbfdd813784da204aad5677fe459ac37.1439739165.git.len.brown@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 2d99af8e8fd6c2dea11ab539f7aba69c37b845b4
  Author: Len Brown <len.brown@xxxxxxxxx>
  Date:   Sun Aug 16 11:45:46 2015 -0400

      x86/smpboot: Remove udelay(100) when polling cpu_callin_map

      After the BSP sends INIT/SIPI/SIP to the AP and sees the AP
      in the cpu_initialized_map, it sets the AP loose via the
      cpu_callout_map, and waits for it via the cpu_callin_map.

      The BSP polls the cpu_callin_map with a udelay(100)
      and a schedule() in each iteration.

      The udelay(100) adds no value.

      For example, on my 4-CPU dekstop, the AP finishes
      cpu_callin() in under 70 usec and sets the cpu_callin_mask.
      The BSP, however, doesn't see that setting until over 30 usec
      later, because it was still running its udelay(100)
      when the AP finished.

      Deleting the udelay(100) in the cpu_callin_mask polling loop,
      saves from 0 to 100 usec per Application Processor.

      Signed-off-by: Len Brown <len.brown@xxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Arjan van de Ven <arjan@xxxxxxxxxxxxxxx>
      Cc: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: Igor Mammedov <imammedo@xxxxxxxxxx>
      Cc: Jan H. Schönherr <jschoenh@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Zhu Guihua <zhugh.fnst@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/0aade12eabeb89a688c929fe80856eaea0544bb7.1439739165.git.len.brown@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 6e38f1e79d16f4fa9e5cf06792500e11c96a6f84
  Author: Len Brown <len.brown@xxxxxxxxx>
  Date:   Sun Aug 16 11:45:45 2015 -0400

      x86/smpboot: Remove udelay(100) when polling cpu_initialized_map

      After the BSP sends the APIC INIT/SIPI/SIPI to the AP,
      it waits for the AP to come up and indicate that it is alive
      by setting its own bit in the cpu_initialized_mask.

      Linux polls for up to 10 seconds for this to happen.
      Each polling loop has a udelay(100) and a call to schedule().

      The udelay(100) adds no value.

      For example, on my desktop, the BSP waits for the
      other 3 CPUs to come on line at boot for 305, 404, 405 usec.
      For resume from S3, it waits 317, 404, 405 usec.

      But when the udelay(100) is removed, the BSP waits
      305, 310, 306 for boot, and 305, 307, 306 for resume.

      So for both boot and resume, removing the udelay(100)
      speeds online by about 100us in 2 of 3 cases.

      Signed-off-by: Len Brown <len.brown@xxxxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Arjan van de Ven <arjan@xxxxxxxxxxxxxxx>
      Cc: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxxxx>
      Cc: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
      Cc: Igor Mammedov <imammedo@xxxxxxxxxx>
      Cc: Jan H. Schönherr <jschoenh@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Zhu Guihua <zhugh.fnst@xxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/33ef746c67d2489cad0a9b1958cf71167232ff2b.1439739165.git.len.brown@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 5461bd81bf7f86503f393b0b1d57e69b1f1bd44e
  Merge: 9491630 2c6625c
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Mon Aug 17 10:41:59 2015 +0200

      Merge tag 'v4.2-rc7' into x86/boot, to refresh the branch before merging 
new changes

      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit ac49fbd1f9d437cca7234473850aef4165779383
  Author: Dirk Behme <dirk.behme@xxxxxxxxx>
  Date:   Sat Jul 18 08:02:07 2015 +0200

      Documentation: gpio: consumer: describe active low property

      I've been searching for any documentation of 'the active-low property of 
a GPIO'
      already mentioned in this documenation. But couldn't find any. Add it.

      Sigend-off-by: Dirk Behme <dirk.behme@xxxxxxxxx>
      Acked-by: Alexandre Courbot <acourbot@xxxxxxxxxx>
      [Spelling, grammar fixes]
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 281786ea2cd03635648d1e2b131c6fbc0ed47b68
  Author: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
  Date:   Mon Aug 17 16:35:48 2015 +1000

      selftests/powerpc: Install tempfile so the subpage_prot_file test works

      We forgot to install the tempfile, so when the selftests are installed
      and then run the subpage_prot_file test fails.

      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 94e92a7bff2317bedd67ed7c46ac63e9affb7a99
  Merge: 94fdc2e e04cafb
  Author: Kalle Valo <kvalo@xxxxxxxxxxxxxx>
  Date:   Mon Aug 17 11:23:03 2015 +0300

      Merge ath-next from ath.git. Major changes in ath10k:

      * add support for qca99x0 family of devices
      * improve performance of tx_lock
      * add support for raw mode (802.11 frame format) and software crypto
        engine enabled via a module parameter

      wil6210:

      * implement TSO support
      * support bootloader v1 and onwards

  commit 60884ddecdc2f45fd2862b7e95c9ad858584f82b
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Wed Aug 5 08:42:06 2015 +0530

      Documentation: dmaengine: Add DMA_CTRL_REUSE documentation

      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>
      Acked-by:Robert Jarzmik <robert.jarzmik@xxxxxxx>

  commit 06f10e2f936424496d44e5541c220845c8c55345
  Author: Vinod Koul <vinod.koul@xxxxxxxxx>
  Date:   Wed Aug 5 08:42:04 2015 +0530

      Documentation: dmaengine: fix the DMA_CTRL_ACK documentation

      As discussed recently the meaning of DMA_CTRL_ACK is that a desc cannot be
      reused by provider until the client acknowledges receipt, i.e. has has a
      chance to establish any dependency chains. So update documentation

      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>
      Acked-by:Robert Jarzmik <robert.jarzmik@xxxxxxx>

  commit 09659a5978e16a7f3676fd6cb41e21daa77ce9a6
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Tue Aug 11 08:49:11 2015 -0700

      dmaengine: ioatdma: Clean up IOAT_COMPLETION_PENDING flag

      IOAT_COMPLETION_PENDING flag was deprecated for v2 and v3 drivers but was
      not cleaned up. Doing that now. The commit deprecated this flag was
      4dec23d7 ioatdma: fix race between updating ioat->head and
      IOAT_COMPLETION_PENDING.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit c7b0e8d7b5d1523ca3a85d3d3d9d113bb19a5668
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Tue Aug 11 08:49:05 2015 -0700

      dmaengine: ioatdma: fixup kernel doc errors from dma.h

      ./scripts/kerne-doc is reporting errors on dma.h. Clean up all reported
      errors.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Acked-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit ef97bd0f59741ca1a555b69b8708f6601e35c3ed
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Tue Aug 11 08:49:00 2015 -0700

      dmanegine: ioatdma: remove function ptrs in ioatdma_device

      Since we are a "single" device driver now we no longer require the 
function
      pointers in ioatdma_device. Remove.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Acked-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 3372de5813e4da8305002ff6ffbfc0c7012cb319
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Tue Aug 11 08:48:55 2015 -0700

      dmaengine: ioatdma: removal of dma_v3.c and relevant ioat3 references

      Moving the relevant functions to their respective .c files and removal of
      dma_v3.c file. Also removed various ioat3 references when appropriate.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Acked-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 599d49de7f69cb5a23e913db24e168ba2f09bd05
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Tue Aug 11 08:48:49 2015 -0700

      dmaengine: ioatdma: move dma prep functions to single location

      Move all DMA descriptor prepping functions to prep.c file. Fixup all
      broken bits caused by the move.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Acked-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit c0f28ce66ecfd9fa0ae662a2c7f3e68e537e77f4
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Tue Aug 11 08:48:43 2015 -0700

      dmaengine: ioatdma: move all the init routines

      Moving all the init routines to init.c and fixup anything broken during
      the move.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Acked-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 80b1973659949fbdcbfe9e086e2370313a9f1288
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Tue Aug 11 08:48:38 2015 -0700

      dmaengine: ioatdma: move all sysfs related code

      Move and fixup all sysfs related bits to sysfs.c file.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Acked-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 885b201056e942f7deb66496b5c501d2a35d6c04
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Tue Aug 11 08:48:32 2015 -0700

      dmaengine: ioatdma: remove dma_v2.*

      Clean out dma_v2 and remove ioat2 calls since we are moving everything
      to just ioat.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Acked-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 55f878ec47e3ab560a046c9030a97b1048b74e8b
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Tue Aug 11 08:48:27 2015 -0700

      dmaengine: ioatdma: fixup ioatdma_device namings

      Changing the variable names for ioatdma_device to be consistently named
      ioat_dma instead of device/dma in order to avoid confusion and distinct
      from struct device. This will clearly indicate that it is an
      ioatdma_device. This also make all the naming consistent that the dma
      device is ioat_dma and all the channels are ioat_chan.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Acked-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 5a976888c953a50336c2266bab894c1c098462b3
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Tue Aug 11 08:48:21 2015 -0700

      dmaengine: ioatdma: clean up local dma channel data structure

      Kill the common ioatdma channel structure and everything that is not
      dma_chan to be ioat_dma_chan. Since we don't have to worry about v1
      and v2 ioatdma anymore this makes it much cleaner and obvious for
      maintenance.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Acked-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 7f832645d0e5a0431e4ee02bae98e47ded32ac6f
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Tue Aug 11 08:48:16 2015 -0700

      dmaengine: ioatdma: remove ioatdma v2 registration

      Removal of support for ioatdma v2 device support.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Acked-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 85596a19478da5125f3471a0c474b3f05a78e390
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Tue Aug 11 08:48:10 2015 -0700

      dmaengine: ioatdma: remove ioat1 specific code

      Cleaning up of ioat1 specific code as it is no longer supported

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Acked-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit d73f277b329f46c13527c1090808421828671596
  Author: Dave Jiang <dave.jiang@xxxxxxxxx>
  Date:   Tue Aug 11 08:48:04 2015 -0700

      dmaengine: ioatdma: deprecating and removal of old ioatdma devices

      Removal of any devices that are ioatdma pre-3.0. This is the first step
      in attempting to clean up the ioatdma driver and remove hw no longer
      supported.

      Signed-off-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Acked-by: Dan Williams <dan.j.williams@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 5484526ac120eb543e5a28610775f04014814d89
  Author: Allen Hubbe <Allen.Hubbe@xxxxxxx>
  Date:   Tue Aug 11 04:05:43 2015 -0400

      dmaengine: ioatdma: fix u16 overflow in cleanup

      If the allocation order is 16, then the u16 count will overflow and wrap
      to zero when assigned the value 1 << 16.

      Change the type of 'total_descs' to int, so that it is large enough to
      store a value equal or greater than 1 << 16.

      Signed-off-by: Allen Hubbe <Allen.Hubbe@xxxxxxx>
      Acked-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit 870ce49022d1a278e441d2cb7b92acae2416b510
  Author: Allen Hubbe <Allen.Hubbe@xxxxxxx>
  Date:   Tue Aug 11 04:05:42 2015 -0400

      dmaengine: ioatdma: fix u16 overflow in reshape

      If the allocation order is 16, then the u16 index will overflow and wrap
      to zero instead of being equal or greater than 1 << 16.  The loop
      condition will always be true, and the loop will run until all the
      memory resources are depleted.

      Change the type of index 'i' to u32, so that it is large enough to store
      a value equal or greater than 1 << 16.

      Signed-off-by: Allen Hubbe <Allen.Hubbe@xxxxxxx>
      Acked-by: Dave Jiang <dave.jiang@xxxxxxxxx>
      Signed-off-by: Vinod Koul <vinod.koul@xxxxxxxxx>

  commit efe3b616f88caa95dbe8636f4d0b3dcefca962bb
  Author: Matt Ranostay <mranostay@xxxxxxxxx>
  Date:   Sun Aug 16 23:04:53 2015 -0700

      Input: cap11xx - add LED support

      Several cap11xx variants have LEDs that be can be controlled; let's plug
      the driver into the LED subsystem.

      Signed-off-by: Matt Ranostay <mranostay@xxxxxxxxx>
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit 294947a5c7f6d228b70fcc51a89527e74a38a2c5
  Merge: 6406e45 54fbde8
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Mon Aug 17 16:03:48 2015 +1000

      Merge branch 'vmwgfx-next' of git://people.freedesktop.org/~thomash/linux 
into drm-next

      A couple of fixes from the previous pull request as well as gl3 support.
      There is one drm core change, an export of a previously private function.

      Take 2 implementing screen targets, this time with the fbdev code adjusted
      accordingly.

      Also there is an implementation of register-driven command buffers, that
      overrides the FIFO ring for command processing. It's needed for our 
upcoming
      hardware revision.
      * 'vmwgfx-next' of git://people.freedesktop.org/~thomash/linux: (35 
commits)
        drm/vmwgfx: Fix copyright headers
        drm/vmwgfx: Add DX query support. Various fixes.
        drm/vmwgfx: Add command parser support for a couple of DX commands
        drm/vmwgfx: Command parser fixes for DX
        drm/vmwgfx: Initial DX support
        drm/vmwgfx: Update device includes for DX device functionality
        drm: export the DRM permission check code
        drm/vmwgfx: Fix crash when unloading vmwgfx v2
        drm/vmwgfx: Fix framebuffer creation on older hardware
        drm/vmwgfx: Fixed topology boundary checking for Screen Targets
        drm/vmwgfx: Fix an uninitialized value
        drm/vmwgfx: Fix compiler warning with 32-bit dma_addr_t
        drm/vmwgfx: Kill a bunch of sparse warnings
        drm/vmwgfx: Fix kms preferred mode sorting
        drm/vmwgfx: Reinstate the legacy display system dirty callback
        drm/vmwgfx: Implement fbdev on kms v2
        drm/vmwgfx: Add a kernel interface to create a framebuffer v2
        drm/vmwgfx: Avoid cmdbuf alloc sleeping if !TASK_RUNNING
        drm/vmwgfx: Convert screen targets to new helpers v3
        drm/vmwgfx: Convert screen objects to the new helpers
        ...

  commit 6406e45cc6f4976ace2b6d23b76bb5f07541e68f
  Merge: bef2c7b a33ee95
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Mon Aug 17 15:53:05 2015 +1000

      Merge tag 'drm/panel/for-4.3-rc1' of 
git://anongit.freedesktop.org/tegra/linux into drm-next

      drm/panel: Changes for v4.3-rc1

      This introduces support for a couple of new panels and also contains
      some work to restructure the directories to get more consistency, to
      deal better with more panel and bridge drivers getting added.

      * tag 'drm/panel/for-4.3-rc1' of 
git://anongit.freedesktop.org/tegra/linux:
        drm/bridge: Put Kconfig entries in a separate menu
        drm/panel: Add support for LG LG4573 480x800 4.3" panel
        drm/panel: Add display timing for Okaya RS800480T-7X0GP
        of: Add Okaya Electric America vendor prefix
        drm/panel: simple: Add support for NEC NL4827HC19-05B 480x272 panel
        drm/panel: simple: Add support for AUO B080UAN01
        drm/panel: simple: Correct minimum hsync length of the HannStar 
HSD070PWW1 panel
        drm/panel: simple: Add bus format for HannStar HSD070PWW1 LVDS panel
        drm/bridge: Add vendor prefixes
        drm/panel: Add Samsung prefix to panel drivers
        drm/exynos: Remove PTN3460 dependency

  commit bef2c7bd578e91c9c10983e0c15c4501127b77ca
  Merge: 3ff8e50 459cc2c
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Mon Aug 17 15:52:39 2015 +1000

      Merge tag 'drm/tegra/for-4.3-rc1' of 
git://anongit.freedesktop.org/tegra/linux into drm-next

      drm/tegra: Changes for v4.3-rc1

      There are a bunch of non-critical fixes here that I've collected over
      the past few months, but the biggest part is Tegra210 support, in the
      DC, DSI and SOR/HDMI drivers.

      Also this finally restores DPMS with atomic mode-setting, something
      that has been broken since the conversion and which I had originally
      expected to take far less longer to fix.

      * tag 'drm/tegra/for-4.3-rc1' of 
git://anongit.freedesktop.org/tegra/linux: (41 commits)
        drm/tegra: sor: Add HDMI support
        drm/tegra: sor: Add Tegra210 eDP support
        drm/tegra: dc: Implement atomic DPMS
        drm/tegra: sor: Restore DPMS
        drm/tegra: dsi: Restore DPMS
        drm/tegra: hdmi: Restore DPMS
        drm/tegra: rgb: Restore DPMS
        drm/tegra: sor: Use DRM debugfs infrastructure for CRC
        drm/tegra: sor: Write correct head state registers
        drm/tegra: sor: Constify display mode
        drm/tegra: sor: Reset the correct debugfs fields
        drm/tegra: sor: Set minor after debugfs initialization
        drm/tegra: sor: Provide error messages in probe
        drm/tegra: sor: Rename registers for consistency
        drm/tegra: dpaux: Disable interrupt when detached
        drm/tegra: dpaux: Configure pads as I2C by default
        drm/tegra: dpaux: Provide error message in probe
        drm/tegra: dsi: Add Tegra210 support
        drm/tegra: dsi: Add Tegra132 support
        drm/tegra: dsi: Add Tegra124 support
        ...

  commit 3ff8e5090c337a4eb26952d68587f450e012bd72
  Merge: 3be6671 2a8cb48
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Mon Aug 17 15:33:23 2015 +1000

      Merge branch 'exynos-drm-next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos into drm-next

      Summary:
      - Clean up HDMI and MIXER parts
      - Clean up legacy structures specific to Exynos DRM
        . This patch series removes existing exyons_drm_display and
          exynos_drm_encoder structures specific to Exynos DRM, and
          makes them to replace with common drm_encoder structure.
          With cleanup patch, we removes exynos_drm_encoder module.
      - Clean up gem, dmabuf and buffer modules
        . This patch series replaces existing Exynos DRM dmabuf codes
          with common drm prime ones, and embeds all codes of exynos_drm_buf
          into exynos_drm_gem module.
          With cleanup patch, we removes exynos_drm_buf and exynos_drm_dmabuf
          modules.
      - And some fixups.

      * 'exynos-drm-next' of 
git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos: (53 commits)
        drm/exynos: merge exynos_drm_buf.c to exynos_drm_gem.c
        drm/exynos: use prime helpers
        drm/exynos: remove function roundup_gem_size
        drm/exynos: remove function update_vm_cache_attr
        drm/exynos: remove function check_gem_flags
        drm/exynos: use ERR_PTR instead of NULL in exynos_drm_gem_init
        drm/exynos: remove unused fields of struct exynos_drm_gem_buf
        drm/exynos: stop copying sg table
        drm/exynos: remove function exynos_drm_gem_map_buf
        drm/exynos: remove mutex locking in pagefault handler
        drm/exynos: remove function convert_to_vm_err_msg
        drm/exynos: stop using sgtable in page fault handler
        drm/exynos: remove struct exynos_drm_encoder layer
        drm/exynos: fold encoder setup into exynos_drm_load()
        drm/exynos: remove exynos_drm_create_enc_conn()
        drm/exynos: remove exynos_encoder's .commit() op
        drm/exynos: remove extra call to exynos_dp_commit()
        drm/exynos: remove extra call to hdmi_commit()
        drm/exynos: remove struct exynos_drm_display
        drm/exynos: simplify calculation of possible CRTCs
        ...

  commit 1e3136789975f03e461798149309034e5213c1b4
  Author: Eric Dumazet <edumazet@xxxxxxxxxx>
  Date:   Sat Aug 15 10:54:07 2015 -0700

      ipv4: fix refcount leak in fib_check_nh()

      fib_lookup() forces FIB_LOOKUP_NOREF flag, while fib_table_lookup()
      does not.

      This patch solves the typical message at reboot time or device
      dismantle :

      unregister_netdevice: waiting for eth0 to become free. Usage count = 4

      Fixes: 3bfd847203c6 ("net: Use passed in table for nexthop lookups")
      Signed-off-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Cc: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Acked-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 69034db79a8101dccdeb2b909b3aaa52001ab1ef
  Author: Max Filippov <jcmvbkbc@xxxxxxxxx>
  Date:   Sat Jul 18 10:05:05 2015 +0300

      xtensa: drop unused irq_err_count

      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>

  commit 38fef73c21d117cf992fb5ec6e30630e54e13f4f
  Author: Max Filippov <jcmvbkbc@xxxxxxxxx>
  Date:   Thu Jul 16 10:37:31 2015 +0300

      xtensa: implement fake NMI

      In case perf IRQ is the highest of the medium-level IRQs, and is alone
      on its level, it may be treated as NMI:
      - LOCKLEVEL is defined to be one level less than EXCM level,
      - IRQ masking never lowers current IRQ level,
      - new fake exception cause code, EXCCAUSE_MAPPED_NMI is assigned to that
        IRQ; new second level exception handler, do_nmi, assigned to it
        handles it as NMI,
      - atomic operations in configurations without s32c1i still need to mask
        all interrupts.

      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Acked-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>

  commit 98e298329e7b391293da5097817437292c842dc9
  Author: Max Filippov <jcmvbkbc@xxxxxxxxx>
  Date:   Fri Jul 17 05:24:49 2015 +0300

      xtensa: don't touch EXC_TABLE_FIXUP in _switch_to

      There's no way _switch_to can produce double exceptions now, don't
      enter/leave EXC_TABLE_FIXUP critical section.

      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>

  commit 77d6273e79e3a86552fcf10cdd31a69b46ed2ce6
  Author: Max Filippov <jcmvbkbc@xxxxxxxxx>
  Date:   Thu Jul 16 10:41:02 2015 +0300

      xtensa: fix kernel register spilling

      call12 can't be safely used as the first call in the inline function,
      because the compiler does not extend the stack frame of the bounding
      function accordingly, which may result in corruption of local variables.

      If a call needs to be done, do call8 first followed by call12.

      For pure assembly code in _switch_to increase stack frame size of the
      bounding function.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>

  commit 7d5f6a9a2496c6e4f2a3b5db7743ff4e3a99738e
  Author: Max Filippov <jcmvbkbc@xxxxxxxxx>
  Date:   Thu Jul 16 06:18:46 2015 +0300

      xtensa: reorganize irq flags tracing

      entry.s only disables IRQs on hardware IRQ, move trace_hardirqs_off call
      into do_interrupt. Check actual intlevel that will be restored on return
      from exception handler to decide if trace_hardirqs_on should be called.
      Annotate IRQ on/off points in the TIF_* handling loop on return from
      exception handler.

      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>

  commit 18bc5b85aac08d35eeca174abc73238a4d5deb0b
  Author: Max Filippov <jcmvbkbc@xxxxxxxxx>
  Date:   Fri Jun 26 04:11:08 2015 +0300

      perf tools: xtensa: add DWARF register names

      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Paul Mackerras <paulus@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>

  commit 9bd46da45edd9701bcb2a221d58afe7d01febd1d
  Author: Max Filippov <jcmvbkbc@xxxxxxxxx>
  Date:   Sun Jun 14 01:41:25 2015 +0300

      xtensa: implement counting and sampling perf events

      Xtensa Performance Monitor Module has up to 8 32 bit wide performance
      counters. Each counter may be enabled independently and can count any
      single type of hardware performance events. Event counting may be enabled
      and disabled globally (per PMM).
      Each counter has status register with bits indicating if the counter has
      been overflown and may be programmed to raise profiling IRQ on overflow.
      This IRQ is used to rewind counters and allow for counting more than 2^32
      samples for counting events and to report samples for sampling events.

      For more details see Tensilica Debug User's Guide, chapter 8
      "Performance monitor module".

      Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
      Cc: Paul Mackerras <paulus@xxxxxxxxx>
      Cc: Ingo Molnar <mingo@xxxxxxxxxx>
      Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>

  commit af885de869a9d7086d50a2c250323f0bfd939fd4
  Author: Max Filippov <jcmvbkbc@xxxxxxxxx>
  Date:   Thu Jun 4 13:42:22 2015 +0300

      xtensa: count software page fault perf events

      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>

  commit 3be66711b6adefad2a95c108161607d79729ea05
  Merge: d3638ac d248b61
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Mon Aug 17 14:33:11 2015 +1000

      Merge branch 'msm-next' of git://people.freedesktop.org/~robclark/linux 
into drm-next

      1) includes all the drm/msm side of things for upstream kernel working
      on dragonboard 410c (still some pending work on adv7533 bridge chip)
      2) initial support for msm8x94 (snapdragon 810)
      3) support for msm8x74v1 (in addition to existing v2 support)
      4) support for dma planes on mdp5 (additional planes that cannot 
scale/csc)
      5) more yuv format support for mdp5 (single plane vyuy/uyvy/yuyv/yvyu,
      two plane nv16/nv61, and three plane yuv420/yvu420)
      6) rotation support for mdp5
      7) initial hdcp support
      8) fixes, etc

      * 'msm-next' of git://people.freedesktop.org/~robclark/linux: (46 commits)
        drm/msm/dsi: Introduce DSI configuration module
        drm/msm/dsi: Make each PHY type compilation independent
        drm/msm/dsi: Split PHY drivers to separate files
        drm/msm/dsi: Return void from msm_dsi_phy_disable()
        drm/msm/dsi: Specify bitmask to set source PLL
        drm/msm/mdp: Clear pending interrupt status before enable interrupt
        drm/msm/mdp5: Add rotation (hflip/vflip) support to MDP5 planes (v2)
        drm/msm: add calls to prepare and unprepare panel
        drm/msm/dsi: Modify dsi manager bridge ops to work with external bridges
        drm/msm/dsi: Allow dsi to connect to an external bridge
        drm/msm/dsi: Create a helper to check if there is a connected device
        drm/msm/dsi: Refer to connected device as 'device' instead of 'panel'
        drm/msm/dsi: Make TE gpio optional
        drm/msm: mdp4 lvds: get panel node via of graph parsing
        drm/msm: dsi host: Use device graph parsing to parse connected panel
        drm/msm: dsi host: add missing of_node_put()
        drm/msm: Enable clocks during enable/disable_vblank() callbacks
        drm/msm/mdp5: Add support for msm8x74v1
        drm/msm/mdp5: Add DMA pipe planes for MDP5
        drm/msm/mdp: Add capabilities to MDP planes (v2)
        ...

  commit ae0b7139ab49c986e798ca9a46b7ad763ea8b8ca
  Author: Max Filippov <jcmvbkbc@xxxxxxxxx>
  Date:   Tue Jun 23 01:53:05 2015 +0300

      xtensa: add profiling IRQ type to xtensa_irq_map

      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>

  commit db8165f5d975533880f516fed142364ba3e6046e
  Author: Max Filippov <jcmvbkbc@xxxxxxxxx>
  Date:   Thu Jun 4 13:41:27 2015 +0300

      xtensa: select PERF_USE_VMALLOC for cache-aliasing configurations

      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>

  commit 5fdf377d802ddd439fe16dd2e9e38039af535af2
  Author: Max Filippov <jcmvbkbc@xxxxxxxxx>
  Date:   Thu Jun 25 07:27:16 2015 +0300

      xtensa: move oprofile stack tracing to stacktrace.c

      Old oprofile interface will share user stack tracing with new perf
      interface. Move oprofile user/kernel stack tracing to stacktrace.c to
      make it possible.

      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>

  commit b6569439f1cec0ce15f647e2ba814431b5930b82
  Author: Max Filippov <jcmvbkbc@xxxxxxxxx>
  Date:   Thu Jun 25 23:03:29 2015 +0300

      xtensa: keep exception/interrupt stack continuous

      Restore original a0 in the kernel exception stack frame. This way it
      looks like the frame that got interrupt/exception did alloca (copy a0 and
      a1 spilled under old stack to the new location as well) to save registers
      and then did a call to handler.
      The point where interrupt/exception was taken is not in the stack chain,
      only in pt_regs (call4 from that address can be simulated to keep it in
      the stack trace).

      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>

  commit de7c1c7862c4072bc93155da2cd6921137cb87ae
  Author: Max Filippov <jcmvbkbc@xxxxxxxxx>
  Date:   Sat Jun 27 07:31:12 2015 +0300

      xtensa: clean up Kconfig dependencies for custom cores

      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>

  commit c75959a6da19df2700556dc76861442e9716317d
  Author: Max Filippov <jcmvbkbc@xxxxxxxxx>
  Date:   Mon May 25 06:55:05 2015 +0300

      xtensa: reimplement DMA API using common helpers

      - keep existing functionality: don't handle attributes, don't support
        high memory;
      - implement scatterlist primitives (map/unmap/sync);
      - enable DMA API debug.

      Signed-off-by: Max Filippov <jcmvbkbc@xxxxxxxxx>

  commit d3638ac429ff0e8af81c1bc551cbd8da5c09e3d2
  Merge: 4eebf60 75067dd
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Mon Aug 17 14:14:34 2015 +1000

      Merge tag 'drm-intel-next-fixes-2015-08-16' of 
git://anongit.freedesktop.org/drm-intel into drm-next

      Bunch more fixes for 4.3, most of it skl fallout. It's not quite all yet,
      there's still a few more patches pending to enable DDI-E correctly on skl.
      Also included the dpms atomic work from Maarten since atomic is just a
      pain and not including would cause piles of conflicts right from the
      start.

      * tag 'drm-intel-next-fixes-2015-08-16' of 
git://anongit.freedesktop.org/drm-intel: (67 commits)
        drm/i915: Per-DDI I_boost override
        drm/i915/skl: WaIgnoreDDIAStrap is forever, always init DDI A
        drm/i915: fix checksum write for automated test reply
        drm/i915: Contain the WA_REG macro
        drm/i915: Remove the failed context from the fpriv->context_idr
        drm/i915: Report IOMMU enabled status for GPU hangs
        drm/i915: Check idle to active before processing CSQ
        drm/i915: Set alternate aux for DDI-E
        drm/i915: Set power domain for DDI-E
        drm/i915: fix stolen bios_reserved checks
        drm/i915: Use masked write for Context Status Buffer Pointer
        drm/i915/skl WaDisableSbeCacheDispatchPortSharing
        drm/i915: Spam less on dp aux send/receive problems
        drm/i915: Handle return value in intel_pin_and_fence_fb_obj, v2.
        drm/i915: Only update mode related state if a modeset happened.
        drm/i915: Remove connectors_active.
        drm/i915: Remove connectors_active from intel_dp.c, v2.
        drm/i915: Remove connectors_active from sanitization, v2.
        drm/i915: Get rid of dpms handling.
        drm/i915: Make crtc checking use the atomic state, v2.
        ...

  commit 4eebf60b7452fbd551fd7dece855ba7825a49cbc
  Merge: 8f9cb50 2c6625c
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Mon Aug 17 14:13:53 2015 +1000

      Merge tag 'v4.2-rc7' into drm-next

      Linux 4.2-rc7

      Backmerge master for i915 fixes

  commit 5699f871d2d51ce40012501378670613d4d49214
  Author: Danilo Cesar Lemes de Paula <danilo.cesar@xxxxxxxxxxxxxxx>
  Date:   Tue Jul 28 16:45:15 2015 -0300

      scripts/kernel-doc: Adding cross-reference links to html documentation.

      Functions, Structs and Parameters definitions on kernel documentation
      are pure cosmetic, it only highlights the element.

      To ease the navigation in the documentation we should use <links> inside
      those tags so readers can easily jump between methods directly.

      This was discussed in 2014[1] and is implemented by getting a list
      of <refentries> from the DocBook XML to generate a database. Then it looks
      for <function>,<structnames> and <paramdef> tags that matches the ones in
      the database. As it only links existent references, no broken links are
      added.

      [1] - lists.freedesktop.org/archives/dri-devel/2014-August/065404.html

      Signed-off-by: Danilo Cesar Lemes de Paula <danilo.cesar@xxxxxxxxxxxxxxx>
      Cc: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
      Cc: Daniel Vetter <daniel.vetter@xxxxxxxx>
      Cc: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
      Cc: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
      Cc: Stephan Mueller <smueller@xxxxxxxxxx>
      Cc: Michal Marek <mmarek@xxxxxxx>
      Cc: intel-gfx <intel-gfx@xxxxxxxxxxxxxxxxxxxxx>
      Cc: dri-devel <dri-devel@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 8c7dd08a8ccac3f0f3df6002dc8e86d3ca6c56a8
  Author: Vaibhav Jain <vaibhav@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 12:28:38 2015 +0530

      cxl: Plug irq_bitmap getting leaked in cxl_context

      This patch plugs the leak of irq_bitmap, allocated as part of
      initialization of cxl_context struct; during the call to
      afu_allocate_irqs. The bitmap is now release during the call to function
      afu_release_irqs.

      Reported-by: Matthew R. Ochs <mrochs@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Vaibhav Jain <vaibhav@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 25901632c9323e5208cca66097a0b8f34c752606
  Author: Daniel Axtens <dja@xxxxxxxxxx>
  Date:   Fri Aug 14 17:41:27 2015 +1000

      cxl: Add CONFIG_CXL_EEH symbol

      CONFIG_CXL_EEH is for CXL's EEH related code.

      Other drivers can depend on or #ifdef on this symbol to configure
      PERST behaviour, allowing CXL to participate in the EEH process.

      Reviewed-by: Cyril Bur <cyrilbur@xxxxxxxxx>
      Signed-off-by: Daniel Axtens <dja@xxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit fe202fe95564023223ce1910c9e352f391abb1d5
  Author: Christophe Ricard <christophe.ricard@xxxxxxxxx>
  Date:   Fri Aug 14 22:33:40 2015 +0200

      nfc: netlink: Add check on NFC_ATTR_VENDOR_DATA

      NFC_ATTR_VENDOR_DATA is an optional vendor_cmd argument.
      The current code was potentially using a non existing argument
      leading to potential catastrophic results.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Christophe Ricard <christophe-h.ricard@xxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit 94b85938ad21944afeff71d1cca68b094905e1b9
  Author: Christophe Ricard <christophe.ricard@xxxxxxxxx>
  Date:   Fri Aug 14 22:33:39 2015 +0200

      nfc: st-nci: Remove pr_err in rcv_queue when ndlc header is unknown

      spi phy needs to use ndlc_recv at every spi transaction causing
      "unknown packet control byte" error message each time the header
      is 00. Make this silent.

      Signed-off-by: Christophe Ricard <christophe-h.ricard@xxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit a6be357e9720a7f8e11e2997e60626179151d190
  Author: Christophe Ricard <christophe.ricard@xxxxxxxxx>
  Date:   Fri Aug 14 22:33:38 2015 +0200

      nfc: st-nci: Add device tree documentation for spi phy

      Add st-nci-spi phy devicetree documentation

      Signed-off-by: Christophe Ricard <christophe-h.ricard@xxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit 2bc4d4f8c8f3ce863e3644736d1790b0684c7eb0
  Author: Christophe Ricard <christophe.ricard@xxxxxxxxx>
  Date:   Fri Aug 14 22:33:37 2015 +0200

      nfc: st-nci: Add spi phy support for st21nfcb

      st21nfcb does support another phy than i2c: spi.
      st21nfcc does not support spi as the spi ios are used
      by the AMS RF booster.

      st21nfcb is not following NCI NFC Forum recommendations for spi
      but rely on ST prioritary protocol ndlc as for i2c.

      Signed-off-by: Christophe Ricard <christophe-h.ricard@xxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit 8b706884eac958ec16518315053f77e052627084
  Author: Christophe Ricard <christophe.ricard@xxxxxxxxx>
  Date:   Fri Aug 14 22:33:36 2015 +0200

      nfc: st-nci: Free data with irrelevant NDLC PCB_SYNC value

      PCB_SYNC different than PCB_TYPE_SUPERVISOR or PCB_TYPE_DATAFRAME
      should be discarded.

      Irrelevant data may be forwarded up to the ndlc state machine by
      phys like spi to prevent missing potential data during "write"
      transactions.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Christophe Ricard <christophe-h.ricard@xxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit 1d816b6eb513498aa28a0ff1e4db7632bded1707
  Author: Christophe Ricard <christophe.ricard@xxxxxxxxx>
  Date:   Fri Aug 14 22:33:35 2015 +0200

      nfc: st-nci: Remove data from ack_pending_q when receiving a SYNC_ACK

      When receiving a NDLC PCB_SYNC_ACK the pending data was never
      removed from ack_pending_q and cleared.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Christophe Ricard <christophe-h.ricard@xxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit daaf1e1f1640eb11259954d1d847d8a72ab5b938
  Author: Christophe Ricard <christophe.ricard@xxxxxxxxx>
  Date:   Fri Aug 14 22:33:34 2015 +0200

      NFC: st-nci: fix use of uninitialized variables in error path

      st_nci_hci_load_session() calls kfree_skb() on unitialized
      variables skb_pipe_info and skb_pipe_list if the call to
      nci_hci_connect_gate() failed. Reword the error path to not use
      these variables when they are not initialized. While at it, there
      seemed to be a memory leak because skb_pipe_info was only freed
      once, after the for-loop, even though several ones were created
      by nci_hci_send_cmd.

      Cc: stable@xxxxxxxxxxxxxxx
      Acked-by: Christophe Ricard <christophe-h.ricard@xxxxxx>
      Signed-off-by: Nicolas Iooss <nicolas.iooss_linux@xxxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit 5a3570061a131309143a49e4bbdbce7e23f261e7
  Author: Christophe Ricard <christophe.ricard@xxxxxxxxx>
  Date:   Fri Aug 14 22:33:33 2015 +0200

      NFC: st21nfca: fix use of uninitialized variables in error path

      st21nfca_hci_load_session() calls kfree_skb() on unitialized
      variables skb_pipe_info and skb_pipe_list if the call to
      nfc_hci_connect_gate() failed. Reword the error path to not use
      these variables when they are not initialized. While at it, there
      seemed to be a memory leak because skb_pipe_info was only freed
      once, after the for-loop, even though several ones were created
      by nfc_hci_send_cmd.

      Fixes: ec03ff1a8f9a
      ("NFC: st21nfca: Remove skb_pipe_list and skb_pipe_info
      useless allocation")

      Cc: stable@xxxxxxxxxxxxxxx
      Acked-by: Christophe Ricard <christophe-h.ricard@xxxxxx>
      Signed-off-by: Nicolas Iooss <nicolas.iooss_linux@xxxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit e7723b33077b04648213f043bc22654c54e375e4
  Author: Christophe Ricard <christophe.ricard@xxxxxxxxx>
  Date:   Fri Aug 14 22:33:32 2015 +0200

      nfc: st-nci: Fix non accurate comment for st_nci_i2c_read

      Due to a copy and paste error st_nci_i2c_read still contains
      st21nfca header comment.

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Christophe Ricard <christophe-h.ricard@xxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit 30458aac63c89771d19f023083d64d018562812e
  Author: Christophe Ricard <christophe.ricard@xxxxxxxxx>
  Date:   Fri Aug 14 22:33:31 2015 +0200

      nfc: st-nci: Fix typo when changing from st21nfcb to st-nci

      Replace ST21NFCB with ST_NCI or st21nfcb with st_nci as it
      was forgotten in commit "nfc: st-nci: Rename st21nfcb to st-nci"
      ed06aeefdac348cfb91a3db5fe1067e3202afd70

      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Christophe Ricard <christophe-h.ricard@xxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit 76b733d15874128ee2d0365b4cbe7d51decd8d37
  Author: Christophe Ricard <christophe.ricard@xxxxxxxxx>
  Date:   Fri Aug 14 22:33:30 2015 +0200

      nfc: st-nci: Remove duplicate file platform_data/st_nci.h

      commit "nfc: st-nci: Rename st21nfcb to st-nci" adds
      include/linux/platform_data/st_nci.h duplicated with
      include/linux/platform_data/st-nci.h.

      Only drivers/nfc/st-nci/i2c.c uses platform_data/st_nci.h.

      Cc: stable@xxxxxxxxxxxxxxx
      Reported-by: Hauke Mehrtens <hauke@xxxxxxxxxx>
      Signed-off-by: Christophe Ricard <christophe-h.ricard@xxxxxx>
      Signed-off-by: Samuel Ortiz <sameo@xxxxxxxxxxxxxxx>

  commit 38e6a417f6205e98bef53c5530f5fddfea08e1c6
  Author: Hans Verkuil <hverkuil@xxxxxxxxx>
  Date:   Wed Aug 12 04:14:28 2015 -0300

      [media] horus3a: fix compiler warning

      Shut up this compiler warning that I get during the daily build:

      horus3a.c: In function 'horus3a_set_params':
      horus3a.c:308:24: warning: 'rolloff' may be used uninitialized in this 
function [-Wmaybe-uninitialized]
           symbol_rate * (100 + rolloff), 200000) + 5;
                              ^

      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 82fde1a98eb9866347a1d3543fac4ab9a69aeb7d
  Author: Abhilash Jindal <klock.android@xxxxxxxxx>
  Date:   Tue Aug 11 12:22:57 2015 -0300

      [media] bt8xxx: Use monotonic time

      Wall time obtained from do_gettimeofday is susceptible to sudden jumps 
due to
      user setting the time or due to NTP.

      Monotonic time is constantly increasing time better suited for comparing 
two
      timestamps.

      Signed-off-by: Abhilash Jindal <klock.android@xxxxxxxxx>
      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit e4d45dd81e67f9fe0e1af44bddd53c3d4eb061ea
  Author: Abhilash Jindal <klock.android@xxxxxxxxx>
  Date:   Tue Aug 11 12:09:49 2015 -0300

      [media] zoran: Use monotonic time

      Wall time obtained from do_gettimeofday is susceptible to sudden jumps 
due to
      user setting the time or due to NTP.

      Monotonic time is constantly increasing time better suited for comparing 
two
      timestamps.

      Signed-off-by: Abhilash Jindal <klock.android@xxxxxxxxx>
      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 8f7a5f462a255b4395e5f0f08c045dc8af6efd55
  Author: Mike Looijmans <mike.looijmans@xxxxxxxx>
  Date:   Tue Aug 11 09:21:07 2015 -0300

      [media] i2c/adv7511: Fix license, set to GPL v2

      Header claims GPL v2, so make the MODULE_LICENSE reflect that properly.

      Signed-off-by: Mike Looijmans <mike.looijmans@xxxxxxxx>
      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 4284118058b2b4f217a050908a555d0e1ed58641
  Author: Rob Taylor <rob.taylor@xxxxxxxxxxxxxxx>
  Date:   Thu Jul 23 09:21:43 2015 -0300

      [media] media: rcar_vin: Reject videobufs that are too small for current 
format

      In videobuf_setup reject buffers that are too small for the configured
      format. Fixes v4l2-compliance issue.

      Signed-off-by: Rob Taylor <rob.taylor@xxxxxxxxxxxxxxx>
      Reviewed-by: William Towle <william.towle@xxxxxxxxxxxxxxx>
      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 734f3f238587ffb6938700c4495dd5b5a54c4125
  Author: Rob Taylor <rob.taylor@xxxxxxxxxxxxxxx>
  Date:   Thu Jul 23 09:21:42 2015 -0300

      [media] media: rcar_vin: fill in bus_info field

      Adapt rcar_vin_querycap() so that cap->bus_info is populated with
      something meaningful/unique.

      Signed-off-by: Rob Taylor <rob.taylor@xxxxxxxxxxxxxxx>
      Signed-off-by: William Towle <william.towle@xxxxxxxxxxxxxxx>
      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 920a1bf30a361fc2c6d713a26deb3a488639def3
  Author: William Towle <william.towle@xxxxxxxxxxxxxxx>
  Date:   Thu Jul 23 09:21:36 2015 -0300

      [media] media: soc_camera: rcar_vin: Add BT.709 24-bit RGB888 input 
support

      This adds V4L2_MBUS_FMT_RGB888_1X24 input format support
      which is used by the ADV7612 chip.

      Modified to use MEDIA_BUS_FMT_* constants

      Signed-off-by: Koji Matsuoka <koji.matsuoka.xm@xxxxxxxxxxx>
      Signed-off-by: Simon Horman <horms+renesas@xxxxxxxxxxxx>
      Signed-off-by: Yoshihiro Kaneko <ykaneko0929@xxxxxxxxx>
      Signed-off-by: William Towle <william.towle@xxxxxxxxxxxxxxx>
      Reviewed-by: Rob Taylor <rob.taylor@xxxxxxxxxxxxxxx>
      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit ab149b88eb23482cd9c203527bf4e612ee95b50f
  Author: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
  Date:   Tue Jul 21 10:09:10 2015 -0300

      [media] tw68: Move PCI vendor and device IDs to pci_ids.h

      This commits moves the Intersil/Techwell PCI vendor ID, and
      the device IDs for the TW68 PCI video capture cards.

      This will allow to support future Intersil/Techwell devices
      without duplicating the IDs.

      Signed-off-by: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 823ea2a639611f79a3b4d3daff5ff722316342e7
  Author: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx>
  Date:   Thu Feb 12 11:43:11 2015 -0200

      [media] media: Correctly notify about the failed pipeline validation

      On the place of the source entity name, the sink entity name was printed.

      Signed-off-by: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx>
      Signed-off-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 78c66fbcec717b22fd9db4ddc95e543cfcf544af
  Author: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
  Date:   Wed May 20 04:08:30 2015 -0300

      [media] v4l: omap3isp: Drop platform data support

      Platforms using the OMAP3 ISP have all switched to DT, drop platform
      data support.

      Signed-off-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
      Acked-by: Sakari Ailus <sakari.ailus@xxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 63540f01917c0d8b03b9813a0d6539469b163139
  Author: Jan Kara <jack@xxxxxxx>
  Date:   Mon Jul 20 05:03:35 2015 -0300

      [media] drm/exynos: Convert g2d_userptr_get_dma_addr() to use 
get_vaddr_frames()

      Convert g2d_userptr_get_dma_addr() to pin pages using get_vaddr_frames().
      This removes the knowledge about vmas and mmap_sem locking from exynos
      driver. Also it fixes a problem that the function has been mapping user
      provided address without holding mmap_sem.

      Acked-by: Inki Dae <inki.dae@xxxxxxxxxxx>
      Signed-off-by: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 6690c8c78c745239bb1f22b23f3889a0a14c249b
  Author: Jan Kara <jack@xxxxxxx>
  Date:   Mon Jul 13 11:55:50 2015 -0300

      [media] media: vb2: Remove unused functions

      Conversion to the use of pinned pfns made some functions unused. Remove
      them. Also there's no need to lock mmap_sem in __buf_prepare() anymore.

      Tested-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      Signed-off-by: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit fb639eb39154312af8bf08c58cc0142179e0c224
  Author: Jan Kara <jack@xxxxxxx>
  Date:   Mon Jul 13 11:55:49 2015 -0300

      [media] media: vb2: Convert vb2_dc_get_userptr() to use frame vector

      Convert vb2_dc_get_userptr() to use frame vector infrastructure. When we
      are doing that there's no need to allocate page array and some code can
      be simplified.

      Tested-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      Signed-off-by: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 5a9e4dec393a2c5a01be6adc63065059b367d532
  Author: Jan Kara <jack@xxxxxxx>
  Date:   Mon Jul 13 11:55:48 2015 -0300

      [media] media: vb2: Convert vb2_vmalloc_get_userptr() to use frame vector

      Convert vb2_vmalloc_get_userptr() to use frame vector infrastructure.
      When we are doing that there's no need to allocate page array and some
      code can be simplified.

      Tested-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      Signed-off-by: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 3336c24f25ec932aab128cf7285ca90a4dbcb816
  Author: Jan Kara <jack@xxxxxxx>
  Date:   Mon Jul 13 11:55:47 2015 -0300

      [media] media: vb2: Convert vb2_dma_sg_get_userptr() to use frame vector

      Tested-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      Signed-off-by: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 21fb0cb7ec65a40b9f5f7cda59eba0eb2ae76473
  Author: Jan Kara <jack@xxxxxxx>
  Date:   Mon Jul 13 11:55:46 2015 -0300

      [media] vb2: Provide helpers for mapping virtual addresses

      Provide simple helper functions to map virtual address range into an
      array of pfns / pages.

      Tested-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      Signed-off-by: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 8a677b6eddfc3127ea36a710838ecd20502b1cb9
  Author: Jan Kara <jack@xxxxxxx>
  Date:   Mon Jul 13 11:55:45 2015 -0300

      [media] media: omap_vout: Convert omap_vout_uservirt_to_phys() to use 
get_vaddr_pfns()

      Convert omap_vout_uservirt_to_phys() to use get_vaddr_pfns() instead of
      hand made mapping of virtual address to physical address. Also the
      function leaked page reference from get_user_pages() so fix that by
      properly release the reference when omap_vout_buffer_release() is
      called.

      Signed-off-by: Jan Kara <jack@xxxxxxx>
      [hans.verkuil@xxxxxxxxx: remove unused variable]
      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 8025e5ddf9c1cac0e632dad49a63abf7848b78cb
  Author: Jan Kara <jack@xxxxxxx>
  Date:   Mon Jul 13 11:55:44 2015 -0300

      [media] mm: Provide new get_vaddr_frames() helper

      Provide new function get_vaddr_frames().  This function maps virtual
      addresses from given start and fills given array with page frame numbers 
of
      the corresponding pages. If given start belongs to a normal vma, the 
function
      grabs reference to each of the pages to pin them in memory. If start
      belongs to VM_IO | VM_PFNMAP vma, we don't touch page structures. Caller
      must make sure pfns aren't reused for anything else while he is using
      them.

      This function is created for various drivers to simplify handling of
      their buffers.

      Signed-off-by: Jan Kara <jack@xxxxxxx>
      Acked-by: Mel Gorman <mgorman@xxxxxxx>
      Acked-by: Vlastimil Babka <vbabka@xxxxxxx>
      Acked-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 0f6e2825ce916eed882996bb6e9148c13ecebefd
  Author: Jan Kara <jack@xxxxxxx>
  Date:   Mon Jul 13 11:55:43 2015 -0300

      [media] vb2: Push mmap_sem down to memops

      Currently vb2 core acquires mmap_sem just around call to
      __qbuf_userptr(). However since commit f035eb4e976ef5 (videobuf2: fix
      lockdep warning) it isn't necessary to acquire it so early as we no
      longer have to drop queue mutex before acquiring mmap_sem. So push
      acquisition of mmap_sem down into .get_userptr memop so that the
      semaphore is acquired for a shorter time and it is clearer what it is
      needed for.

      Note that we also need mmap_sem in .put_userptr memop since that ends up
      calling vb2_put_vma() which calls vma->vm_ops->close() which should be
      called with mmap_sem held. However we didn't hold mmap_sem in some code
      paths anyway (e.g. when called via vb2_ioctl_reqbufs() ->
      __vb2_queue_free() -> vb2_dma_sg_put_userptr()) and getting mmap_sem in
      put_userptr() introduces a lock inversion with queue->mmap_lock in the
      above mentioned call path.

      Luckily this whole locking mess will get resolved once we convert
      videobuf2 core to the new mm helper which avoids the need for mmap_sem
      in .put_userptr memop altogether.

      Signed-off-by: Jan Kara <jack@xxxxxxx>
      Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 27c039750c8ff1297632e424a4674732cc4c3c70
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 11 12:18:33 2015 -0300

      [media] sr030pc30: don't read a new pointer

      sr030pc30_get_fmt() can only succeed if both info->curr_win and
      info->curr_fmt are not NULL.

      If one of those vars are null, the curent code would call:
        ret = sr030pc30_set_params(sd);

      If the curr_win is null, it will return -EINVAL, as it would be
      expected. However, if curr_fmt is NULL, the function won't
      set it.

      The code will then try to read from it:

              mf->code        = info->curr_fmt->code;
              mf->colorspace  = info->curr_fmt->colorspace;

      with obviouly won't work.

      This got reported by smatch:
        drivers/media/i2c/sr030pc30.c:505 sr030pc30_get_fmt() error: we 
previously assumed 'info->curr_win' could be null (see line 499)
        drivers/media/i2c/sr030pc30.c:507 sr030pc30_get_fmt() error: we 
previously assumed 'info->curr_fmt' could be null (see line 499)

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit ab9a953b9f58ae695bbbe04a8540830bbae5d246
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 11 12:18:32 2015 -0300

      [media] ov2659: get rid of unused values

      Why to store the chosed values for prediv, postdiv and mult if
      those won't be used?

      drivers/media/i2c/ov2659.c: In function 'ov2659_pll_calc_params':
      drivers/media/i2c/ov2659.c:912:35: warning: variable 's_mult' set but not 
used [-Wunused-but-set-variable]
        u32 s_prediv = 1, s_postdiv = 1, s_mult = 1;
                                         ^
      drivers/media/i2c/ov2659.c:912:20: warning: variable 's_postdiv' set but 
not used [-Wunused-but-set-variable]
        u32 s_prediv = 1, s_postdiv = 1, s_mult = 1;
                          ^
      drivers/media/i2c/ov2659.c:912:6: warning: variable 's_prediv' set but 
not used [-Wunused-but-set-variable]
        u32 s_prediv = 1, s_postdiv = 1, s_mult = 1;
            ^

      This is likely some leftover from some past change.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 12976516558c81f20757f6b0947823119ad87046
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 11 12:18:31 2015 -0300

      [media] ov9650: remove an extra space

      drivers/media/i2c/ov9650.c:1439 ov965x_detect_sensor() warn: inconsistent 
indenting

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 1d88f831d20c10b5633cd71117917cd04a0735a8
  Author: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 11 12:18:30 2015 -0300

      [media] tc358743: don't use variable length array for I2C writes

      drivers/media/i2c/tc358743.c:148:19: warning: Variable length array is 
used.

      As the maximum size is 1026, we can't use dynamic var, as it
      would otherwise spend 1056 bytes of the stack at i2c_wr() function.

      So, allocate a buffer with the allowed maximum size together with
      the state var.

      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>
      Acked-by: Mats Randgaard <matrandg@xxxxxxxxx>
      Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxx>

  commit 5d44595c2627f7edcd8c24a76b13bd115f9fc2da
  Merge: fedf42b 93a1cee
  Author: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
  Date:   Sun Aug 16 17:10:20 2015 +0200

      Merge branch 'reset/ath79' into reset/next

  commit bdfe0cbd746aa9b2509c2f6d6be17193cf7facd7
  Author: Theodore Ts'o <tytso@xxxxxxx>
  Date:   Sun Aug 16 10:03:57 2015 -0400

      Revert "ext4: remove block_device_ejected"

      This reverts commit 08439fec266c3cc5702953b4f54bdf5649357de0.

      Unfortunately we still need to test for bdi->dev to avoid a crash when a
      USB stick is yanked out while a file system is mounted:

         usb 2-2: USB disconnect, device number 2
         Buffer I/O error on dev sdb1, logical block 15237120, lost sync page 
write
         JBD2: Error -5 detected when updating journal superblock for sdb1-8.
         BUG: unable to handle kernel paging request at 34beb000
         IP: [<c136ce88>] __percpu_counter_add+0x18/0xc0
         *pdpt = 0000000023db9001 *pde = 0000000000000000
         Oops: 0000 [#1] SMP
         CPU: 0 PID: 4083 Comm: umount Tainted: G     U     OE   
4.1.1-040101-generic #201507011435
         Hardware name: LENOVO 7675CTO/7675CTO, BIOS 7NETC2WW (2.22 ) 03/22/2011
         task: ebf06b50 ti: ebebc000 task.ti: ebebc000
         EIP: 0060:[<c136ce88>] EFLAGS: 00010082 CPU: 0
         EIP is at __percpu_counter_add+0x18/0xc0
         EAX: f21c8e88 EBX: f21c8e88 ECX: 00000000 EDX: 00000001
         ESI: 00000001 EDI: 00000000 EBP: ebebde60 ESP: ebebde40
          DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
         CR0: 8005003b CR2: 34beb000 CR3: 33354200 CR4: 000007f0
         Stack:
          c1abe100 edcb0098 edcb00ec ffffffff f21c8e68 ffffffff f21c8e68 
f286d160
          ebebde84 c1160454 00000010 00000282 f72a77f8 00000984 f72a77f8 
f286d160
          f286d170 ebebdea0 c11e613f 00000000 00000282 f72a77f8 edd7f4d0 
00000000
         Call Trace:
          [<c1160454>] account_page_dirtied+0x74/0x110
          [<c11e613f>] __set_page_dirty+0x3f/0xb0
          [<c11e6203>] mark_buffer_dirty+0x53/0xc0
          [<c124a0cb>] ext4_commit_super+0x17b/0x250
          [<c124ac71>] ext4_put_super+0xc1/0x320
          [<c11f04ba>] ? fsnotify_unmount_inodes+0x1aa/0x1c0
          [<c11cfeda>] ? evict_inodes+0xca/0xe0
          [<c11b925a>] generic_shutdown_super+0x6a/0xe0
          [<c10a1df0>] ? prepare_to_wait_event+0xd0/0xd0
          [<c1165a50>] ? unregister_shrinker+0x40/0x50
          [<c11b92f6>] kill_block_super+0x26/0x70
          [<c11b94f5>] deactivate_locked_super+0x45/0x80
          [<c11ba007>] deactivate_super+0x47/0x60
          [<c11d2b39>] cleanup_mnt+0x39/0x80
          [<c11d2bc0>] __cleanup_mnt+0x10/0x20
          [<c1080b51>] task_work_run+0x91/0xd0
          [<c1011e3c>] do_notify_resume+0x7c/0x90
          [<c1720da5>] work_notify
         Code: 8b 55 e8 e9 f4 fe ff ff 90 90 90 90 90 90 90 90 90 90 90 55 89 
e5 83 ec 20 89 5d f4 89 c3 89 75 f8 89 d6 89 7d fc 89 cf 8b 48 14 <64> 8b 01 89 
45 ec 89 c2 8b 45 08 c1 fa 1f 01 75 ec 89 55 f0 89
         EIP: [<c136ce88>] __percpu_counter_add+0x18/0xc0 SS:ESP 0068:ebebde40
         CR2: 0000000034beb000
         ---[ end trace dd564a7bea834ecd ]---

      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=101011

      Signed-off-by: Theodore Ts'o <tytso@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 3c22a0ed597c1ff33eddeafd04be5e6ce544262d
  Author: Avri Altman <avri.altman@xxxxxxxxx>
  Date:   Wed Aug 5 23:07:42 2015 +0300

      iwlwifi: mvm: Enable power management on low-latency bss

      Currently the driver disable power management on all low-latency
      interfaces, while it should disable it on WiDi interfaces only.
      Non-P2P interfaces that runs voice and video traffic should enable
      power management.

      Signed-off-by: Avri Altman <avri.altman@xxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit 7c4f084372ed35aef3e8c6e6b1f1b1dc3235987a
  Author: Arik Nemtsov <arik@xxxxxxxxxx>
  Date:   Thu Apr 30 18:31:45 2015 +0300

      iwlwifi: mvm: support TDLS wider-bandwidth

      When TDLS support is declared by the FW, set the bit indicating wider-BW
      support as well.

      Signed-off-by: Arik Nemtsov <arikx.nemtsov@xxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit 5b9d47cdde1aacaac9b9dcefe44ee3493dc5fd87
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Tue Aug 11 00:45:03 2015 +0300

      iwlwifi: mvm: fix a range check in debugfs code

      The &mvm->tof_data.range_req.ap[] array has IWL_MVM_TOF_MAX_APS elements
      so the check should be >= instead of >.  Also the test can underflow so
      I have changed "i" to unsigned.

      Fixes: ce7929186a39 ('wlwifi: mvm: add basic Time of Flight (802.11mc 
FTM) support')
      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit 3cd6e2f768851a760c072f0f84b9688b1755d24d
  Author: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
  Date:   Thu Jul 16 15:42:14 2015 +0300

      iwlwifi: convert hex_dump_to_buffer() to %*ph

      There is no need to use hex_dump_to_buffer() in the cases like this:

        hexdump_to_buffer(buf, len, 16, 1, outbuf, outlen, false);      /* len 
<= 16 */
        sprintf("%s\n", outbuf);

      since it maybe easily converted to simple:

        sprintf("%*ph\n", len, buf);

      Note: it seems in one case the output is groupped by 2 bytes and looks 
like a
      typo. Thus, patch changes that to plain byte stream.

      Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit 1be5d8cc165d56b7267f5adc96d496a33c33219e
  Author: Johannes Berg <johannes.berg@xxxxxxxxx>
  Date:   Thu Jun 11 16:51:24 2015 +0200

      iwlwifi: pass NAPI struct from transport layer

      The mac80211 patch to pass the NAPI struct only changed iwlwifi to
      store the NAPI struct, but we can do better: pass it directly from
      the lower transport layer to the opmode during RX, and then on to
      mac80211 from there.

      When we add multiple RX queues, we can then pass the appropriate
      NAPI struct properly.

      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit 473e0bc39bd5d2542e90edc622a65bd49206409d
  Merge: 1a84e77 8f9c98d
  Author: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>
  Date:   Sun Aug 16 10:20:58 2015 +0300

      Merge tag 'mac80211-next-for-davem-2015-08-14' into next

      Another pull request for the next cycle, this time with quite
      a bit of content:
       * mesh fixes/improvements from Alexis, Bob, Chun-Yeow and Jesse
       * TDLS higher bandwidth support (Arik)
       * OCB fixes from Bertold Van den Bergh
       * suspend/resume fixes from Eliad
       * dynamic SMPS support for minstrel-HT (Krishna Chaitanya)
       * VHT bitrate mask support (Lorenzo Bianconi)
       * better regulatory support for 5/10 MHz channels (Matthias May)
       * basic support for MU-MIMO to avoid the multi-vif issue (Sara Sharon)
      along with a number of other cleanups.

  commit 1a84e7716086be3b90e3b735725d0a14da28a69c
  Author: Ayala Beker <ayala.beker@xxxxxxxxx>
  Date:   Wed Jul 22 13:54:31 2015 +0300

      iwlwifi: mvm: add debug info to schedule scan complete message.

      Add more information to schedule scan complete message.

      Signed-off-by: Ayala Beker <ayala.beker@xxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit 3b44a0ef12b9676914b25dcf3bf7f0cdd07de5b3
  Author: David Spinadel <david.spinadel@xxxxxxxxx>
  Date:   Sun Jun 21 11:57:36 2015 +0300

      iwlwifi: mvm: remove partial and full scan lists from lmac sched scan

      Lmac sched scan supports partial scans, so we can set some channels to be
      scanned on every scan iteration and others to be scanned only on some
      iterations. Currently we set all channels to be scanned every iteration,
      but still have some configuration of which iterations should be partial
      and which should be full.

      Remove all partial/full scan configuration to reduce confusions.

      Signed-off-by: David Spinadel <david.spinadel@xxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit 9437e9941025bc83d3dd43f2927019149029f667
  Author: David Spinadel <david.spinadel@xxxxxxxxx>
  Date:   Mon Jun 22 13:20:00 2015 +0300

      iwlwifi: mvm: simplify calculating scan dwells and other timing values

      Remove timing values from iwl_mvm_scan_params and use defines and
      arrays of values instead.

      While at that fix few values and corner cases and align all OSs
      to ChromeOS values.

      Signed-off-by: David Spinadel <david.spinadel@xxxxxxxxx>
      Reviewed-by: Luciano Coelho <luciano.coelho@xxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit 80de4321a65c680dd7ce0138d88dc96e0d2a18fb
  Author: Eliad Peller <eliadx.peller@xxxxxxxxx>
  Date:   Thu Jul 30 16:53:27 2015 +0300

      iwlwifi: make sure d3_suspend/resume ops exist

      We added calls to d3_suspend/resume trans ops during the
      suspend/resume flow.

      However, the wrapper code didn't verify the trans ops were
      actually defined, resulting in panic when they were not
      (such as in the case of sdio trans)

      Fixes: 6dfb36c89dc2 ("iwlwifi: call d3_suspend/resume in d0i3 case as 
well")

      Signed-off-by: Eliad Peller <eliadx.peller@xxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>

  commit 395ae54bd8775508a9616817188cabbcd6f53260
  Author: Pierre-Louis Bossart <pierre-louis.bossart@xxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 17:19:43 2015 -0500

      ALSA: usb: handle descriptor with SYNC_NONE illegal value

      The M-Audio Transit exposes an interface with a SYNC_NONE attribute.
      This is not a valid value according to the USB audio classspec. However
      there is a sync endpoint associated to this record. Changing the logic to
      try to use this sync endpoint allows for seamless transitions between
      altset 2 and altset 3. If any errors happen, the behavior remains the 
same.

      $ more /proc/asound/card1/stream0
      M-Audio Transit USB at usb-0000:00:14.0-2, full speed : USB Audio

      Playback:
        Status: Stop
        Interface 1
          Altset 1
          Format: S24_3LE
          Channels: 2
          Endpoint: 3 OUT (ADAPTIVE)
          Rates: 48001 - 96000 (continuous)
        Interface 1
          Altset 2
          Format: S24_3LE
          Channels: 2
          Endpoint: 3 OUT (NONE)
          Rates: 8000 - 48000 (continuous)
        Interface 1
          Altset 3
          Format: S16_LE
          Channels: 2
          Endpoint: 3 OUT (ASYNC)
          Rates: 8000 - 48000 (continuous)

      Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@xxxxxxxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 630184477e7eccb2b31ee4c20b6905ca5fa4b3a8
  Author: Pierre-Louis Bossart <pierre-louis.bossart@xxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 17:19:42 2015 -0500

      ALSA: usb: fix corrupted pointers due to interface setting change

      When a transition occurs between alternate settings that do not use the
      same synchronization method, the substream pointers were not reset.
      This prevents audio from being played during the second transition.

      Identified and tested with M-Audio Transit device
      (0763:2006 Midiman M-Audio Transit)

      Details of the issue:

      First playback to adaptive endpoint:
      $ aplay -Dhw:1,0 ~/24_96.wav
      Playing WAVE '/home/plb/24_96.wav' : Signed 24 bit Little Endian in 
3bytes,
      Rate 96000 Hz, Stereo

      [ 3169.297556] usb 1-2: setting usb interface 1:1
      [ 3169.297568] usb 1-2: Creating new playback data endpoint #3
      [ 3169.298563] usb 1-2: Setting params for ep #3 (type 0, 3 urbs), ret=0
      [ 3169.298574] usb 1-2: Starting data EP @ffff880035fc8000

      first playback to asynchronous endpoint:
      $ aplay -Dhw:1,0 ~/16_48.wav
      Playing WAVE '/home/plb/16_48.wav' : Signed 16 bit Little Endian,
      Rate 48000 Hz, Stereo

      [ 3204.520251] usb 1-2: setting usb interface 1:3
      [ 3204.520264] usb 1-2: Creating new playback data endpoint #3
      [ 3204.520272] usb 1-2: Creating new capture sync endpoint #83
      [ 3204.521162] usb 1-2: Setting params for ep #3 (type 0, 4 urbs), ret=0
      [ 3204.521177] usb 1-2: Setting params for ep #83 (type 1, 4 urbs), ret=0
      [ 3204.521182] usb 1-2: Starting data EP @ffff880035fce000
      [ 3204.521204] usb 1-2: Starting sync EP @ffff8800bd616000

      second playback to adaptive endpoint: no audio and error on terminal:
      $ aplay -Dhw:1,0 ~/24_96.wav
      Playing WAVE '/home/plb/24_96.wav' : Signed 24 bit Little Endian in 
3bytes,
      Rate 96000 Hz, Stereo
      aplay: pcm_write:1939: write error: Input/output error

      [ 3239.483589] usb 1-2: setting usb interface 1:1
      [ 3239.483601] usb 1-2: Re-using EP 3 in iface 1,1 @ffff880035fc8000
      [ 3239.484590] usb 1-2: Setting params for ep #3 (type 0, 4 urbs), ret=0
      [ 3239.484606] usb 1-2: Setting params for ep #83 (type 1, 4 urbs), ret=0

      This last line shows that a sync endpoint is used when it shouldn't.
      The sync endpoint is no longer valid and the pointers are corrupted

      Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@xxxxxxxxxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 2a8cb48945408984cd04c850b293f467b32ec5af
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Sun Aug 16 14:38:49 2015 +0900

      drm/exynos: merge exynos_drm_buf.c to exynos_drm_gem.c

      The struct exynos_drm_gem_obj can have fields of the struct
      exynos_drm_gem_buf then don't need to use exynos_drm_buf.c file.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 01ed50ddbd6f7b4fafcf366994949d5a1a8356c0
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Sun Aug 16 14:33:08 2015 +0900

      drm/exynos: use prime helpers

      The dma-buf codes of exynos drm is almost same with prime helpers. A
      difference is that consider DMA_NONE when import dma-buf, but it's wrong
      and we don't consider it any more, so we can use prime interface.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit eb57da880b00b6c68f971e077ff3e4db9ef0deae
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Jul 28 17:53:27 2015 +0900

      drm/exynos: remove function roundup_gem_size

      The function roundup_gem_size can be merged in exynos_drm_gem_create.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 211b8878c13fbd5f8ae8a7b68798d178cb5346b4
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Sun Aug 16 14:16:49 2015 +0900

      drm/exynos: remove function update_vm_cache_attr

      The function update_vm_cache_attr can be merged in exynos_drm_gem_mmap.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit c4130bcd6a80f29a5d0cabcef8f0341cfa812dff
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Sun Aug 16 14:15:06 2015 +0900

      drm/exynos: remove function check_gem_flags

      The function check_gem_flags is too simple, so it's better to move codes
      in each consumer functions.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 5f3f42664fafa7dd88aee30a2ea77ca45c9362e7
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Jul 28 17:53:22 2015 +0900

      drm/exynos: use ERR_PTR instead of NULL in exynos_drm_gem_init

      For more correct error information.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 8e38976ee9aceec4231e7aa5aacf3c6e7aa41471
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Jul 28 17:53:21 2015 +0900

      drm/exynos: remove unused fields of struct exynos_drm_gem_buf

      The userptr, write and pfnmap of struct exynos_drm_gem_buf are not used
      anywhere.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 67e93c808b486817193dbd1ff93ee03adb9eef28
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Jul 28 17:53:20 2015 +0900

      drm/exynos: stop copying sg table

      Already struct exynos_drm_gem_buf has pages of the buffer, so we don't
      need to copy from sg table of the buffer to sg table of dma-buf
      attachment, just can make sg table from pages of the buffer.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 0e9a2ee3bc1ee24be519312453ef93288b545ad3
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Jul 28 17:53:19 2015 +0900

      drm/exynos: remove function exynos_drm_gem_map_buf

      The exynos_drm_gem_map_buf can be merged in exynos_drm_gem_fault.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 67412d15afb7cc34943157c4bce2cf138b579fd1
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Jul 28 17:53:18 2015 +0900

      drm/exynos: remove mutex locking in pagefault handler

      There is no reason to use mutex locking in pagefault handler.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 23597e2642ca76883ef533d3e3947b859537fd49
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Jul 28 17:53:17 2015 +0900

      drm/exynos: remove function convert_to_vm_err_msg

      The convert_to_vm_err_msg is called just once by exynos_drm_gem_fault,
      so it's simple not to use the function.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 8139951cae69637cc882e23f36fc45ecfa1ec814
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Jul 28 17:53:16 2015 +0900

      drm/exynos: stop using sgtable in page fault handler

      Already struct exynos_drm_gem_buf has pages of the buffer when buffer is
      created, so just can use pages in page fault handler, we don't have to
      make sgtable of the buffer. But this needs to construct pages of the
      buffer that is imported from dma-buf prime.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 493f133f47750aa5566fafa9403617e3f0506f8c
  Author: Len Brown <len.brown@xxxxxxxxx>
  Date:   Wed Mar 25 23:20:37 2015 -0400

      intel_idle: Skylake Client Support

      Skylake Client CPU idle Power states (C-states)
      are similar to the previous generation, Broadwell.
      However, Skylake does get its own table with updated
      worst-case latency and average energy-break-even residency values.

      Signed-off-by: Len Brown <len.brown@xxxxxxxxx>

  commit 2b8376c803c4c1c02446520527b31161e8a3c066
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Sat Aug 15 12:14:08 2015 -0300

      drm/exynos: remove struct exynos_drm_encoder layer

      struct exynos_drm_encoder was justing wrapping struct drm_encoder, it had
      only a drm_encoder member and the internal exynos_drm_encoders ops that
      was directly mapped to the drm_encoder helper funcs.

      So now exynos DRM uses struct drm_encoder directly, this removes
      completely the struct exynos_drm_encoder.

      v2: add empty .mode_fixup() and .mode_set() to DSI and DPI to avoid null
      pointer.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 6cf272751be22a9ae6a6a9550854156dd812ff66
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 6 10:31:47 2015 -0300

      drm/exynos: fold encoder setup into exynos_drm_load()

      As we are removing the exynos encoder move the encoder setup operation
      directly inside the exynos_drm_load()

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit a2986e8032bddbe237ed16e2e26c71f5416cd5fd
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 20:24:20 2015 -0300

      drm/exynos: remove exynos_drm_create_enc_conn()

      This functions was just hiding the encoder and connector creation in
      a way that was less clean than if we get rid of it. For example,
      exynos_encoder ops had .create_connector() defined only because we were
      handing off the encoder and connector creation to
      exynos_drm_create_enc_conn(). Without this function we can directly call
      the create_connector function internally in the code, without the need of
      any vtable access.

      It also does some refactoring in the code like creating a bind function
      for dpi devices.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit af8be3f6fe80262f29b5e353421392196ff626f0
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 20:24:19 2015 -0300

      drm/exynos: remove exynos_encoder's .commit() op

      .commit() is not used anymore, Exynos encoders now follow the
      .enable()/.disable() semantics from drm atomic core, so remove this
      callback.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 07fd6e1f9985399f08af0f7981eaed362512a5af
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 20:24:18 2015 -0300

      drm/exynos: remove extra call to exynos_dp_commit()

      exynos_dp_commit() was getting called twice by exynos encoder core, once
      inside the .enable() call and another time by .commit() itself.

      The remove of the second call caused the wake of a bug, the operations
      orders inside exynos_dp_commit was wrong and we had to move
      exynos_dp_start_video() to be the last operation in there.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit c2c099f2d97a039c5e1714c803dd9d20458c388f
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 20:24:17 2015 -0300

      drm/exynos: remove extra call to hdmi_commit()

      hdmi_commit() was getting called twice by exynos encoder core, once inside
      the .enable() call and another time by .commit() itself.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit cf67cc9a29ac19c98bc4fa0e6d14b0c1f592d322
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 11 17:38:06 2015 +0900

      drm/exynos: remove struct exynos_drm_display

      This struct was just representing encoder information, it was a member of
      struct exynos_drm_encoder, so any code trying to access encoder data would
      have to go through the encoder struct, get the display struct and then get
      the data it want.

      During this patchset we also realized that the only data
      exynos_drm_encoder needs to store is the drm_encoder parent and the
      exynos_drm_encoder_ops.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit d1fa72d0a6e70057f6aa0d0f6187e4a49e261fa8
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 20:24:15 2015 -0300

      drm/exynos: simplify calculation of possible CRTCs

      All CRTCs can only be LCD, HDMI or VIDI, so basically all CRTCs will be a
      possible CRTCs. This patch removes an extra function with switch that was
      only checking if the CRTC type was one of those three above.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit a090f45ff0acae51aa0363a72e5c3b47332af9f9
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 20:24:14 2015 -0300

      drm/exynos: remove unused .remove() and .check_mode() ops from display

      These two display_ops are not used anywhere, remove them.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit b6f3c36183470bbbee9da1c0a8cc892e69f88c4f
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 20:24:13 2015 -0300

      drm/exynos: remove wrappers for phy_power_{on,off}

      phy_power_on() and phy_power_off() already checks for NULL pointer.
      This patch removes the wrappers exynos_dp_phy_init() and
      exynos_dp_phy_exit() since the only think they were doing was a check for
      NULL phy.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit b6595dc7e1ccc0964862a5bd436a8f004b36c02f
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 21:37:04 2015 -0300

      drm/exynos: split display's .dpms() into .enable() and .disable()

      The DRM Core doesn't have a dpms() operation anymore, everything
      now is enable() or disable().

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 08dd20099f3ce55a2ded0045b5a087aefea38cd8
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Thu Jul 16 12:23:39 2015 -0300

      drm/exynos: return return value of exynos_crtc->enable_vblank

      Instead of blindly ignore the return value of enable_vblank return it
      to the upper DRM layer for error handling.

      Suggested-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit d88d2463fecb13c67d8eec78c4b61671900deb94
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Thu Jul 16 12:23:38 2015 -0300

      drm/exynos: unify exynos_drm_plane names with drm core

      Rename crtc_{widht,height} to crtc_{w,h} and src_{width,height} to
      src_{w,h} to make it similar to the atomic state names.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit a1bcc9da90ab44d29c38fc6e4a8dba633e97f3f3
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Thu Jul 16 12:23:37 2015 -0300

      drm/exynos: remove unused fields from struct exynos_drm_plane

      Now after the move to use drm_plane_state directly struct drm_plane_state
      has many unused fields, along with others that weren't used before the
      plane state change. Thus remove them all.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 2eeb2e5e6634dbb97bdda81f65f70e4b037028d5
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 3 14:40:44 2015 +0900

      drm/exynos: use drm atomic state directly

      For some fields the use of struct exynos_drm_plane filled with data from
      the plane state just creates a source of duplicated information and
      overhead.  Here we change the crtc drivers to access the plane state
      directly simplifying the code by not relying on a exynos internal struct.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 1e1d13932283419ddfdb60c73319cc0e753ded5b
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 3 14:39:36 2015 +0900

      drm/exynos: pass struct exynos_drm_plane in update/enable

      We already have the plane pointer in before calling .update_plane() or
      disable_plane() so pass it directly to those calls avoiding a new
      conversion from zpos to struct exynos_drm_plane.

      v2: don't remove check for suspended in FIMD (comment by Joonyoung)

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 9cc7610a2375a94ec967f771ce74b51db0d43d1c
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 3 14:38:05 2015 +0900

      drm/exynos: rename win_commit/disable to atomic-like names

      Rename win_commit() helper to update_plane() and win_disable() to
      disable_plane().

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit f59a89d05f1290d0cdaa588d29871e05cdec159b
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Thu Jul 16 12:23:33 2015 -0300

      drm/exynos: remove duplicated check for suspend

      The same check is placed twice in fimd/decon_update_plane(), remove
      one of them.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit eafd540aeaae6f1c4d04fdf3959419716d23cdc5
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Thu Jul 16 12:23:32 2015 -0300

      drm/exynos: use KMS version of DRM vblanks functions

      Get rid of legacy DRM vblank function that are less clear to use.
      The new ones basically requires only the crtc as parameters.

      It also clean ups exynos_drm_crtc_finish_pageflip() parameters as a
      consequence.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 451a8c0c59b3feebb5bf6a1ce1335e9f3e428355
  Author: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
  Date:   Thu Jul 16 12:23:31 2015 -0300

      drm/exynos: pass the correct pipe number

      Instead of giving -1 to as arg to  drm_send_vblank_event() pass the
      correct pipe number to it.

      Signed-off-by: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 43a3b866a9e73e9bd215ec3f36c71e42469e70c6
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Tue Jul 28 17:51:02 2015 +0900

      drm/exynos: clear channels only when iommu is enabled

      This is simplest solution about reported problem[1]. It's no problem to
      clear channel only when iommu is enabled, if we consider that we cannot
      recognize iommu errors when iommu is disabled and it have been valid
      until now. But this cannot be nice solution.

      [1] https://lkml.org/lkml/2015/7/21/404

      Reported-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit eb7a3fc74c58be9c01cdbe23947ae9eb032e8365
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Thu Jul 2 21:49:39 2015 +0900

      drm/exynos: remove drm_iommu_attach_device_if_possible

      Already drm_iommu_attach_device checks whether support iommu internally.
      It should clear channels always regardless iommu support. We didn't know
      because we can detect the problem when iommu is enabled, so we don't
      have to use drm_iommu_attach_device_if_possible and then we can remove
      drm_iommu_attach_device_if_possible and clear_channels function pointer.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Tested-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 735c21c3c802e9e89ce302ab40ea92f5d1151e02
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Wed Jul 15 12:04:39 2015 +0900

      drm/exynos: move order to register vidi kms driver

      The vidi is virtual kms driver and now it is registered earlier than
      actual hw kms drivers, so it will occupy crtc index 0. Some users
      assume the condition yet that actual hw kms driver has crtc index 0.
      It may or may not be matter but let's arrange register order.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 0df5e4acf584ad1b1b5689d283e1e81655eefab1
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Thu Jul 9 08:25:43 2015 +0200

      drm/exynos/mixer: replace MXR_INT_EN register cache with flag

      Driver uses only VSYNC interrupts, so we need to cache VSYNC bit state 
only.

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit a44652e845739b88214adf9f40478f1ed037348d
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Thu Jul 9 08:25:42 2015 +0200

      drm/exynos/mixer: simplify poweron flag

      The driver uses bool protected by mutex to track power state.
      The patch replaces this combo with single bit and atomic bitops.

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit bf56608a73444037d6960204d81662ccbdebe282
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Thu Jul 2 21:49:38 2015 +0900

      drm/exynos: remove unnecessary checking to support iommu

      Already drm_iommu_attach_device and drm_iommu_detach_device check
      whether support iommu internally, so we don't have to call
      is_drm_iommu_supported before call them.

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Tested-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit b24919575ea26937013a4380a604c4e8c0a71c81
  Author: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
  Date:   Thu Jul 2 21:49:37 2015 +0900

      drm/exynos: remove to use ifdef CONFIG_ARM_DMA_USE_IOMMU

      If CONFIG_ARM_DMA_USE_IOMMU is disable, CONFIG_DRM_EXYNOS_IOMMU also is
      disable. When CONFIG_DRM_EXYNOS_IOMMU is disable,
      is_drm_iommu_supported() returns always false, so we can remove to use
      ifdef CONFIG_ARM_DMA_USE_IOMMU in is_drm_iommu_supported().

      Signed-off-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Tested-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 5149705dacfb24406634d2060880cd5605772540
  Author: Hyungwon Hwang <human.hwang@xxxxxxxxxxx>
  Date:   Wed Jul 1 19:09:25 2015 +0900

      drm/exynos: gsc: Handles the combination of rotation and flip

      The unique results of all the combination of rotation and flip can
      be represented by just 8 states. This patch handles all the combination
      correctly.

      Signed-off-by: Hyungwon Hwang <human.hwang@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 7b5102da0a9f008a5d59fa4e3cd9e6006848f3bd
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Thu Jul 9 16:28:12 2015 +0200

      drm/exynos/hdmi: remove hdmi_v14_conf struct

      The patch removes intermediate struct for HDMIv14 register configuration,
      instead registry values are calculated on the fly.

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit edb6e41201c626439a8f3687a0cc81c0d1f13c84
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Thu Jul 9 16:28:11 2015 +0200

      drm/exynos/hdmi: remove hdmi_v13_conf struct

      The patch removes intermediate struct for HDMIv13 register configuration,
      instead registry values are calculated on the fly.

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit c93aaebfd1945fd0c3efacad001906dd6bcbb3df
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Thu Jul 9 16:28:10 2015 +0200

      drm/exynos/hdmi: remove redundant configuration fields

      The patch removes redundant fields from hdmi_conf_regs. Their values
      can be calculated from current_mode. This patch is the first step to 
remove
      whole hdmi_conf_regs structure.

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit cd240cde91fa637449b564c08b31030073769ad7
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Thu Jul 9 16:28:09 2015 +0200

      drm/exynos/hdmi: add driver data pointer to private context

      The patch replaces duplicated driver data fields in private context with
      pointer to driver data. It also simplifies driver data lookup code.

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 882a0644fd3427a17d80ad14d1ca3a6228a3860f
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Thu Jul 9 16:28:08 2015 +0200

      drm/exynos/hdmi: remove private lock code

      Most of the code is called by drm core framework, so it is already 
synchronized.
      The only async function is irq routine which only calls drm framework so 
it
      does not need to be synchronized.

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit ef6ce28bc7c529d4d0b8c699d26fb568208bc305
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Thu Jul 9 16:28:07 2015 +0200

      drm/exynos/hdmi: Simplify HPD gpio handling

      GPIO is tested only in hdmi_detect, so there is no reason to set it in
      other places and to preserve its value in context.

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit d36b3004ca2c99f39e9691ad8a10c02803ad28fc
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Thu Jul 9 16:28:06 2015 +0200

      drm/exynos/hdmi: remove old platform data code

      s5p_hdmi_platform_data were used before device tree introduction.
      As HDMI driver is DT only we can drop this struct completely.

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit e920efe6fe06b3d4a181a00c54ae00ee83545992
  Author: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
  Date:   Thu Apr 9 10:46:00 2015 +0200

      drm/exynos/fimc: fix runtime pm support

      Once pm_runtime_set_active() gets called, the kernel assumes that given
      device has already enabled runtime pm and will call pm_runtime_suspend()
      without matching pm_runtime_resume(). In case of DRM FIMC IPP driver,
      this will result in calling clk_disable() without respective call to
      clk_enable(). This patch removes call to pm_runtime_set_active() to
      ensure that pm_runtime_suspend/resume calls will match.

      Signed-off-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 947710c6702a4916a7a01b3af4decb66ae7fc34f
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Thu Jul 9 08:25:41 2015 +0200

      drm/exynos/mixer: always update INT_EN cache

      INT_EN cache field was updated only by mixer_enable_vblank.
      The patch adds update also by mixer_disable_vblank function.

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit fc073248ceb56af8cedebff36bf1cdc5da3c6847
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Thu Jul 9 08:25:40 2015 +0200

      drm/exynos/mixer: correct vsync configuration sequence

      Specification advises to clear vsync indicator before configuring vsync.

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 81a464df5c5cdb47c2c5e271f7440e011d694018
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Thu Jul 9 10:07:53 2015 +0200

      drm/exynos/mixer: fix interrupt clearing

      The driver used incorrect flags to clear interrupt status.
      The patch fixes it.

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 64ebd8904fab29ee0b76f923aac77da5caa0437d
  Author: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
  Date:   Thu Jul 9 08:25:38 2015 +0200

      drm/exynos/hdmi: fix edid memory leak

      edid returned by drm_get_edid should be freed.
      The patch fixes it.

      Signed-off-by: Andrzej Hajda <a.hajda@xxxxxxxxxxx>
      Reviewed-by: Joonyoung Shim <jy0922.shim@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit 988a47311952db42b3bf84be0dd515ca7d86aaa3
  Author: Hyungwon Hwang <human.hwang@xxxxxxxxxxx>
  Date:   Wed Jul 1 19:09:24 2015 +0900

      drm/exynos: gsc: fix wrong bitwise operation for swap detection

      The bits for rotation are not used as exclusively. So GSC_IN_ROT_270 can
      not be used for swap detection. The definition of it is same with
      GSC_IN_ROT_MASK. It is enough to check GSC_IN_ROT_90 bit is set or not to
      check whether width / height size swapping is needed.

      Signed-off-by: Hyungwon Hwang <human.hwang@xxxxxxxxxxx>
      Signed-off-by: Inki Dae <inki.dae@xxxxxxxxxxx>

  commit d248b61f611463cca906d5663a9a0de63ade97a9
  Author: Hai Li <hali@xxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:49:29 2015 -0400

      drm/msm/dsi: Introduce DSI configuration module

      With more platforms supported, the DSI host
      configuration array keeps expanding. This change
      moves those to a separate dsi_cfg module.

      Signed-off-by: Hai Li <hali@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 1bf4d7c5651a7cfcdcd77389b42d266441ecf444
  Author: Hai Li <hali@xxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:45:53 2015 -0400

      drm/msm/dsi: Make each PHY type compilation independent

      On a certain platform, only one type of DSI PHY is used.
      This change allows the user to only compile the PHY type
      which is being used.

      Signed-off-by: Hai Li <hali@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 5c8290284402bf7d2c12269402b3177b899c78b7
  Author: Hai Li <hali@xxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:45:52 2015 -0400

      drm/msm/dsi: Split PHY drivers to separate files

      This change moves each PHY type specific code into
      separate files.

      Signed-off-by: Hai Li <hali@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 29e61690130adb1c27053558d2f21af88ae0334e
  Author: Hai Li <hali@xxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:45:51 2015 -0400

      drm/msm/dsi: Return void from msm_dsi_phy_disable()

      We are not checking the return value from msm_dsi_phy_disable().
      Change the return type to void.

      Signed-off-by: Hai Li <hali@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit fae11c1106ad8304c09e3b9bf95dd6d03f4a5afa
  Author: Hai Li <hali@xxxxxxxxxxxxxx>
  Date:   Thu Aug 13 17:45:50 2015 -0400

      drm/msm/dsi: Specify bitmask to set source PLL

      The bit position to configure source PLL will change
      on new types of PHYs. The caller should pass down
      this information.

      Signed-off-by: Hai Li <hali@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 29f034d776209042f7aaaf1518a66841c1d42233
  Author: jilai wang <jilaiw@xxxxxxxxxxxxxx>
  Date:   Wed Aug 5 15:33:29 2015 -0400

      drm/msm/mdp: Clear pending interrupt status before enable interrupt

      Pending interrupt status needs to be cleared before enable the
      interrupt. Otherwise it's possible to get a pending interrupt instead
      of an incoming interrupt.

      Signed-off-by: Jilai Wang <jilaiw@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 8089082fae1975ad9d5abbd37c0ee8f688be28a0
  Author: jilai wang <jilaiw@xxxxxxxxxxxxxx>
  Date:   Fri Jul 31 10:13:26 2015 -0400

      drm/msm/mdp5: Add rotation (hflip/vflip) support to MDP5 planes (v2)

      MDP5 SSPPs can flip the input source horizontally or vertically.
      This change is to add this support to MDP5 planes.

      v1: Initial change
      v2: Use existing "rotation" property instead of creating msm specific
          properties. In order to be compatiable with legacy non-atomic
          set_property, switch to drm_atomic_helper_plane_set_property
          helper function.

      Signed-off-by: Jilai Wang <jilaiw@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 095022b9aa0546a0f3d3fb5f42c82b4004103864
  Author: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx>
  Date:   Mon Jul 27 15:12:39 2015 +0100

      drm/msm: add calls to prepare and unprepare panel

      Prepare the panel before it's enabled and un-prepare after disable, this
      will make sure that the regulators are switched on and off correctly.

      Tested it on APQ8064 based IFC6410 with panel.

      Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 09992e4d46935798b4a1cf3a734e6a0f3470f107
  Author: Archit Taneja <architt@xxxxxxxxxxxxxx>
  Date:   Mon Aug 3 14:09:36 2015 +0530

      drm/msm/dsi: Modify dsi manager bridge ops to work with external bridges

      The dsi bridge ops call drm_panel functions to set up the connected
      drm_panel. Add checks to make sure these aren't called when we're
      connected to an external bridge.

      Signed-off-by: Archit Taneja <architt@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit c118e29033aa5b38b593ebd0e02f8b1224c20ed3
  Author: Archit Taneja <architt@xxxxxxxxxxxxxx>
  Date:   Fri Jul 31 14:06:10 2015 +0530

      drm/msm/dsi: Allow dsi to connect to an external bridge

      There are platforms where the DSI output can be connected to another
      encoder bridge chip (DSI to HDMI, DSI to LVDS etc).

      Add support for external bridge support to the dsi driver. We assume that
      the external bridge chip would be of the type drm_bridge. The dsi driver's
      internal drm_bridge (msm_dsi->bridge) is linked to the external bridge's
      drm_bridge struct.

      In the case we're connected to an external bridge, we don't need to create
      and manage a connector within our driver, it's the bridge driver's
      responsibility to create one.

      v2:
      - Move the external bridge attaching stuff to dsi manager to make things
        cleaner.
      - Force the bridge to connect to a video mode encoder for now (the dsi
        mode flags may have not been populated by modeset_init)

      Signed-off-by: Archit Taneja <architt@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 6f054ec5b9ced3041f29541ae79402198678fc06
  Author: Archit Taneja <architt@xxxxxxxxxxxxxx>
  Date:   Mon Aug 3 14:08:33 2015 +0530

      drm/msm/dsi: Create a helper to check if there is a connected device

      Create a helper msm_dsi_device_connected() which checks whether we have a
      device connected to the dsi host or not. This check gets messy when we
      have support external bridges too. Having an inline function makes it
      more legible.

      For now, the check only consists of msm_dsi->panel being non-NULL. Later,
      this will check if we have an external bridge or not.

      This helper isn't used in dsi_connector related code as that's specific
      to only when a drm_panel is connected.

      Signed-off-by: Archit Taneja <architt@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit a9ddac9c5765712fa7eace55feeaf7c4ac75e32b
  Author: Archit Taneja <architt@xxxxxxxxxxxxxx>
  Date:   Mon Aug 3 14:05:45 2015 +0530

      drm/msm/dsi: Refer to connected device as 'device' instead of 'panel'

      We currently support only panels connected to dsi output. We're going to
      also support external bridge chips now.

      Change 'panel_node' to 'device_node' in the struct msm_dsi_host and
      'panel_flags' to 'device_flags' in msm_dsi. This makes things sound a
      bit more generic.

      Signed-off-by: Archit Taneja <architt@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 60d05cb4eabcfcab00784677c2a55ed1b9bda2ec
  Author: Archit Taneja <architt@xxxxxxxxxxxxxx>
  Date:   Thu Jun 25 14:36:35 2015 +0530

      drm/msm/dsi: Make TE gpio optional

      Platforms containing only DSI video mode devices don't need a TE gpio.
      Make TE gpio optional.

      Signed-off-by: Archit Taneja <architt@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 3d6df06249277aabaf895951855c4ed704b038bb
  Author: Archit Taneja <architt@xxxxxxxxxxxxxx>
  Date:   Tue Jun 9 14:17:22 2015 +0530

      drm/msm: mdp4 lvds: get panel node via of graph parsing

      We currently get the output connected to LVDS by looking for a phandle
      called 'qcom,lvds-panel' under the mdp DT node.

      Use the more standard of_graph approach to create an lvds output port,
      and retrieve the panel node from the port's endpoint data.

      v3
      - Fix return value checks of of_graph_* calls.

      Tested-by: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx>
      Signed-off-by: Archit Taneja <architt@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit f7009d266d8b2f4b54da42399aaa536d74fe3e7c
  Author: Archit Taneja <architt@xxxxxxxxxxxxxx>
  Date:   Thu Jun 25 11:43:40 2015 +0530

      drm/msm: dsi host: Use device graph parsing to parse connected panel

      The dsi host looks for the connected panel node by parsing for a child
      named 'panel'. This hierarchy isn't very flexible. The connected
      panel is forced to be a child to the dsi host, and hence, a mipi dsi
      device. This isn't suitable for dsi devices that don't use mipi dsi
      as their control bus.

      Follow the of_graph approach of creating ports and endpoints to
      represent the connections between the dsi host and the panel connected
      to it. In our case, the dsi host will only have one output port, linked
      to the panel's input port.

      Update DT binding documentation with device graph usage info.

      v3:
      - Fix return value checks of of_graph_* calls.
      - Don't make port a mandatory DT property
      - Fix defer check when no panel node specified
      - Rename parse_dt func to align with other dsi_host funcs

      Reviewed-by: Hai Li <hali@xxxxxxxxxxxxxx>
      Signed-off-by: Archit Taneja <architt@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 14bb28b0f91f868f081f71eb0c7b590e13527c3c
  Author: Archit Taneja <architt@xxxxxxxxxxxxxx>
  Date:   Thu Jun 4 15:01:57 2015 +0530

      drm/msm: dsi host: add missing of_node_put()

      Decrement device node refcount if of_get_child_by_name is successfully
      called.

      Signed-off-by: Archit Taneja <architt@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 78b1d470d57dd7a6e0efda63ebad97f0d44e817c
  Author: Hai Li <hali@xxxxxxxxxxxxxx>
  Date:   Mon Jul 27 13:49:45 2015 -0400

      drm/msm: Enable clocks during enable/disable_vblank() callbacks

      AHB clock should be enabled before accessing registers during
      enable/disable_vblank(). Since these 2 callbacks are called in
      atomic context while clk_prepare may cause thread sleep, a work
      is scheduled to control vblanks.

      v2: fixup spinlock initialization

      Signed-off-by: Hai Li <hali@xxxxxxxxxxxxxx>
      [add comment about cancel_work_sync() before drm_irq_uninstall()]
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 8a94b0aa372ebf7375c8ea861cb9bbf84b39d2df
  Author: jilai wang <jilaiw@xxxxxxxxxxxxxx>
  Date:   Wed Jul 8 18:25:40 2015 -0400

      drm/msm/mdp5: Add support for msm8x74v1

      msm8x74v1 has different MDP5 version (v1.0) from msm8x74v2 (v1.2).
      Add a separate config data to support msm8x74v1.

      Signed-off-by: Jilai Wang <jilaiw@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 8155ad4ce67d2f3418a4a72144c10114d21f0ece
  Author: jilai wang <jilaiw@xxxxxxxxxxxxxx>
  Date:   Tue Jul 7 17:17:28 2015 -0400

      drm/msm/mdp5: Add DMA pipe planes for MDP5

      This change is to add planes which use DMA pipes for MDP5.

      Signed-off-by: Jilai Wang <jilaiw@xxxxxxxxxxxxxx>
      [slight comment adjust to s/Construct public planes/Construct video
      planes/ since DMA planes are public planes too, they just can't scale
      or CSC]
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 3498409f0315b93f969f87c31d014a9819f6fa7d
  Author: jilai wang <jilaiw@xxxxxxxxxxxxxx>
  Date:   Wed Jul 8 18:12:40 2015 -0400

      drm/msm/mdp: Add capabilities to MDP planes (v2)

      MDP planes can be implemented using different type of HW pipes,
      RGB/VIG/DMA pipes for MDP5 and RGB/VG/DMA pipes for MDP4. Each type
      of pipe has different HW capabilities such as scaling, color space
      conversion, decimation... Add a variable in plane data structure
      to specify the difference of each plane which comes from mdp5_cfg data
      and use it to differenciate the plane operation.
      V1: Initial change
      V2: Fix a typo in mdp4_kms.h

      Signed-off-by: Jilai Wang <jilaiw@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit bef799fb77dc30d32362b6850e997f1c29fc99eb
  Author: Stephane Viau <sviau@xxxxxxxxxxxxxx>
  Date:   Mon Jul 6 16:35:31 2015 -0400

      drm/msm/mdp5: add more YUV formats for MDP5

      Add packed YUV422 and planar YUV420 formats to MDP supported
      formats.

      Signed-off-by: Stephane Viau <sviau@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 9cc137a3ffa3162a0d5af822149a5cec1b42c24e
  Author: Wentao Xu <wentaox@xxxxxxxxxxxxxx>
  Date:   Mon Jul 6 16:35:30 2015 -0400

      drm/msm/mdp5: use 2 memory clients for YUV formats on newer mdp5

      Newer MDP5 uses 2 shared memory pool clients for certain YUV formats.
      For example, if VIG0 is used to fetch data in YUYV format, it will use
      VIG0_Y for Y component, and VIG0_Cr for UV packed.

      Signed-off-by: Wentao Xu <wentaox@xxxxxxxxxxxxxx>
      [rebase]
      Signed-off-by: Stephane Viau <sviau@xxxxxxxxxxxxxx>

  commit ff78a6b3771f48d1d5585e5d08ab4ae6fd606ab0
  Author: Wentao Xu <wentaox@xxxxxxxxxxxxxx>
  Date:   Mon Jul 6 16:35:29 2015 -0400

      drm/msm/mdp: mark if a MDP format is YUV at definition

      This makes it easy to determine if a format is YUV. The old
      method of using chroma sample type incorrectly marks YUV444 as
      RGB format.

      Signed-off-by: Wentao Xu <wentaox@xxxxxxxxxxxxxx>
      [rebase]
      Signed-off-by: Stephane Viau <sviau@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 02b3ee466443ba6780562fb2af5fe0ad5bf059f6
  Author: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
  Date:   Mon Jul 6 11:09:41 2015 +0200

      drm/msm/dp: use flags argument of devm_gpiod_get to set direction

      Since 39b2bbe3d715 (gpio: add flags argument to gpiod_get*() functions)
      which appeared in v3.17-rc1, the gpiod_get* functions take an additional
      parameter that allows to specify direction and initial value for output.

      Use this to simplify the driver. Furthermore this is one caller less
      that stops us making the flags argument to gpiod_get*() mandatory.

      Acked-by: Alexandre Courbot <acourbot@xxxxxxxxxx>
      Acked-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 328e1a633c9bc26c36ecd320246e4a9b2726e81a
  Author: Hai Li <hali@xxxxxxxxxxxxxx>
  Date:   Fri Jul 3 10:09:46 2015 -0400

      drm/msm/dsi: Save/Restore PLL status across PHY reset

      Reset DSI PHY silently changes its PLL registers to reset status,
      which will make cached status in clock driver invalid and result
      in wrong output rate of link clocks. The current restore mechanism
      in DSI PLL does not cover all the cases. This change is to recover
      PLL status after PHY reset to match HW status with cached status
      in clock driver.

      Signed-off-by: Hai Li <hali@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit da882cd1ee132ecbb4a4848a6b0797ea2ed4bee7
  Author: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Jun 27 22:23:28 2015 +0200

      drm/msm/dsi: One function call less in dsi_init() after error detection

      The dsi_destroy() function was called in two cases by the dsi_init() 
function
      during error handling even if the passed variable contained a null 
pointer.

      * This implementation detail could be improved by adjustments for jump
        targets according to the Linux coding style convention.

      * Drop an unnecessary initialisation for the variable "msm_dsi" then.

      Signed-off-by: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
      [add couple missing ERR_PTR()'s]
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit a60bbb2764b73a3f54c7462f3d28f960b7811682
  Author: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Sat Jun 27 22:05:31 2015 +0200

      drm/msm/dsi: Delete an unnecessary check before the function call 
"dsi_destroy"

      The dsi_destroy() function tests whether its argument is NULL and then
      returns immediately. Thus the test around the call is not needed.

      This issue was detected by using the Coccinelle software.

      Signed-off-by: Markus Elfring <elfring@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit b96b3a06d1211ba86674db99a6aafe39ef4cbed2
  Author: Hai Li <hali@xxxxxxxxxxxxxx>
  Date:   Fri Jun 26 16:03:26 2015 -0400

      drm/msm/mdp5: Allocate CTL0/1 for dual DSI single FLUSH

      This change takes advantage of a HW feature that synchronize
      flush operation on CTL1 to CTL0, to keep dual DSI pipes in
      sync.

      Signed-off-by: Hai Li <hali@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit c71716b17bc772e9c38f85a4b496bbfac0dd32f0
  Author: Hai Li <hali@xxxxxxxxxxxxxx>
  Date:   Fri Jun 26 16:03:25 2015 -0400

      drm/msm/mdp5: Allocate CTL for each display interface

      In MDP5, CTL contains information of the whole pipeline whose
      output goes down to a display interface. In various cases, one
      interface may require 2 CRTCs, but only one CTL. Some interfaces
      also require to use certain CTLs.

      Instead of allocating CTL for each active CRTC, this change is to
      associate a CTL with each interface.

      Signed-off-by: Hai Li <hali@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 129877819c0a5f8d419fe67ae08a8a7c811afa5e
  Author: jilai wang <jilaiw@xxxxxxxxxxxxxx>
  Date:   Thu Jun 25 17:37:42 2015 -0400

      drm/msm/mdp5: Add plane blending operation support for MDP5 (v2)

      This change is to add properties alpha/zpos/blend_mode to mdp5 plane
      for alpha blending operation to generate the blended output.
      v1: Initial change
      v2: Change "premultilied" property to enum (Rob's comment)

      Signed-off-by: Jilai Wang <jilaiw@xxxxxxxxxxxxxx>
      [Don't actually expose alpha/premultiplied props to userspace yet
      pending a chance for discussion and some userspace to exercise it]
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 4ff696eafaa50d6d649d256d20528b475104a500
  Author: Rob Clark <robdclark@xxxxxxxxx>
  Date:   Tue Jul 28 11:05:03 2015 -0400

      drm/msm: don't install plane properties on crtc

      This was a hold-over from the pre-atomic days and legacy userspace that
      only understood CRTCs.  Fortunately we don't have any properties, so
      this doesn't change anything.  But before we start growing some plane
      properties, we should fix this.

      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 01199361c665245d557b8eefef56d648ddb3867a
  Author: Archit Taneja <architt@xxxxxxxxxxxxxx>
  Date:   Thu Jun 25 11:29:24 2015 +0530

      drm/msm/dsi: Report PHY errors only when they really occur

      DSI PHY errors are falsely reported whenever a dsi error occurs. This is
      because DSI_DLN0_PHY_ERR isn't only used as a status register, but also
      used to mask PHY errors. Currently, we end up reading the mask bits too
      and therefore always report errors.

      Ignore the register mask bits and check for only the status/clear bits.

      Signed-off-by: Archit Taneja <architt@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 9b7a9fc29a48026d797cbf237121850c1c241df4
  Author: Hai Li <hali@xxxxxxxxxxxxxx>
  Date:   Wed Jun 24 19:13:40 2015 -0400

      drm/msm: Set different display size limitation on each target

      The maximum output width of one pipeline depends on the LayerMixer's
      capability. It may be different on each target. Also, MDP5 doesn't
      have vertical limitation in one frame, as long as the pixel clock
      can be supported.

      This change obtains the maximum LM resolution from configuration
      table and treat it as the whole pipe's limitation for MDP5. The size
      limit on MDP4 is not changed.

      Signed-off-by: Hai Li <hali@xxxxxxxxxxxxxx>

  commit 5cf3a4553fc8395c4ad38077f8cee6c91f832393
  Author: Rob Clark <robdclark@xxxxxxxxx>
  Date:   Mon Jul 27 20:52:50 2015 -0400

      drm/msm/hdmi: standardize on lead chip for compatible names

      For all of these devices, msm89xy was the lead chip, so standardize the
      compatible names to align with convention used by rest of the qcom/msm
      drivers.

      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 3a84f8469e2687b9fdcf83d615b8001a2443566a
  Author: Stephane Viau <sviau@xxxxxxxxxxxxxx>
  Date:   Fri Jun 19 16:04:47 2015 -0400

      drm/msm: Add support for msm8x94

      This change adds the MDP and HDMI support for msm8x94.
      Note that HDMI PHY registers are not being accessed anymore from
      the driver.

      Signed-off-by: Stephane Viau <sviau@xxxxxxxxxxxxxx>
      [rename compatible s/8x94/8994/ since preference is to not trust the
      marketing folks who invent chip #'s but instead name things after the
      lead chip.. we should rename some 80XY to 89XY to standardize on the
      lead chip but leave that for another patch.  Also, update dt bindings
      doc]
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit da32855219f86f27cad1b12be2264ffb0b97b9fa
  Author: Stephane Viau <sviau@xxxxxxxxxxxxxx>
  Date:   Fri Jun 19 16:04:46 2015 -0400

      drm/msm/hdmi: remove ->reset() from HDMI PHY

      ->reset() currently only accesses HDMI core registers, and yet it
      is located in hdmi_phy*. Since no PHY registers are being
      accessed during ->reset(), it would be better to bring that
      function in hdmi core module where HDMI core registers are
      usually being accessed.

      This will also help for msm8x94 for which no PHY registers
      accesses are done (->phy_init == NULL) but the HDMI PHY reset
      from HDMI core still needs to be done.

      Note:
      SW_RESET_PLL bit is not written in hdmi_phy_8x60_reset(); this
      write should not affect anything if the corresponding field is
      not writable.

      Signed-off-by: Stephane Viau <sviau@xxxxxxxxxxxxxx>
      [fixed warning about unused 'phy' in hpd_enable() while merging]
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit dcefc117cc192f215d04c4e7cbae6b76a9bafcf4
  Author: Hai Li <hali@xxxxxxxxxxxxxx>
  Date:   Thu Jun 18 10:14:21 2015 -0400

      drm/msm/dsi: Add support for msm8x94

      DSI controller on msm8x94 is version 1.3, which requires different
      power supplies and works with 20nm DSI PHY. This change is to add
      the basic support for this version.

      Signed-off-by: Hai Li <hali@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit ab8909b032ffccc15384879dd5798b8647d6ab8a
  Author: Hai Li <hali@xxxxxxxxxxxxxx>
  Date:   Thu Jun 11 10:56:46 2015 -0400

      drm/msm/dsi: Use pinctrl in DSI driver

      Some targets use pinctrl framework to configure some
      pins. This change allows DSI driver to set default and
      sleep pinctrl status.

      Signed-off-by: Hai Li <hali@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 678565c3cb2100a8f03c23592f13f6b78e69a590
  Author: Hai Li <hali@xxxxxxxxxxxxxx>
  Date:   Wed Jun 10 13:18:18 2015 -0400

      drm/msm/dsi: Rename *dual panel* to *dual DSI*

      The current term of *dual panel* in DSI driver code causes confusion.
      It is supposed to indicate the panel using two DSI links. Rename it
      to *dual DSI*.

      Signed-off-by: Hai Li <hali@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 13351cd17791694f2dcc96dc920e58b090b18c31
  Author: Hai Li <hali@xxxxxxxxxxxxxx>
  Date:   Wed Jun 10 13:18:17 2015 -0400

      drm/msm/dsi: Update source PLL selection in DSI PHY

      The source PLL to be used by each DSI PHY should be decided by
      DSI manager based on dual DSI information, while the register
      programming to select PLL is different from one type of PHY to
      another. This change adds the H/W difference to PHY configuration
      and updates the interface between DSI manager and PHY.

      With this change, PLL selection can be supported on different
      targets.

      Signed-off-by: Hai Li <hali@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit c6a57a50ad562a2e6fc6ac3218b710caea73a58b
  Author: jilai wang <jilaiw@xxxxxxxxxxxxxx>
  Date:   Thu Apr 2 17:49:01 2015 -0400

      drm/msm/hdmi: add hdmi hdcp support (V3)

      Add HDMI HDCP support including HDCP PartI/II/III authentication.
      V1: Initial Change
      V2: Address Bjorn&Rob's comments
          Refactor the authentication process to use single work instead
          of multiple work for different authentication stages.
      V3: Update to align with qcom SCM api.

      Signed-off-by: Jilai Wang <jilaiw@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 2d3584eb871da2a6fa72e3d50781f33b0312589a
  Author: Rob Clark <robdclark@xxxxxxxxx>
  Date:   Mon Jul 27 19:37:12 2015 -0400

      drm/msm: update generated headers

      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit c0015bf3a34961342a27b021672049e535ab36a1
  Author: Alexander Aring <alex.aring@xxxxxxxxx>
  Date:   Sat Aug 15 11:00:33 2015 +0200

      ieee802154: 6lowpan: fix non-lowpan wpan interfaces

      We receive all 802.15.4 frames on the packet handler "lowpan_rcv" this
      patch checks if the wpan device belongs to a lowpan interface.

      Signed-off-by: Alexander Aring <alex.aring@xxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>

  commit 0751272880f3a0c74c786ecfaba2b3d98748482f
  Author: Alexander Aring <alex.aring@xxxxxxxxx>
  Date:   Sat Aug 15 11:00:32 2015 +0200

      ieee802154: 6lowpan: fix packet layer registration

      This patch fixes 802.15.4 packet layer registration when mutliple
      lowpan interfaces will be added. We need to register the packet layer at
      the first lowpan interface and deregister it at the last interface. This
      done by open_count variable which is protected by rtnl.

      Additional do a quiet fix by adding dev_put(real_dev) when netdev
      registration fails, which fix the refcount for the wpan dev.

      Signed-off-by: Alexander Aring <alex.aring@xxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>

  commit 4481c0767e52eea674794de4b9123c9bc3d24f24
  Author: Peter Poklop <peter.poklop@xxxxxxxxx>
  Date:   Sat Aug 15 20:47:09 2015 +0200

      Bluetooth: btusb: mark 0c10:0000 devices with BTUSB_SWAVE

      This patch enables quirk handling for Silicon Wave based devices and
      fixes kernel bug with id 42985.

      T:  Bus=01 Lev=01 Prnt=01 Port=07 Cnt=04 Dev#=  6 Spd=12   MxCh= 0
      D:  Ver= 1.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
      P:  Vendor=0c10 ProdID=0000 Rev=15.00
      S:  Manufacturer=SiW
      S:  Product=SiW
      S:  SerialNumber=340A05F61100
      C:* #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr= 50mA
      I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=81(I) Atr=03(Int.) MxPS=  16 Ivl=1ms
      E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
      E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
      I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=   0 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=   0 Ivl=1ms
      I:  If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=   9 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=   9 Ivl=1ms
      I:  If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=  17 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=  17 Ivl=1ms
      I:  If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=  25 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=  25 Ivl=1ms
      I:  If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=  33 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=  33 Ivl=1ms
      I:  If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=  49 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=  49 Ivl=1ms

      Signed-off-by: Peter Poklop <peter.poklop@xxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>

  commit e294a5371b2e0bd22d4a917d4c354a52a7057b6e
  Author: Theodore Ts'o <tytso@xxxxxxx>
  Date:   Sat Aug 15 14:59:44 2015 -0400

      ext4: ratelimit the file system mounted message

      The xfstests ext4/305 will mount and unmount the same file system over
      4,000 times, and each one of these will cause a system log message.
      Ratelimit this message since if we are getting more than a few dozen
      of these messages, they probably aren't going to be helpful.

      Signed-off-by: Theodore Ts'o <tytso@xxxxxxx>

  commit 50e0ee01382b8e08289d3db209738c5856fd25cf
  Author: Zidan Wang <zidan.wang@xxxxxxxxxxxxx>
  Date:   Fri Aug 14 19:11:09 2015 +0800

      ASoC: fsl-asoc-card: add wm8960 support

      add wm8960 support for fsl-asoc-card

      Signed-off-by: Zidan Wang <zidan.wang@xxxxxxxxxxxxx>
      Acked-by: Nicolin Chen <nicoleotsuka@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 0048b4837affd153897ed1222283492070027aa9
  Author: Ming Lei <ming.lei@xxxxxxxxxxxxx>
  Date:   Sun Aug 9 03:41:51 2015 -0400

      blk-mq: fix race between timeout and freeing request

      Inside timeout handler, blk_mq_tag_to_rq() is called
      to retrieve the request from one tag. This way is obviously
      wrong because the request can be freed any time and some
      fiedds of the request can't be trusted, then kernel oops
      might be triggered[1].

      Currently wrt. blk_mq_tag_to_rq(), the only special case is
      that the flush request can share same tag with the request
      cloned from, and the two requests can't be active at the same
      time, so this patch fixes the above issue by updating tags->rqs[tag]
      with the active request(either flush rq or the request cloned
      from) of the tag.

      Also blk_mq_tag_to_rq() gets much simplified with this patch.

      Given blk_mq_tag_to_rq() is mainly for drivers and the caller must
      make sure the request can't be freed, so in bt_for_each() this
      helper is replaced with tags->rqs[tag].

      [1] kernel oops log
      [  439.696220] BUG: unable to handle kernel NULL pointer dereference at 
0000000000000158^M
      [  439.697162] IP: [<ffffffff812d89ba>] blk_mq_tag_to_rq+0x21/0x6e^M
      [  439.700653] PGD 7ef765067 PUD 7ef764067 PMD 0 ^M
      [  439.700653] Oops: 0000 [#1] PREEMPT SMP DEBUG_PAGEALLOC ^M
      [  439.700653] Dumping ftrace buffer:^M
      [  439.700653]    (ftrace buffer empty)^M
      [  439.700653] Modules linked in: nbd ipv6 kvm_intel kvm serio_raw^M
      [  439.700653] CPU: 6 PID: 2779 Comm: stress-ng-sigfd Not tainted 
4.2.0-rc5-next-20150805+ #265^M
      [  439.730500] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), 
BIOS Bochs 01/01/2011^M
      [  439.730500] task: ffff880605308000 ti: ffff88060530c000 task.ti: 
ffff88060530c000^M
      [  439.730500] RIP: 0010:[<ffffffff812d89ba>]  [<ffffffff812d89ba>] 
blk_mq_tag_to_rq+0x21/0x6e^M
      [  439.730500] RSP: 0018:ffff880819203da0  EFLAGS: 00010283^M
      [  439.730500] RAX: ffff880811b0e000 RBX: ffff8800bb465f00 RCX: 
0000000000000002^M
      [  439.730500] RDX: 0000000000000000 RSI: 0000000000000202 RDI: 
0000000000000000^M
      [  439.730500] RBP: ffff880819203db0 R08: 0000000000000002 R09: 
0000000000000000^M
      [  439.730500] R10: 0000000000000000 R11: 0000000000000000 R12: 
0000000000000202^M
      [  439.730500] R13: ffff880814104800 R14: 0000000000000002 R15: 
ffff880811a2ea00^M
      [  439.730500] FS:  00007f165b3f5740(0000) GS:ffff880819200000(0000) 
knlGS:0000000000000000^M
      [  439.730500] CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b^M
      [  439.730500] CR2: 0000000000000158 CR3: 00000007ef766000 CR4: 
00000000000006e0^M
      [  439.730500] Stack:^M
      [  439.730500]  0000000000000008 ffff8808114eed90 ffff880819203e00 
ffffffff812dc104^M
      [  439.755663]  ffff880819203e40 ffffffff812d9f5e 0000020000000000 
ffff8808114eed80^M
      [  439.755663] Call Trace:^M
      [  439.755663]  <IRQ> ^M
      [  439.755663]  [<ffffffff812dc104>] bt_for_each+0x6e/0xc8^M
      [  439.755663]  [<ffffffff812d9f5e>] ? blk_mq_rq_timed_out+0x6a/0x6a^M
      [  439.755663]  [<ffffffff812d9f5e>] ? blk_mq_rq_timed_out+0x6a/0x6a^M
      [  439.755663]  [<ffffffff812dc1b3>] blk_mq_tag_busy_iter+0x55/0x5e^M
      [  439.755663]  [<ffffffff812d88b4>] ? blk_mq_bio_to_request+0x38/0x38^M
      [  439.755663]  [<ffffffff812d8911>] blk_mq_rq_timer+0x5d/0xd4^M
      [  439.755663]  [<ffffffff810a3e10>] call_timer_fn+0xf7/0x284^M
      [  439.755663]  [<ffffffff810a3d1e>] ? call_timer_fn+0x5/0x284^M
      [  439.755663]  [<ffffffff812d88b4>] ? blk_mq_bio_to_request+0x38/0x38^M
      [  439.755663]  [<ffffffff810a46d6>] run_timer_softirq+0x1ce/0x1f8^M
      [  439.755663]  [<ffffffff8104c367>] __do_softirq+0x181/0x3a4^M
      [  439.755663]  [<ffffffff8104c76e>] irq_exit+0x40/0x94^M
      [  439.755663]  [<ffffffff81031482>] smp_apic_timer_interrupt+0x33/0x3e^M
      [  439.755663]  [<ffffffff815559a4>] apic_timer_interrupt+0x84/0x90^M
      [  439.755663]  <EOI> ^M
      [  439.755663]  [<ffffffff81554350>] ? _raw_spin_unlock_irq+0x32/0x4a^M
      [  439.755663]  [<ffffffff8106a98b>] finish_task_switch+0xe0/0x163^M
      [  439.755663]  [<ffffffff8106a94d>] ? finish_task_switch+0xa2/0x163^M
      [  439.755663]  [<ffffffff81550066>] __schedule+0x469/0x6cd^M
      [  439.755663]  [<ffffffff8155039b>] schedule+0x82/0x9a^M
      [  439.789267]  [<ffffffff8119b28b>] signalfd_read+0x186/0x49a^M
      [  439.790911]  [<ffffffff8106d86a>] ? wake_up_q+0x47/0x47^M
      [  439.790911]  [<ffffffff811618c2>] __vfs_read+0x28/0x9f^M
      [  439.790911]  [<ffffffff8117a289>] ? __fget_light+0x4d/0x74^M
      [  439.790911]  [<ffffffff811620a7>] vfs_read+0x7a/0xc6^M
      [  439.790911]  [<ffffffff8116292b>] SyS_read+0x49/0x7f^M
      [  439.790911]  [<ffffffff81554c17>] entry_SYSCALL_64_fastpath+0x12/0x6f^M
      [  439.790911] Code: 48 89 e5 e8 a9 b8 e7 ff 5d c3 0f 1f 44 00 00 55 89
      f2 48 89 e5 41 54 41 89 f4 53 48 8b 47 60 48 8b 1c d0 48 8b 7b 30 48 8b
      53 38 <48> 8b 87 58 01 00 00 48 85 c0 75 09 48 8b 97 88 0c 00 00 eb 10
      ^M
      [  439.790911] RIP  [<ffffffff812d89ba>] blk_mq_tag_to_rq+0x21/0x6e^M
      [  439.790911]  RSP <ffff880819203da0>^M
      [  439.790911] CR2: 0000000000000158^M
      [  439.790911] ---[ end trace d40af58949325661 ]---^M

      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Ming Lei <ming.lei@xxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 596f5aad2a704b72934e5abec1b1b4114c16f45b
  Author: Ming Lei <ming.lei@xxxxxxxxxxxxx>
  Date:   Sun Aug 9 03:41:50 2015 -0400

      blk-mq: fix buffer overflow when reading sysfs file of 'pending'

      There may be lots of pending requests so that the buffer of PAGE_SIZE
      can't hold them at all.

      One typical example is scsi-mq, the queue depth(.can_queue) of
      scsi_host and blk-mq is quite big but scsi_device's queue_depth
      is a bit small(.cmd_per_lun), then it is quite easy to have lots
      of pending requests in hw queue.

      This patch fixes the following warning and the related memory
      destruction.

      [  359.025101] fill_read_buffer: blk_mq_hw_sysfs_show+0x0/0x7d returned 
bad count^M
      [  359.055595] irq event stamp: 15537^M
      [  359.055606] general protection fault: 0000 [#1] PREEMPT SMP 
DEBUG_PAGEALLOC ^M
      [  359.055614] Dumping ftrace buffer:^M
      [  359.055660]    (ftrace buffer empty)^M
      [  359.055672] Modules linked in: nbd ipv6 kvm_intel kvm serio_raw^M
      [  359.055678] CPU: 4 PID: 21631 Comm: stress-ng-sysfs Not tainted 
4.2.0-rc5-next-20150805 #434^M
      [  359.055679] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), 
BIOS Bochs 01/01/2011^M
      [  359.055682] task: ffff8802161cc000 ti: ffff88021b4a8000 task.ti: 
ffff88021b4a8000^M
      [  359.055693] RIP: 0010:[<ffffffff811541c5>]  [<ffffffff811541c5>] 
__kmalloc+0xe8/0x152^M

      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Ming Lei <ming.lei@xxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit da0b5e40ab10f44019a1ecec09fadfcd5bdb76b6
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Sat Aug 15 11:38:13 2015 -0400

      ext4: silence a format string false positive

      Static checkers complain that the format string should be "%s".  It does
      not make a difference for the current code.

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Theodore Ts'o <tytso@xxxxxxx>

  commit 9810446836ab5a4b34a749bb77f3eb5836f982cc
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Sat Aug 15 11:30:31 2015 -0400

      ext4: simplify some code in read_mmp_block()

      My static check complains because we have:

        if (!*bh)
                return -ENOMEM;
        if (*bh) {

      The second check is unnecessary.

      I've simplified this code by moving the "if (!*bh)" checks around.  Also
      Andreas Dilger says we should probably print a warning if sb_getblk()
      fails.

      [ Restructured the code so that we print a warning message as well if
        the mmp block doesn't check out, and to print the error code to
        disambiguate between the error cases.  - TYT ]

      Reviewed-by: Andreas Dilger <adilger@xxxxxxxxx>
      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Theodore Ts'o <tytso@xxxxxxx>

  commit c642dc9e1aaed953597e7092d7df329e6234096e
  Author: Eric Sandeen <sandeen@xxxxxxxxxx>
  Date:   Sat Aug 15 10:45:06 2015 -0400

      ext4: don't manipulate recovery flag when freezing no-journal fs

      At some point along this sequence of changes:

      f6e63f9 ext4: fold ext4_nojournal_sops into ext4_sops
      bb04457 ext4: support freezing ext2 (nojournal) file systems
      9ca9238 ext4: Use separate super_operations structure for no_journal 
filesystems

      ext4 started setting needs_recovery on filesystems without journals
      when they are unfrozen.  This makes no sense, and in fact confuses
      blkid to the point where it doesn't recognize the filesystem at all.

      (freeze ext2; unfreeze ext2; run blkid; see no output; run dumpe2fs,
      see needs_recovery set on fs w/ no journal).

      To fix this, don't manipulate the INCOMPAT_RECOVER feature on
      filesystems without journals.

      Reported-by: Stu Mark <smark@xxxxxxxxx>
      Reviewed-by: Jan Kara <jack@xxxxxxxx>
      Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx>
      Signed-off-by: Theodore Ts'o <tytso@xxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 8129ed29644bf56ed17ec1bbbeed5c568b43d6a0
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Tue Aug 11 17:05:04 2015 +0200

      change sb_writers to use percpu_rw_semaphore

      We can remove everything from struct sb_writers except frozen
      and add the array of percpu_rw_semaphore's instead.

      This patch doesn't remove sb_writers->wait_unfrozen yet, we keep
      it for get_super_thawed(). We will probably remove it later.

      This change tries to address the following problems:

        - Firstly, __sb_start_write() looks simply buggy. It does
          __sb_end_write() if it sees ->frozen, but if it migrates
          to another CPU before percpu_counter_dec(), sb_wait_write()
          can wrongly succeed if there is another task which holds
          the same "semaphore": sb_wait_write() can miss the result
          of the previous percpu_counter_inc() but see the result
          of this percpu_counter_dec().

        - As Dave Hansen reports, it is suboptimal. The trivial
          microbenchmark that writes to a tmpfs file in a loop runs
          12% faster if we change this code to rely on RCU and kill
          the memory barriers.

        - This code doesn't look simple. It would be better to rely
          on the generic locking code.

          According to Dave, this change adds the same performance
          improvement.

      Note: with this change both freeze_super() and thaw_super() will do
      synchronize_sched_expedited() 3 times. This is just ugly. But:

        - This will be "fixed" by the rcu_sync changes we are going
          to merge. After that freeze_super()->percpu_down_write()
          will use synchronize_sched(), and thaw_super() won't use
          synchronize() at all.

          This doesn't need any changes in fs/super.c.

        - Once we merge rcu_sync changes, we can also change super.c
          so that all wb_write->rw_sem's will share the single ->rss
          in struct sb_writes, then freeze_super() will need only one
          synchronize_sched().

      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Reviewed-by: Jan Kara <jack@xxxxxxxx>

  commit 853b39a7c82826b8413048feec7bf08e98ce7a84
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Wed Jul 22 20:21:13 2015 +0200

      shift percpu_counter_destroy() into destroy_super_work()

      Of course, this patch is ugly as hell. It will be (partially)
      reverted later. We add it to ensure that other WIP changes in
      percpu_rw_semaphore won't break fs/super.c.

      We do not even need this change right now, percpu_free_rwsem()
      is fine in atomic context. But we are going to change this, it
      will be might_sleep() after we merge the rcu_sync() patches.

      And even after that we do not really need destroy_super_work(),
      we will kill it in any case. Instead, destroy_super_rcu() should
      just check that rss->cb_state == CB_IDLE and do call_rcu() again
      in the (very unlikely) case this is not true.

      So this is just the temporary kludge which helps us to avoid the
      conflicts with the changes which will be (hopefully) routed via
      rcu tree.

      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Reviewed-by: Jan Kara <jack@xxxxxxxx>

  commit bf3eac84c42da7017610abc8cfba64921ea92c76
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Tue Aug 11 17:26:29 2015 +0200

      percpu-rwsem: kill CONFIG_PERCPU_RWSEM

      Remove CONFIG_PERCPU_RWSEM, the next patch adds the unconditional
      user of percpu_rw_semaphore.

      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>

  commit 55cc156505f2e43fa45dbd4bfe8f9c9d848ca44c
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Tue Jul 21 20:26:44 2015 +0200

      percpu-rwsem: introduce percpu_rwsem_release() and percpu_rwsem_acquire()

      Add percpu_rwsem_release() and percpu_rwsem_acquire() for the users
      which need to return to userspace with percpu-rwsem lock held and/or
      pass the ownership to another thread.

      TODO: change percpu_rwsem_release() to use rwsem_clear_owner(). We can
      either fold kernel/locking/rwsem.h into include/linux/rwsem.h, or add
      the non-inline percpu_rwsem_clear_owner().

      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>

  commit 9287f6925ad9d8fb8c6283066b4f77fd87f123a9
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Tue Jul 21 17:45:57 2015 +0200

      percpu-rwsem: introduce percpu_down_read_trylock()

      Add percpu_down_read_trylock(), it will have the user soon.

      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>

  commit 0e28e01f1e73015d8e1b8fa1cda071d0bd9a2600
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Tue Aug 11 16:28:29 2015 +0200

      document rwsem_release() in sb_wait_write()

      Not only we need to avoid the warning from lockdep_sys_exit(), the
      caller of freeze_super() can never release this lock. Another thread
      can do this, so there is another reason for rwsem_release().

      Plus the comment should explain why we have to fool lockdep.

      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Reviewed-by: Jan Kara <jack@xxxxxxxx>

  commit f4b554af9931585174d4913b482eacab75858964
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Mon Jul 20 00:50:55 2015 +0200

      fix the broken lockdep logic in __sb_start_write()

      1. wait_event(frozen < level) without rwsem_acquire_read() is just
         wrong from lockdep perspective. If we are going to deadlock
         because the caller is buggy, lockdep can't detect this problem.

      2. __sb_start_write() can race with thaw_super() + freeze_super(),
         and after "goto retry" the 2nd  acquire_freeze_lock() is wrong.

      3. The "tell lockdep we are doing trylock" hack doesn't look nice.

         I think this is correct, but this logic should be more explicit.
         Yes, the recursive read_lock() is fine if we hold the lock on a
         higher level. But we do not need to fool lockdep. If we can not
         deadlock in this case then try-lock must not fail and we can use
         use wait == F throughout this code.

      Note: as Dave Chinner explains, the "trylock" hack and the fat comment
      can be probably removed. But this needs a separate change and it will
      be trivial: just kill __sb_start_write() and rename do_sb_start_write()
      back to __sb_start_write().

      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Reviewed-by: Jan Kara <jack@xxxxxxxx>

  commit bee9182d955227f01ff3b80c4cb6acca9bb40b11
  Author: Oleg Nesterov <oleg@xxxxxxxxxx>
  Date:   Sun Jul 19 23:48:20 2015 +0200

      introduce __sb_writers_{acquired,release}() helpers

      Preparation to hide the sb->s_writers internals from xfs and btrfs.
      Add 2 trivial define's they can use rather than play with ->s_writers
      directly. No changes in btrfs/transaction.o and xfs/xfs_aops.o.

      Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Reviewed-by: Jan Kara <jack@xxxxxxxx>

  commit 93dee8eea02aefebe2d21128b5f742afe6671f23
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 20:28:32 2015 -0700

      staging: wilc1000: remove WILC_TimerCreate()

      It was just a wrapper around setup_timer() and could never fail, so just
      call the real function, and fix up the function arguments of the
      callbacks to be proper timer callback functions.

      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 4183e9794c751c5139e4599a0c512c7804575a82
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 20:11:16 2015 -0700

      staging: wilc1000: remove WILC_TimerDestroy()

      It was just a wrapper around del_timer_sync() so call that instead.

      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 8972d0fe41e1869b0c7f4c164ea7bffc073dd6b8
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 20:04:13 2015 -0700

      staging: wilc1000: remove WILC_TimerStop()

      It was just a wrapper around del_timer() so call that instead.

      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 334e1a5777290e118abcbb5aa5488c55961609b6
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 20:00:01 2015 -0700

      staging: wilc1000: remove tstrWILC_TimerAttrs typedef

      It was not used for anything, so remove it, and the variables in
      wilc_timer.c that were being passed of its type.

      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit da711eb68e6f91b271a465cbcef3e96759840148
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 19:46:06 2015 -0700

      staging: wilc1000: remove WILC_TimerHandle typedef

      Use the proper structure (struct timer_list) instead, which makes things
      much more readable.

      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 80e29c7a8045005e1a146d86aa4e4a8cce13688c
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 19:42:23 2015 -0700

      staging: wilc1000: remove WILC_Sleep()

      It was just a wrapper around usleep_range() so call that directly
      instead and remove the now-empty file.

      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit bb7b1a76aad831d2c92998de928fdd8d987e00f8
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 19:34:43 2015 -0700

      staging: wilc1000: remove commented out WILC_Sleep calls

      It's not being called, so delete these lines.

      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 3e5f206c00f73f535c914eedc8b91f424c5a14ab
  Merge: 0e38c35 fda4d57
  Author: James Morris <james.l.morris@xxxxxxxxxx>
  Date:   Sat Aug 15 13:29:57 2015 +1000

      Merge branch 'next' of git://git.infradead.org/users/pcmoore/selinux into 
next

  commit 601e4576594543200bde9201e4d23242e73a778b
  Author: Ricard Wanderlof <ricard.wanderlof@xxxxxxxx>
  Date:   Thu Aug 13 15:10:19 2015 +0200

      ASoC: ssm2518: Add explicit device tree support

      Add OF match table to SSM2518 to allow direct matching without going
      through I2C subsystem.

      Signed-off-by: Ricard Wanderlof <ricardw@xxxxxxxx>
      Acked-by: Lars-Peter Clausen <lars@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit e235727173626edf87c63b415d0363b411da299e
  Author: Malcolm Priestley <tvboxspy@xxxxxxxxx>
  Date:   Fri Aug 14 22:58:51 2015 +0100

      staging: vt6655: Replace typedef struct tagSTxDesc

      Replace with struct vnt_tx_desc with all members the same.

      volatile is removed from pointers as this generates warning
      message.

      Only the first four members of vnt_tx_desc need to be volatile.

      Signed-off-by: Malcolm Priestley <tvboxspy@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 543828599afc9cdd9012e363c7393e5ed102aa2a
  Author: Malcolm Priestley <tvboxspy@xxxxxxxxx>
  Date:   Fri Aug 14 22:58:50 2015 +0100

      staging: vt6655: replace typedef struct tagDEVICE_TD_INFO and structure

      Create struct vnt_td_info with members
      mic_hdr
      skb
      buf
      buf_dma
      dwReqCount -> req_count
      byFlags -> flags

      In struct tagSTxDesc volatile is removed because it will generate a 
warning
      (in any case this member is not) and renaming td_info.

      Signed-off-by: Malcolm Priestley <tvboxspy@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 3a0989bb6cacb1f40273d4c397ea91cabe73bad8
  Author: Malcolm Priestley <tvboxspy@xxxxxxxxx>
  Date:   Fri Aug 14 22:58:49 2015 +0100

      staging: vt6655: struct tagDEVICE_TD_INFO remove dwHeaderLength

      dwHeaderLength is assigned a value but that is never used.

      Remove variable.

      Signed-off-by: Malcolm Priestley <tvboxspy@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 531a9c524a54b7d232b6bf6631c460450dd41dbf
  Author: Malcolm Priestley <tvboxspy@xxxxxxxxx>
  Date:   Fri Aug 14 22:58:48 2015 +0100

      staging: vt6655: struct tagDEVICE_TD_INFO resize dwReqCount.

      dwReqCount is no bigger than u16

      Signed-off-by: Malcolm Priestley <tvboxspy@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 9cc8eac99c98000a414f916c1c58dab22c29474d
  Author: Malcolm Priestley <tvboxspy@xxxxxxxxx>
  Date:   Fri Aug 14 22:58:47 2015 +0100

      staging: vt6655: replaced typedef struct tagTDES1

      Create struct vnt_tdes1 that replaces members
      wReqCount -> req_count
      byTCR -> tcr
      byReserved -> reserved

      Signed-off-by: Malcolm Priestley <tvboxspy@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 5235ff6a1df6fb0883f1a9020ab36e0db1c68064
  Author: Malcolm Priestley <tvboxspy@xxxxxxxxx>
  Date:   Fri Aug 14 22:58:46 2015 +0100

      staging: vt6655: desc.h replace typedef struct tagTDES0

      create struct vnt_tdes0 replacing used members
      byTSR0 -> tsr0
      byTSR1 -> tsr1
      f1Owner -> owner

      Narrowing endian differences to inside structure.

      Signed-off-by: Malcolm Priestley <tvboxspy@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 36a24b4eb60eb8644394e319b2e5afc32be8c3a1
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 19:26:20 2015 -0700

      staging: wilc1000: delete wilc_type.h

      The .h file isn't needed at all, so just remove it.

      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit b6d9e0cb142bdae60872a9be392ed8b6e5dde243
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 19:19:19 2015 -0700

      staging: wilc1000: remove WILC_MemoryFree

      It's no longer needed, so remove the empty wrapper function.

      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 969effe9dcdccab865c7f57790f647ebc59df457
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 19:15:34 2015 -0700

      staging: wilc1000: remove WILC_FREE_IF_TRUE macro

      Just use kfree, as that's all it resolves itself to.

      Cc: Johnny Kim <johnny.kim@xxxxxxxxx>
      Cc: Rachel Kim <rachel.kim@xxxxxxxxx>
      Cc: Dean Lee <dean.lee@xxxxxxxxx>
      Cc: Chris Park <chris.park@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit cc6c16df806f3c263b7cde7d6961d80415f9aba8
  Author: Yash Shah <yshah1@xxxxxxxxxxx>
  Date:   Fri Aug 14 06:06:13 2015 +0000

      Staging: sm750fb: Fix "foo* bar" should be "foo *bar" errors

      Fix "foo* bar" should be "foo *bar" errors as detected by
      checkpatch.pl

      Signed-off-by: Yash Shah <yshah1@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit f1126b1d0d7c0daf48f50e566c498912b31c459f
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Fri Aug 14 21:57:51 2015 +0530

      staging: rtl8188eu: fix possible NULL dereference

      dm_odm was being checked for NULL after dereferencing it. Lets check for
      NULL first before derefenrencing it.

      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 2b05df556e01f846fd67f8888add9919af55f35c
  Author: Johnny Kim <johnny.kim@xxxxxxxxx>
  Date:   Thu Aug 13 13:41:21 2015 +0900

      staging: wilc1000: clarify the argument type

      This patch replaces the void pointer type in the host interface
      functions which process the message from host thread by the real data
      type, tstrWILC_WFIDrv because the void pointer type as the arguments
      is not clear and concise. In addition, typecasting to the void pointer
      type is removed becasue it is not necessary.

      Signed-off-by: Johnny Kim <johnny.kim@xxxxxxxxx>
      Signed-off-by: Tony Cho <tony.cho@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 11f58c88ddf8613dde976e0fe18afecefaf04195
  Author: Johnny Kim <johnny.kim@xxxxxxxxx>
  Date:   Thu Aug 13 13:41:20 2015 +0900

      staging: wilc1000: change void pointer type to real type

      This patch changes the void pointer member of the tstrHostIFmsg to the
      real data type because the void pointer type is ambiguous and not
      readable.

      Signed-off-by: Johnny Kim <johnny.kim@xxxxxxxxx>
      Signed-off-by: Tony Cho <tony.cho@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 218dc407d4b275a6f96311ff8c4b70dd998fcf24
  Author: Johnny Kim <johnny.kim@xxxxxxxxx>
  Date:   Thu Aug 13 13:41:19 2015 +0900

      staging: wilc1000: replace WILC_WFIDrvHandle by tstrWILC_WFIDrv

      The structure, WILC_WFIDrvHandle is used to save the pointer address
      for the driver handler which is used throughout the driver but it's
      not easy to understand what it means. In addition, it doesn't support
      the 64 bit machine and also causes the warnings for the 64 bit build.

      This patch replaces the WILC_WFIDrvHandle by the tstrWILC_WFIDrv
      because the tstrWILC_WFIDrv is real structure to represent the driver
      handler and reduces the 64 bit compile warnings. Also, typecasting to
      WILC_WFIDrvHandle is not needed by using tstrWILC_WFIDrv as is.

      Signed-off-by: Johnny Kim <johnny.kim@xxxxxxxxx>
      Signed-off-by: Tony Cho <tony.cho@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 598f85bfaeeaac0272c8e79f314076e48d445bcf
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Tue Aug 11 10:32:42 2015 +0900

      staging: wilc1000: remove WILC_FREE

      Remove WILC_FREE that is replaced by kfree.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 49188af27211b218fffacb26df5e96bf4b7e616c
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Tue Aug 11 10:32:41 2015 +0900

      staging: wilc1000: use kfree instead of WILC_FREE

      Use kfree instead of WILC_FREE.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 9b45891aef5904c2a1e76881f3b44fe646d84b54
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Tue Aug 11 10:32:40 2015 +0900

      staging: wilc1000: remove unused memory functions

      This patch remove unused memory functions because some macros with this
      memory function are deleted.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 96ac283d6490932ff5097259c18a4d03bdddb010
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Tue Aug 11 10:32:39 2015 +0900

      staging: wilc1000: wilc_memory.h: remove unused define

      Remove unused define macro that is never used.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 5a447f4c732e1eca3232effb354e1b18ae38215d
  Author: Raphaël Beamonte <raphael.beamonte@xxxxxxxxx>
  Date:   Fri Aug 14 13:08:32 2015 -0400

      Staging: gdm72xx: usb_ids: fix a macro coding style error

      Fix a macro with complex value coding style error.

      Signed-off-by: Raphaël Beamonte <raphael.beamonte@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 435009bba4d0449b611bc24ae5c9636ac5b2a00e
  Author: Mateusz Kulikowski <mateusz.kulikowski@xxxxxxxxx>
  Date:   Wed Aug 12 21:54:49 2015 +0200

      staging: rtl8192e: Fix log spamming in rtl8192_hard_data_xmit

      This patch fixes issue generated by commit ca93dcba3a92
      ("staging: rtl8192e: Remove assert() macro")

      One negation was missed in conversion, therefore
      asserted message was always printed.
      For 1MB file downloaded via http, ~500 messages
      were generated.

      Signed-off-by: Mateusz Kulikowski <mateusz.kulikowski@xxxxxxxxx>
      Cc: stable <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit bda9e24909b58c90adb4dd03663d250a5c872fb8
  Author: Junsu Shin <jjunes0@xxxxxxxxx>
  Date:   Tue Aug 11 17:44:56 2015 -0500

      staging: vme: devices: add spaces around '-'

      This is a patch to the vme_pio2_core.c that adds spaces around '-'.

      Signed-off-by: Junsu Shin <jjunes0@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit a8f401f9e751eb5d1f6e9f66e45c84e390bc75bb
  Author: Junsu Shin <jjunes0@xxxxxxxxx>
  Date:   Tue Aug 11 17:07:14 2015 -0500

      staging: vme: devices: fix NULL comparison style

      This is a patch to vme_pio2_core.c that fixes up the NULL comparison 
style.

      Signed-off-by: Junsu Shin <jjunes0@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 6c37e7445700fd49a0b86db86b5f2c20bc963fd5
  Author: Junsu Shin <jjunes0@xxxxxxxxx>
  Date:   Tue Aug 11 16:36:05 2015 -0500

      staging: vme: devices: remove blank line after open brace

      This is a patch to the vme_pio2_core.c that removes blank line after open 
brace '{'.

      Signed-off-by: Junsu Shin <jjunes0@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit d5f0a90e60643fa63fffa88828c5552f3902a5bf
  Author: Junsu Shin <jjunes0@xxxxxxxxx>
  Date:   Tue Aug 11 15:02:07 2015 -0500

      staging: vme: devices: remove multiple blank lines

      This is a patch to vm2_pio2_core.c that removes multiple blanks lines.

      Signed-off-by: Junsu Shin <jjunes0@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit cf7281c9ae9a5f0435630f8e972bb4c6204565bc
  Author: MichaÅ? KÄ?pieÅ? <kernel@xxxxxxxxxx>
  Date:   Tue Aug 11 14:07:00 2015 +0200

      staging: unisys: make visorbus_dev_groups static

      visorbus_dev_groups is not referenced outside visorbus_main.c, so it can
      be declared static.

      Found using sparse.

      Signed-off-by: MichaÅ? KÄ?pieÅ? <kernel@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 110a66be3a26fe05318121412e3c36f7f1e80a12
  Author: Prarit Bhargava <prarit@xxxxxxxxxx>
  Date:   Mon Aug 10 18:34:10 2015 -0400

      drivers: staging: unisys: add MODULE_DEVICE_TABLE and temporary 
MODULE_ALIAS lines to visornic

      This patch adds an module alias and a MODULE_DEVICE_TABLE to autoload the
      visornic driver when an appropriate device is created by the visorbus.

      Note, the correct way of fixing this is adding functionality to
      scripts/mod/file2alias.c for the visorbus bus type.

      Signed-off-by: Prarit Bhargava <prarit@xxxxxxxxxx>
      Signed-off-by: Benjamin Romer <benjamin.romer@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit beb12167080146c8cbaa204daae52b102c066166
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:30 2015 -0700

      staging: rtl8192u: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Miscellanea:

      o Reflow alignments

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ec9a0ffa494c7f9c6dbffea7f073ec72a77f1cdb
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:23 2015 -0700

      staging: mt29f_spinand: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 35bb99bf6579f04981830d3275dcffd8b2b17edb
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:17 2015 -0700

      staging: dgnc: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit fd8c5cb5ac30f26902b130f46e1180c18f006b2a
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:19 2015 -0700

      staging: ft1000: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Miscellanea:

      o Reflow alignment

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit b3ff291009c21ff1276a6470325ff6a5149c3b5f
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:33 2015 -0700

      staging: wilc1000: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Miscellanea:

      o Reflow alignments

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ee233d3e19d7a5624e872710b1a6f629a0e8ef4f
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:29 2015 -0700

      staging: rtl8192e: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Miscellanea:

      o Reflow alignments

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ebea63f66388e4bad2bce39cd12e5b77dc08c1a9
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:28 2015 -0700

      staging: rtl8188eu: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ddc9bceb4c128aeec8107df816df1ceba4c68f8b
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:25 2015 -0700

      staging: nvec: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Miscellanea:

      o Reflow alignments

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit cd951ddc2d70e67ee0fc48181bedc27a9515ba78
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:18 2015 -0700

      staging: fbtft: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Miscellanea:

      o Reflow alignments

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit b239904d8f2bfa09956b1ac95009136e452f0923
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:26 2015 -0700

      staging: octeon: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Acked-by: David Daney <david.daney@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit a5ee4695ec03ce8f7c236f568dc99b5366af1ce8
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:31 2015 -0700

      staging: rtl8712: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit e075de610913d43d9d4682888cbee7856217103a
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:34 2015 -0700

      staging: xgifb: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Miscellanea:

      o Reflow alignments

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit f157d807b9fe44afa19e476b52d791a7377d9ad2
  Author: Ioan-Adrian Ratiu <adi@xxxxxxxxxx>
  Date:   Fri Aug 14 12:57:06 2015 +0300

      staging: lustre: ptlrpc: add missing include directive

      Without including ptlrpc_internal.h, GCC gives prototype warnings
      "pack_generic.c:642:5: warning: no previous prototype for ..."
      and sparse also complains "pack_generic.c:642:5: warning: symbol
      'lustre_unpack_req_ptlrpc_body' was not declared. ..."

      Signed-off-by: Ioan-Adrian Ratiu <adi@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 94a99b46116e82aee359265a1ce48ebffe37a479
  Author: Swee Hua Law <sweehua81@xxxxxxxxx>
  Date:   Tue Aug 11 21:32:29 2015 +0800

      staging: lustre: Do not init global to NULL

      Remove "= NULL" in global variable

      Signed-off-by: Swee Hua Law <sweehua81@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 8150a97fdd095d0468fe75d0d5ce4c9e0cbaf3a3
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:21 2015 -0700

      staging: lustre: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Miscellanea:

      o Reflow alignments

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 049fbd9fcc848b667d9658618a4c09c706410813
  Author: Swee Hua Law <sweehua81@xxxxxxxxx>
  Date:   Mon Aug 10 21:54:18 2015 +0800

      staging: lustre: checkpatch: argument alignment for readability

      Fix checkpatch problem: move last argument of the hlist..() back to same 
line

      Signed-off-by: Swee Hua Law <sweehua81@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit aa62a8415e77c7c46be483cba7b650e1748dcb44
  Author: Swee Hua Law <sweehua81@xxxxxxxxx>
  Date:   Mon Aug 10 21:54:17 2015 +0800

      staging: lustre: checkpatch: move */ block comment to next line

      Fix checkpatch problem: move */ from end of line to new line

      Signed-off-by: Swee Hua Law <sweehua81@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit bcffa060c1dfda25dc8a5b1244330de939550f10
  Author: Swee Hua Law <sweehua81@xxxxxxxxx>
  Date:   Mon Aug 10 21:54:16 2015 +0800

      staging: lustre: checkpatch: symbol == NULL should be !symbol

      Fix checkpatch problem: change == NULL comparison to !symbol

      Signed-off-by: Swee Hua Law <sweehua81@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 1b680a81814cebeafe7e01495d064188a3f2fa2f
  Author: Swee Hua Law <sweehua81@xxxxxxxxx>
  Date:   Mon Aug 10 21:54:15 2015 +0800

      staging: lustre: checkpatch: do not init global to NULL

      Fix checkpatch problem: remove NULL assignment fro global variable

      Signed-off-by: Swee Hua Law <sweehua81@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit a8365826553dc5f3d0cd4e05211b752a6f951fc8
  Author: Patrick Boettcher <patrick.boettcher@xxxxxxxxx>
  Date:   Mon Aug 10 10:25:09 2015 +0200

      staging: lustre-libcfs: make static-variable constant

      This static can be made constant as it is never modified.

      Found during sparse-cleanup.

      Signed-off-by: Patrick Boettcher <patrick.boettcher@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 25bbe418f89bec661bcc0dfebcacd6705ed79de6
  Author: Patrick Boettcher <patrick.boettcher@xxxxxxxxx>
  Date:   Mon Aug 10 10:25:08 2015 +0200

      staging: lustre-libcfs: fix sparse warning

      Fix sparse warnings of the following type:

      warning: symbol '....' was not declared. Should it be static?

      Signed-off-by: Patrick Boettcher <patrick.boettcher@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 0df4e3e9bbf8968d5ff079b0ace3de9c0b971021
  Author: Shraddha Barke <shraddha.6596@xxxxxxxxx>
  Date:   Mon Aug 10 13:30:35 2015 +0530

      Staging: unisys: Remove useless cast on void pointer

      void pointers do not need to be cast to other pointer types.

      The semantic patch used to find this:

      @r@
      expression x;
      void* e;
      type T;
      identifier f;
      @@
      (
        *((T *)e)
      |
        ((T *)x)[...]
      |
        ((T *)x)->f
      |
      - (T *)
        e
      )

      Signed-off-by: Shraddha Barke <shraddha.6596@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 94858feccaada3f1810ff50dd21d33b1d4d95d56
  Author: Shraddha Barke <shraddha.6596@xxxxxxxxx>
  Date:   Mon Aug 10 13:30:34 2015 +0530

      Staging: lustre: libcfs: Remove unnecessary cast on void*

      This patch does away with the cast on void * as it is unnecessary.

      Semantic patch used is as follows:

      @r@
      expression x;
      void* e;
      type T;
      identifier f;
      @@
      (
        *((T *)e)
      |
        ((T *)x)[...]
      |
        ((T *)x)->f
      |
      - (void *)
        e
      )

      Signed-off-by: Shraddha Barke <shraddha.6596@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 642ac6c0dceb6292065d08925e6ffd6ef1fbc7e1
  Author: Shraddha Barke <shraddha.6596@xxxxxxxxx>
  Date:   Mon Aug 10 13:30:33 2015 +0530

      Staging: wilc1000: Remove null check before kfree

      kfree on NULL pointer is a no-op.

      This patch uses the following semantic patch to find such an instance
      where NULL check is present before kfree.

      // <smpl>
      @@ expression E; @@
      - if (E != NULL) { kfree(E); }
      + kfree(E);
      @@ expression E; @@
      - if (E != NULL) { kfree(E); E = NULL; }
      + kfree(E);
      + E = NULL;
      // </smpl>smpl>

      Signed-off-by: Shraddha Barke <shraddha.6596@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 772a6e1fff9a8c942e982598632cfc41451e2e9a
  Author: Jacob Kiefer <jtk54@xxxxxxxxxxx>
  Date:   Sun Aug 9 15:20:28 2015 -0400

      staging: rtl8723au: Fix Sparse errors in rtw_security.c

      This patch fixes the following sparse errors:

        CHECK   drivers/staging/rtl8723au/core/rtw_security.c
      drivers/staging/rtl8723au/core/rtw_security.c:189:39: \
        warning: incorrect type in assignment (different base types)
      drivers/staging/rtl8723au/core/rtw_security.c:189:39:    \
        expected unsigned int [unsigned] [usertype] <noident>
      drivers/staging/rtl8723au/core/rtw_security.c:189:39:    \
        got restricted __le32 [usertype] <noident>
      drivers/staging/rtl8723au/core/rtw_security.c:197:39: \
        warning: incorrect type in assignment (different base types)
      drivers/staging/rtl8723au/core/rtw_security.c:197:39:    \
        expected unsigned int [unsigned] [usertype] <noident>
      drivers/staging/rtl8723au/core/rtw_security.c:197:39:    \
        got restricted __le32 [usertype] <noident>
      drivers/staging/rtl8723au/core/rtw_security.c:682:39: \
        warning: incorrect type in assignment (different base types)
      drivers/staging/rtl8723au/core/rtw_security.c:682:39:    \
        expected unsigned int [unsigned] [usertype] <noident>
      drivers/staging/rtl8723au/core/rtw_security.c:682:39:    \
        got restricted __le32 [usertype] <noident>
      drivers/staging/rtl8723au/core/rtw_security.c:694:39: \
        warning: incorrect type in assignment (different base types)
      drivers/staging/rtl8723au/core/rtw_security.c:694:39:    \
        expected unsigned int [unsigned] [usertype] <noident>
      drivers/staging/rtl8723au/core/rtw_security.c:694:39:    \
        got restricted __le32 [usertype] <noident>

      Signed-off-by: Jacob Kiefer <jtk54@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 071c19e73b605086a26d83ff911cdc6e6af0b3b8
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 10 11:33:22 2015 +0900

      staging: wilc1000: remove wilc_strutils.c and wilc_strutils.h

      Remove wilc_strutils.c and wilc_strutils.h that are not needed.
      wilc_strutils.o is also removed in Makefile.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 9504f96492f477b20b97ec92d480f646b7e7a488
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 10 11:33:21 2015 +0900

      staging: wilc1000: remove WILC_memcpy_INTERNAL

      Remove WILC_memcpy_INTERNAL that is used in the WILC_memcpy
      because WILC_memcpy is replaced by memcpy.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit f78d5f809ee248bea66fad9fa14fe62b8aec57af
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 10 11:33:20 2015 +0900

      staging: wilc1000: remove WILC_memcpy function

      Remove WILC_memcpy function that is changed to memcpy.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit d00d2ba33351007c752ed0e95adaa0d7728ec1b8
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 10 11:33:19 2015 +0900

      staging: wilc1000: use memcpy instead of WILC_memcpy

      Use memcpy instead of WILC_memcpy that is a custom function.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 31126a478fcc9020234d45576b432e7789081e0d
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 10 11:33:18 2015 +0900

      staging: wilc1000: remove WILC_strncmp function

      Remove WILC_strncmp function that is changed to strncmp.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 3f882895c717ec107820d7a53919110af702652d
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 10 11:33:17 2015 +0900

      staging: wilc1000: use strncmp instead of WILC_strncmp

      Use strncmp instead of WILC_strncmp.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 24e326ea2946863ea79d3b3af29815f5d49092b0
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 10 11:33:16 2015 +0900

      staging: wilc1000: remove WILC_strncpy function

      Remove WILC_strncpy function that is changed to strncpy.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 85b509f18a7f27d6cc296d62e96e4632c83161fd
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 10 11:33:15 2015 +0900

      staging: wilc1000: Use strncpy instead of WILC_strncpy

      Use strncpy instead of WILC_strncpy that is a custom function

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 1799cb6188beeff1b36c8968f942e9a15759b773
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 10 11:33:14 2015 +0900

      staging: wilc1000: remove WILC_strlen function

      Remove WILC_strlen function that is changed to strlen.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ff96dfb5b1739c84587be23f113078850a0cef4c
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 10 11:33:13 2015 +0900

      staging: wilc1000: use strlen instead of WILC_strlen

      Use strlen instead of WILC_strlen that is a custom function.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 7d2b212f88c369b11fc7c791d02d915ad0121d58
  Author: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
  Date:   Mon Aug 10 11:33:12 2015 +0900

      staging: wilc1000: remove commented code

      Remove commented code that is not used.

      Signed-off-by: Chaehyun Lim <chaehyun.lim@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 358d577ce1a7c56c4300a5b773dbf98cf9c76ae2
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Fri Aug 14 11:54:05 2015 +0300

      staging: comedi: me4000: use bitwise AND instead of logical

      This was supposed to bitwise AND but there is a typo.

      Fixes: 1a02387063fb ('staging: comedi: me4000: remove 'board' from 
me4000_ai_insn_read()')
      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Reviewed-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ad83dbd974feb2e2a8cc071a1d28782bd4d2c70e
  Author: Ian Abbott <abbotti@xxxxxxxxx>
  Date:   Tue Aug 11 13:05:10 2015 +0100

      staging: comedi: adl_pci7x3x: fix digital output on PCI-7230

      The "adl_pci7x3x" driver replaced the "adl_pci7230" and "adl_pci7432"
      drivers in commits 8f567c373c4b ("staging: comedi: new adl_pci7x3x
      driver") and 657f77d173d3 ("staging: comedi: remove adl_pci7230 and
      adl_pci7432 drivers").  Although the new driver code agrees with the
      user manuals for the respective boards, digital outputs stopped working
      on the PCI-7230.  This has 16 digital output channels and the previous
      adl_pci7230 driver shifted the 16 bit output state left by 16 bits
      before writing to the hardware register.  The new adl_pci7x3x driver
      doesn't do that.  Fix it in `adl_pci7x3x_do_insn_bits()` by checking
      for the special case of the subdevice having only 16 channels and
      duplicating the 16 bit output state into both halves of the 32-bit
      register.  That should work both for what the board actually does and
      for what the user manual says it should do.

      Fixes: 8f567c373c4b ("staging: comedi: new adl_pci7x3x driver")
      Signed-off-by: Ian Abbott <abbotti@xxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # 3.13+, needs backporting for 3.7 to 3.12
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 1c38d03ea9b7b92f958ce6b3c2337413227bcb6b
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:25:50 2015 -0700

      staging: comedi: hwdrv_apci3501: remove "magic" numbers in 
apci3501_read_insn_timer()

      Use register bit defines from addi_tcw.h to remove the "magic" numbers.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 0d5e03079de3332b9c3dbb5be24631502d0d676b
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:25:49 2015 -0700

      staging: comedi: hwdrv_apci3501: remove "magic" numbers in 
apci3501_write_insn_timer()

      Use register bit defines from addi_tcw.h to remove the "magic" numbers.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 7dc68e350460c4c1620f79f23be70739845994ff
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:25:48 2015 -0700

      staging: comedi: hwdrv_apci3501: remove "magic" numbers in 
apci3501_config_insn_timer()

      Use register bit defines from addi_tcw.h to remove the "magic" numbers.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 020e05e74d49fc4c5cecee1b779247ec8a243b1f
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:25:47 2015 -0700

      staging: comedi: addi_apci_3501: remove "magic" numbers in 
apci3501_interrupt()

      Use register bit defines from addi_tcw.h to remove the "magic" numbers.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit cd5d0ae4814f4f943c97c83f7f2f393a99b4d3a0
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:25:46 2015 -0700

      staging: comedi: addi_apci_3501: use addi_tcw.h for the timer registers

      The APCI3501_TIMER_* register defines in this driver are that same as
      the ADDI_TCW_* defines with an additional offset.

      Add a 'tcw' (timer/counter/watchdog) member to the private data to
      hold the address for the iobase of the registers. Use that and the
      defines from addi_tcw.h to address the registers.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit f821bf57a41f4aaab5c3306fd81e729208ca1404
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:25:45 2015 -0700

      staging: comedi: addi_apci_3501: rename CamelCase vars in 
apci3501_interrupt()

      Rename the CamelCase local variables.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 63316aae9102a3f7d0d94e32a43dad3b7b752cfe
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:25:44 2015 -0700

      staging: comedi: addi_apci_3501: prefer using the BIT macro

      Change the register bit defines to use the BIT macro.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit cd07fbf27b91c3c71812528ce39f9043ee1352e3
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:25:43 2015 -0700

      staging: comedi: addi_apci_3501: rename private data 'i_IobaseAmcc'

      Rename this CamelCase member of the private data.

      Also, fix the type of the member, it holds a pci_resource_start()
      address and should be an unsigned long.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit c85c26b8d0242da14732312dd99a8595d7a46e2c
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:25:42 2015 -0700

      staging: comedi: hwdrv_apci3501: refactor apci3501_config_insn_timer()

      The handling for the watchdog and timer modes is very similar. Refactor
      this function to use a common code path for both modes.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit bde879ae6ef93cdaa927d1637995256277844239
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:25:41 2015 -0700

      staging: comedi: hwdrv_apci3501: rename 'ul_Command1' in 
apci3501_config_insn_timer()

      Rename this CamelCase local variable.

      For aesthetics, split the mask/set operations.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit f7f909e09fd0cc22499913933c9caee3000423e3
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:25:40 2015 -0700

      staging: comedi: hwdrv_apci3501: refactor apci3501_read_insn_timer()

      The handling of the ADDIDATA_WATCHDOG and ADDIDATA_TIMER is identical.
      Refactor this function to use a common code path for both timer modes.

      Remove the incorrect dev_err() noise. The subdevice is valid but the
      timer_mode is not supported.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 626bb280d0516c7b4adee50cdd2b8ea377183f46
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:25:39 2015 -0700

      staging: comedi: hwdrv_apci3501: refactor apci3501_write_insn_timer()

      The handling of the ADDIDATA_WATCHDOG and ADDIDATA_TIMER is identical
      except for the "stop" operation. Refactor this function to use a common
      code path for both timer modes.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit e078d25639c0f8a5d97c879e276a2eba877dce62
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:25:38 2015 -0700

      staging: comedi: hwdrv_apci3501: rename 'ul_Command1' in 
apci3501_write_insn_timer()

      Rename this CamelCase local variable.

      For aesthetics, split the mask/set operations.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 4434a99eaab2cb3b214201d05f396c940033a6fe
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:25:37 2015 -0700

      staging: comedi: addi_apci_3501: rename private data 'b_TimerSelectMode'

      Rename this CamelCase member of the private data.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit a66f2017ec2daebfef9e7cdf4edeca7a362c7303
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 13:25:36 2015 -0700

      staging: comedi: hwdrv_apci3501: remove useless read/mask to stop watchdog

      The watchdog is stopped in apci3501_write_insn_timer() by writing a 0 to
      the timer control register. There is no need to read the register first
      and mask it (as done when the timer is used as a timer).

      Reported-by: coverity (CID 1227052)
      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 2be8ae5898af956560e9f722b327add05574a1f7
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 13:13:59 2015 -0700

      staging: comedi: comedi_fops: absorb comedi_free_board_minor()

      This function is only called by comedi_cleanup_board_minors() and the
      'minor' parameter will always be < COMEDI_NUM_BOARD_MINORS.

      For aesthetics, absorb the function and remove the unnecessary BUG_ON().

      Split the comedi_clear_board_minor() out to clarify that the return value
      is a comedi_device pointer.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit c4237a2b59432a6ebf73f813ad9e94ab408bb8f1
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 13:14:00 2015 -0700

      staging: comedi: comedi_fops: remove BUG_ON() in 
comedi_dev_get_from_board_minor()

      This function is only called by comedi_dev_get_from_minor() and the 
'minor'
      value will always be < COMEDI_NUM_BOARD_MINORS. Remove the unnecessary
      BUG_ON().

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 5104a8988723b405c9e033b7e57267ebdd387d4d
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 13:14:01 2015 -0700

      staging: comedi: comedi_fops: remove BUG_ON() in 
comedi_free_subdevice_minor()

      Drivers should not crash the kernel.

      This function is only called by comedi_device_detach_cleanup() and the
      s->minor will always be valid or the device wouldn't have attached in
      the first place.

      Leave the checks for safety in accessing the comedi_subdevice_minor_table
      array but remove the BUG_ON() calls.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 6b3703f4cb763d57ab26f2ad262a30cc7f87093c
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 13:14:02 2015 -0700

      staging: comedi: comedi_fops: remove BUG_ON() in comedi_cleanup()

      The BUG_ON() checks in this function are not necessary.

      comedi_cleanup_board_minors() clears all the entries in the
      comedi_board_minor_table array and will call comedi_device_cleanup()
      for all attached devices. comedi_device_cleanup() will then
      clear the entries in the comedi_subdevice_minor_table array with
      comedi_free_subdevice_minor().

      Remove the BUG_ON(), drivers should not crash the kernel.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 0bb6419ccf5b2548ade321d5337e9d3252a3d4a1
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 13:14:03 2015 -0700

      staging: comedi: comedi_fops: remove remaining BUG_ON() checks

      The BUG_ON() checks in comedi_subdevice_from_minor() and
      comedi_dev_get_from_subdevice_minor() are not necessary.

      The 'minor' numbers for a given comedi driver are setup by
      comedi_dev_get_from_subdevice_minor() and will always be in
      the correct range.

      Drivers should not crash the kernel, remove the BUG_ON() checks.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 5babc1bc4d18f780200e3a794d2d553c6684554c
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 11:45:14 2015 -0700

      staging: comedi: hwdrv_apci1564: remove magic numbers in 
apci1564_counter_insn_read()

      Use the bit defines from addi_tcw.h to remove the magic numbers in this
      function.

      Add the missing define for ADDI_TCW_STATUS_HARDWARE_TRIG.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit c6288a3bebd8a59364f9ca9871f0fd2ac11963b4
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 11:45:13 2015 -0700

      staging: comedi: hwdrv_apci1564: tidy up apci1564_counter_insn_write()

      Clear the gate and trig bits in the common code path.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 1f5d767fab593659cbebc91197c3f182f6e0d84a
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 11:45:12 2015 -0700

      staging: comedi: hwdrv_apci1564: fix counter "mode" setting

      According to the (broken) original driver, data[4] passed to this function
      is the "timer mode". It appears the original code used the wrong shift to
      set the bits.

      Use the ADDI_TCW_CTRL_MODE() macro so that the correct bits get set.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 835f8fe9527b826d23b223fb5347ee2c3e670cee
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 11:45:11 2015 -0700

      staging: comedi: hwdrv_apci1564: remove useless code in 
apci1564_counter_insn_config()

      The gate, trig, and ena, bits in the 'ctrl' are cleared at the start of
      the function. There is no reason clear these bits for each step.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 18543b13fc99f0e90aead12ca9fc64145341278c
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 11:45:10 2015 -0700

      staging: comedi: hwdrv_apci1564: remove magic number in 
apci1564_timer_insn_read()

      Use the bit define from addi_tcw.h to remove the magic number.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 9a2d58c7f87bb5a92b4be9fd61af77baa2c832ba
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 11:45:09 2015 -0700

      staging: comedi: hwdrv_apci1564: tidy up apci1564_timer_insn_write()

      Clear the gate and trig bits in the common code path.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit d9fca73c8014cbc971baa980c87caab8004b7c8c
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 11:45:08 2015 -0700

      staging: comedi: hwdrv_apci1564: use addi_tcw.h defines

      Use the ADDI_TCW_CTRL_REG bit defines in addi_tcw.h to remove the "magic"
      numbers.

      Add some missing bit defines and mask defines to addi_tcw.h to help
      cleanup the code.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 836b8f2304a0363e98631f8cbccbe962d7dc23ab
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 11:45:07 2015 -0700

      staging: comedi: addi_apci_1564: tidy up APCI1564_EEPROM_REG bit defines

      Use the BIT() macro to define the bits.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 9f750d15a1d8387605745c89c21cf46d4ddd4cd0
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 11:45:06 2015 -0700

      staging: comedi: addi_apci_1564: define the APCI1564_DI_IRQ_REG bits

      Define the bits in this register. Remove the old defines in 
hwdrv_apci1564.c.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit dbaa1490f989380b2e7a492d324441cc917628cb
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 11:45:05 2015 -0700

      staging: comedi: addi_apci_1564: define the APCI1564_DO_IRQ_REG bits

      Define the bits in this register.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit fa1219e03e73fb1ebba87eeb2aa1edbea518622d
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 11:45:04 2015 -0700

      staging: comedi: addi_apci_1564: define the APCI1564_DO_INT_STATUS_REG 
bits

      Define the bits in this register.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 59c8f0dd76ac1358086ac79e177791683b1823d0
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 11:45:03 2015 -0700

      staging: comedi: addi_apci_1564: define the APCI1564_DO_INT_CTRL_REG bits

      Define the bits in this register. Remove the old defines in 
hwdrv_apci1564.c.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit d5387751c34a6a02d715e4885239a05563a418b8
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 11:45:02 2015 -0700

      staging: comedi: hwdrv_apci1564: remove unused defines

      These defines are not used. Remove them.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 2afc5d49d03ffcd36ef5a50a52709539911ceb00
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 11:45:01 2015 -0700

      staging: comedi: addi_tcw.h: prefer using the BIT macro

      Use the BIT macro to define the register bits.

      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 13d825edd4441dd3453de58d1bd2ade44d5ad2ab
  Author: Aleksei Fedotov <lexa@xxxxxxxxx>
  Date:   Fri Aug 14 22:34:37 2015 +0300

      staging: speakup: Fix warning reported by checkpatch

      This patch fixes the checkpatch.pl warnings:
      WARNING: Block comments use a trailing */ on a separate line
      WARNING: Block comments use * on subsequent lines

      Signed-off-by: Aleksey Fedotov <lexa@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ad9f92d2700d19cd680dbfdb5da3859d10f534d1
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:32 2015 -0700

      staging: speakup: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Miscellanea:

      o Reflow alignments

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit e4fde76b1667e86bf016f33c3ada33332e586b0d
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:27 2015 -0700

      staging: olpc_dcon: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit f7f2c183043a79e1c6115c69314e3d0d2c5e061f
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:24 2015 -0700

      staging: netlogic: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit f0f621ca7bac142ecc0516f91ed1199d9c374ff8
  Author: Mike Rapoport <mike.rapoport@xxxxxxxxx>
  Date:   Wed Aug 12 21:08:50 2015 +0300

      staging: android: update TODO

      - remove "make sure things build as modules properly"
      - remove kuid_t related remarks, they were relevant for logger, but it
        is gone half year ago
      - remove dead e-mail address of Brian Swetland
      - add e-mail addresses of Arve Hjønnevåg and Riley Andrews

      Signed-off-by: Mike Rapoport <mike.rapoport@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit d30649a8b61843bed98f772954e490b75cae2713
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:16 2015 -0700

      staging: android: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit c71e16ef7a2b4c5251cef74b1065fbb76bb14d09
  Author: Cristina Opriceana <cristina.opriceana@xxxxxxxxx>
  Date:   Tue Aug 11 13:20:53 2015 +0300

      Staging: iio: trigger: Use braces on both branches of if statement

      Fix style issue related to missing braces, detected by checkpatch.pl.

      Signed-off-by: Cristina Opriceana <cristina.opriceana@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 2f3403ac2cdd7d76c531c5b3cf16b05d7a554f18
  Author: Cristina Opriceana <cristina.opriceana@xxxxxxxxx>
  Date:   Tue Aug 11 13:18:18 2015 +0300

      Staging: iio: trigger: Alignment should match open parenthesis

      Fix alignment for function parameters as suggested by checkpatch.pl.

      Signed-off-by: Cristina Opriceana <cristina.opriceana@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit d98d2ccb4ceb4f28408299d1cc3846ab6be7ec52
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:20 2015 -0700

      staging: iio: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Acked-by: Lars-Peter Clausen <lars@xxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 5132fcd1fb55eddf04c7a06ede75723d7870b797
  Author: Adrian Remonda <adrianremonda@xxxxxxxxx>
  Date:   Fri Aug 14 12:18:04 2015 +0200

      Staging: most: aim-cdev/cdev.c. Fix "missing static keyword" warnings

      This is a patch to the most/aim_cdev.c file. It makes several
      local functions and structures static to prevent global visibility.

      Signed-off-by: Adrian Remonda <adrianremonda@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 23fe15fadf708c562140cd99e4dfd400afc5db8a
  Author: Adrian Remonda <adrianremonda@xxxxxxxxx>
  Date:   Fri Aug 14 12:18:02 2015 +0200

      Staging: most: hdm-usb/hdm_usb.c. Fix "missing static keyword" warnings

      This is a patch to the most/hdm-usb/hdm_usb.c file. It
      makes several local functions and structures static to prevent global
      visibility.

      Signed-off-by: Adrian Remonda <adrianremonda@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 04ca58372c5e4922d7463450ffdb5cdc3d0dd596
  Author: Adrian Remonda <adrianremonda@xxxxxxxxx>
  Date:   Fri Aug 14 12:18:01 2015 +0200

      Staging: most: mostcore/core.c. Fix "Using plain integer as NULL pointer" 
warnings

      This patch fixes the warning generated by sparse: "Using plain integer
      as NULL pointer" by replacing the pointer test against 0 with a logical 
test.

      Signed-off-by: Adrian Remonda <adrianremonda@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit c942ea7a377edfde7a154f2edd8fde7cfea24de1
  Author: Adrian Remonda <adrianremonda@xxxxxxxxx>
  Date:   Fri Aug 14 12:18:00 2015 +0200

      Staging: most: mostcore/core.c. Fix "missing static keyword" warnings

      This is a patch to the mostcore/core.c file. It makes
      several local functions and structures static to prevent global
      visibility.

      Signed-off-by: Adrian Remonda <adrianremonda@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ddb98ce16158cb979f025eb73eaa44dce4cb1b36
  Author: Joe Perches <joe@xxxxxxxxxxx>
  Date:   Mon Aug 10 14:51:22 2015 -0700

      staging: most: Remove unnecessary externs

      Using 'extern' is not necessary for function prototypes.

      Signed-off-by: Joe Perches <joe@xxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 910bf1efe6f7f74b10e918768ddea3ad8b863f8b
  Author: Tomas Melin <tomas.melin@xxxxxx>
  Date:   Sun Aug 9 17:08:41 2015 +0300

      staging/most: fix return value for DIM_GetChannelState

      Return NULL instead of 0 for invalid input.

      Signed-off-by: Tomas Melin <tomas.melin@xxxxxx>
      Acked-by: Christian Gromm <christian.gromm@xxxxxxxxxxxxx>
      Signed-off-by: Andrey Shvetsov <andrey.shvetsov@xxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ad88aae057b9f952f1cbd2f5df8325b95ba7bb75
  Author: Oleg Drokin <green@xxxxxxxxxxxxxx>
  Date:   Sat Aug 8 20:09:06 2015 -0400

      staging/lustre/llite: get rid of unused ll_super_blocks list

      ll_super_blocks became unused quite a while ago with switch
      to the new CLIO code.
      So this patch removes the list, ll_sb_lock spinlock that guards it
      and superblock info ll_list linkage.

      Signed-off-by: Oleg Drokin <green@xxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit d38c59e9ab203427f14ab6691529bac098adbacd
  Author: Abhilash Jindal <klock.android@xxxxxxxxx>
  Date:   Tue Aug 11 10:31:53 2015 -0400

      staging: comedi: serial2002: Use monotonic clock

      Wall time obtained from do_gettimeofday is susceptible to sudden jumps 
due to
      user setting the time or due to NTP.

      Monotonic time is constantly increasing time better suited for comparing 
two
      timestamps.

      Signed-off-by: Abhilash Jindal <klock.android@xxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Reviewed-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 365741e6a6ab7f31ff885c26dd173d9590d1e8ca
  Author: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 10:28:08 2015 -0700

      staging: comedi: ni_usb6501: fix possible out-of-bounds access

      Coverity reports a possible Out-of-bounds access (ARRAY_VS_SINGLETON)
      with the 'const u8 *port' parameter passed to ni6501_port_command().
      This param is an actual array for the SET_PORT_DIR operation, called
      by ni6501_dio_insn_config(). But for the WRITE_PORT and READ_PORT
      operations, called by ni6501_dio_insn_bits(), it is just the address
      of an u8 local variable.

      Fix the coverity issue by changing the parameter to an unsigned int
      and pass the raw values from ni6501_dio_insn_config() and
      ni6501_dio_insn_bits(). ni6501_port_command() then handles the masking
      and shifting needed to load the value into the u8 transmit buffer.

      For consistency, change the access of the 'bitmap' parameter from an
      array access to a pointer operation.

      Reported-by: coverity (CID 1248624)
      Signed-off-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Reviewed-by: Ian Abbott <abbotti@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 92f26189b181a65fcb1ff6220a4bf45d44502e4a
  Author: Sudip Mukherjee <sudipm.mukherjee@xxxxxxxxx>
  Date:   Thu Aug 13 19:06:05 2015 +0530

      auxdisplay: ks0108: initialize local parport variable

      The local variable ks0108_parport is used by other functions to write to
      the parallel port. We missed initializing it when we converted the
      driver to use new Parallel Port codes.

      Fixes: 4edd70c133f3 ("auxdisplay: ks0108: use new parport device model")
      Reported-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit c868cbb7e5c6d3c74b8d38c7c356444f2c807c28
  Author: Eduardo Valentin <edubezval@xxxxxxxxx>
  Date:   Tue Aug 11 10:21:23 2015 -0700

      serial: imx: save and restore context in the suspend path

      This change teaches the imx serial driver to save its
      context and restore it across suspend and resume path.
      To do so, it introduces serial_imx_restore_context()
      and serial_imx_save_context() functions. They use
      a shadow set of registers to save key registers
      and restore them accordingly. These functions can
      be reused on other situations, when the device
      context is lost.

      Cc: Fabio Estevam <festevam@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: Jiri Slaby <jslaby@xxxxxxxx>
      Cc: linux-serial@xxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit bc85734b126f813ba46265c2d3a84c8839cb2e54
  Author: Eduardo Valentin <edubezval@xxxxxxxxx>
  Date:   Tue Aug 11 10:21:22 2015 -0700

      serial: imx: allow waking up on RTSD

      This patch sets RTSDEN bit when going into idle (Stop mode).
      We add the RTSDEN for the case RTS is sent from
      the remote connection. This way we allow the system
      to wakeup when RTS is received.

      Cc: Fabio Stevam <festevam@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: Jiri Slaby <jslaby@xxxxxxxx>
      Cc: linux-serial@xxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 189550b8644ef5d00d3b744f7fd423cce2d7c9ec
  Author: Eduardo Valentin <edubezval@xxxxxxxxx>
  Date:   Tue Aug 11 10:21:21 2015 -0700

      serial: imx: introduce serial_imx_enable_wakeup()

      This change is a code reorganization. Here we introduce
      serial_imx_enable_wakeup() helper function to do
      the job of configuring and preparing wakeup sources
      on imx serial device. The idea is to allow other
      parts of the code to call this function whenever
      the device is known to go to idle.

      Cc: Fabio Estevam <festevam@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: Jiri Slaby <jslaby@xxxxxxxx>
      Cc: linux-serial@xxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 9e7b399d6528eac33a6fbfceb2b92af209c3454d
  Author: Eduardo Valentin <edubezval@xxxxxxxxx>
  Date:   Tue Aug 11 10:21:20 2015 -0700

      serial: imx: remove unbalanced clk_prepare

      The current code attempts to prepare clk_per and clk_ipg
      before using the device. However, the result is an extra
      prepare call on each clock. Here is the output of uart
      clocks (only uart enabled and used as console):

      $  grep uart /sys/kernel/debug/clk/clk_summary
       uart_serial           1            2    80000000          0 0
             uart           1            2    66000000          0 0

      This patch balances the calls of prepares. The result is:

      $  grep uart /sys/kernel/debug/clk/clk_summary
       uart_serial           1            1    80000000          0 0
             uart           1            1    66000000          0 0

      Cc: Fabio Estevam <festevam@xxxxxxxxx>
      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Cc: Jiri Slaby <jslaby@xxxxxxxx>
      Cc: linux-serial@xxxxxxxxxxxxxxx
      Cc: linux-pm@xxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit eafb9eea7622d765effb1a06f8cf5eb31fa018f6
  Author: John Ogness <john.ogness@xxxxxxxxxxxxx>
  Date:   Fri Aug 14 18:01:02 2015 +0200

      serial: 8250: move rx_running out of the bitfield

      That bitfield is modified by read + or + write operation. If someone
      sets any of the other two bits it might render the lock useless.

      While at it, remove other bitfields as well to avoid more such
      errors.

      Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: John Ogness <john.ogness@xxxxxxxxxxxxx>
      Signed-off-by: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 830acf9e3044d4644f91b4418ef35a2094089946
  Author: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
  Date:   Fri Aug 14 17:52:07 2015 +0200

      tty: serial: 8250_omap: do not use RX DMA if pause is not supported

      The 8250-omap driver requires the DMA-engine driver to support the pause
      command in order to properly turn off programmed RX transfer before the
      driver stars manually reading from the FIFO.
      The lacking support of the requirement has been discovered recently. In
      order to stay safe here we disable RX-DMA completly on probe.
      The rx_dma_broken assignment on probe could be removed once we working
      pause function in omap-dma.

      Cc: <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit cbba3e6f7a1eb642cccf520f690d4a58b97a9588
  Author: Qipeng Zha <qipeng.zha@xxxxxxxxx>
  Date:   Fri Aug 7 19:14:47 2015 +0800

      serial:8250_dw: do not alter CTS and DCTS since AFE is enabled

      Since the serial core is informed that this device is doing
      automatic flow control, it is not necessary to alter CTS and
      DCTS of the MSR as the core no longer attempts stop the port
      in uart_handle_cts_change().

      Signed-off-by: Huiquan Zhong <huiquan.zhong@xxxxxxxxx>
      Signed-off-by: Qipeng Zha <qipeng.zha@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 2b9a8508cb7f50d1880e2b8bb43615afd228f738
  Author: Johannes Thumshirn <jthumshirn@xxxxxxx>
  Date:   Thu Aug 6 09:16:38 2015 +0200

      tty: serial: men_z135_uart.c: Don't initialize port->lock

      port->lock get's initialized in uart_add_one_port(), no need to do it
      in men_z135_probe().

      Signed-off-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Reviewed-by: Peter Hurley <peter@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 8117e347406278fd399b077add4e638cd017ae2d
  Author: Johannes Thumshirn <jthumshirn@xxxxxxx>
  Date:   Thu Aug 6 09:16:37 2015 +0200

      tty: serial: men_z135_uart.c: Fix race between IRQ and set_termios()

      Fix panic caused by a race between men_z135_intr() and 
men_z135_set_termios().

      men_z135_intr() and men_z135_set_termios() both hold the struct 
uart_port::lock
      spinlock, but men_z135_intr() does a spin_lock_irqsave() and
      men_z135_set_termios() does a normal spin_lock(), which can lead to a 
deadlock
      when an interrupt is called while the lock is being helt by
      men_z135_set_termios().

      This was discovered using a insmod, hardware looppback send/receive, rmmod
      stress test.

      Signed-off-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Reviewed-by: Peter Hurley <peter@xxxxxxxxxxxxxxxxxx>
      Cc: Andreas Werner <andreas.werner@xxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx # v4.0+
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 1d7002777a8fe8188caaa98d4a8eb4ed298fcdae
  Author: Maciej S. Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Aug 2 23:15:05 2015 +0200

      serial: 8250: bind to ALi Fast Infrared Controller (ALI5123)

      This way this device can be used with irtty-sir -
      at least on Toshiba Satellite A20-S103 it is not configured by default
      and needs PNP activation before it starts to respond on I/O ports.

      This device has actually its own driver (ali-ircc),
      but this driver seems to be non-functional for a very long time
      (see http://permalink.gmane.org/gmane.linux.irda.general/484
      http://permalink.gmane.org/gmane.network.protocols.obex.openobex.user/943
      https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=535070 ).

      Signed-off-by: Maciej Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
      Cc: stable <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ffa34de03bcfbfa88d8352942bc238bb48e94e2d
  Author: Maciej S. Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Sun Aug 2 23:11:52 2015 +0200

      serial: 8250: don't bind to SMSC IrCC IR port

      SMSC IrCC SIR/FIR port should not be bound to by
      (legacy) serial driver so its own driver (smsc-ircc2)
      can bind to it.

      Signed-off-by: Maciej Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
      Cc: stable <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit df57cf6a879502cd6e5559c1f2d6db12128e074f
  Author: Stefan Wahren <stefan.wahren@xxxxxxxx>
  Date:   Tue Aug 11 11:46:01 2015 +0000

      serial: mxs-auart: fix baud rate range

      Currently mxs-auart doesn't care correctly about the baud rate divisor.
      According to reference manual the baud rate divisor must be between
      0x000000EC and 0x003FFFC0. So calculate the possible baud rate range
      and use it for uart_get_baud_rate().

      Signed-off-by: Stefan Wahren <stefan.wahren@xxxxxxxx>
      Reviewed-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 17dc72cf3d8c6284cc34f29627f891268af07a55
  Author: Juergen Borleis <jbe@xxxxxxxxxxxxxx>
  Date:   Fri Aug 7 12:47:04 2015 +0200

      serial: mxs-auart: keep the AUART unit in reset state when not in use

      Whenever the UART device driver gets closed from userland, the driver
      disables the UART unit and then stops the clocks to save power.

      The bit which disabled the UART unit is described as:

       "UART Enable. If this bit is set to 1, the UART is enabled. Data
        transmission and reception occurs for the UART signals. When the
        UART is disabled in the middle of transmission or reception, it
        completes the current character before stopping."

      The important part is the "it completes the current character". Whenever
      a reception is ongoing when the UART gets disabled (including the clock
      off) the statemachine freezes and "remembers" this state on the next
      open() when re-enabling the unit's clock.

      In this case we end up receiving an additional bogus character
      immediately.

      The solution in this change is to switch the AUART unit into its reset
      state on close() and only release it from its reset state on the next
      open().

      Note: when the unit is also used as system console it is always 'in use',
      so we cannot reset it on close().

      Signed-off-by: Juergen Borleis <jbe@xxxxxxxxxxxxxx>
      Reviewed-by: Peter Hurley <peter@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 3fa30ac3b9a9220fa953eeb6d21b9ca578c67885
  Author: Juergen Borleis <jbe@xxxxxxxxxxxxxx>
  Date:   Fri Aug 7 12:47:03 2015 +0200

      serial: mxs-auart: use a function name to reflect what it really does

      This function clears the reset the AUART unit is in after system start
      to make it work.

      Signed-off-by: Juergen Borleis <jbe@xxxxxxxxxxxxxx>
      Reviewed-by: Peter Hurley <peter@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 17248569499eae54b314fb05c4ff19fd47c9e99b
  Author: Chase Metzger <chasemetzger15@xxxxxxxxx>
  Date:   Tue Aug 11 21:34:37 2015 -0700

      usb: core: hub: Removed some warnings generated by checkpatch.pl

      Removed some checkpatch.pl warnings saying there was an unwanted space 
between
      function names and their arguments.

      Signed-off-by: Chase Metzger <chasemetzger15@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit e4df92279fd9e01532f65e5ba397877799ed6252
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 16:23:12 2015 +0200

      USB: host: ohci-at91: merge loops in ohci_hcd_at91_drv_probe

      ohci_hcd_at91_drv_probe() has four at91_for_each_port. They can be merged
      into two loops without changing the driver behaviour.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Acked-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit bd73bfcd44c0bdcf6efa238e5b21bdbf0778d6ce
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 16:23:11 2015 +0200

      USB: host: ohci-at91: merge ohci_at91_of_init in ohci_hcd_at91_drv_probe

      As device tree support is now mandatory, merge ohci_at91_of_init() in
      ohci_hcd_at91_drv_probe().

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Acked-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit be12be546baa26a1eeb59b78e2a616cd946e850a
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 16:23:10 2015 +0200

      USB: host: ohci-at91: depend on OF

      Make the driver depend on CONFIG_OF and remove the now useless #ifdef

      Also, fix the Kconfig indentation.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Acked-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit b4f194706dd98d6de21c97eeb888a75abbf75174
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 16:23:09 2015 +0200

      USB: host: ohci-at91: move at91_usbh_data definition in c file

      Move struct at91_usbh_data back in ohci-at91.c as this is the only user
      left after switching all at91 platforms to DT only.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Acked-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 3cf1fc80655d3af7083ea4b3615e5f8532543be7
  Author: Stefan Koch <stefan.koch10@xxxxxxxxx>
  Date:   Sat Aug 8 11:32:56 2015 +0200

      usb: interface authorization: Use a flag for the default device 
authorization

      With this patch a flag instead of a variable
      is used for the default device authorization.

      Signed-off-by: Stefan Koch <skoch@xxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 6ef2bf71764708f7c58ee9300acd8df05dbaa06f
  Author: Stefan Koch <stefan.koch10@xxxxxxxxx>
  Date:   Sat Aug 8 11:32:55 2015 +0200

      usb: interface authorization: Documentation part

      This part adds the documentation for the interface authorization.

      Signed-off-by: Stefan Koch <skoch@xxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 187b3d75bbfba45a38b5d1d3656c0f11f6f6f2d0
  Author: Stefan Koch <stefan.koch10@xxxxxxxxx>
  Date:   Sat Aug 8 11:32:54 2015 +0200

      usb: interface authorization: SysFS part of USB interface authorization

      This introduces an attribute for each interface to
      authorize (1) or deauthorize (0) it:
      /sys/bus/usb/devices/INTERFACE/authorized

      Signed-off-by: Stefan Koch <skoch@xxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit ef0909c50fe63be3f9aa09bdf4db7efaa5919be9
  Author: Stefan Koch <stefan.koch10@xxxxxxxxx>
  Date:   Sat Aug 8 11:32:53 2015 +0200

      usb: interface authorization: Introduces the USB interface authorization

      The kernel supports the device authorization because of wireless USB.
      These is usable for wired USB devices, too.
      These new interface authorization allows to enable or disable
      individual interfaces instead a whole device.

      If a deauthorized interface will be authorized so the driver probing must
      be triggered manually by writing INTERFACE to /sys/bus/usb/drivers_probe

      Signed-off-by: Stefan Koch <skoch@xxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit de7718bd9c4d3db96991a98c2a0cb38258a04e47
  Author: Stefan Koch <stefan.koch10@xxxxxxxxx>
  Date:   Sat Aug 8 11:32:52 2015 +0200

      usb: interface authorization: Control interface probing and claiming

      Driver probings and interface claims get rejected
      if an interface is not authorized.

      Signed-off-by: Stefan Koch <skoch@xxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 1d958bef45030acfc5578263e9de3bb07032b8da
  Author: Stefan Koch <stefan.koch10@xxxxxxxxx>
  Date:   Sat Aug 8 11:32:51 2015 +0200

      usb: interface authorization: Introduces the default interface 
authorization

      Interfaces are allowed per default.
      This can disabled or enabled (again) by writing 0 or 1 to
      /sys/bus/usb/devices/usbX/interface_authorized_default

      Signed-off-by: Stefan Koch <skoch@xxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 484ebaedecc5ddf778a30ee1efab367cbee27030
  Author: Stefan Koch <stefan.koch10@xxxxxxxxx>
  Date:   Sat Aug 8 11:32:50 2015 +0200

      usb: interface authorization: Declare authorized attribute

      The attribute authorized shows the authorization state for an interface.

      Signed-off-by: Stefan Koch <skoch@xxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 088a3daeadf6f4123f54d5208b0ec7cbbfc8853f
  Author: Kris Borer <kborer@xxxxxxxxx>
  Date:   Tue Aug 11 11:12:45 2015 -0400

      usb: hub: remove assignment from if condition

      Fix one occurrence of the checkpatch.pl error:

      ERROR: do not use assignment in if condition

      The semantic patch that makes this change is:

      // <smpl>
      @@
      identifier i;
      expression E, E2, E3;
      statement S1, S2;
      binary operator b;
      @@

      + i = E;
        if (
      - (i = E)
      + i
        b
        ... && E2 && E3 ) S1 else S2
      // </smpl>

      Signed-off-by: Kris Borer <kborer@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit e3ec4fda072c72c8ed014b58a3a4dd54b2b454bd
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 16:29:33 2015 +0200

      usb: gadget: atmel: remove useless include

      Definitions from linux/platform_data/atmel.h are not used, remove the
      include.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 3290b1b818934a517a593159f39a3651dcf34518
  Author: Kris Borer <kborer@xxxxxxxxx>
  Date:   Mon Aug 10 09:13:15 2015 -0400

      usb: endpoint: convert spaces to tabs

      Fix one occurrence of the checkpatch error:

      ERROR: code indent should use tabs where possible

      Signed-off-by: Kris Borer <kborer@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit 31b92d81e5d4574eb3d038642c7ba6ec66ea7db1
  Author: Kris Borer <kborer@xxxxxxxxx>
  Date:   Sun Aug 9 21:48:18 2015 -0400

      usb: otg_whitelist: remove whitespace

      Fix one occurrence of the checkpatch error:

      ERROR: space prohibited before open square bracket '['

      Signed-off-by: Kris Borer <kborer@xxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit f8786a91548df6930643a052e40e5c0b7a8403a5
  Author: Nikhil Badola <nikhil.badola@xxxxxxxxxxxxx>
  Date:   Thu Aug 6 14:51:27 2015 +0530

      drivers: usb: fsl: Workaround for USB erratum-A005275

      Incoming packets in high speed are randomly corrupted by h/w
      resulting in multiple errors. This workaround makes FS as
      default mode in all affected socs by disabling HS chirp
      signalling.This errata does not affect FS and LS mode.

      Forces all HS devices to connect in FS mode for all socs
      affected by this erratum:
      P3041 and P2041 rev 1.0 and 1.1
      P5020 and P5010 rev 1.0 and 2.0
      P5040, P1010 and T4240 rev 1.0

      Signed-off-by: Ramneek Mehresh <ramneek.mehresh@xxxxxxxxxxxxx>
      Signed-off-by: Nikhil Badola <nikhil.badola@xxxxxxxxxxxxx>
      Cc: stable <stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

  commit d50f14805ec0f1cf50654e23559d1dcf81c68b26
  Merge: 37a842d cfd093b
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 16:45:51 2015 -0700

      Merge tag 'phy-for-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kishon/linux-phy into usb-next

      Kishon writes:

      phy: for 4.3

      *) Add new NXP USB OTG PHY driver
      *) Add vbus/id detection, extcon support and fixes in phy-sun4i-usb
         driver
      *) Add support to use phy-sun4i-usb driver for sun8i-a23 and sun8i-a33
         SoCs
      *) Other trivial code cleanups, dropping .owner assignment and constify
         phy_ops

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>

  commit 37a842d36f63a047d94be2603d40d4407c949f1b
  Merge: a3fbedf 96625ea
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 16:43:09 2015 -0700

      Merge tag 'usb-ci-v4.3-rc1' of 
git://git.kernel.org/pub/scm/linux/kernel/git/peter.chen/usb into usb-next

      Peter writes:

      USB: chipidea updates for v4.3-rc1

      The main changes are adding several system interfaces for
      tuning performance, and each vendors can adjust them according
      to their design configurations.

      Others are tiny improvements, like more well siTD supports,
      USB_DEVICE_A_HNP_SUPPORT supports, etc.

  commit a3fbedf98fe9909cb2e406e2018ec437d64806f6
  Merge: e6bbe1d 2f3cc24
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 16:41:11 2015 -0700

      Merge tag 'usb-for-v4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-next

      Felipe writes:

      usb: patches for v4.3 merge window

      New support for Allwinne SoC on the MUSB driver has been added to the 
list of
      glue layers. MUSB also got support for building all DMA engines in one 
binary;
      this will be great for distros.

      DWC3 now has no trace of dev_dbg()/dev_vdbg() usage. We will rely solely 
on
      tracing to debug DWC3. There was also a fix for memory corruption with 
EP0 when
      maxpacket size transfers are > 512 bytes.

      Robert's EP capabilities flags is making EP selection a lot simpler. UDCs 
are
      now required to set these flags up when adding endpoints to the framework.

      Other than these, we have the usual set of miscelaneous cleanups and minor
      fixes.

      Signed-off-by: Felipe Balbi <balbi@xxxxxx>

  commit 4c278394b0feb7aadc538be12ab0474b106a7255
  Author: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
  Date:   Tue Aug 11 16:01:30 2015 -0700

      f2fs: avoid a build warning

      If F2FS_CHECK_FS is turned off, we can get a build warning for unused 
variable.

      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 8c14bfadeac2a01b305ef4434907295b81b58db2
  Author: Chao Yu <chao2.yu@xxxxxxxxxxx>
  Date:   Fri Aug 7 17:58:43 2015 +0800

      f2fs: handle error of f2fs_iget correctly

      In recover_orphan_inode, whenever f2fs_iget fail, we will make kernel 
panic,
      but it's not reasonable, because f2fs_iget can fail due to a lot of 
reasons
      including out of memory.

      So we change error handling method as below:
      a) when finding no entry for the orphan inode, bug_on for catching bugs;
      b) for other reasons, report it to caller.

      Signed-off-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 47e70ca46f9074efe6573263c0de5bef0af829de
  Author: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>
  Date:   Tue Aug 11 10:17:27 2015 -0700

      f2fs: do not assign a new segment for dio under space shortage

      If there is not enough free segment, we should not assign a new segment
      explicitly. Otherwise, we can run out of free segment.

      Reviewed-by: Chao Yu <chao2.yu@xxxxxxxxxxx>
      Signed-off-by: Jaegeuk Kim <jaegeuk@xxxxxxxxxx>

  commit 4d283ec908e617fa28bcb06bce310206f0655d67
  Author: Andy Lutomirski <luto@xxxxxxxxxx>
  Date:   Thu Aug 13 13:18:48 2015 -0700

      x86/kvm: Rename VMX's segment access rights defines

      VMX encodes access rights differently from LAR, and the latter is
      most likely what x86 people think of when they think of "access
      rights".

      Rename them to avoid confusion.

      Cc: kvm@xxxxxxxxxxxxxxx
      Signed-off-by: Andy Lutomirski <luto@xxxxxxxxxx>
      Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

  commit 657c63f0af2d0b44446c840cd42228ef1ebcdce4
  Author: Wentao Xu <wentaox@xxxxxxxxxxxxxx>
  Date:   Fri Jun 19 14:03:42 2015 -0400

      drm/msm/mdp5: release SMB (shared memory blocks) in various cases

      Release all blocks after the pipe is disabled, even when vsync
      didn't happen in some error cases. Allow requesting SMB multiple
      times before configuring to hardware, by releasing blocks not
      programmed to hardware yet for shrinking case.

      This fixes a potential leak of shared memory pool blocks.

      Signed-off-by: Wentao Xu <wentaox@xxxxxxxxxxxxxx>
      Tested-by: Archit Taneja <architt@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit a9702ca23edae7b72dcff266a0c5ae56f6af0fa5
  Author: Wentao Xu <wentaox@xxxxxxxxxxxxxx>
  Date:   Mon Jun 22 11:53:42 2015 -0400

      drm/msm: change to uninterruptible wait in atomic commit

      The atomic commit cannot easily undo and return an error once the
      state is swapped. Change to uninterruptible wait, and ignore the
      timeout error.

      Signed-off-by: Wentao Xu <wentaox@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 507d71b1fa91e2ea5887fcc347d5e71605e113f8
  Author: Archit Taneja <architt@xxxxxxxxxxxxxx>
  Date:   Fri Jun 26 15:49:43 2015 +0530

      drm/msm: mdp4: Fix drm_framebuffer dereference crash

      mdp4_get_frame_format() can dereference a drm_framebuffer when it's NULL.
      Call it in mdp4_plane_mode_set only when we know fb is non-NULL.

      Signed-off-by: Archit Taneja <architt@xxxxxxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit bbcc71872a57cb4642c15423ae229aefdf09910a
  Author: Rob Clark <robdclark@xxxxxxxxx>
  Date:   Thu Jul 23 13:44:56 2015 -0400

      drm/msm: fix msm_gem_prime_get_sg_table()

      We need to return a new sgt, since the caller takes ownership of it.

      Reported-by: Stanimir Varbanov <svarbanov@xxxxxxxxxx>
      Signed-off-by: Rob Clark <robdclark@xxxxxxxxx>

  commit 53cf037bf846417fd92dc92ddf97267f69b110f4
  Author: Linus Lüssing <linus.luessing@xxxxxxxxx>
  Date:   Tue Jun 30 23:45:26 2015 +0200

      batman-adv: Fix potentially broken skb network header access

      The two commits noted below added calls to ip_hdr() and ipv6_hdr(). They
      need a correctly set skb network header.

      Unfortunately we cannot rely on the device drivers to set it for us.
      Therefore setting it in the beginning of the according ndo_start_xmit
      handler.

      Fixes: 1d8ab8d3c176 ("batman-adv: Modified forwarding behaviour for 
multicast packets")
      Fixes: ab49886e3da7 ("batman-adv: Add IPv4 link-local/IPv6-ll-all-nodes 
multicast support")
      Signed-off-by: Linus Lüssing <linus.luessing@xxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 3f1e08d0ae6746379b9e21264dae52f4f35c7ad2
  Author: Simon Wunderlich <simon@xxxxxxxxxxxxx>
  Date:   Wed Jun 24 14:50:20 2015 +0200

      batman-adv: remove broadcast packets scheduled for purged outgoing if

      When an interface is purged, the broadcast packets scheduled for this
      interface should get purged as well.

      Signed-off-by: Simon Wunderlich <simon@xxxxxxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 1f155101646e6f6cda218534ff6e252ff625137b
  Author: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
  Date:   Mon Jun 22 00:36:28 2015 +0800

      batman-adv: protect tt request from double deletion

      The list_del() calls were changed to list_del_init() to prevent
      an accidental double deletion in batadv_tt_req_node_new().

      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 8a4023c5b5e30b11f1f383186f4a7222b3b823cf
  Author: Linus Lüssing <linus.luessing@xxxxxxxxx>
  Date:   Tue Jun 16 17:10:26 2015 +0200

      batman-adv: Fix potential synchronization issues in mcast tvlv handler

      So far the mcast tvlv handler did not anticipate the processing of
      multiple incoming OGMs from the same originator at the same time. This
      can lead to various issues:

      * Broken refcounting: For instance two mcast handlers might both assume
        that an originator just got multicast capabilities and will together
        wrongly decrease mcast.num_disabled by two, potentially leading to
        an integer underflow.

      * Potential kernel panic on hlist_del_rcu(): Two mcast handlers might
        one after another try to do an
        hlist_del_rcu(&orig->mcast_want_all_*_node). The second one will
        cause memory corruption / crashes.
        (Reported by: Sven Eckelmann <sven@xxxxxxxxxxxxx>)

      Right in the beginning the code path makes assumptions about the current
      multicast related state of an originator and bases all updates on that. 
The
      easiest and least error prune way to fix the issues in this case is to
      serialize multiple mcast handler invocations with a spinlock.

      Fixes: 60432d756cf0 ("batman-adv: Announce new capability via multicast 
TVLV")
      Signed-off-by: Linus Lüssing <linus.luessing@xxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 9c936e3f4c4fad07abb6c082a89508b8f724c88f
  Author: Linus Lüssing <linus.luessing@xxxxxxxxx>
  Date:   Tue Jun 16 17:10:25 2015 +0200

      batman-adv: Make MCAST capability changes atomic

      Bitwise OR/AND assignments in C aren't guaranteed to be atomic. One
      OGM handler might undo the set/clear of a specific bit from another
      handler run in between.

      Fix this by using the atomic set_bit()/clear_bit()/test_bit() functions.

      Fixes: 60432d756cf0 ("batman-adv: Announce new capability via multicast 
TVLV")
      Signed-off-by: Linus Lüssing <linus.luessing@xxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit ac4eebd48461ec993e7cb614d5afe7df8c72e6b7
  Author: Linus Lüssing <linus.luessing@xxxxxxxxx>
  Date:   Tue Jun 16 17:10:24 2015 +0200

      batman-adv: Make TT capability changes atomic

      Bitwise OR/AND assignments in C aren't guaranteed to be atomic. One
      OGM handler might undo the set/clear of a specific bit from another
      handler run in between.

      Fix this by using the atomic set_bit()/clear_bit()/test_bit() functions.

      Fixes: e17931d1a61d ("batman-adv: introduce capability initialization 
bitfield")
      Signed-off-by: Linus Lüssing <linus.luessing@xxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 4635469f5c617282f18c69643af36cd8c0acf707
  Author: Linus Lüssing <linus.luessing@xxxxxxxxx>
  Date:   Tue Jun 16 17:10:23 2015 +0200

      batman-adv: Make NC capability changes atomic

      Bitwise OR/AND assignments in C aren't guaranteed to be atomic. One
      OGM handler might undo the set/clear of a specific bit from another
      handler run in between.

      Fix this by using the atomic set_bit()/clear_bit()/test_bit() functions.

      Fixes: 3f4841ffb336 ("batman-adv: tvlv - add network coding container")
      Signed-off-by: Linus Lüssing <linus.luessing@xxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 65d7d46050704bcdb8121ddbf4110bfbf2b38baa
  Author: Linus Lüssing <linus.luessing@xxxxxxxxx>
  Date:   Tue Jun 16 17:10:22 2015 +0200

      batman-adv: Make DAT capability changes atomic

      Bitwise OR/AND assignments in C aren't guaranteed to be atomic. One
      OGM handler might undo the set/clear of a specific bit from another
      handler run in between.

      Fix this by using the atomic set_bit()/clear_bit()/test_bit() functions.

      Fixes: 17cf0ea455f1 ("batman-adv: tvlv - add distributed arp table 
container")
      Signed-off-by: Linus Lüssing <linus.luessing@xxxxxxxxx>
      Signed-off-by: Marek Lindner <mareklindner@xxxxxxxxxxxxx>
      Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxxx>

  commit 1a8e7fab70c8d7cad2e606e7b21d46e42e51c2fd
  Author: Mengdong Lin <mengdong.lin@xxxxxxxxx>
  Date:   Mon Aug 10 22:48:30 2015 +0800

      ASoC: topology: Change pass number of DAI smaller than graph

      The PCM DAIs need to be loaded and added to ASoC core ealier than the
      graph (route). Otherwise, adding routes will fail for missing DAIs.

      Signed-off-by: Mengdong Lin <mengdong.lin@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 708ab62bef1ed3a3cf065a4138bd87f5d083cfeb
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Mon Aug 10 23:07:08 2015 -0400

      pmem: switch to devm_ allocations

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      [djbw: tools/testing/nvdimm/ and memunmap_pmem support]
      Reviewed-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 7d3dcf26a6559fa82af3f53e2c8b163cec95fdaf
  Author: Christoph Hellwig <hch@xxxxxx>
  Date:   Mon Aug 10 23:07:07 2015 -0400

      devres: add devm_memremap

      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit a33ee95f8f456c241897a4b6153610b8488d009d
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Tue Jul 21 17:01:19 2015 +0200

      drm/bridge: Put Kconfig entries in a separate menu

      Put the Kconfig entries for bridge drivers into a separate menu so that
      they are automatically grouped and don't clutter up the top-level menu.

      While at it, move the bridge menu towards the end of the top-level menu
      where the panel menu is already located.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 58c467ece486e9bd1e26b4fd68e8cdef8501952d
  Author: Heiko Schocher <hs@xxxxxxx>
  Date:   Tue Jun 9 07:51:22 2015 +0200

      drm/panel: Add support for LG LG4573 480x800 4.3" panel

      The LG4573 is used on the LG LCD LB043WV2-SD01, an industrial 4.3" TFT
      panel with SPI control interface.

      Signed-off-by: Heiko Schocher <hs@xxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit a99fb6269d1af432c051ed552aaea807f9f906c9
  Author: Gary Bisson <gary.bisson@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Jun 10 18:44:23 2015 +0200

      drm/panel: Add display timing for Okaya RS800480T-7X0GP

      Add support for the Okaya RS800480T-7X0GP to the DRM simple panel
      driver.

      The RS800480T-7X0GP is a WVGA (800x480) panel with an 18-bit parallel
      LCD interface. It supports pixel clocks in the range of 30-40 MHz.

      This panel details can be found at:
      http://boundarydevices.com/product/7-800x480-display/

      Signed-off-by: Gary Bisson <gary.bisson@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 58c948d8c4145d354457bdfd654b828007722c44
  Author: Gary Bisson <gary.bisson@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Jun 10 18:44:22 2015 +0200

      of: Add Okaya Electric America vendor prefix

      This patch adds vendor prefix for Okaya Electronic America, a provider
      of LCD modules and display technologies.

      Signed-off-by: Gary Bisson <gary.bisson@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Rob Herring <robh@xxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit c6e87f91f0445e80656eddae84429ad7d687dc3f
  Author: jianwei wang <jianwei.wang.chn@xxxxxxxxx>
  Date:   Wed Jul 29 16:30:02 2015 +0800

      drm/panel: simple: Add support for NEC NL4827HC19-05B 480x272 panel

      This adds support for the NEC NL4827HC19-05B 480x272 panel to the DRM
      simple panel driver.

      Signed-off-by: Alison Wang <b18965@xxxxxxxxxxxxx>
      Signed-off-by: Xiubo Li <lixiubo@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Jianwei Wang <jianwei.wang.chn@xxxxxxxxx>
      Acked-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
      [treding@xxxxxxxxxx: add .bpc field for panel]
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit d718d79e57039ccf59f638efe7c9ede2bfabc6f1
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Apr 8 16:52:33 2015 +0200

      drm/panel: simple: Add support for AUO B080UAN01

      The AUO B080UAN01 is an 8.0" WUXGA TFT LCD panel connected using four
      DSI lanes. It can be supported by the simple-panel driver.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit d901d2ba8a1577ea213e4c4e22e9ca1f67db61dd
  Author: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
  Date:   Wed Aug 12 12:32:13 2015 +0200

      drm/panel: simple: Correct minimum hsync length of the HannStar 
HSD070PWW1 panel

      According to the data sheet, the minimum horizontal blanking interval
      is 54 clocks (1 + 52 + 1), but tests with a Nitrogen6X have shown the
      minimum working horizontal blanking interval to be 60 clocks.

      Signed-off-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
      Signed-off-by: Lucas Stach <l.stach@xxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 58d6a7bc4f851b5bd43280eab145bab992cb7ebe
  Author: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
  Date:   Wed Aug 12 12:32:12 2015 +0200

      drm/panel: simple: Add bus format for HannStar HSD070PWW1 LVDS panel

      The bus format both specifies the bpc and the way the individual bits get
      serialized into the 7 LVDS timeslots.

      While the is only one standard mapping for 6 bpc and so the driver could
      infer the bit mapping from the bpc alone, there are more options for the
      8 bpc case which makes specifiying the bus format mandatory.
      To keep things consistent across panels and to set a precedent for new
      panel additions add the proper bus format.

      Signed-off-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
      Signed-off-by: Lucas Stach <l.stach@xxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 1b0838b5a794456ca36ce02b405bd7bcc85bfba0
  Author: Franklin S Cooper Jr <fcooper@xxxxxx>
  Date:   Wed Aug 12 08:26:19 2015 -0500

      ARM: davinci: Set proper SPI prescale limit value

      SPI Davinci driver has been updated to allow SOCs to specify their minimum
      prescale value. Update the various SOCs board files that use this driver 
with
      their proper prescaler limit.

      Acked-by: Sekhar Nori <nsekhar@xxxxxx>
      Signed-off-by: Franklin S Cooper Jr <fcooper@xxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 330b48bd700d5cdc3d1922c4e50f0626ab8ec002
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Tue Apr 14 15:39:51 2015 +0200

      drm/bridge: Add vendor prefixes

      Use vendor prefixes for Kconfig symbols and filenames. This should make
      it easier to identify the various bridge drivers and to organize the
      directory.

      v2: fix object name for dw-hdmi (Fabio Estevam)

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit ad3a942bd22fd40a0f4ddaf2759946ce945662af
  Author: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
  Date:   Mon Jun 1 18:47:55 2015 -0700

      regulator: core: Print at debug level on debugfs creation failure

      Failure to create a debugfs node is not an error, but we print a
      warning upon failure to create the node. Downgrade this to a
      debug printk so that we're quiet here. This allows multiple
      drivers to request a CPU's regulator so that CPUfreq and AVSish
      drivers can coexist.

      The downside of this approach is that whoever gets to debugfs first
      the others who come later to not have any debugfs attributes associated
      with them.

      Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit dce0332c85c4d9eb5d96182c56f63cd20566f073
  Author: Maciej S. Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 17:29:02 2015 +0200

      ASoC: fsl_ssi: adjust set DAI format in AC'97 mode

      Adjust set DAI format function in fsl_ssi driver
      so it doesn't fail and clears RXDIR in AC'97 mode.

      Signed-off-by: Maciej Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 8ed0c842153434fa3aeeb89d16b71ac7dc8e12ee
  Author: Maciej S. Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 17:26:44 2015 +0200

      ASoC: fsl_ssi: instantiate AC'97 CODEC

      Instantiate AC'97 CODEC in fsl_ssi driver AC'97 mode.

      Signed-off-by: Maciej Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 04143d614f3af84a3f39e79a24a7ca740bd39efd
  Author: Maciej S. Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 17:25:31 2015 +0200

      ASoC: fsl_ssi: add AC'97 ops setting check and cleanup

      Check whether setting AC'97 ops succeeded and clean them
      on removal so the fsl_ssi driver can be reloaded.

      Signed-off-by: Maciej Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 06cb373692083d169ab080b31c55af91d22b6d99
  Author: Maciej S. Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 17:24:10 2015 +0200

      ASoC: fsl_ssi: enable AC'97 asymmetric rates

      AC'97 bus can support asymmetric playback/capture rates
      so enable them in this case in fsl_ssi driver.

      Signed-off-by: Maciej Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 793e3e9eeffc3e270483a450bc08e60f38e401ff
  Author: Maciej S. Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 17:22:53 2015 +0200

      ASoC: fsl_ssi: AC'97 DAI driver needs probe method too

      AC'97 DAI driver struct need the same probe method as
      I2S one to setup DMA params in fsl_ssi driver.

      Signed-off-by: Maciej Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 8277df3c66f1a8cecfadc29f7394f623263b4445
  Author: Maciej S. Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 17:21:35 2015 +0200

      ASoC: fsl_ssi: enable IPG clock during AC'97 reg access

      IPG clock have to be enabled during AC'97 CODEC register
      access in fsl_ssi driver.

      Signed-off-by: Maciej Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit b4d97f022ac07c26d8f41f105b6c9c9a699875a2
  Author: Antony Pavlov <antonynpavlov@xxxxxxxxx>
  Date:   Tue Jun 16 11:37:04 2015 +0300

      mtd: spi-nor: add Spansion S25FL204K support

      Spansion S25FL204K is a 4-Mbit 3.0V Serial Flash Memory
      with Uniform 4 kB Sectors.

      Signed-off-by: Antony Pavlov <antonynpavlov@xxxxxxxxx>
      Acked-by: RafaÅ? MiÅ?ecki <zajec5@xxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 842c12ddb49ef271ff978cbd022777d3d2c7787f
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 14:02:05 2015 -0300

      mtd: spi-nor: Improve Kconfig help text for SPI_FSL_QUADSPI

      The current "We only connect the NOR to this controller now." text
      is not very clear, so explain it better by saying that generic SPI
      is not supported by SPI_FSL_QUADSPI and only SPI NOR is.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit f617b9587c1662a2352b90cb64ad8bcf0ff4d0af
  Author: Joachim Eastwood <manabian@xxxxxxxxx>
  Date:   Thu Aug 13 19:19:40 2015 +0200

      mtd: spi-nor: add driver for NXP SPI Flash Interface (SPIFI)

      Add SPI-NOR driver for the SPI Flash Interface (SPIFI)
      controller that is found on newer NXP MCU devices.

      The controller supports serial SPI Flash devices with 1-, 2-
      and 4-bit width in either SPI mode 0 or 3. The controller
      can operate in either command or memory mode. In memory mode
      the Flash is exposed as normal memory and can be directly
      accessed by the CPU.

      Signed-off-by: Joachim Eastwood <manabian@xxxxxxxxx>
      Reviewed-by: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit 89f271c4d052063a72af2622f285f70caac91845
  Author: Joachim Eastwood <manabian@xxxxxxxxx>
  Date:   Thu Jul 9 22:19:07 2015 +0200

      doc: dt: add documentation for nxp,lpc1773-spifi

      Add device tree binding documentation for the SPI Flash Interface
      (SPIFI) found on NXP LPC18xx and LPC43xx devies.

      Signed-off-by: Joachim Eastwood <manabian@xxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit c16340973fcb6461474a9f811f7f3ff2f946b24c
  Author: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
  Date:   Mon Aug 3 11:31:26 2015 -0300

      nand: pxa3xx: Increase initial buffer size

      The initial buffer is used for the initial commands used to detect
      a flash device (STATUS, READID and PARAM).

      ONFI param page is 256 bytes, and there are three redundant copies
      to be read. JEDEC param page is 512 bytes, and there are also three
      redundant copies to be read. Hence this buffer should be at least
      512 x 3. This commits rounds the buffer size to 2048.

      Signed-off-by: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx>

  commit ca861dd0c5e36c4a2cf454049a45a961c855290a
  Author: Martin Sperl <kernel@xxxxxxxxxxxxxxxx>
  Date:   Tue Jul 28 14:03:12 2015 +0000

      spi: bcm2835: set up spi-mode before asserting cs-gpio

      When using reverse polarity for clock (spi-cpol) on a device
      the clock line gets altered after chip-select has been asserted
      resulting in an additional clock beat, which confuses hardware.

      This did not show when using native-CS, as the same register
      is used to control cs as well as polarity, so the changes came
      into effect at the same time. Unfortunately this is not true
      with gpio-cs.

      To avoid this situation this patch moves the setup of polarity
      (spi-cpol and spi-cpha) outside of the chip-select into
      prepare_message, which is run prior to asserting chip-select.

      Also fixes resetting 3-wire mode after use of rx-mode, so that
      a 3-Wire sequence TX, RX, TX works as well (right now it runs
      TX, RX, RX instead)

      Reported-by: Noralf Tronnes <noralf@xxxxxxxxxxx>
      Signed-off-by: Martin Sperl <kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 07ea400e1b26726f21b2c2299d187d6eb7eb4324
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Wed Aug 12 12:12:33 2015 +0200

      regmap: Fix regmap_can_raw_write check

      This function is missing a check if map->bus->write is implemented. If
      it is not implemented arbitrary raw writes are not possible.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit c329061be51bef655f28c9296093984c977aff85
  Author: Kishon Vijay Abraham I <kishon@xxxxxx>
  Date:   Mon Jul 27 16:54:10 2015 +0530

      regulator: pbias: Fix broken pbias disable functionality

      regulator_disable of pbias always writes '0' to the enable_reg.
      However actual disable value of pbias regulator is not always '0'.
      Fix it by populating the disable_val in pbias_reg_info for the
      various platforms and assign it to the disable_val of
      pbias regulator descriptor. This will be used by
      regulator_disable_regmap while disabling pbias regulator.

      Signed-off-by: Kishon Vijay Abraham I <kishon@xxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx>

  commit 6ec689542b5bc516187917d49b112847dfb75b0b
  Author: Vishal Verma <vishal.l.verma@xxxxxxxxx>
  Date:   Wed Jul 29 14:58:09 2015 -0600

      libnvdimm, btt: write and validate parent_uuid

      When a BTT is instantiated on a namespace it must validate the namespace
      uuid matches the 'parent_uuid' stored in the btt superblock. This
      property enforces that changing the namespace UUID invalidates all
      former BTT instances on that storage. For "IO namespaces" that don't
      have a label or UUID, the parent_uuid is set to zero, and this
      validation is skipped. For such cases, old BTTs have to be invalidated
      by forcing the namespace to raw mode, and overwriting the BTT info
      blocks.

      Based on a patch by Dan Williams <dan.j.williams@xxxxxxxxx>

      Signed-off-by: Vishal Verma <vishal.l.verma@xxxxxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit ab45e7632717b811e0786e46ca5ad279cb731b66
  Author: Vishal Verma <vishal.l.verma@xxxxxxxxx>
  Date:   Wed Jul 29 14:58:08 2015 -0600

      libnvdimm, btt: consolidate arena validation

      Use arena_is_valid as a common routine for checking the validity of an
      info block from both discover_arenas, and nd_btt_probe.

      As a result, don't check for validity of the BTT's UUID, and lbasize.
      The checksum in the BTT info block guarantees self-consistency, and when
      we're called from nd_btt_probe, we don't have a valid uuid or lbasize
      available to check against.

      Also cleanup to return a bool instead of an int.

      Signed-off-by: Vishal Verma <vishal.l.verma@xxxxxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit fbde1414acc0440024083bf0c391b259bcfc4826
  Author: Vishal Verma <vishal.l.verma@xxxxxxxxx>
  Date:   Wed Jul 29 14:58:07 2015 -0600

      libnvdimm, btt: clean up internal interfaces

      Consolidate the parameters passed to arena_is_valid into just nd_btt,
      and an info block to increase re-usability.

      Similarly, btt_arena_write_layout doesn't need to be passed a uuid, as
      it can be obtained from arena->nd_btt.

      Signed-off-by: Vishal Verma <vishal.l.verma@xxxxxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit e836a256e8fd579c9d7a3685f22981225a1ca451
  Author: Dan Williams <dan.j.williams@xxxxxxxxx>
  Date:   Wed Aug 12 18:42:56 2015 -0400

      pmem: convert to generic memremap

      Kill arch_memremap_pmem() and just let the architecture specify the
      flags to be passed to memremap().  Default to writethrough by default.

      Suggested-by: Christoph Hellwig <hch@xxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Reviewed-by: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 3103dc0304fd9c8ab576977cd98140d4fbac1730
  Author: Dan Williams <dan.j.williams@xxxxxxxxx>
  Date:   Mon Aug 10 23:07:06 2015 -0400

      visorbus: switch from ioremap_cache to memremap

      In preparation for deprecating ioremap_cache() convert its usage in
      visorbus to memremap.

      Cc: Benjamin Romer <benjamin.romer@xxxxxxxxxx>
      Cc: David Kershner <david.kershner@xxxxxxxxxx>
      Acked-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 92281dee825f6d2eb07c441437e4196a44b0861c
  Author: Dan Williams <dan.j.williams@xxxxxxxxx>
  Date:   Mon Aug 10 23:07:06 2015 -0400

      arch: introduce memremap()

      Existing users of ioremap_cache() are mapping memory that is known in
      advance to not have i/o side effects.  These users are forced to cast
      away the __iomem annotation, or otherwise neglect to fix the sparse
      errors thrown when dereferencing pointers to this memory.  Provide
      memremap() as a non __iomem annotated ioremap_*() in the case when
      ioremap is otherwise a pointer to cacheable memory. Empirically,
      ioremap_<cacheable-type>() call sites are seeking memory-like semantics
      (e.g.  speculative reads, and prefetching permitted).

      memremap() is a break from the ioremap implementation pattern of adding
      a new memremap_<type>() for each mapping type and having silent
      compatibility fall backs.  Instead, the implementation defines flags
      that are passed to the central memremap() and if a mapping type is not
      supported by an arch memremap returns NULL.

      We introduce a memremap prototype as a trivial wrapper of
      ioremap_cache() and ioremap_wt().  Later, once all ioremap_cache() and
      ioremap_wt() usage has been removed from drivers we teach archs to
      implement arch_memremap() with the ability to strictly enforce the
      mapping type.

      Cc: Arnd Bergmann <arnd@xxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

  commit 9ed71e7ad95eb9885420e8d33f33bd4d49e1b775
  Author: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 6 23:36:52 2015 +0100

      DocBook: Fix non-determinstic installation of duplicate man pages

      Some kernel-doc sections are included in multiple DocBook files.  This
      means the mandocs target will generate the same manual page multiple
      times with different metadata (author name/address and manual title,
      taken from the including DocBook file).  If it's invoked in a parallel
      build, the output is non-determinstic.

      Build the manual pages in a separate subdirectory per DocBook file,
      then sort and de-duplicate when installing them (which is serialised).

      Signed-off-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
      [jc: fixed conflicts with the docs tree]
      Signed-off-by: Jonathan Corbet <corbet@xxxxxxx>

  commit e1d46d30d133e7909e7dde06a4e867225c7e079b
  Author: Junjie Mao <junjie.mao@xxxxxxxxx>
  Date:   Fri Jul 17 10:29:00 2015 +0800

      ASoC: Intel: fix runtime pm imbalance on error

      pm_runtime_get_sync() increments the runtime PM usage counter even the
      call returns an error code. Thus a pairing decrement is needed on the
      error handling path to keep the counter balanced.

      Signed-off-by: Junjie Mao <junjie.mao@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit fbf917e14eb65689ad80290170f7d615be711fb7
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Wed Aug 12 11:10:49 2015 +0800

      ASoC: cs42l73: Use case range at appropriate place

      The readable registers are in continuous ranges: 0x01 ~ 0x03, 0x05 ~ 0x5f.
      Use case range syntax makes the code shorter with better readability when
      we have a large number of continuous switch cases.
      No functional change with this patch.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Acked-by: Brian Austin <brian.austin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 7f325bfc933d140337e55507821d6bb021321059
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Wed Aug 12 11:09:39 2015 +0800

      ASoC: cs42l56: Use case range at appropriate place

      The readable registers are in continuous range: 0x01 ~ 0x2e.
      Use case range syntax makes the code shorter with better readability when
      we have a large number of continuous switch cases.
      No functional change with this patch.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Acked-by: Brian Austin <brian.austin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 4caae9546d2cf7dbc7a12d451f847d7b58912bda
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Wed Aug 12 11:08:37 2015 +0800

      ASoC: cs42l52: Use case range at appropriate place

      The readable registers are in continuous range: 0x01 ~ 0x34.
      Use case range syntax makes the code shorter with better readability when
      we have a large number of continuous switch cases.
      No functional change with this patch.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Acked-by: Brian Austin <brian.austin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit c17633081a0dc4c9f8c28b7a77ac5b63a1780e49
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Wed Aug 12 11:07:46 2015 +0800

      ASoC: cs35l32: Use case range at appropriate places

      Use case range syntax makes the code shorter with better readability when
      we have a large number of continuous switch cases.

      Below are the summary of readable/volatile/precious registers.

      The readable registers:
              0x01 ~  0x0D, 0x0F ~ 0x1C
      The volatile registers:
              0x01 ~ 0x05, 0x15 ~ 0x18
      The precious registers:
              0x15 ~ 0x18

      No functional change with this patch.

      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Acked-by: Brian Austin <brian.austin@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 470805eb9f31be7b0b94cb8e0cbeb5910c47ce37
  Author: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
  Date:   Thu Aug 13 12:59:21 2015 +0530

      ASoC: tegra: Convert to managed resources

      Use managed resource functions devm_clk_put and
      devm_snd_soc_register_component to simplify error handling.

      To be compatible with the change various gotos are replaced
      with direct returns, and unneeded labels are dropped.

      Signed-off-by: Vaishali Thakkar <vthakkar1994@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit dbe71b9d86ee77cf58a92657c43b0e48954dc62b
  Author: Lars-Peter Clausen <lars@xxxxxxxxxx>
  Date:   Wed Aug 12 13:58:38 2015 +0200

      ASoC: ssm4567: Add sense support

      The ssm4567 has sensing circuitry that can be used to monitor the current
      and voltage on the speaker amplifier output has well as the VBAT input.
      This data can be output over the I2S interface so it can be processed by a
      DSP or similar.

      This patch adds the sense capture output stream to the CODEC DAI as well 
as
      DAPM widgets that ensure that the sensing circuitry is powered up when the
      capture stream is active.

      Signed-off-by: Lars-Peter Clausen <lars@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 7f4f800131a281a1e1738c0bc45659c1260dc96a
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Fri Aug 14 13:16:27 2015 -0300

      perf trace: Move vfs_getname storage to per thread area

      We were storing the vfs_getname payload (i.e. ptr->string) into
      the trace wide storage area (struct trace), so that we could use the
      last payload when setting up the fd->pathname per thread tables, oops,
      not a good idea for multi cpu tracing sessions...

      Fix it by moving it to the per thread area (struct thread_trace).

      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Link: http://lkml.kernel.org/n/tip-3j05ttqyaem7kh7oubvr1keo@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 75067ddecf21271631bc018d2fb23ddd09b66aae
  Author: Antti Koskipaa <antti.koskipaa@xxxxxxxxxxxxxxx>
  Date:   Fri Jul 10 14:10:55 2015 +0300

      drm/i915: Per-DDI I_boost override

      An OEM may request increased I_boost beyond the recommended values
      by specifying an I_boost value to be applied to all swing entries for
      a port. These override values are specified in VBT.

      v2: rebase and remove unused iboost_bit variable

      Issue: VIZ-5676
      Signed-off-by: Antti Koskipaa <antti.koskipaa@xxxxxxxxxxxxxxx>
      Reviewed-by: David Weinehall <david.weinehall@xxxxxxxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 622147fdad5425f6f572f84ce709303e5e0500b7
  Merge: 5a2376d d2944cf
  Author: Daniel Vetter <daniel.vetter@xxxxxxxx>
  Date:   Fri Aug 14 18:10:35 2015 +0200

      Merge tag 'drm-intel-fixes-2015-08-14' into drm-intel-next-fixes

      Backmerge drm-intel-fixes because a bunch of atomic patch backporting
      we had to do lead to horrible conflicts.

      Conflicts:
        drivers/gpu/drm/drm_crtc.c
      Just a bit of context conflict between -next and -fixes.
        drivers/gpu/drm/i915/intel_atomic.c
        drivers/gpu/drm/i915/intel_display.c
      Atomic conflicts, always pick the code from -next.

      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxxx>

  commit 5a2376d1360bfc9ebf3b554dd8db1922d42cee4b
  Author: Jani Nikula <jani.nikula@xxxxxxxxx>
  Date:   Fri Aug 14 10:53:17 2015 +0300

      drm/i915/skl: WaIgnoreDDIAStrap is forever, always init DDI A

      There is currently conflicting documentation on which steppings the
      workaround is needed, up to C vs. forever. However there is post-C
      stepping hardware that doesn't report port presence on DDI A, leading to
      black screen on eDP. Assume the strap isn't connected, and try to enable
      DDI A on these machines. (We'll still check the VBT for the info in DDI
      init.)

      Cc: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Cc: Mika Westerberg <mika.westerberg@xxxxxxxxx>
      Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit f79b468eca20dae31b6fcaaa738a7f99b764837d
  Author: Thulasimani,Sivakumar <sivakumar.thulasimani@xxxxxxxxx>
  Date:   Fri Aug 7 15:14:30 2015 +0530

      drm/i915: fix checksum write for automated test reply

      DP spec requires the checksum of the last block read to be written
      when replying to TEST_EDID_READ. This patch fixes the current code
      to do the same.

      v2: removed loop for jumping blocks and performed direct addition
      as recommended by Daniel

      Signed-off-by: Sivakumar Thulasimani <sivakumar.thulasimani@xxxxxxxxx>
      Reviewed-by: Sonika Jindal <sonika.jindal@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit ca5a0fbd53be86d2bf44769741e02e66feeacc0a
  Author: Mika Kuoppala <mika.kuoppala@xxxxxxxxx>
  Date:   Tue Aug 11 15:44:31 2015 +0100

      drm/i915: Contain the WA_REG macro

      Prevent leaking the if scoping by containing the WA_REG
      macro inside its own scope.

      Reported-by: Arun Siluvery <arun.siluvery@xxxxxxxxxxxxxxx>
      Signed-off-by: Mika Kuoppala <mika.kuoppala@xxxxxxxxx>
      Reviewed-by: Dave Gordon <david.s.gordon@xxxxxxxxx>
      [danvet: Appease checkpatch.]
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 37876df61f279099334e0108bac9d28ee9789052
  Author: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
  Date:   Sat Aug 8 14:02:36 2015 +0100

      drm/i915: Remove the failed context from the fpriv->context_idr

      If we encounter an allocation failure during ppggt creation (trivial
      even with 16Gib+ RAM!), we need to remove the dead context from the
      fpriv->context_idr along with the references.

      gem_exec_ctx: page allocation failure: order:0, mode:0x8004
      CPU: 3 PID: 27272 Comm: gem_exec_ctx Tainted: G        W       4.2.0-rc5+ 
#37
       0000000000000000 ffff880086ff7a78 ffffffff816b947a ffff88041ed90038
       0000000000008004 ffff880086ff7b08 ffffffff8114b1a5 ffff880086ff7ac8
       ffffffff8108d848 0000000000000000 ffffffff81ce84b8 0000000000000000
      Call Trace:
       [<ffffffff816b947a>] dump_stack+0x45/0x57
       [<ffffffff8114b1a5>] warn_alloc_failed+0xd5/0x120
       [<ffffffff8108d848>] ? __wake_up+0x48/0x60
       [<ffffffff8114e0ed>] __alloc_pages_nodemask+0x73d/0x8e0
       [<ffffffffc0472238>] ? i915_gem_execbuffer2+0x148/0x240 [i915]
       [<ffffffffc0474240>] __setup_page_dma+0x30/0x110 [i915]
       [<ffffffffc0477f61>] gen8_ppgtt_init+0x31/0x2f0 [i915]
       [<ffffffffc04785e0>] i915_ppgtt_init+0x30/0x80 [i915]
       [<ffffffffc0478928>] i915_ppgtt_create+0x48/0xc0 [i915]
       [<ffffffffc046c9c2>] i915_gem_create_context+0x1c2/0x390 [i915]
       [<ffffffffc046d9cb>] i915_gem_context_create_ioctl+0x5b/0xa0 [i915]

      leading to an oops in i915_gem_context_close. Also note that this
      benchmark should not be running out of memory in the first place...

      Testcase: igt/benchmark/gem_exec_ctx -b create # ppgtt >= 2
      Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Mika Kuoppala <mika.kuoppala@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit eb5be9d0e7e78fd2b9f34c63dd2535ab6f985739
  Author: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 7 20:24:15 2015 +0100

      drm/i915: Report IOMMU enabled status for GPU hangs

      The IOMMU for Intel graphics has historically had many issues resulting
      in random GPU hangs. Lets include its status when capturing the GPU hang
      error state for post-mortem analysis.

      Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 031a8936dc660e7ae2485eb7493eba1876cf25fe
  Author: Mika Kuoppala <mika.kuoppala@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 6 17:09:17 2015 +0300

      drm/i915: Check idle to active before processing CSQ

      If idle to active bit is set, the rest of the fields
      in CSQ are not valid.

      Bail out early if this is the case in order to prevent
      rest of the loop inspecting stale values.

      This was found by Bspec/code inspection. Doesn't seem to fix any of
      the known issues.

      Signed-off-by: Mika Kuoppala <mika.kuoppala@xxxxxxxxx>
      Reviewed-by: Arun Siluvery <arun.siluvery@xxxxxxxxxxxxxxx>
      [danvet: Add note about how this was found.]
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 500ea70d503ed9ba448611049a4a718c2761a5f2
  Author: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
  Date:   Fri Aug 7 17:01:16 2015 -0700

      drm/i915: Set alternate aux for DDI-E

      There is no correspondent Aux channel for DDI-E.

      So we need to rely on VBT to let us know witch one
      is being used instead.

      v2: Removing some trailing spaces and giving proper
      credit to Xiong that added a nice way to avoid port
      conflicts by setting supports_dp = 0 when using
      equivalent aux for DDI-E.

      Credits-to: Xiong Zhang <xiong.y.zhang@xxxxxxxxx>
      Signed-off-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
      Reviewed-by: Xiong Zhang <xiong.y.zhang@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit a513e3d75a3bb41cf2648764a2567879f6d138e5
  Author: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
  Date:   Thu Aug 6 15:51:37 2015 +0800

      drm/i915: Set power domain for DDI-E

      DDI-E and DDI-A share 4 the same DDI-A lanes.

      Signed-off-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
      Reviewed-by: Xiong Zhang <xiong.y.zhang@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 3774eb507e7b7df7f9b7d8d867eea330c7146aaa
  Author: Paulo Zanoni <paulo.r.zanoni@xxxxxxxxx>
  Date:   Mon Aug 10 14:57:32 2015 -0300

      drm/i915: fix stolen bios_reserved checks

      I started digging this when I noticed that the BDW code was just
      reserving 1mb by coincidence since it was reading reserved fields.
      Then I noticed we didn't have any values set for SNB and earlier, and
      that the HSW sizes were wrong. After that, I noticed that the reserved
      area has a specific start, and may not exactly end where the stolen
      memory ends. I also noticed the base pointer can be zero. So I decided
      to just write a single patch fixing everything instead of 20 patches
      that would be much harder to review.

      This patch may solve random stolen memory corruption/problems on
      almost all platforms. Notice that since this is always dealing with
      the top of the stolen memory, the problems are not so easy to
      reproduce - especially since FBC is still disabled by default.

      One of the major differences of this patch is that we now look at both
      the size and base address. By only looking at the size we were
      assuming that the reserved area was always at the very top of
      stolen, which is not always true.

      After we merge the patch series that allows user space to allocate
      stolen memory we'll be able to write IGT tests that maybe catch the
      bugs fixed by this patch.

      v2:
        - s/BIOS reserved/stolen reserved/g (Chris)
        - Don't DRM_ERROR if we can't do anything about it (Chris)
        - Improve debug messages (Chris).
        - Use the gen7 version instead of gen6 on HSW. Tom found some
          documentation problems, so I think with gen7 we're on the safer
          side (Tom).

      Signed-off-by: Paulo Zanoni <paulo.r.zanoni@xxxxxxxxx>
      Reviewed-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit cc53699b25b59eb1020af8064f99edd0014b7071
  Author: Mika Kuoppala <mika.kuoppala@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 6 17:00:59 2015 +0300

      drm/i915: Use masked write for Context Status Buffer Pointer

      This register needs to be updated with masked writes.

      This was found by code inspection and comparison with Bspec and
      doesn't seem to fix any known issue.

      Signed-off-by: Mika Kuoppala <mika.kuoppala@xxxxxxxxx>
      Reviewed-by: Michel Thierry <michel.thierry@xxxxxxxxx>
      [danvet: Add note about impact.]
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 9bd9dfb4f9a1edcbb561a80d00c234fbe11dc1a6
  Author: Mika Kuoppala <mika.kuoppala@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 6 16:51:00 2015 +0300

      drm/i915/skl WaDisableSbeCacheDispatchPortSharing

      Add WaDisableSbeCacheDispatchPortSharing:skl

      Cc: Arun Siluvery <arun.siluvery@xxxxxxxxxxxxxxx>
      Signed-off-by: Mika Kuoppala <mika.kuoppala@xxxxxxxxx>
      Reviewed-by: Arun Siluvery <arun.siluvery@xxxxxxxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 02196c776ec67e05d3003926ba648bd2eab20e29
  Author: Mika Kuoppala <mika.kuoppala@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 6 16:48:58 2015 +0300

      drm/i915: Spam less on dp aux send/receive problems

      If we encounter frequent problems with dp aux channel
      communications, we end up spamming the dmesg with the
      exact similar trace and status.

      Inject a new backtrace only if we have new information
      to share as otherwise we flush out all other important
      stuff.

      Signed-off-by: Mika Kuoppala <mika.kuoppala@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 842315ee7e416fa2f37c649c8a9ae6d6960b42a6
  Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 12:37:11 2015 +0200

      drm/i915: Handle return value in intel_pin_and_fence_fb_obj, v2.

      -EDEADLK has special meaning in atomic, but get_fence may call
      i915_find_fence_reg which can return -EDEADLK.

      This has special meaning in the atomic world, so convert the error
      to -EBUSY for this case.

      Changes since v1:
      - Add comment in the code.

      Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 4740b0f2b80cc7810bf5fa871189c318b08dbc46
  Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 12:37:10 2015 +0200

      drm/i915: Only update mode related state if a modeset happened.

      The rest will be a noop anyway, since without modeset there will be
      no updated dplls and no modeset state to update.

      Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 2d406bb0d95c8dfdee4389471869a6e48c7b3432
  Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 12:37:09 2015 +0200

      drm/i915: Remove connectors_active.

      There are no more users, byebye!

      Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
      Reviewed-by: Ander Conselvan de Oliveira <conselvan2@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit e02f9a0610c1cbc6395858d1f2b68c48b820a971
  Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 12:37:08 2015 +0200

      drm/i915: Remove connectors_active from intel_dp.c, v2.

      Now that everything's atomic, checking encoder->base.crtc is enough.
      This function doesn't have the locks to dereference crtc->state, but
      stealing an encoder bound to any crtc is probably enough reason to warn.

      Changes since v1:
      - Commit message.

      Cc: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
      Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
      Reviewed-by: Ander Conselvan de Oliveira <conselvan2@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 873ffe69a9097fb241fff2967ea6f0bf2c179195
  Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 12:37:07 2015 +0200

      drm/i915: Remove connectors_active from sanitization, v2.

      connectors_active will be removed, so just calculate this instead.

      Changes since v1:
      - Look for the right pointer in intel_sanitize_encoder.

      Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
      Reviewed-by: Ander Conselvan de Oliveira <conselvan2@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 4d688a2a15a52225289754627fc3a35f68c125ec
  Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 12:37:06 2015 +0200

      drm/i915: Get rid of dpms handling.

      This is now done completely atomically.
      Keep connectors_active for now, but make it mirror crtc_state->active.

      Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
      Reviewed-by: Ander Conselvan de Oliveira <conselvan2@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 4d20cd860bbe908ef62aa4673eeac8f8f2c43735
  Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 12:37:05 2015 +0200

      drm/i915: Make crtc checking use the atomic state, v2.

      Instead of allocating pipe_config on the stack use the old
      crtc_state, it's only going to freed from this point on.

      All crtc' are now only checked once during modeset,
      because false positives can happen with encoders after
      dpms changes and to limit the amount of errors for 1 failure.

      Changes since v1:
      - crtc_state -> old_crtc_state
      - state -> old_state

      Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
      Reviewed-by: Ander Conselvan de Oliveira <conselvan2@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 7c60d1984afa482f0648d963206124df6dca325e
  Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 12:37:04 2015 +0200

      drm/i915: Remove connectors_active from state checking.

      Connectors are updated atomically now, so the only interaction
      with the encoder is through base.crtc.

      If it's NULL the encoder's not part of any crtc, and if it's
      not NULL then active should be equal to crtc_state->active.

      Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
      Reviewed-by: Ander Conselvan de Oliveira <conselvan2@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 7b89b8de4e90d3c08f845e2b559929c8f77981ae
  Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 12:37:03 2015 +0200

      drm/i915: Remove some unneeded checks from check_crtc_state.

      This is handled by the atomic core now, no need to check this for ourself.

      Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
      Reviewed-by: Ander Conselvan de Oliveira <conselvan2@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 35dd3c6450a6dc05781e391d6669df34044a7e0f
  Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 6 13:49:22 2015 +0200

      drm/i915: Convert connector checking to atomic, v3.

      Right now dpms callbacks can still fiddle with the connector state,
      but it can only turn connectors off.

      This is remediated by only checking crtc->state->active when the
      connector is active, and ignore crtc->state->active when the
      connector is off.

      connectors_active is no longer checked, and will be removed later
      in this series together with dpms.

      Another check for !encoder->crtc is performed by check_encoder_state
      too, so it can be removed.

      Changes since v1:
      - Add commit message.
      - rename state to old_state.
      - Move deletion of mst_port check to mst patch.
      Changes since v2:
      - Fix a null pointer dereference on MST now hw readout is fixed.

      Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
      Reviewed-by: Ander Conselvan de Oliveira <conselvan2@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 20fae983c6667d038e810c618e3340946b8dc506
  Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
  Date:   Thu Aug 6 13:47:36 2015 +0200

      drm/i915: Update atomic state when removing mst connector, v3.

      Fully remove the MST connector from the atomic state, and remove the
      early returns in check_*_state for MST connectors.

      With atomic the state can be made consistent all the time.

      Thanks to Sivakumar Thulasimani for the idea of using
      drm_atomic_helper_set_config.

      Changes since v1:
      - Remove the MST check in intel_connector_check_state too.
      Changes since v2:
      - Use drm_atomic_helper_set_config.

      Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
      Cc: Sivakumar Thulasimani <sivakumar.thulasimani@xxxxxxxxx>
      Reviewed-by: Sivakumar Thulasimani <sivakumar.thulasimani@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit ee165b1a6e0269e5badde679f72fe39d3d15a7d4
  Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 12:37:00 2015 +0200

      drm/i915: Validate the state after an atomic modeset only, and pass the 
state.

      First step in removing dpms and validating atomic state.

      There can still be a mismatch in the connector state because the dpms
      callbacks are still used, but this can not happen immediately after a 
modeset.

      Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
      Reviewed-by: Ander Conselvan de Oliveira <conselvan2@xxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit c4e2d043ffb3714e63931aec52b8b920cc767367
  Author: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 12:36:59 2015 +0200

      drm/i915: Make the force_thru workaround atomic, v2.

      Set connectors_changed to force a modeset if the panel fitter's force
      enabled on eDP.

      Changes since v1:
      - Use connectors_changed instead of active_changed because it's a
        routing update.

      Signed-off-by: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 8f9c98df949333f08b74e5df1caacf7e2c5e8552
  Author: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>
  Date:   Sun Jul 19 16:09:12 2015 +0300

      mac80211: fix BIT position for TDLS WIDE extended cap

      The bit was not according to ieee80211 specification.
      Fix that.

      Reviewed-by: Arik Nemtsov <arik@xxxxxxxxxx>
      Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 40d9a38ad3b7029be9c278738b67cbdb6349ce85
  Author: Johannes Berg <johannes.berg@xxxxxxxxx>
  Date:   Mon Jul 13 12:26:46 2015 +0200

      mac80211: use DECLARE_EWMA

      Instead of using the out-of-line average calculation, use the new
      DECLARE_EWMA() macro to declare a signal EWMA, and use that.

      This actually *reduces* the code size slightly (on x86-64) while
      also reducing the station info size by 80 bytes.

      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 2377799c084d86d22074cd4acd20edc32024d669
  Author: Johannes Berg <johannes.berg@xxxxxxxxx>
  Date:   Mon Jul 13 12:17:25 2015 +0200

      average: provide macro to create static EWMA

      Having the EWMA parameters stored in the runtime struct imposes
      memory requirements for the constant values that could just be
      inlined in the code. This particularly makes sense if there are
      a lot of such structs, for example in mac80211 in the station
      table where each station has a number of these in an array, and
      there can be many stations.

      Provide a macro DECLARE_EWMA() that declares the necessary struct
      and inline functions to access it with the parameters hard-coded;
      using this also means the user no longer needs to 'select AVERAGE'
      as it's entirely self-contained.

      In the mac80211 case, on x86-64, this actually slightly *reduces*
      code size, while also saving 80 bytes of runtime memory per sta.

      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 2459cd876e2828dc63c19ea5dadf8a94a8f11244
  Author: Su Kang Yin <cantona@xxxxxxxxxxx>
  Date:   Fri Aug 7 16:54:10 2015 +0800

      mac80211_hwsim: unregister genetlink family properly

      During hwsim_init_netlink(), we should call genl_unregister_family()
      if failed on netlink_register_notifier() since the genetlink is
      already registered.

      Signed-off-by: Su Kang Yin <cantona@xxxxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit b119ad6e726cc805f739f8f6843b9de4df1f895e
  Author: Lorenzo Bianconi <lorenzo.bianconi83@xxxxxxxxx>
  Date:   Thu Aug 6 23:47:33 2015 +0200

      mac80211: add rate mask logic for vht rates

      Define rc_rateidx_vht_mcs_mask array and rate_idx_match_vht_mcs_mask()
      method in order to apply mcs mask for vht rates

      Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi83@xxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit e910867bd285bb8470c47076d99d0325aaea895c
  Author: Lorenzo Bianconi <lorenzo.bianconi83@xxxxxxxxx>
  Date:   Thu Aug 6 23:47:32 2015 +0200

      mac80211: define rate_control_apply_mask_ratetbl()

      Define rate_control_apply_mask_ratetbl() in order to apply ratemask in
      rate_control_set_rates() for station rate table

      Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi83@xxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 90c66bd2232ae6d3c88c1f3378e3028fded642b3
  Author: Lorenzo Bianconi <lorenzo.bianconi83@xxxxxxxxx>
  Date:   Thu Aug 6 23:47:31 2015 +0200

      mac80211: remove ieee80211_tx_rate dependency in rate mask code

      Remove ieee80211_tx_rate dependency in rate_idx_match_legacy_mask(),
      rate_idx_match_mcs_mask() and rate_idx_match_mask() in order to use the
      previous logic to define a ratemask in rate_control_set_rates() for
      station rate table. Moreover move rate mask definition logic in
      rate_control_cap_mask()

      Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi83@xxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 35225eb7a5589407299033bfa7e1ac723b17e2b5
  Author: Lorenzo Bianconi <lorenzo.bianconi83@xxxxxxxxx>
  Date:   Thu Aug 6 23:47:30 2015 +0200

      mac80211: remove ieee80211_tx_info from rate_control_apply_mask signature

      Remove unnecessary ieee80211_tx_info pointer from rate_control_apply_mask
      signature. rate_control_apply_mask() will be used to define a ratemask in
      rate_control_set_rates() for station rate table

      Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi83@xxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 4b819f6cc4221ea6dd250e006f7b9ab0f6c71b45
  Author: Bertold Van den Bergh <bertold.vandenbergh@xxxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 16:02:50 2015 +0200

      mac80211: Make OCB mode set BSSID

      Perform the BSS_CHANGED_BSSID action when joining an OCB network.
      This is required to set the broadcast BSSID in some network drivers.

      Signed-off-by: Bertold Van den Bergh 
<bertold.vandenbergh@xxxxxxxxxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit cc11729893558b374316e6142dc383f0508436c8
  Author: Bertold Van den Bergh <bertold.vandenbergh@xxxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 16:02:42 2015 +0200

      mac80211: Only accept data frames in OCB mode

      Currently OCB mode accepts frames with bssid==broadcast and type!=beacon.
      Some non-data frames are sent matching this, for example probe responses.
      This results in unnecessary creation of STA entries.

      Signed-off-by: Bertold Van den Bergh 
<bertold.vandenbergh@xxxxxxxxxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 5765f9f66e72ddedfe04e057a5a01454d7b67157
  Author: Bertold Van den Bergh <bertold.vandenbergh@xxxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 16:02:28 2015 +0200

      mac80211: Set txrc.bss to true for OCB interfaces

      To make mac80211 accept the multicast rate requested by the user the
      rate control should be told that it is operating in BSS mode.
      Without this, the default rate is selected in rate_control_send_low
      (!pubsta and !txrc->bss)

      Signed-off-by: Bertold Van den Bergh 
<bertold.vandenbergh@xxxxxxxxxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 876dc9308e8b8a8fb57059234e57f4145c870c3c
  Author: Bertold Van den Bergh <bertold.vandenbergh@xxxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 16:02:21 2015 +0200

      nl80211: Allow setting multicast rate on OCB interfaces

      Allow setting multicast rate on OCB interfaces.
      Current behaviour results in EOPNOTSUPP when attempting this.

      Signed-off-by: Bertold Van den Bergh 
<bertold.vandenbergh@xxxxxxxxxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 9189ee31df40f88808daee10aa7f99ba43ff8b13
  Author: Michal Kazior <michal.kazior@xxxxxxxxx>
  Date:   Mon Aug 3 10:55:24 2015 +0200

      cfg80211: propagate set_wiphy failure to userspace

      If driver failed to setup wiphy params (e.g. rts
      threshold, fragmentation treshold) userspace
      wasn't properly notified about this. This could
      lead to user confusion who would think the command
      succeeded even if that wasn't the case.

      Signed-off-by: Michal Kazior <michal.kazior@xxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 4edd56981c8fbb349b1529a2feaf772636eb1c83
  Author: Matthias May <matthias.may@xxxxxxxxxxx>
  Date:   Fri Jul 17 15:28:39 2015 +0200

      cfg80211: regulatory: handle 5 and 10 MHz channels properly

      The original assumption of 20MHz wide channels hasn't been true since
      the addition of support for 5 and 10 MHz channels.
      Change the code to no longer disable all channels that don't fit into
      the 20MHz grid, but instead set the appropriate flags to disable
      operation on specific bandwidths.

      Signed-off-by: Matthias May <matthias.may@xxxxxxxxxxx>
      [reword commit message]
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 74346841e6f5df5f7b83d5904435d273c507dba6
  Author: Ricardo Ribalda Delgado <ricardo.ribalda@xxxxxxxxx>
  Date:   Thu Aug 13 16:09:28 2015 +0200

      spi/spi-xilinx: Fix spurious IRQ ACK on irq mode

      The ACK of an inexistent IRQ can trigger an spurious IRQ that breaks the
      txrx logic. This has been observed on axi_quad_spi:3.2 core.

      This patch only ACKs IRQs that have not been Acknowledge jet.

      Reported-by: Edward Kigwana <ekigwana@xxxxxxxxxx>
      Tested-by: Edward Kigwana <ekigwana@xxxxxxxxxx>
      Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 9d8352864907f0ad76124c5b28f65b5a382d7d7c
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Fri Aug 14 17:54:07 2015 +0800

      ASoC: adav80x: Remove .read_flag_mask setting from adav80x_regmap_config

      Don't set .read_flag_mask for adav803, it's for adav801 only.

      Fixes: 0c2d69645628 ("ASoC: adav80x: Split SPI and I2C code into 
different modules")
      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Acked-by: Lars-Peter Clausen <lars@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 3ee550f12c1529a023f71c9b5becb3351911047b
  Author: David Woodhouse <David.Woodhouse@xxxxxxxxx>
  Date:   Fri Aug 14 16:17:16 2015 +0100

      modsign: Handle signing key in source tree

      Since commit 1329e8cc69 ("modsign: Extract signing cert from
      CONFIG_MODULE_SIG_KEY if needed"), the build system has carefully coped
      with the signing key being specified as a relative path in either the
      source or or the build trees.

      However, the actual signing of modules has not worked if the filename
      is relative to the source tree.

      Fix that by moving the config_filename helper into scripts/Kbuild.include
      so that it can be used from elsewhere, and then using it in the top-level
      Makefile to find the signing key file.

      Kill the intermediate $(MODPUBKEY) and $(MODSECKEY) variables too, while
      we're at it. There's no need for them.

      Signed-off-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>

  commit 62172c81f2d6c2311284467d6aaa00bd8967e136
  Author: David Woodhouse <David.Woodhouse@xxxxxxxxx>
  Date:   Fri Aug 14 15:33:56 2015 +0100

      modsign: Use if_changed rule for extracting cert from module signing key

      We couldn't use if_changed for this before, because it didn't live in
      the kernel/ directory so we couldn't add it to $(targets). It was easier
      just to leave it as it was.

      Now it's in the certs/ directory we can use if_changed, the same as we
      do for the trusted certificate list.

      Aside from making things consistent, this means we don't need to depend
      explicitly on the include/config/module/sig/key.h file. And we also get
      to automatically do the right thing and re-extract the cert if the user
      does odd things like using a relative filename and then playing silly
      buggers with adding/removing that file in both the source and object
      trees. We always favour the one in the object tree if it exists, and
      now we'll correctly re-extract the cert when it changes. Previously we'd
      *only* re-extract the cert if the config option changed, even if the
      actual file we're using did change.

      Signed-off-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>

  commit cfc411e7fff3e15cd6354ff69773907e2c9d1c0c
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Fri Aug 14 15:20:41 2015 +0100

      Move certificate handling to its own directory

      Move certificate handling out of the kernel/ directory and into a certs/
      directory to get all the weird stuff in one place and move the generated
      signing keys into this directory.

      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
      Reviewed-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>

  commit bc18e31c3042f14fa5f2ff5c21136e2fdf4140f8
  Author: Julian Scheel <julian@xxxxxxxx>
  Date:   Fri Aug 14 16:14:45 2015 +0200

      ALSA: usb-audio: Fix parameter block size for UAC2 control requests

      USB Audio Class version 2.0 supports three different parameter block 
sizes for
      CUR requests, which are 1 byte (5.2.3.1 Layout 1 Parameter Block), 2 bytes
      (5.2.3.2 Layout 2 Parameter Block) and 4 bytes (5.2.3.3 Layout 3 Parameter
      Block). Use the correct size according to the specific control as it was
      already done for UACv1. The allocated block size for control requests is
      increased to support the 4 byte worst case.

      Signed-off-by: Julian Scheel <julian@xxxxxxxx>
      Signed-off-by: Takashi Iwai <tiwai@xxxxxxx>

  commit 258d9bc5e77fa40e290a0bd480d5349224374480
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Fri Aug 14 16:17:52 2015 +0200

      ARM: tegra: Update multi_v7_defconfig

      Add Tegra-specific configuration options to multi_v7_defconfig:

        * HDA controller and codec support
        * Watchdog support
        * Nouveau (for GK20A GPU) support

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 461cfe4e2f5d000f76a38fb7cefd2fedf42c9026
  Author: Tuomas Tynkkynen <ttynkkynen@xxxxxxxxxx>
  Date:   Wed May 13 17:58:51 2015 +0300

      ARM: tegra: Update default configuration

        * CPU frequency scaling for Tegra124
        * Nouveau (for GK20A GPU) support

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit f0d9ac7510ee06162c9db31851a1169ae716867e
  Merge: 1f408d5 73c8f0c 05aa7d6
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Fri Aug 14 08:21:16 2015 -0500

      Merge branches 'pci/host-dra7xx' and 'pci/host-iproc' into next

      * pci/host-dra7xx:
        ARM: dts: am57xx-evm: Add 'gpios' property with gpio2_8
        PCI: dra7xx: Add support to make GPIO drive PERST# line
        PCI: dra7xx: Clear MSE bit during suspend so clocks will idle
        PCI: dra7xx: Add PM support
        PCI: dra7xx: Disable pm_runtime on get_sync failure

      * pci/host-iproc:
        PCI: iproc: Allow BCMA bus driver to be built as module
        PCI: iproc: Add arm64 support
        PCI: iproc: Delete unnecessary checks before phy calls

  commit 1f408d57437e53ae9aa6edb335ff9fe7ba7aba2c
  Merge: 5a4f3cf 2db0f71 f7ef134 3e14675 95e1658
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Fri Aug 14 08:16:29 2015 -0500

      Merge branches 'pci/hotplug', 'pci/iommu', 'pci/irq' and 
'pci/virtualization' into next

      * pci/hotplug:
        PCI: pciehp: Remove ignored MRL sensor interrupt events
        PCI: pciehp: Remove unused interrupt events
        PCI: pciehp: Handle invalid data when reading from non-existent devices
        PCI: Hold pci_slot_mutex while searching bus->slots list
        PCI: Protect pci_bus->slots with pci_slot_mutex, not pci_bus_sem
        PCI: pciehp: Simplify pcie_poll_cmd()
        PCI: Use "slot" and "pci_slot" for struct hotplug_slot and struct 
pci_slot

      * pci/iommu:
        PCI: Remove pci_ats_enabled()
        PCI: Stop caching ATS Invalidate Queue Depth
        PCI: Move ATS declarations to linux/pci.h so they're all together
        PCI: Clean up ATS error handling
        PCI: Use pci_physfn() rather than looking up physfn by hand
        PCI: Inline the ATS setup code into pci_ats_init()
        PCI: Rationalize pci_ats_queue_depth() error checking
        PCI: Reduce size of ATS structure elements
        PCI: Embed ATS info directly into struct pci_dev
        PCI: Allocate ATS struct during enumeration
        iommu/vt-d: Cache PCI ATS state and Invalidate Queue Depth

      * pci/irq:
        PCI: Kill off set_irq_flags() usage

      * pci/virtualization:
        PCI: Add ACS quirks for Intel I219-LM/V

  commit 9e8df8a219635c5af36a49d78c1f69009b780339
  Author: Daniel Axtens <dja@xxxxxxxxxx>
  Date:   Fri Aug 14 17:41:26 2015 +1000

      cxl: EEH support

      EEH (Enhanced Error Handling) allows a driver to recover from the
      temporary failure of an attached PCI card. Enable basic CXL support
      for EEH.

      Signed-off-by: Daniel Axtens <dja@xxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 13e68d8bd05c998cae452a4f3400af1e8edd852e
  Author: Daniel Axtens <dja@xxxxxxxxxx>
  Date:   Fri Aug 14 17:41:25 2015 +1000

      cxl: Allow the kernel to trust that an image won't change on PERST.

      Provide a kernel API and a sysfs entry which allow a user to specify
      that when a card is PERSTed, it's image will stay the same, allowing
      it to participate in EEH.

      cxl_reset is used to reflash the card. In that case, we cannot safely
      assert that the image will not change. Therefore, disallow cxl_reset
      if the flag is set.

      Signed-off-by: Daniel Axtens <dja@xxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 4e1efb403c1c016ae831bd9988a7d2e5e0af41a0
  Author: Daniel Axtens <dja@xxxxxxxxxx>
  Date:   Fri Aug 14 17:41:24 2015 +1000

      cxl: Don't remove AFUs/vPHBs in cxl_reset

      If the driver doesn't participate in EEH, the AFUs will be removed
      by cxl_remove, which will be invoked by EEH.

      If the driver does particpate in EEH, the vPHB needs to stick around
      so that the it can particpate.

      In both cases, we shouldn't remove the AFU/vPHB.

      Reviewed-by: Cyril Bur <cyrilbur@xxxxxxxxx>
      Signed-off-by: Daniel Axtens <dja@xxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit d76427b0d89524fdb623774a22a005ba5c400134
  Author: Daniel Axtens <dja@xxxxxxxxxx>
  Date:   Fri Aug 14 17:41:23 2015 +1000

      cxl: Refactor AFU init/teardown

      As with an adapter, some aspects of initialisation are done only once
      in the lifetime of an AFU: for example, allocating memory, or setting
      up sysfs/debugfs files.

      However, we may want to be able to do some parts of the initialisation
      multiple times: for example, in error recovery we want to be able to
      tear down and then re-map IO memory and IRQs.

      Therefore, refactor AFU init/teardown as follows.

       - Create two new functions: 'cxl_configure_afu', and its pair
         'cxl_deconfigure_afu'. As with the adapter functions,
         these (de)configure resources that do not need to last the entire
         lifetime of the AFU.

       - Allocating and releasing memory remain the task of 'cxl_alloc_afu'
         and 'cxl_release_afu'.

       - Once-only functions that do not involve allocating/releasing memory
         stay in the overarching 'cxl_init_afu'/'cxl_remove_afu' pair.
         However, the task of picking an AFU mode and activating it has been
         broken out.

      Signed-off-by: Daniel Axtens <dja@xxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit c044c4154247372c86b468644de88a4e48f903e9
  Author: Daniel Axtens <dja@xxxxxxxxxx>
  Date:   Fri Aug 14 17:41:22 2015 +1000

      cxl: Refactor adaptor init/teardown

      Some aspects of initialisation are done only once in the lifetime of
      an adapter: for example, allocating memory for the adapter,
      allocating the adapter number, or setting up sysfs/debugfs files.

      However, we may want to be able to do some parts of the
      initialisation multiple times: for example, in error recovery we
      want to be able to tear down and then re-map IO memory and IRQs.

      Therefore, refactor CXL init/teardown as follows.

       - Keep the overarching functions 'cxl_init_adapter' and its pair,
         'cxl_remove_adapter'.

       - Move all 'once only' allocation/freeing steps to the existing
         'cxl_alloc_adapter' function, and its pair 'cxl_release_adapter'
         (This involves moving allocation of the adapter number out of
         cxl_init_adapter.)

       - Create two new functions: 'cxl_configure_adapter', and its pair
         'cxl_deconfigure_adapter'. These two functions 'wire up' the
         hardware --- they (de)configure resources that do not need to
         last the entire lifetime of the adapter

      Signed-off-by: Daniel Axtens <dja@xxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 575e6986f028711287fbbf250e5289a089bac8cb
  Author: Daniel Axtens <dja@xxxxxxxxxx>
  Date:   Fri Aug 14 17:41:21 2015 +1000

      cxl: Clean up adapter MMIO unmap path.

      - MMIO pointer unmapping is guarded by a null pointer check.
         However, iounmap doesn't null the pointer, just invalidate it.
         Therefore, explicitly null the pointer after unmapping.

       - afu_desc_mmio also needs to be unmapped.

       - PCI regions are allocated in cxl_map_adapter_regs.
         Therefore they should be released in unmap, not elsewhere.

      Acked-by: Cyril Bur <cyrilbur@xxxxxxxxx>
      Signed-off-by: Daniel Axtens <dja@xxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit e640d2fc811ff8cc1451f92490d3ccc2adcad179
  Author: Daniel Axtens <dja@xxxxxxxxxx>
  Date:   Fri Aug 14 17:41:20 2015 +1000

      cxl: Make IRQ release idempotent

      Check if an IRQ is mapped before releasing it.

      This will simplify future EEH code by allowing unconditional unmapping
      of IRQs.

      Acked-by: Cyril Bur <cyrilbur@xxxxxxxxx>
      Signed-off-by: Daniel Axtens <dja@xxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 05155772f642a5b0e421adf2017f993759bf7f95
  Author: Daniel Axtens <dja@xxxxxxxxxx>
  Date:   Fri Aug 14 17:41:19 2015 +1000

      cxl: Allocate and release the SPA with the AFU

      Previously the SPA was allocated and freed upon entering and leaving
      AFU-directed mode. This causes some issues for error recovery - contexts
      hold a pointer inside the SPA, and they may persist after the AFU has
      been detached.

      We would ideally like to allocate the SPA when the AFU is allocated, and
      release it until the AFU is released. However, we don't know how big the
      SPA needs to be until we read the AFU descriptor.

      Therefore, restructure the code:

       - Allocate the SPA only once, on the first attach.

       - Release the SPA only when the entire AFU is being released (not
         detached). Guard the release with a NULL check, so we don't free
         if it was never allocated (e.g. dedicated mode)

      Acked-by: Cyril Bur <cyrilbur@xxxxxxxxx>
      Signed-off-by: Daniel Axtens <dja@xxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 0b3f9c757cabad4b8101c5fcddddd029ed5506a6
  Author: Daniel Axtens <dja@xxxxxxxxxx>
  Date:   Fri Aug 14 17:41:18 2015 +1000

      cxl: Drop commands if the PCI channel is not in normal state

      If the PCI channel has gone down, don't attempt to poke the hardware.

      We need to guard every time cxl_whatever_(read|write) is called. This
      is because a call to those functions will dereference an offset into an
      mmio register, and the mmio mappings get invalidated in the EEH
      teardown.

      Check in the read/write functions in the header.
      We give them the same semantics as usual PCI operations:
       - a write to a channel that is down is ignored.
       - a read from a channel that is down returns all fs.

      Also, we try to access the MMIO space of a vPHB device as part of the
      PCI disable path. Because that's a read that bypasses most of our usual
      checks, we handle it explicitly.

      As far as user visible warnings go:
       - Check link state in file ops, return -EIO if down.
       - Be reasonably quiet if there's an error in a teardown path,
         or when we already know the hardware is going down.
       - Throw a big WARN if someone tries to start a CXL operation
         while the card is down. This gives a useful stacktrace for
         debugging whatever is doing that.

      Signed-off-by: Daniel Axtens <dja@xxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 588b34be20bc3dd7441c108c95039933699467ab
  Author: Daniel Axtens <dja@xxxxxxxxxx>
  Date:   Fri Aug 14 17:41:17 2015 +1000

      cxl: Convert MMIO read/write macros to inline functions

      We're about to make these more complex, so make them functions
      first.

      Signed-off-by: Daniel Axtens <dja@xxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit e642d11bdbfe8eb10116ab3959a2b5d75efda832
  Author: Daniel Axtens <dja@xxxxxxxxxx>
  Date:   Fri Aug 14 16:03:19 2015 +1000

      powerpc/eeh: Probe after unbalanced kref check

      In the complete hotplug case, EEH PEs are supposed to be released
      and set to NULL. Normally, this is done by eeh_remove_device(),
      which is called from pcibios_release_device().

      However, if something is holding a kref to the device, it will not
      be released, and the PE will remain. eeh_add_device_late() has
      a check for this which will explictly destroy the PE in this case.

      This check in eeh_add_device_late() occurs after a call to
      eeh_ops->probe(). On PowerNV, probe is a pointer to pnv_eeh_probe(),
      which will exit without probing if there is an existing PE.

      This means that on PowerNV, devices with outstanding krefs will not
      be rediscovered by EEH correctly after a complete hotplug. This is
      affecting CXL (CAPI) devices in the field.

      Put the probe after the kref check so that the PE is destroyed
      and affected devices are correctly rediscovered by EEH.

      Fixes: d91dafc02f42 ("powerpc/eeh: Delay probing EEH device during 
hotplug")
      Cc: stable@xxxxxxxxxxxxxxx
      Cc: Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Daniel Axtens <dja@xxxxxxxxxx>
      Acked-by: Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit 0e38c35815f50e5a347977d76fb5eb4c3bf020b5
  Merge: e4fc02f 3d04c92
  Author: James Morris <james.l.morris@xxxxxxxxxx>
  Date:   Fri Aug 14 17:35:10 2015 +1000

      Merge branch 'smack-for-4.3' of https://github.com/cschaufler/smack-next 
into next

  commit 10be6c0f27d729dcebaa0ac5f168009244d71fed
  Author: Ben YoungTae Kim <ytkim@xxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 22:09:42 2015 -0700

      Bluetooth: hciuart: Fix to use boolean flag with u32 type

      debugfs_create_bool is asking to put u32 type pointer instead of bool
      so that passing bool type with u32* cast will cause memory corruption
      to read that value since it is handled by 4 bytes instead of 1 byte
      inside.

      Signed-off-by: Ben Young Tae Kim <ytkim@xxxxxxxxxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>

  commit e63dbd16ab7be41f5b66a70f1082242d76dd21d7
  Author: Gautham R. Shenoy <ego@xxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 12:38:31 2015 +0530

      powerpc: Add an inline function to update POWER8 HID0

      Section 3.7 of Version 1.2 of the Power8 Processor User's Manual
      prescribes that updates to HID0 be preceded by a SYNC instruction and
      followed by an ISYNC instruction (Page 91).

      Create an inline function name update_power8_hid0() which follows this
      recipe and invoke it from the static split core path.

      Signed-off-by: Gautham R. Shenoy <ego@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Sam Bobroff <sam.bobroff@xxxxxxxxxxx>
      Tested-by: Sam Bobroff <sam.bobroff@xxxxxxxxxxx>
      Signed-off-by: Michael Ellerman <mpe@xxxxxxxxxxxxxx>

  commit d52736e24fe2e927c26817256f8d1a3c8b5d51a0
  Merge: 0344338 193125d
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 22:43:22 2015 -0700

      Merge branch 'vrf-lite'

      David Ahern says:

      ====================
      VRF-lite - v6

      In the context of internet scale routing a requirement that always comes
      up is the need to partition the available routing tables into disjoint
      routing planes. A specific use case is the multi-tenancy problem where
      each tenant has their own unique routing tables and in the very least
      need different default gateways.

      This patch allows the ability to create virtual router domains (aka VRFs
      (VRF-lite to be specific) in the linux packet forwarding stack. The main
      observation is that through the use of rules and socket binding to 
interfaces,
      all the facilities that we need are already present in the 
infrastructure. What
      is missing is a handle that identifies a routing domain and can be used to
      gather applicable rules/tables and uniqify neighbor selection. The scheme 
used
      needs to preserves the notions of ECMP, and general routing principles.

      This driver is a cross between functionality that the IPVLAN driver
      and the Team drivers provide where a device is created and packets
      into/out of the routing domain are shuttled through this device. The
      device is then used as a handle to identify the applicable rules. The
      VRF device is thus the layer3 equivalent of a vlan device.

      The very important point to note is that this is only a Layer3 concept
      so L2 tools (e.g., LLDP) do not need to be run in each VRF, processes can
      run in unaware mode or select a VRF to be talking through. Also the
      behavioral model is a generalized application of the familiar VRF-Lite
      model with some performance paths that need optimization. (Specifically
      the output route selector that Roopa, Robert, Thomas and EricB are
      currently discussing on the MPLS thread)

      High Level points
      =================
      1. Simple overlay driver (minimal changes to current stack)
         * uses the existing fib tables and fib rules infrastructure
      2. Modelled closely after the ipvlan driver
      3. Uses current API and infrastructure.
         * Applications can use SO_BINDTODEVICE or cmsg device indentifiers
           to pick VRF (ping, traceroute just work)
         * Standard IP Rules work, and since they are aggregated against the
           device, scale is manageable
      4. Completely orthogonal to Namespaces and only provides separation in
         the routing plane (and ARP)

                                                       N2
                 N1 (all configs here)          +---------------+
          +--------------+                      |               |
          |swp1 :10.0.1.1+----------------------+swp1 :10.0.1.2 |
          |              |                      |               |
          |swp2 :10.0.2.1+----------------------+swp2 :10.0.2.2 |
          |              |                      +---------------+
          | VRF 1        |
          | table 5      |
          |              |
          +---------------+
          |              |
          | VRF 2        |                             N3
          | table 6      |                      +---------------+
          |              |                      |               |
          |swp3 :10.0.2.1+----------------------+swp1 :10.0.2.2 |
          |              |                      |               |
          |swp4 :10.0.3.1+----------------------+swp2 :10.0.3.2 |
          +--------------+                      +---------------+

      Given the topology above, the setup needed to get the basic VRF
      functions working would be

      Create the VRF devices and associate with a table
          ip link add vrf1 type vrf table 5
          ip link add vrf2 type vrf table 6

      Install the lookup rules that map table to VRF domain
          ip rule add pref 200 oif vrf1 lookup 5
          ip rule add pref 200 iif vrf1 lookup 5
          ip rule add pref 200 oif vrf2 lookup 6
          ip rule add pref 200 iif vrf2 lookup 6

          ip link set vrf1 up
          ip link set vrf2 up

      Enslave the routing member interfaces
          ip link set swp1 master vrf1
          ip link set swp2 master vrf1
          ip link set swp3 master vrf2
          ip link set swp4 master vrf2

      Connected and local routes are automatically moved from main and local
      tables to the VRF table.

      ping using VRF0 is simply
          ping -I vrf0 10.0.1.2

      Design Highlights
      =================
      If a device is enslaved to a VRF device (ie., associated with a VRF)
      then:
      1. Rx path
         The master device index is used as the iif for all lookups.

      2. Tx path
         Similarly, for Tx the VRF device oif is used in the flow to direct
         lookups to the table associated with the VRF via its rule. From there
         the FLOWI_FLAG_VRFSRC flag is used to indicate that the oif should
         not be used for FIB table lookups.

      3. Connected and local routes
         On link up for a device, connected and local routes are added to the
         table associated with the VRF device, rather than the local and main
         tables.

      4. Socket lookups
         Sockets operating in the VRF must be bound to the VRF device. As such
         socket lookups compare the VRF device index to sk_bound_dev_if.

      5. Neighbor entries
         Neighbor entries are not impacted by the VRF device. Entries are
         associated with a particular interface; the VRF association is indirect
         via the interface-to-VRF device enslavement.

      Version 6
      - addressed comments from DaveM

      - added patch to properly set oif in ip_send_unicast_reply. Needs to be
        set to VRF device for proper FIB lookup

      - added patch to handle IP fragments

      Version 5
      - dropped patch regarding socket lookups; no longer needed
        + removed vrf helpers no longer needed after this patch is dropped
      - removed dev_open and close operations
        + no need to reset vrf data on an ifdown and creates problems if a
          slave is deleted while the vrf interface is down (Thanks, Nikolay)
      - cleanups for sparse warnings
        + make C=2 is now clean for vrf driver

      Version 4
      - builds are clean with and without VRF device enabled (no, yes and 
module)
      - tightened the driver implementation
        + device add/delete, slave add/remove, and module unload are all clean
      - fixed RCU references
        + with RCU and lock debugging enabled changes are clean through the
          suite of tests
      - TX path uses custom dst, so patch refactoring rtable allocation is
        dropped along with the patch adding rt_nexthop helper
      - dropped the task patch that adds default bind to interface for sockets
        and the associated chvrf example command
        + the patches are a convenience for running unmodified code. They
          are not needed for the core functionality. Any application with
          support for SO_BINDTODEVICE works properly with this patch set.

      Version 3
      - addressed comments from first 2 RFCs with the exception of the name
        Nicolas: We will do the name conversion once we agree on what the
                 correct name should be (vrf, mrf or something else)

      -  packets flow through the VRF device in both directions allowing the
         following:
         - tcpdump -i vrf<n>
         - tc rules on vrf device
         - netfilter rules on vrf device

      TO-DO
      =====
      1. IPv6

      2. ipsec, xfrms
         - dst patch accepted into ipsec-next; will post VRF patch once merge 
happens

      3. listen filter to allow 1 socket to work with multiple VRF devices
         - i.e., bind to VRF's a, b, c only or NOT VRFs e, f, g

      Eric B:
        I have ipsec working with VRFs implemented using the VRF driver,
        including the worst case scenario of complete duplication in the
        networking config.

      Thanks to Nikolay for his many, many code reviews whipping the device
      driver into shape, and bug-Fixes and ideas from Hannes, Roopa Prabhu,
      Jon Toppins, Jamal.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 193125dbd8eb292d88feb201f030889b488b0a02
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 14:59:10 2015 -0600

      net: Introduce VRF device driver

      This driver borrows heavily from IPvlan and teaming drivers.

      Routing domains (VRF-lite) are created by instantiating a VRF master
      device with an associated table and enslaving all routed interfaces that
      participate in the domain. As part of the enslavement, all connected
      routes for the enslaved devices are moved to the table associated with
      the VRF device. Outgoing sockets must bind to the VRF device to function.

      Standard FIB rules bind the VRF device to tables and regular fib rule
      processing is followed. Routed traffic through the box, is forwarded by
      using the VRF device as the IIF and following the IIF rule to a table
      that is mated with the VRF.

      Example:

         Create vrf 1:
           ip link add vrf1 type vrf table 5
           ip rule add iif vrf1 table 5
           ip rule add oif vrf1 table 5
           ip route add table 5 prohibit default
           ip link set vrf1 up

         Add interface to vrf 1:
           ip link set eth1 master vrf1

      Signed-off-by: Shrijeet Mukherjee <shm@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9972f134a273d6dc52d912a3513fa06b426de9b4
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 14:59:09 2015 -0600

      net: frags: Add VRF device index to cache and lookup

      Fragmentation cache uses information from the IP header to reassemble
      packets. That information can be duplicated across VRFs -- same source
      and destination addresses, protocol and id. Handle fragmentation with
      VRFs by adding the VRF device index to entries in the cache and the
      lookup arg.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f7ba868b71bc858cf06de11fc8150c4552cfad81
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 14:59:08 2015 -0600

      net: Use VRF index for oif in ip_send_unicast_reply

      If output device is not specified use VRF device if input device is
      enslaved. This is needed to ensure tcp acks and resets go out VRF device.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 3bfd847203c6d89532f836ad3f5b4ff4ced26dd9
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 14:59:07 2015 -0600

      net: Use passed in table for nexthop lookups

      If a user passes in a table for new routes use that table for nexthop
      lookups. Specifically, this solves the case where a connected route does
      not exist in the main table, but only another table and then a subsequent
      route is added with a next hop using the connected route. ie.,

      $ ip route ls
      default via 10.0.2.2 dev eth0
      10.0.2.0/24 dev eth0  proto kernel  scope link  src 10.0.2.15
      169.254.0.0/16 dev eth0  scope link  metric 1003
      192.168.56.0/24 dev eth1  proto kernel  scope link  src 192.168.56.51

      $ ip route ls table 10
      1.1.1.0/24 dev eth2  scope link

      Without this patch adding a nexthop route fails:

      $ ip route add table 10 2.2.2.0/24 via 1.1.1.10
      RTNETLINK answers: Network is unreachable

      With this patch the route is added successfully.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 021dd3b8a142d482cb65a27bf6644e3764001460
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 14:59:06 2015 -0600

      net: Add routes to the table associated with the device

      When a device associated with a VRF is brought up or down routes
      should be added to/removed from the table associated with the VRF.
      fib_magic defaults to using the main or local tables. Have it use
      the table with the device if there is one.

      A part of this is directing prefsrc validations to the correct
      table as well.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 30bbaa19500559d7625c65632195413f639b3b97
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 14:59:05 2015 -0600

      net: Fix up inet_addr_type checks

      Currently inet_addr_type and inet_dev_addr_type expect local addresses
      to be in the local table. With the VRF device local routes for devices
      associated with a VRF will be in the table associated with the VRF.
      Provide an alternate inet_addr lookup to use a specific table rather
      than defaulting to the local table.

      inet_addr_type_dev_table keeps the same semantics as inet_addr_type but
      if the passed in device is enslaved to a VRF then the table for that VRF
      is used for the lookup.

      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 15be405eb2ea943ac5fa2aab7d0ba282e9ef1301
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 14:59:04 2015 -0600

      net: Add inet_addr lookup by table

      Currently inet_addr_type and inet_dev_addr_type expect local addresses
      to be in the local table. With the VRF device local routes for devices
      associated with a VRF will be in the table associated with the VRF.
      Provide an alternate inet_addr lookup to use a specific table rather
      than defaulting to the local table.

      Signed-off-by: Shrijeet Mukherjee <shm@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9a24abfa42613fefc68963a98c2b7ab7fd7e374c
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 14:59:03 2015 -0600

      udp: Handle VRF device in sendmsg

      For unconnected UDP sockets using a VRF device lookup source address
      based on VRF table. This allows the UDP header to be properly setup
      before showing up at the VRF device via the dst.

      Signed-off-by: Shrijeet Mukherjee <shm@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 613d09b30f8b589d5a9b49775054c8865db95d1c
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 14:59:02 2015 -0600

      net: Use VRF device index for lookups on TX

      As with ingress use the index of VRF master device for route lookups on
      egress. However, the oif should only be used to direct the lookups to a
      specific table. Routes in the table are not based on the VRF device but
      rather interfaces that are part of the VRF so do not consider the oif for
      lookups within the table. The FLOWI_FLAG_VRFSRC is used to control this
      latter part.

      Signed-off-by: Shrijeet Mukherjee <shm@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit cd2fbe1b6b517ca7c0e80b103c674fdf5bd50f76
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 14:59:01 2015 -0600

      net: Use VRF device index for lookups on RX

      On ingress use index of VRF master device for route lookups if real device
      is enslaved. Rules are expected to be installed for the VRF device to
      direct lookups to a specific table.

      Signed-off-by: Shrijeet Mukherjee <shm@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4e3c89920cd3a6cfce22c6f537690747c26128dd
  Author: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 14:59:00 2015 -0600

      net: Introduce VRF related flags and helpers

      Add a VRF_MASTER flag for interfaces and helper functions for determining
      if a device is a VRF_MASTER.

      Add link attribute for passing VRF_TABLE id.

      Add vrf_ptr to netdevice.

      Add various macros for determining if a device is a VRF device, the index
      of the master VRF device and table associated with VRF device.

      Signed-off-by: Shrijeet Mukherjee <shm@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David Ahern <dsa@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0344338bd883e5e4a2f80409ed8260cd65d69e3b
  Author: Andy Gospodarek <gospo@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 15:26:35 2015 -0400

      net: addr IFLA_OPERSTATE to netlink message for ipv6 ifinfo

      This is useful information to include in ipv6 netlink messages that
      report interface information.  IFLA_OPERSTATE is already included in
      ipv4 messages, but missing for ipv6.  This closes that gap.

      Signed-off-by: Andy Gospodarek <gospo@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit da65ad1fe399d77234a4caa50008c6b87f1fe401
  Author: Sasha Levin <sasha.levin@xxxxxxxxxx>
  Date:   Thu Aug 13 14:03:16 2015 -0400

      net: allow sleeping when modifying store_rps_map

      Commit 10e4ea751 ("net: Fix race condition in store_rps_map") has moved 
the
      manipulation of the rps_needed jump label under a spinlock. Since changing
      the state of a jump label may sleep this is incorrect and causes warnings
      during runtime.

      Make rps_map_lock a mutex to allow sleeping under it.

      Fixes: 10e4ea751 ("net: Fix race condition in store_rps_map")
      Signed-off-by: Sasha Levin <sasha.levin@xxxxxxxxxx>
      Acked-by: Tom Herbert <tom@xxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 968d7cb82aad3c6bfada79a8e26d65a1fb3f618a
  Merge: 35103d1 8efdda4
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 21:31:14 2015 -0700

      Merge branch 'mv88e6xxx-hw-vlan'

      Vivien Didelot says:

      ====================
      net: dsa: mv88e6xxx: add hardware VLAN support

      This patchset brings support to access hardware VLAN entries in DSA and
      mv88e6xxx, through switchdev VLAN objects.

      In the following example, ports swp[0-2] belong to bridge br0, and ports
      swp[3-4] belong to bridge br1. Here's an example of what can be achieved
      after this patchset:

          # bridge vlan add dev swp1 vid 100 master
          # bridge vlan add dev swp2 vid 100 master
          # bridge vlan add dev swp3 vid 100 master
          # bridge vlan add dev swp4 vid 100 master
          # bridge vlan del dev swp1 vid 100 master

      The above commands correctly programmed hardware VLAN 100 for port swp2,
      while ports swp3 and swp4 use software VLAN 100, as shown with:

          # bridge vlan
          port  vlan ids
          swp0  None
          swp0
          swp1  None
          swp1
          swp2   100

          swp2   100

          swp3   100

          swp3
          swp4   100

          swp4
          br0   None
          br1   None

      Assuming that port 5 is the CPU port, the hardware VLAN table would
      contain the following data:

          VID  FID  SID  0  1  2  3  4  5  6
          100    8    0  x  x  t  x  x  t  x

      Where 'x' means excluded, and 't' means tagged.

      Also, adding an FDB entry to VLAN 100 for port swp2 like this:

          # bridge fdb add 3c:97:0e:11:6e:30 dev swp2 vlan 100

      Would result in the following example output:

          # bridge fdb
          # 01:00:5e:00:00:01 dev eth0 self permanent
          # 01:00:5e:00:00:01 dev eth1 self permanent
          # 00:50:d2:10:78:15 dev swp0 master br0 permanent
          # 00:50:d2:10:78:15 dev swp2 vlan 100 master br0 permanent
          # 3c:97:0e:11:6e:30 dev swp2 vlan 100 self static
          # 00:50:d2:10:78:15 dev swp3 master br1 permanent
          # 00:50:d2:10:78:15 dev swp3 vlan 100 master br1 permanent

      And the Address Translation Unit would contain:

          DB   T/P  Vec State Addr
          008  Port 004   e   3c:97:0e:11:6e:30
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8efdda4a1b609ac40c4729109215f9c77f938fdc
  Author: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 12:52:23 2015 -0400

      net: dsa: mv88e6xxx: use port 802.1Q mode Secure

      This commit changes the 802.1Q mode of each port from Disabled to
      Secure. This enables the VLAN support, by checking the VTU entries on
      ingress.

      Signed-off-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0d3b33e60206f40c802581fa35316a6ccdb00caa
  Author: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 12:52:22 2015 -0400

      net: dsa: mv88e6xxx: add VLAN Load support

      Implement port_pvid_set and port_vlan_add to add new entries in the VLAN
      hardware table, and join ports to them.

      The patch also implement the STU Get Next and Load Purge operations,
      since it is required to have a valid STU entry for at least all VLANs.

      Each VLAN has its own forwarding database, with FID num_ports+1 to 4095.

      Signed-off-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7dad08d738222e998bc27f67f73be713d64cecb8
  Author: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 12:52:21 2015 -0400

      net: dsa: mv88e6xxx: add VLAN Purge support

      Add support for the VTU Load Purge operation and implement the
      port_vlan_del driver function to remove a port from a VLAN entry, and
      delete the VLAN if the given port was its last member.

      Signed-off-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 02512b6fccecb4cfac9a253686712e790b01ff91
  Author: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 12:52:20 2015 -0400

      net: dsa: mv88e6xxx: add VLAN support to FDB dump

      Add an helper function to read the next valid VLAN entry for a given
      port. It is used in the VID to FID conversion function to retrieve the
      forwarding database assigned to a given VLAN port.

      Finally update the FDB getnext operation to iterate on the next valid
      port VLAN when the end of the current database is reached.

      Signed-off-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b8fee95710639f1075534178701b64b66a180617
  Author: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 12:52:19 2015 -0400

      net: dsa: mv88e6xxx: add VLAN Get Next support

      Implement the port_pvid_get and vlan_getnext driver functions required
      to dump VLAN entries from the hardware, with the VTU Get Next operation.

      Some functions and structure will be shared with STU operations, since
      their table format are similar (e.g. STU data entries are accessible
      with the same registers as VTU entries, except with an offset of 2).

      Signed-off-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 6b17e864477fbc73772708655dea7fe4139c14f6
  Author: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 12:52:18 2015 -0400

      net: dsa: mv88e6xxx: flush VTU and STU entries

      Implement the VTU Flush operation (which also flushes the STU), so that
      warm boots won't preserved old entries.

      Signed-off-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 111495361598205967f1be4e07d4726b0f762d60
  Author: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 12:52:17 2015 -0400

      net: dsa: add support for switchdev VLAN objects

      Add new functions in DSA drivers to access hardware VLAN entries through
      SWITCHDEV_OBJ_PORT_VLAN objects:

       - port_pvid_get() and vlan_getnext() to dump a VLAN
       - port_vlan_del() to exclude a port from a VLAN
       - port_pvid_set() and port_vlan_add() to join a port to a VLAN

      The DSA infrastructure will ensure that each VLAN of the given range
      does not already belong to another bridge. If it does, it will fallback
      to software VLAN and won't program the hardware.

      Signed-off-by: Vivien Didelot <vivien.didelot@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 35103d11173b8fea874183f8aa508ae71234d299
  Author: Andy Gospodarek <gospo@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 10:39:01 2015 -0400

      net: ipv6 sysctl option to ignore routes when nexthop link is down

      Like the ipv4 patch with a similar title, this adds a sysctl to allow
      the user to change routing behavior based on whether or not the
      interface associated with the nexthop was an up or down link.  The
      default setting preserves the current behavior, but anyone that enables
      it will notice that nexthops on down interfaces will no longer be
      selected:

      net.ipv6.conf.all.ignore_routes_with_linkdown = 0
      net.ipv6.conf.default.ignore_routes_with_linkdown = 0
      net.ipv6.conf.lo.ignore_routes_with_linkdown = 0
      ...

      When the above sysctls are set, not only will link status be reported to
      userspace, but an indication that a nexthop is dead and will not be used
      is also reported.

      1000::/8 via 7000::2 dev p7p1  metric 1024 dead linkdown  pref medium
      1000::/8 via 8000::2 dev p8p1  metric 1024  pref medium
      7000::/8 dev p7p1  proto kernel  metric 256 dead linkdown  pref medium
      8000::/8 dev p8p1  proto kernel  metric 256  pref medium
      9000::/8 via 8000::2 dev p8p1  metric 2048  pref medium
      9000::/8 via 7000::2 dev p7p1  metric 1024 dead linkdown  pref medium
      fe80::/64 dev p7p1  proto kernel  metric 256 dead linkdown  pref medium
      fe80::/64 dev p8p1  proto kernel  metric 256  pref medium

      This also adds devconf support and notification when sysctl values
      change.

      v2: drop use of rt6i_nhflags since it is not needed right now

      Signed-off-by: Andy Gospodarek <gospo@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Dinesh Dutt <ddutt@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit cea45e208d700e9d633a636384a49f19cda979b7
  Author: Andy Gospodarek <gospo@xxxxxxxxxxxxxxxxxxx>
  Date:   Thu Aug 13 10:39:00 2015 -0400

      net: track link status of ipv6 nexthops

      Add support to track current link status of ipv6 nexthops to match
      recent changes that added support for ipv4 nexthops.  This takes a
      simple approach to track linkdown status for next-hops and simply
      checks the dev for the dst entry and sets proper flags that to be used
      in the netlink message.

      v2: drop use of rt6i_nhflags since it is not needed right now

      Signed-off-by: Andy Gospodarek <gospo@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Dinesh Dutt <ddutt@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8e3d04fd7d70679eed631ba5889f81b2d9415404
  Author: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
  Date:   Thu Aug 13 09:44:22 2015 +0530

      cxgb4: Add MPS tracing support

      Handle TRACE_PKT, stack can sniff them on the first port
      Add debubfs enrty to configure tracing for offload traffic like iWARP
      & iSCSI for debugging purpose.

      Signed-off-by: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit f02e58f91a121ec909efad06b0a7aa806e1f7a84
  Author: yalin wang <yalin.wang2010@xxxxxxxxx>
  Date:   Thu Aug 13 12:01:33 2015 +0800

      net/fddi: remove HWM_REVERSE() macro

      HWM_REVERSE() macro is unused, remove it.

      Signed-off-by: yalin wang <yalin.wang2010@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e4fc02f24c223ee8d668bf2d39bb8a2dbd61b40e
  Merge: aa62eff e9a5e8c
  Author: James Morris <james.l.morris@xxxxxxxxxx>
  Date:   Fri Aug 14 12:08:39 2015 +1000

      Merge tag 'modsign-pkcs7-20150812-3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs into next

  commit 96625eadca1bb8832fb502f0899a543695f1ba35
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Tue Mar 17 17:32:45 2015 +0800

      usb: chipidea: add tx/rx burst size configuration interface

      The user can adjust it through dts or platform data

      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit bd6e9d115df7fc6f11f3021c6fc05e3eaeb04a32
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Fri Aug 7 15:08:02 2015 +0800

      Doc: usb: ci-hdrc-usb2: add tx(rx)-burst-config-dword for binding doc

      It is used to override the default setting for burst size, changing
      burst size takes effect only when the SBUSCFG.AHBBRST = 0.

      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit ed6e5eb50f7f07561d6a40f18bc11484736098db
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Wed Nov 5 14:58:32 2014 +0800

      usb: chipidea: usbmisc_imx: add non-burst setting for imx6

      With this setting and AHBBRST at SBUSCFG as "Incremental burst of
      unspecified length", each non-burst size can be taken as single
      transfer. It is benefit for non-burst size transfer.

      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit 65668718f2c5b76d5f4513564a3c56672bb07892
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Tue Mar 17 14:21:00 2015 +0800

      usb: chipidea: add ahb burst configuration interface

      The users can change it through dts or platform data if they
      want to change the default value.

      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit c6fba7b750efe64a69dd83e0ff7249abd0e783aa
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Tue Jul 28 13:33:15 2015 +0800

      Doc: usb: ci-hdrc-usb2: add ahb-burst-config for binding doc

      It is used to change ahb burst configuration for platforms, it is
      vendor specific.

      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit 0ef877a408ebaa4d65ab1f886100dab198bf673e
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Thu Oct 30 11:10:04 2014 +0800

      usb: chipidea: imx: add stream mode enable for device mode at 
imx6sl/imx6sx

      Stream mode enable is known for better performance, this stream mode
      enable patch has been passed with stress tests at device mode for
      imx6sl and imx6sx, and no issue is found.

      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit 8022d3d51c6fb14736e26fd13caca91a38e07580
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Thu Oct 30 09:15:15 2014 +0800

      usb: chipidea: define stream mode disable for both roles

      The system bus and chipidea IP have different limitations for
      both host and device mode.
      For example, with below errata, we need to enable SDIS(Stream Disable
      Mode) at host mode. But we don't want it for device mode at the
      same system.

      TAR 9000378958
      Title: Non-Double Word Aligned Buffer Address Sometimes Causes Host to
      Hang on OUT Retry
      Impacted Configuration: Host mode, all transfer types
      Description:
      The host core operating in streaming mode may under run while sending
      the data packet of an OUT transaction. This under run can occur if
      there are unexpected system delays in fetching the remaining packet
      data from memory. The host forces a bad CRC on the packet, the device
      detects the error and discards the packet. The host then retries a Bulk,
      Interrupt, or Control transfer if an under run occurs according to the
      USB specification. During simulations, it was found that the host does
      not issue the retry of the failed bulk OUT. It does not issue any other
      transactions except SOF packets that have incorrect frame numbers.

      The second failure mode occurs if the under run occurs on an ISO OUT
      transaction and the next ISO transaction is a zero byte packet. The host
      does not issue any transactions (including SOFs). The device detects a
      Suspend condition, reverts to full speed, and waits for resume signaling.

      A third failure mode occurs when the host under runs on an ISO OUT and
      the next ISO in the schedule is an ISO OUT with two max packets of 1024
      bytes each. The host should issue MDATA for the first OUT followed by
      DATA1 for the second. However, it drops the MDATA transaction, and
      issues the DATA1 transaction.

      The system impact of this bug is the same regardless of the failure mode
      observed. The host core hangs, the ehci_ctrl state machine waits for the
      protocol engine to send the completion status for the corrupted
      transaction, which never occurs. No indication is sent to the host
      controller driver, no register bits change and no interrupts occur.
      Eventually the requesting application times out.

      Detailed internal behavior:
      The EHCI control state machine (ehci_ctrl) in the DMA block is responsible
      for parsing the schedules and initiating all transactions. The ehci_ctrl
      state machine passes the transaction details to the protocol block by
      writing the transaction information in to the TxFIFO. It then asserts
      the pe_hst_run_pkt signal to inform the host protocol state machine
      (pe_hst_state) that there is a packet in the TxFIFO.
      A tag of 0x0 indicates a start of packet with the data providing the
      following information:

      35:32 Tag
      31:30 Reserved
      29:23 Endpoint (lowest 4 bits)
      22:16 Address
      15:10 Reserved
      9:8 Endpoint speed
      7:6 Endpoint type
      5:6 Data Toggle
      3:0 PID
      The pe_hst_state reads the packet information and constructs the packet
      and issues it to the PHY interface.
      The ehci_ctrl state machine writes the start transaction information in
      to the TxFIFO as 0x03002910c for the OUT packet that had the under run
      error. However, it writes 0xC3002910C for the retry of the Out
      transaction, which is incorrect.
      The pe_hst_state enters a bus timeout state after sending the bad CRC
      for the packet that under ran. It then purges any data that was back
      filled in to the TxFIFO for the packet that under ran. The pe_hst_state
      machine stops purging the TxFIFO when it is empty or if it reads a
      location that has a tag of 0x0, indicating a start of packet command.

      The pe_hst_state reads 0xC3002910C and discards it as it does not decode
      to a start of packet command. It continues to purge the OUT data that
      has been pre-buffered for the OUT retry . The pe_hst_state detects the
      hst_packet_run signal and attempts to read the PID and address
      information from the TxFIFO. This location has packet data and so does
      not decode to a valid PID and so falls through to the PE_HST_SOF_LOAD
      state where the frame_num_counter is updated. The frame_num_counter
      is updated with the data in the TxFIFO. In this case, the data is
      incorrect as the ehci_ctrl state machine did not initiate the load.
      The hst_pe_state machine detects the SOF request signal and sends an
      SOF with the bad frame number. Meanwhile, the ehci_ctrl state machine
      waits indefinitely in the run_pkt state waiting for the completion
      status from pe_hst_state machine, which will never happen.

      The ISO failure case is similar except that there is no retry for ISO.
      The ehci_ctrl state machine moves to the next transfer in the periodic
      schedule. If the under run occurs on the last entry of the periodic
      list then it moves to the Async schedule.

      In the case of ISO OUT simulations, the next ISO is a zero byte OUT
      and again the start of packet command gets corrupted. The TxFIFO is
      empty when the hst_pe_state attempts to read the Address and PID
      information as the transaction is a zero byte packet. This results
      in the hst_pe_state machine staying in the GET_PID state, which means
      that it does not issue any transactions (including SOFs). The device
      detects a Suspend condition and reverts to full speed mode and waits
      for a Resume or Reset signal.

      The EHCI specification allows a Non-DoubleWord (32 bits) offset to
      be used as a current offset for Buffer Pointer Page 0 of the qTD.
      In Non-DoubleWord aligned cases, the core reads the packet data
      from the AHB memory, performs the alignment operation before writing
      it in to the TxFIFO as a 32 bit data word. An End Of Packet tag (EOP)
      is written to the TxFIFO after all the packet data has been written
      in to the TxFIFO. The alignment function is reset to Idle by the EOP
      tag. The corruption of the start of packet command arises because the
      packet buffer for the OUT transaction that under ran is not aligned
      to a DoubleWord, and hence no EOP tag is written to the TxFIFO. The
      alignment function is still active when the start packet information
      is written in to the TxFIFO for the retry of the bulk packet or for
      the next transaction in the case of an under run on an ISO. This
      results in the corruption of the start tag and the transaction
      information.

      Click for waveform showing the command 0x 0000300291 being written in
      to the TX FIFO for the Out that under ran.
      Click for waveform showing the command 0xC3002910C written to the
      TxFIFO instead of 0x 0000300291
      Versions affected: Versions 2.10a and previous versions
      How discovered: Customer simulation

      Workaround:
      1- The EHCI specification allows a non-DoubleWord offset to be used
      as a current offset for Buffer Pointer Page 0 of the qTD. However,
      if a DoubleWord offset is used then this issue does not arise.
      2- Use non streaming mode to eliminate under runs.

      Resolution:
      The fix involves changes to the traffic state machine in the
      vusb_hs_dma_traf block. The ehci_ctrl state machine updates the context
      information by encoding the transaction results on the
      hst_op_context_update signals at the end of a transaction. The signal
      hst_op_context_update is added to the traffic state machine, and the
      tx_fifo_under_ran_r signal is generated if the transaction results in
      an under run error. Click for waveform

      The traffic state machine then traverses to the do_eop states if the
      tx_fifo_under_ran error is asserted. Thus an EOP tag is written in to
      the TxFIFO as shown in this waveform .

      The EOP tag resets the align state machine to the Idle state ensuring
      that the next command written by the echi_ctrl state machine does not
      get corrupted.

      File(s) modified:
      RTL code fixed: â?¦..
      Method of reproducing: This failure cannot be reproduced in the current
      test bench.
      Date Found: March 2010
      Date Fixed: June 2010
      Update information:
      Added the RTL code fix

      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit a4da4f12b4a7e7072753ebae9b2ccd72b89c3392
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Tue Jul 28 10:08:32 2015 +0800

      usb: chipidea: udc: zero-length packet is only needed for TX

      The zero-length packet is the sendor tells the receiver that there
      is no more data, so it is only needed at the TX side.

      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit 11a27098e884b8eb797f1579ebc51cb0e0510cc3
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Wed Aug 5 10:16:19 2015 +0800

      usb: chipidea: host: override hcd reset API

      The system configuration API should be called before the controller
      run, otherwise, undefined results may occur. So, we override hcd
      reset API, and add system configuration API after controller reset.

      Cc: Li Jun <peter.chen@xxxxxxxxxxxxx>
      Cc: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit ef12da914ed696745b495bea22aea137e88cffb6
  Author: Tomeu Vizoso <tomeu.vizoso@xxxxxxxxxxxxx>
  Date:   Thu Aug 6 15:09:54 2015 +0200

      usb: chipidea: imx: properly check for usbmisc

      If usbmisc hasn't probed yet, defer the probe.

      It's not enough to check if the platform device for the OF node of the
      usbmisc has been registered, but it also needs to have been probed
      already before we can call imx_usbmisc_init().

      This can happen if the order in which devices are probed change due to
      async probing or on-demand probing of dependencies.

      Signed-off-by: Tomeu Vizoso <tomeu.vizoso@xxxxxxxxxxxxx>

  commit bc24937943d9f71a1e32b5dc4e2f0ef8fcc07b64
  Author: Li Jun <jun.li@xxxxxxxxxxxxx>
  Date:   Wed Jul 29 13:11:11 2015 +0800

      usb: chipidea: debug: add runtime pm for register access

      Add runtime pm operations for registers access to avoid system hang.

      Signed-off-by: Li Jun <jun.li@xxxxxxxxxxxxx>

  commit 158ec071fb5243e5c49259d2dbc4c8dbaed24c47
  Author: Nicholas Krause <xerofoify@xxxxxxxxx>
  Date:   Sat Jun 27 00:34:48 2015 -0400

      usb:chipidea:Make the function hw_alloc_repmap have a return type of void

      This makes the function hw_alloc_repmap be declared to have a return
      type of void now due to this particular function never returning
      a error code to its caller due to this function always running
      successfully to completion nor it's caller putting the return
      value into a variable in order to check if a error code is passed
      from the function hw_alloc_repmap when calling this function.

      Signed-off-by: Nicholas Krause <xerofoify@xxxxxxxxx>

  commit 1311d6e3ea3316e9d2383219a36353ad335f6932
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Tue Jul 14 15:43:02 2015 +0800

      usb: chipidea: host: delete the redundancy ci_hdrc struct

      The struct ci_hdrc is the drvdata for hcd device, so we don't
      need to introduce extra ci_hdrc structure for ehci.

      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit df96ed8dced21426c54c7f69cf7513e75280957a
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Mon Sep 22 16:45:39 2014 +0800

      usb: chipidea: introduce ITC tuning interface

      ITC (Interrupt Threshold Control) is used to set the maximum rate at which
      the host/device controller will issue interrupts. The default value is 8 
(1ms)
      for it. EHCI core will modify it to 1, but device mode keeps it as default
      value.

      In some use cases like Android ADB, it only has one usb request for each
      direction, and maximum payload data is only 4KB, so the speed is 4MB/s
      at most, it needs controller to trigger interrupt as fast as possible
      to increase the speed. The USB performance will be better if the interrupt
      can be triggered faster.

      Reduce ITC value is benefit for USB performance, but the interrupt number
      is increased at the same time, it may increase cpu utilization too.
      Most of use case cares about performance, but some may care about
      cpu utilization, so, we leave a platform interface for user.
      We set ITC as 1 (1 micro-frame) as default value which is aligned
      with ehci core default value.

      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit 1bd57127d4aaff518cf93f4809ec2f11b2baf865
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Wed Jul 15 13:53:05 2015 +0800

      Doc: usb: ci-hdrc-usb2: add itc-setting at binding doc

      It is used to configure the ITC (in register USBCMD) value
      for kinds of applications.

      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit bf9c85e78d0fec61360ece46dacf9ab71ba89361
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Tue Mar 17 10:40:50 2015 +0800

      usb: chipidea: introduce ci_platform_configure

      It is used to configure controller parameters according to
      platform data, like speed, stream mode, etc, both host and
      device's initialization need it, most of code are the
      same for both roles, with this new interface, it can reduce
      the duplicated code and be easy to maintain in future.

      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit 9d2effea12a3a7139daf04a2be97f18d3e6913a3
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Wed Jul 15 13:56:26 2015 +0800

      usb: chipidea: otg_fsm: delete the duplicated reset controller operation

      At host_stop, it will call usb_remove_hcd, and reset controller later.

      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit 3520d462b95fff1c445faec6f54953cd8da25ca7
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Fri Jul 17 08:44:24 2015 +0800

      usb: chipidea: udc: add USB_DEVICE_A_HNP_SUPPORT request support

      We can support USB OTG 1.3 USB_DEVICE_A_HNP_SUPPORT request when
      the driver supports OTG FSM mode.

      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit e765bfb73ff711b1d139a4438af9ecedabb07d34
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Thu Jun 18 11:43:34 2015 +0800

      usb: chipidea: imx: enable CI_HDRC_SET_NON_ZERO_TTHA

      For i.mx platform, set ttctrl.ttha with non-zero value only affects
      sitd, and ehci core makes sure the schedule is not full when accepts
      new request, so it will not occur the transaction which will acorss
      the SoF.

      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit 28362673129e7d4510a5a92a8b68ee47f282210b
  Author: Peter Chen <peter.chen@xxxxxxxxxxxxx>
  Date:   Thu Jun 18 11:51:53 2015 +0800

      usb: chipidea: add ttctrl.ttha control interface

      The register of ttctrl.ttha describes like below:
      - Internal TT Hub Address Representation
      - RW
      - Default = 0000000b
      This field is used to match against the Hub Address field in QH & siTD
      to determine if the packet is routed to the internal TT for directly
      attached FS/LS devices. If the Hub Address in the QH or siTD does not
      match this address then the packet will be broadcast on the High Speed
      ports destined for a downstream High Speed hub with the address in the 
QH/siTD.

      In silicon RTL, this entry only affects QH and siTD, and the hub.addr at
      both QH and siTD are 0 in ehci core for chipidea (with hcd->has_tt = 1).

      So, for QH, if the "usage_tt" flag at RTL is 0, set 
CI_HDRC_SET_NON_ZERO_TTHA
      will not affect QH (with non-hs device); for siTD, set this flag
      will change remaining space requirement for the last transaction from 1023
      bytes to 188 bytes, it can increase the number of transactions within one
      frame, ehci periodic schedule code will not queue the packet if the frame 
space
      is full, so it is safe to set this flag for siTD.

      With this flag, it can fix the problem Alan Stern reported below:
      http://www.spinics.net/lists/linux-usb/msg123125.html
      And may fix Michael Tessier's problem too.
      http://www.spinics.net/lists/linux-usb/msg118679.html

      CC: stern@xxxxxxxxxxxxxxxxxxx
      CC: michael.tessier@xxxxxxxxxxxx
      Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx>

  commit 8f9cb50789e76f3e224e8861adf650e55c747af4
  Merge: e1474e7 a63c580
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Aug 14 10:15:24 2015 +1000

      Merge tag 'drm-amdkfd-next-fixes-2015-08-05' of 
git://people.freedesktop.org/~gabbayo/linux into drm-next

      Two small bug fixes for the code you pulled for 4.3:

      - Used a SHIFT define instead of a MASK define to check if a bit is 
turned on
        when destroying hqd. Luckily, this is in gfx7 interface file with 
amdgpu,
        which was used only for bring-up purposes of amdgpu, so no real effect 
on
        a running system

      - Used a logical AND instead of a bitwise AND operator, when initializing
        sdma virtual memory when using SDMA queues

      * tag 'drm-amdkfd-next-fixes-2015-08-05' of 
git://people.freedesktop.org/~gabbayo/linux:
        drm/amdkfd: fix bug when initializing sdma vm
        drm/amdgpu: fix bug when amdkfd destroys hqd

  commit e1474e7bdf6b16db41cc12b8e7b3fefd8668f3cf
  Merge: 1ce4200 29d1dc6
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Aug 14 10:14:23 2015 +1000

      Merge branch 'drm-sti-next-atomic-2015-08-11' of 
http://git.linaro.org/people/benjamin.gaignard/kernel into drm-next

      This serie of patches fix minor bugs around how driver sub-components are
      bind and planes z-ordering.
      The main part is about atomic support: using more atomic helpers allow us
      to simplify the code (~300 lines removed) and to ahve a better match 
between
      drm concepts (planes and crtc) and hardware split.

      [airlied: fixed up conflict in atomic code]

      * 'drm-sti-next-atomic-2015-08-11' of 
http://git.linaro.org/people/benjamin.gaignard/kernel:
        drm/sti: atomic crtc/plane update
        drm/sti: rename files and functions
        drm/sti: code clean up
        drm/sti: fix dynamic z-ordering
        drm: sti: fix sub-components bind

  commit dd19f83d6cd90e4b7a601da2ed40d2a9d70aaf10
  Author: Scott Feldman <sfeldma@xxxxxxxxx>
  Date:   Wed Aug 12 18:45:25 2015 -0700

      rocker: hook ndo_neigh_destroy to cleanup neigh refs in driver

      Rocker driver tracks arp_tbl neighs to resolve IPv4 route nexthops.  The
      driver uses NETEVENT_NEIGH_UPDATE for neigh adds and updates, but there is
      no event when the neigh is removed from the device (such as when the 
device
      goes admin down).  This patches hooks ndo_neigh_destroy so the driver can
      know when a neigh is removed from the device.  In response, the driver 
will
      purge the neigh entry from its internal tbl.

      I didn't find an in-tree users of ndo_neigh_destroy, so I'm not sure if
      this ndo is vestigial or if there are out-of-tree users.  In any case, it
      does what I need here.  An alternative design would be to generate
      NETEVENT_NEIGH_UPDATE event when neigh is being destroyed, setting state 
to
      NUD_NONE so driver knows neigh entry is dead.

      Signed-off-by: Scott Feldman <sfeldma@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c8beb5b2613418e7ac1ffaee1f0796e77a4000be
  Author: Scott Feldman <sfeldma@xxxxxxxxx>
  Date:   Wed Aug 12 18:44:13 2015 -0700

      rocker: print switch ID consistent with phys_switch_id sysfs node

      On sucessful probe, driver prints the switch ID.  This patch changes the
      format of the printed ID to match what's used in sysfs phys_switch_id 
node.

      Signed-off-by: Scott Feldman <sfeldma@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7bbac697e4a6e64cc4bae26d57310c916aa0da7a
  Author: Leo Yan <leo.yan@xxxxxxxxxx>
  Date:   Mon Aug 3 09:30:25 2015 +0800

      Documentation: minor typo fix in mailbox.txt

      Fix minor typo so that can pass correct pointer variable for
      container_of().

      Signed-off-by: Leo Yan <leo.yan@xxxxxxxxxx>
      [jc: tweaked formatting]
      Signed-off-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 1ce4200df02aac780fe92c92b31497891c36c3ac
  Merge: e5dafc0 d485363
  Author: Dave Airlie <airlied@xxxxxxxxxx>
  Date:   Fri Aug 14 10:02:21 2015 +1000

      Merge tag 'topic/drm-misc-2015-08-13' of 
git://anongit.freedesktop.org/drm-intel into drm-next

      Final drm-misc pull for 4.3:
      - fbdev emulation Kconfig option for everyone thanks to Archit. It's not
        everything yet bit this is fairly tricky since it spawns all drivers.
      - vgaarb & vgaswitcheroo polish from Thierry
      - some drm_irq.c cleanups (Thierry)
      - struct_mutex crusade from me
      - more fbdev panic handling removal
      - various things all over in drm core&helpers

      * tag 'topic/drm-misc-2015-08-13' of 
git://anongit.freedesktop.org/drm-intel: (65 commits)
        drm/atomic: Use KMS VBLANK API
        drm/irq: Document return values more consistently
        drm/irq: Make pipe unsigned and name consistent
        drm/irq: Check for valid VBLANK before dereference
        drm/irq: Remove negative CRTC index special-case
        drm/plane: Remove redundant extern
        drm/plane: Use consistent data types for format count
        vga_switcheroo: Remove unnecessary checks
        vga_switcheroo: Wrap overly long lines
        vga_switcheroo: Use pr_fmt()
        vga_switcheroo: Cleanup header comment
        vga_switcheroo: Use pr_*() instead of printk()
        vgaarb: Fix a few checkpatch errors and warnings
        vgaarb: Use vgaarb: prefix consistently in messages
        vgaarb: Stop complaining about absent devices
        drm/atomic: fix null pointer access to mode_fixup callback
        drm/i915: Use CONFIG_DRM_FBDEV_EMULATION
        drm/core: Set mode to NULL when connectors in a set drops to 0.
        drm/atomic: Call ww_acquire_done after check phase is complete
        drm/atomic: Paper over locking WARN in default_state_clear
        ...

  commit c28446c2b78fde4b47a4baf3b2cf7c3c4ca621dc
  Merge: 5bbbcc0 0b50dc4
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 16:58:29 2015 -0700

      Merge branch 'smsc911x-acpi'

      Jeremy Linton says:

      ====================
      Enable smsc911x for use with ACPI

      This set of patches enables the front Ethernet port on the
      ARM Juno development platform when used with an ACPI enabled kernel.

      These patches covert the of_property* calls in the driver to the
      DT/ACPI agnostic device_property* calls, and add the arm hardware
      id to the acpi_match_table.

      To support the above changes I copied a couple routines from
      of_net into the properties.c file, and modified them to
      be ACPI/DT agnostic. I'm not 100% sure this is the correct location
      for these functions. But I think they are required to avoid having
      a dozen different implementations scattered across assorted Ethernet
      adapters that are being enabled to use ACPI properties.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 0b50dc4fc971cc788b0974ebd70f06efff1ad5d8
  Author: Jeremy Linton <jeremy.linton@xxxxxxx>
  Date:   Wed Aug 12 17:06:27 2015 -0500

      Convert smsc911x to use ACPI as well as DT

      Add ACPI bindings for the smsc911x driver. Convert the DT specific calls
      to nonspecific device* calls, This allows the driver to work
      with both ACPI and DT configurations. Ethernet should now work when using
      ACPI on ARM Juno.

      Signed-off-by: Jeremy Linton <jeremy.linton@xxxxxxx>
      Reviewed-by: Graeme Gregory <graeme.gregory@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4c96b7dc0d393f12c17e0d81db15aa4a820a6ab3
  Author: Jeremy Linton <jeremy.linton@xxxxxxx>
  Date:   Wed Aug 12 17:06:26 2015 -0500

      Add a matching set of device_ functions for determining mac/phy

      OF has some helper functions for parsing MAC and PHY settings.
      In cases where the platform is providing this information rather
      than the device itself, there needs to be similar functions for ACPI.

      These functions are slightly modified versions of the ones in
      of_net which can use information provided via DT or ACPI.

      Signed-off-by: Jeremy Linton <jeremy.linton@xxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4983953dbd038fd720e7e16eb9bad5d8ea059ccf
  Author: David Drysdale <drysdale@xxxxxxxxxx>
  Date:   Mon Aug 10 09:00:44 2015 +0100

      Documentation: describe how to add a system call

      Add a document describing the process of adding a new system call,
      including the need for a flags argument for future compatibility, and
      covering 32-bit/64-bit concerns (albeit in an x86-centric way).

      Signed-off-by: David Drysdale <drysdale@xxxxxxxxxx>
      Reviewed-by: Michael Kerrisk <mtk.manpages@xxxxxxxxx>
      Reviewed-by: Eric B Munson <emunson@xxxxxxxxxx>
      Reviewed-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Reviewed-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
      Reviewed-by: Josh Triplett <josh@xxxxxxxxxxxxxxxx>
      Signed-off-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 5bbbcc0073331d4e37c9f91c59cfc9f5d2033860
  Merge: 646244b b340b26
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 16:52:20 2015 -0700

      Merge branch 'tcp-loss-probe'

      Yuchung Cheng says:

      ====================
      minor tail loss probe improvements

      This patch series enhance the tail loss probe (TLP) on some error
      conditions. When TLP fails to send a probe, it will no longer
      extend the RTO. When it fails to send a new packet because of
      receiver window limit, it'll try to retransmit the last packet.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b340b26454e7ba0f5d04b4bd5c4c782f1628ebe1
  Author: Yuchung Cheng <ycheng@xxxxxxxxxx>
  Date:   Wed Aug 12 11:18:19 2015 -0700

      tcp: TLP retransmits last if failed to send new packet

      When TLP fails to send new packet because of receive window
      limit, it should fall back to retransmit the last packet instead.

      Signed-off-by: Yuchung Cheng <ycheng@xxxxxxxxxx>
      Signed-off-by: Neal Cardwell <ncardwell@xxxxxxxxxx>
      Signed-off-by: Nandita Dukkipati <nanditad@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit fcd16c0a95a8faf4d310f94d831b22f901c5a744
  Author: Yuchung Cheng <ycheng@xxxxxxxxxx>
  Date:   Wed Aug 12 11:18:18 2015 -0700

      tcp: don't extend RTO on failed loss probe attempts

      If TLP was unable to send a probe, it extended the RTO to
      now + icsk_rto. But extending the RTO makes little sense
      if no TLP probe went out. With this commit, instead of
      extending the RTO we re-arm it relative to the transmit time
      of the write queue head.

      Signed-off-by: Yuchung Cheng <ycheng@xxxxxxxxxx>
      Signed-off-by: Neal Cardwell <ncardwell@xxxxxxxxxx>
      Signed-off-by: Nandita Dukkipati <nanditad@xxxxxxxxxx>
      Acked-by: Eric Dumazet <edumazet@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 646244b223090e379070d149312b222867e42aa6
  Merge: 182ad46 21696f7
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 16:51:00 2015 -0700

      Merge branch 'cpsw-errata-workaround'

      Mugunthan V N says:

      ====================
      Add AM335x PG1.0 CPSW errata workaround

      With commit 870915feabdc ("drivers: net: cpsw: remove
      disable_irq/enable_irq as irq can be masked from cpsw itself"),
      CPSW on AM335x beagle bone white is broken as there is a errata
      for AM335x PG1.0. This patch series implements the workaround by
      disabling the interrupts from ARM IRQ controller for AM335x SoC
      in addition to the masking of interrupts in CPSW.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 21696f717b3404f17dfd5433d391ef55fbcb812b
  Author: Mugunthan V N <mugunthanvnm@xxxxxx>
  Date:   Wed Aug 12 15:22:55 2015 +0530

      ARM: dts: am33xx: update cpsw compatible

      CPSW driver has been updated with compatibles for enabling errata
      workarounds. So updating cpsw compatibles.

      Signed-off-by: Mugunthan V N <mugunthanvnm@xxxxxx>
      Acked-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e2095318aff16019fdedf2002222ae7076a51935
  Author: Mugunthan V N <mugunthanvnm@xxxxxx>
  Date:   Wed Aug 12 15:22:54 2015 +0530

      ARM: dts: dra7: update cpsw compatible

      CPSW driver has been updated with compatibles for enabling errata
      workarounds. So updating cpsw compatibles.

      Signed-off-by: Mugunthan V N <mugunthanvnm@xxxxxx>
      Acked-by: Tony Lindgren <tony@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7da1160002f1d59e79e7d89da474ff7c679a07a5
  Author: Mugunthan V N <mugunthanvnm@xxxxxx>
  Date:   Wed Aug 12 15:22:53 2015 +0530

      drivers: net: cpsw: add am335x errata workarround for interrutps

      As per Am335x Errata [1] Advisory 1.0.9, The CPSW C0_TX_PEND and
      C0_RX_PEND interrupt outputs provide a single transmit interrupt
      that combines transmit channel interrupts TXPEND[7:0] and a
      single receive interrupt that combines receive channel interrupts
      RXPEND[7:0]. The TXPEND[0] and RXPEND[0] interrupt outputs are
      connected to the ARM Cortex-A8 interrupt controller (INTC) rather
      than the C0_TX_PEND and C0_RX_PEND interrupt outputs. So even
      though CPSW interrupt is cleared by writing appropriate values to
      EOI register the interrupt is not cleared in IRQ controller. So
      interrupt is still pending and CPU is struck in ISR, the
      workaround is to disable the interrupts in ARM irq controller.

      [1] http://www.ti.com/lit/er/sprz360f/sprz360f.pdf

      Signed-off-by: Mugunthan V N <mugunthanvnm@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 81db32a3c4627605a0e950d27a403ea02447ab60
  Author: Tim Bird <tim.bird@xxxxxxxxxxxxxx>
  Date:   Mon Aug 10 15:16:16 2015 -0700

      doc: Add more workqueue functions to the documentation

      There are some workqueue functions declared in workqueue.h, so include
      that in the workqueue section of the DocBook docs.

      Signed-off-by: Tim Bird <tim.bird@xxxxxxxxxxxxxx>
      Acked-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
      Signed-off-by: Jonathan Corbet <corbet@xxxxxxx>

  commit 182ad468e70fc7e8ff2e5d64344c690beaa00ddd
  Merge: e8fed98 5b3e2e1
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Thu Aug 13 16:23:11 2015 -0700

      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

      Conflicts:
        drivers/net/ethernet/cavium/Kconfig

      The cavium conflict was overlapping dependency
      changes.

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 7229b87bb269c9e18cabbc43c5fb01c81d097b24
  Author: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
  Date:   Sun Aug 9 22:37:46 2015 -0700

      Input: elants_i2c - fix for devm_gpiod_get API change

      Flags are now mandatory for devm_gpiod_get(). So let's use proper flag
      to configure gpio for output instead of doing this by hand.

      Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      [Dmitry: GPIOD_ASIS -> GPIOD_OUT_LOW]
      Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>

  commit f7ef1340bb501717372a39f4807d0ad519ebd432
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Mon Jul 20 09:23:37 2015 -0500

      PCI: Remove pci_ats_enabled()

      Remove pci_ats_enabled().  There are no callers outside the ATS code
      itself.  We don't need to check ats_cap, because if we don't find an ATS
      capability, we'll never set ats_enabled.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Joerg Roedel <jroedel@xxxxxxx>

  commit a71f938f3a9a7bc879296cd34ecae9effe5edf3f
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Mon Jul 20 09:24:32 2015 -0500

      PCI: Stop caching ATS Invalidate Queue Depth

      Stop caching the Invalidate Queue Depth in struct pci_dev.
      pci_ats_queue_depth() is typically called only once per device, and it
      returns a fixed value per-device, so callers who need the value frequently
      can cache it themselves.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Joerg Roedel <jroedel@xxxxxxx>

  commit ff9bee895c4d11a519a6b2c49451376025a6af4e
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Fri Jul 17 15:55:48 2015 -0500

      PCI: Move ATS declarations to linux/pci.h so they're all together

      Move ATS declarations to linux/pci.h so they're all in one place.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Joerg Roedel <jroedel@xxxxxxx>

  commit a021f3019db7b40f0fe85b0a64c6be21e3665fbf
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Fri Jul 17 15:43:27 2015 -0500

      PCI: Clean up ATS error handling

      There's no need to BUG() if we enable ATS when it's already enabled.  We
      don't need to BUG() when disabling ATS on a device that doesn't support 
ATS
      or if it's already disabled.  If ATS is enabled, certainly we found an ATS
      capability in the past, so it should still be there now.

      Clean up these error paths.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Joerg Roedel <jroedel@xxxxxxx>

  commit c39127dbaf6c267f18d1cac14e2b0ecbfaa52d63
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Fri Jul 17 15:38:13 2015 -0500

      PCI: Use pci_physfn() rather than looking up physfn by hand

      Use the pci_physfn() helper rather than looking up physfn by hand.
      No functional change.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Joerg Roedel <jroedel@xxxxxxx>

  commit afdd596c42c4540308eae9f4c685d9bccc525cfc
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Fri Jul 17 15:35:18 2015 -0500

      PCI: Inline the ATS setup code into pci_ats_init()

      The ATS setup code in ats_alloc_one() is only used by pci_ats_init(), so
      inline it there.  No functional change.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 3c765399524308ab36777a443ce77e19810a97d7
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Fri Jul 17 15:30:26 2015 -0500

      PCI: Rationalize pci_ats_queue_depth() error checking

      We previously returned -ENODEV for devices that don't support ATS (except
      that we always returned 0 for VFs, whether or not they support ATS).

      For consistency, always return -EINVAL (not -ENODEV) if the device doesn't
      support ATS.  Return zero for VFs that support ATS.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 67930995d7fb8ae7d2078822b563010b289ace2e
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Fri Jul 17 15:27:34 2015 -0500

      PCI: Reduce size of ATS structure elements

      The extended capabilities list is linked with 12-bit pointers, and the ATS
      Smallest Translation Unit and Invalidate Queue Depth fields are both 5
      bits.

      Use u16 and u8 to hold the extended capability address and the stu and 
qdep
      values.  No functional change.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Joerg Roedel <jroedel@xxxxxxx>

  commit d544d75ac96aa1b0a8a378826626a0fbd8ce4380
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Fri Jul 17 15:15:19 2015 -0500

      PCI: Embed ATS info directly into struct pci_dev

      The pci_ats struct is small and will get smaller, so I don't think it's
      worth allocating it separately from the pci_dev struct.

      Embed the ATS fields directly into struct pci_dev.

      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Joerg Roedel <jroedel@xxxxxxx>

  commit edc90fee916b4f0d14af9c6b5c08666747488ef8
  Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
  Date:   Fri Jul 17 15:05:46 2015 -0500

      PCI: Allocate ATS struct during enumeration

      Previously, we allocated pci_ats structures when an IOMMU driver called
      pci_enable_ats().  An SR-IOV VF shares the STU setting with its PF, so 
when
      enabling ATS on the VF, we allocated a pci_ats struct for the PF if it
      didn't already have one.  We held the sriov->lock to serialize threads
      concurrently enabling ATS on several VFS so only one would allocate the PF
      pci_ats.

      Gregor reported a deadlock here:

        pci_enable_sriov
          sriov_enable
            virtfn_add
              mutex_lock(dev->sriov->lock)      # acquire sriov->lock
              pci_device_add
                device_add
                  BUS_NOTIFY_ADD_DEVICE notifier chain
                  iommu_bus_notifier
                    amd_iommu_add_device        # iommu_ops.add_device
                      init_iommu_group
                        iommu_group_get_for_dev
                          iommu_group_add_device
                            __iommu_attach_device
                              amd_iommu_attach_device  # iommu_ops.attach_device
                                attach_device
                                  pci_enable_ats
                                    mutex_lock(dev->sriov->lock) # deadlock

      There's no reason to delay allocating the pci_ats struct, and if we
      allocate it for each device at enumeration-time, there's no need for
      locking in pci_enable_ats().

      Allocate pci_ats struct during enumeration, when we initialize other
      capabilities.

      Note that this implementation requires ATS to be enabled on the PF first,
      before on any of the VFs because the PF controls the STU for all the VFs.

      Link: http://permalink.gmane.org/gmane.linux.kernel.iommu/9433
      Reported-by: Gregor Dick <gdick@xxxxxxxxxxxxxx>
      Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
      Reviewed-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 2ec3182f9c20a9eef0dacc0512cf2ca2df7be5ad
  Author: Dongsu Park <dpark@xxxxxxxxxx>
  Date:   Fri Dec 19 14:53:03 2014 +0100

      Documentation: update notes in biovecs about arbitrarily sized bios

      Update block/biovecs.txt so that it includes a note on what kind of
      effects arbitrarily sized bios would bring to the block layer.
      Also fix a trivial typo, bio_iter_iovec.

      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: Kent Overstreet <kent.overstreet@xxxxxxxxx>
      Cc: Jonathan Corbet <corbet@xxxxxxx>
      Cc: linux-doc@xxxxxxxxxxxxxxx
      Signed-off-by: Dongsu Park <dpark@xxxxxxxxxx>
      Signed-off-by: Ming Lin <ming.l@xxxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit b54ffb73cadcdcff9cc1ae0e11f502407e3e2e4c
  Author: Kent Overstreet <kent.overstreet@xxxxxxxxx>
  Date:   Tue May 19 14:31:01 2015 +0200

      block: remove bio_get_nr_vecs()

      We can always fill up the bio now, no need to estimate the possible
      size based on queue parameters.

      Acked-by: Steven Whitehouse <swhiteho@xxxxxxxxxx>
      Signed-off-by: Kent Overstreet <kent.overstreet@xxxxxxxxx>
      [hch: rebased and wrote a changelog]
      Signed-off-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: Ming Lin <ming.l@xxxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 6cf66b4caf9c71f64a5486cadbd71ab58d0d4307
  Author: Kent Overstreet <kent.overstreet@xxxxxxxxx>
  Date:   Mon Dec 22 12:48:42 2014 +0100

      fs: use helper bio_add_page() instead of open coding on bi_io_vec

      Call pre-defined helper bio_add_page() instead of open coding for
      iterating through bi_io_vec[]. Doing that, it's possible to make some
      parts in filesystems and mm/page_io.c simpler than before.

      Acked-by: Dave Kleikamp <shaggy@xxxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
      Cc: linux-fsdevel@xxxxxxxxxxxxxxx
      Signed-off-by: Kent Overstreet <kent.overstreet@xxxxxxxxx>
      [dpark: add more description in commit message]
      Signed-off-by: Dongsu Park <dpark@xxxxxxxxxx>
      Signed-off-by: Ming Lin <ming.l@xxxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 8ae126660fddbeebb9251a174e6fa45b6ad8f932
  Author: Kent Overstreet <kent.overstreet@xxxxxxxxx>
  Date:   Mon Apr 27 23:48:34 2015 -0700

      block: kill merge_bvec_fn() completely

      As generic_make_request() is now able to handle arbitrarily sized bios,
      it's no longer necessary for each individual block driver to define its
      own ->merge_bvec_fn() callback. Remove every invocation completely.

      Cc: Jens Axboe <axboe@xxxxxxxxx>
      Cc: Lars Ellenberg <drbd-dev@xxxxxxxxxxxxxxxx>
      Cc: drbd-user@xxxxxxxxxxxxxxxx
      Cc: Jiri Kosina <jkosina@xxxxxxx>
      Cc: Yehuda Sadeh <yehuda@xxxxxxxxxxx>
      Cc: Sage Weil <sage@xxxxxxxxxxx>
      Cc: Alex Elder <elder@xxxxxxxxxx>
      Cc: ceph-devel@xxxxxxxxxxxxxxx
      Cc: Alasdair Kergon <agk@xxxxxxxxxx>
      Cc: Mike Snitzer <snitzer@xxxxxxxxxx>
      Cc: dm-devel@xxxxxxxxxx
      Cc: Neil Brown <neilb@xxxxxxx>
      Cc: linux-raid@xxxxxxxxxxxxxxx
      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: "Martin K. Petersen" <martin.petersen@xxxxxxxxxx>
      Acked-by: NeilBrown <neilb@xxxxxxx> (for the 'md' bits)
      Acked-by: Mike Snitzer <snitzer@xxxxxxxxxx>
      Signed-off-by: Kent Overstreet <kent.overstreet@xxxxxxxxx>
      [dpark: also remove ->merge_bvec_fn() in dm-thin as well as
       dm-era-target, and resolve merge conflicts]
      Signed-off-by: Dongsu Park <dpark@xxxxxxxxxx>
      Signed-off-by: Ming Lin <ming.l@xxxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 7140aafce2fc14c5af02fdb7859b6bea0108be3d
  Author: Kent Overstreet <kent.overstreet@xxxxxxxxx>
  Date:   Wed Sep 25 13:37:01 2013 -0700

      md/raid5: get rid of bio_fits_rdev()

      Remove bio_fits_rdev() as sufficient merge_bvec_fn() handling is now
      performed by blk_queue_split() in md_make_request().

      Cc: Neil Brown <neilb@xxxxxxx>
      Cc: linux-raid@xxxxxxxxxxxxxxx
      Acked-by: NeilBrown <neilb@xxxxxxx>
      Signed-off-by: Kent Overstreet <kent.overstreet@xxxxxxxxx>
      [dpark: add more description in commit message]
      Signed-off-by: Dongsu Park <dpark@xxxxxxxxxx>
      Signed-off-by: Ming Lin <ming.l@xxxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 7ef6b12a1966f273afb750e19e1e8129bea48fec
  Author: Ming Lin <ming.l@xxxxxxxxxxxxxxx>
  Date:   Wed May 6 22:51:24 2015 -0700

      md/raid5: split bio for chunk_aligned_read

      If a read request fits entirely in a chunk, it will be passed directly to 
the
      underlying device (providing it hasn't failed of course).  If it doesn't 
fit,
      the slightly less efficient path that uses the stripe_cache is used.
      Requests that get to the stripe cache are always completely split up as
      necessary.

      So with RAID5, ripping out the merge_bvec_fn doesn't cause it to stop 
work,
      but could cause it to take the less efficient path more often.

      All that is needed to manage this is for 'chunk_aligned_read' do some bio
      splitting, much like the RAID0 code does.

      Cc: Neil Brown <neilb@xxxxxxx>
      Cc: linux-raid@xxxxxxxxxxxxxxx
      Acked-by: NeilBrown <neilb@xxxxxxx>
      Signed-off-by: Ming Lin <ming.l@xxxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit b49a0871be31a745b2ef7912653683a1876ff701
  Author: Ming Lin <ming.l@xxxxxxxxxxxxxxx>
  Date:   Fri May 22 00:46:56 2015 -0700

      block: remove split code in blkdev_issue_{discard,write_same}

      The split code in blkdev_issue_{discard,write_same} can go away
      now that any driver that cares does the split. We have to make
      sure bio size doesn't overflow.

      For discard, we set max discard sectors to (1<<31)>>9 to ensure
      it doesn't overflow bi_size and hopefully it is of the proper
      granularity as long as the granularity is a power of two.

      Acked-by: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Signed-off-by: Ming Lin <ming.l@xxxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 0e28997ec476bad4c7dbe0a08775290051325f53
  Author: Kent Overstreet <kent.overstreet@xxxxxxxxx>
  Date:   Mon Dec 2 18:30:25 2013 -0800

      btrfs: remove bio splitting and merge_bvec_fn() calls

      Btrfs has been doing bio splitting from btrfs_map_bio(), by checking
      device limits as well as calling ->merge_bvec_fn() etc. That is not
      necessary any more, because generic_make_request() is now able to
      handle arbitrarily sized bios. So clean up unnecessary code paths.

      Cc: Chris Mason <clm@xxxxxx>
      Cc: Josef Bacik <jbacik@xxxxxx>
      Cc: linux-btrfs@xxxxxxxxxxxxxxx
      Signed-off-by: Kent Overstreet <kent.overstreet@xxxxxxxxx>
      Signed-off-by: Chris Mason <clm@xxxxxx>
      [dpark: add more description in commit message]
      Signed-off-by: Dongsu Park <dpark@xxxxxxxxxx>
      Signed-off-by: Ming Lin <ming.l@xxxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 749b61dab30736eb95b1ee23738cae90973d4fc3
  Author: Kent Overstreet <kent.overstreet@xxxxxxxxx>
  Date:   Sat Nov 23 23:11:25 2013 -0800

      bcache: remove driver private bio splitting code

      The bcache driver has always accepted arbitrarily large bios and split
      them internally.  Now that every driver must accept arbitrarily large
      bios this code isn't nessecary anymore.

      Cc: linux-bcache@xxxxxxxxxxxxxxx
      Signed-off-by: Kent Overstreet <kent.overstreet@xxxxxxxxx>
      [dpark: add more description in commit message]
      Signed-off-by: Dongsu Park <dpark@xxxxxxxxxx>
      Signed-off-by: Ming Lin <ming.l@xxxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit c66a14d07c136cc35d4dcb84bfc7bc188be24d4c
  Author: Kent Overstreet <kent.overstreet@xxxxxxxxx>
  Date:   Sat Nov 23 22:30:22 2013 -0800

      block: simplify bio_add_page()

      Since generic_make_request() can now handle arbitrary size bios, all we
      have to do is make sure the bvec array doesn't overflow.
      __bio_add_page() doesn't need to call ->merge_bvec_fn(), where
      we can get rid of unnecessary code paths.

      Removing the call to ->merge_bvec_fn() is also fine, as no driver that
      implements support for BLOCK_PC commands even has a ->merge_bvec_fn()
      method.

      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: Jens Axboe <axboe@xxxxxxxxx>
      Signed-off-by: Kent Overstreet <kent.overstreet@xxxxxxxxx>
      [dpark: rebase and resolve merge conflicts, change a couple of comments,
       make bio_add_page() warn once upon a cloned bio.]
      Signed-off-by: Dongsu Park <dpark@xxxxxxxxxx>
      Signed-off-by: Ming Lin <ming.l@xxxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 54efd50bfd873e2dbf784e0b21a8027ba4299a3e
  Author: Kent Overstreet <kent.overstreet@xxxxxxxxx>
  Date:   Thu Apr 23 22:37:18 2015 -0700

      block: make generic_make_request handle arbitrarily sized bios

      The way the block layer is currently written, it goes to great lengths
      to avoid having to split bios; upper layer code (such as bio_add_page())
      checks what the underlying device can handle and tries to always create
      bios that don't need to be split.

      But this approach becomes unwieldy and eventually breaks down with
      stacked devices and devices with dynamic limits, and it adds a lot of
      complexity. If the block layer could split bios as needed, we could
      eliminate a lot of complexity elsewhere - particularly in stacked
      drivers. Code that creates bios can then create whatever size bios are
      convenient, and more importantly stacked drivers don't have to deal with
      both their own bio size limitations and the limitations of the
      (potentially multiple) devices underneath them.  In the future this will
      let us delete merge_bvec_fn and a bunch of other code.

      We do this by adding calls to blk_queue_split() to the various
      make_request functions that need it - a few can already handle arbitrary
      size bios. Note that we add the call _after_ any call to
      blk_queue_bounce(); this means that blk_queue_split() and
      blk_recalc_rq_segments() don't need to be concerned with bouncing
      affecting segment merging.

      Some make_request_fn() callbacks were simple enough to audit and verify
      they don't need blk_queue_split() calls. The skipped ones are:

       * nfhd_make_request (arch/m68k/emu/nfblock.c)
       * axon_ram_make_request (arch/powerpc/sysdev/axonram.c)
       * simdisk_make_request (arch/xtensa/platforms/iss/simdisk.c)
       * brd_make_request (ramdisk - drivers/block/brd.c)
       * mtip_submit_request (drivers/block/mtip32xx/mtip32xx.c)
       * loop_make_request
       * null_queue_bio
       * bcache's make_request fns

      Some others are almost certainly safe to remove now, but will be left
      for future patches.

      Cc: Jens Axboe <axboe@xxxxxxxxx>
      Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
      Cc: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
      Cc: Ming Lei <ming.lei@xxxxxxxxxxxxx>
      Cc: Neil Brown <neilb@xxxxxxx>
      Cc: Alasdair Kergon <agk@xxxxxxxxxx>
      Cc: Mike Snitzer <snitzer@xxxxxxxxxx>
      Cc: dm-devel@xxxxxxxxxx
      Cc: Lars Ellenberg <drbd-dev@xxxxxxxxxxxxxxxx>
      Cc: drbd-user@xxxxxxxxxxxxxxxx
      Cc: Jiri Kosina <jkosina@xxxxxxx>
      Cc: Geoff Levand <geoff@xxxxxxxxxxxxx>
      Cc: Jim Paris <jim@xxxxxxxx>
      Cc: Philip Kelleher <pjk1939@xxxxxxxxxxxxxxxxxx>
      Cc: Minchan Kim <minchan@xxxxxxxxxx>
      Cc: Nitin Gupta <ngupta@xxxxxxxxxx>
      Cc: Oleg Drokin <oleg.drokin@xxxxxxxxx>
      Cc: Andreas Dilger <andreas.dilger@xxxxxxxxx>
      Acked-by: NeilBrown <neilb@xxxxxxx> (for the 'md/md.c' bits)
      Acked-by: Mike Snitzer <snitzer@xxxxxxxxxx>
      Reviewed-by: Martin K. Petersen <martin.petersen@xxxxxxxxxx>
      Signed-off-by: Kent Overstreet <kent.overstreet@xxxxxxxxx>
      [dpark: skip more mq-based drivers, resolve merge conflicts, etc.]
      Signed-off-by: Dongsu Park <dpark@xxxxxxxxxx>
      Signed-off-by: Ming Lin <ming.l@xxxxxxxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit bdd2648e50508cbb2eb6d1c303e4d2d6d7505400
  Author: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
  Date:   Wed Aug 12 07:41:11 2015 +0900

      ARM: EXYNOS: switch to using generic cpufreq driver for exynos4x12

      The new CPU clock type allows the use of generic CPUfreq driver.
      Switch Exynos4x12 to using generic cpufreq driver.

      Previously (when exynos-cpufreq driver was used with boost
      functionality) ARM_EXYNOS_CPU_FREQ_BOOST_SW config option
      (which enabled boost functionality) selected EXYNOS_THERMAL
      one. After switching Exynos4x12 platforms to use cpufreq-dt
      driver boost support is enabled in the cpufreq-dt driver
      itself (because there are turbo OPPs defined in the board's
      DTS file). However we still would like to allow enabling
      boost support only if thermal support is also enabled for
      Exynos platforms. To achieve this make ARCH_EXYNOS config
      option select THERMAL and EXYNOS_THERMAL ones.

      Please also note that the switch to use the generic cpufreq-dt
      driver fixes the minor issue present with the old code (support
      for 'boost' mode in the exynos-cpufreq driver was enabled for
      all supported SoCs even though 'boost' frequency was provided
      only for Exynos4x12 ones).

      Cc: Tomasz Figa <tomasz.figa@xxxxxxxxx>
      Cc: Thomas Abraham <thomas.ab@xxxxxxxxxxx>
      Cc: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Tested-by: Tobias Jakobi <tjakobi@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
      Tested-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Kukjin Kim <kgene@xxxxxxxxxx>

  commit 86a76027457633488b0a83d5e2bb944159885605
  Author: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
  Date:   Thu Aug 13 06:55:41 2015 +0900

      perf probe: Fix to add missed brace around if block

      The commit 75186a9b09e4 (perf probe: Fix to show lines of sys_ functions
      correctly) introduced a bug by a missed brace around if block. This
      fixes to add it.

      Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Fixes: 75186a9b09e4 ("perf probe: Fix to show lines of sys_ functions 
correctly")
      Link: 
http://lkml.kernel.org/r/20150812215541.9088.62425.stgit@xxxxxxxxxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 2e169bb3ccc20fea5e6f59d1abcea249c6598163
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Thu Aug 13 12:01:10 2015 +0200

      iommu/io-pgtable-arm: Move init-fn declarations to io-pgtable.h

      Avoid extern declarations in c files.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 6e6cfbc859481b2af7282170ff732fa5e035d842
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Thu Aug 13 11:15:13 2015 +0200

      iommu/msm: Use BUG_ON instead of if () BUG()

      Found by a coccicheck script.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 543c8dcf1d3762c6fe372acf78eedc8898709106
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Thu Aug 13 11:56:59 2015 +0200

      iommu/vt-d: Access iomem correctly

      This fixes wrong accesses to iomem introduced by the kdump
      fixing code.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit b690420a406256c83ef2c7e96466052e5cab7676
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Thu Aug 13 11:32:18 2015 +0200

      iommu/vt-d: Make two functions static

      These functions are only used in that file and can be
      static.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit dc02e46e8d0234eed9f6e42f50763b406c380bc4
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Thu Aug 13 11:15:13 2015 +0200

      iommu/vt-d: Use BUG_ON instead of if () BUG()

      Found by a coccicheck script.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 30e93761fbf706c0f8a6f7d1abc1b0ddbeea208c
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Thu Aug 13 11:13:17 2015 +0200

      iommu/vt-d: Return false instead of 0 in irq_remapping_cap()

      The function return type is bool, so return false instead
      of 0.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 23d3a98c13ee0ffe2647121fac7533282643e6f1
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Thu Aug 13 11:15:13 2015 +0200

      iommu/amd: Use BUG_ON instead of if () BUG()

      Found by a coccicheck script.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 7aec51cbf0646cc15d719b08caea931576dc7f2a
  Author: Andi Kleen <ak@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 15:48:37 2015 -0700

      perf tools: Support static linking with libdw

      The Fedora 22 version of libdw requires a couple of extra libraries to
      link. With a dynamic link the dependencies are pulled in automatically,
      but this doesn't work for static linking. Add the needed libraries
      explicitely to the feature probe and the Makefile.

      v2: Explicitly check for static linking and only add the dependencies
          when -static is set. This is to avoid regressions on Arnaldo's system.

      Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439419717-20601-1-git-send-email-andi@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 4160cd9e5ef9ac9f1c9c429e1606bf08a56c8a49
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Thu Aug 13 11:31:48 2015 +0200

      iommu/amd: Make a symbol static

      Symbol is only used in that file and can be static.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit a130e69f28ba1d180242b581a15d09f06dad9227
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Thu Aug 13 11:07:25 2015 +0200

      iommu/amd: Simplify allocation in irq_remapping_alloc()

      Allocate the irq data only in the loop.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 5e3863a74fb70d6a432504ba2fa16a998cd3736b
  Author: Jonas Rabenstein <jonas.rabenstein@xxxxxxxxxxxxxxxxxxxxxxx>
  Date:   Fri Aug 14 02:36:14 2015 +0900

      cpufreq: exynos: Remove unselectable rule for arm-exynos-cpufreq.o

      Commit 966f2a71a92d ("cpufreq: exynos: remove Exynos4x12 specific
      cpufreq driver support") deleted option ARM_EXYNOS_CPUFREQ but missed
      to delete a rule in drivers/cpufreq/Makefile which depends on that
      option.

      Remove unselectable rule for arm-exynos-cpufreq.o
      from drivers/cpufreq/Makefile.

      Signed-off-by: Jonas Rabenstein <jonas.rabenstein@xxxxxxxxxxxxxxxxxxxxxxx>
      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Kukjin Kim <kgene@xxxxxxxxxx>

  commit ba032795463bfc461937dbde7a345103a47f969b
  Author: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
  Date:   Fri Aug 14 02:29:48 2015 +0900

      ARM: dts: add iommu property to JPEG device for exynos4

      JPEG codec node has been added in parallel to the patch, which
      added support for IOMMU to Exynos platform, so JPEG device for
      Exynos4 SoCs lacked IOMMU property. This patch fixes this issue.

      Signed-off-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx>
      Reviewed-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Kukjin Kim <kgene@xxxxxxxxxx>

  commit c8b34e36ca1a3e4c8ada87acefbb25119ee89347
  Author: Alexis Ballier <aballier@xxxxxxxxxx>
  Date:   Fri Aug 14 02:27:33 2015 +0900

      ARM: dts: enable SPI1 for exynos4412-odroidu3

      SPI1 is available on IO Port #2 (as depicted on their website)
      in PCB Revision 0.5 of Hardkernel Odroid U3 board.
      The shield connects a 256KiB spi-nor flash on that bus.

      Signed-off-by: Alexis Ballier <aballier@xxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Kukjin Kim <kgene@xxxxxxxxxx>

  commit e0b12512b40c7a1cc0825773d118ecfdb464be41
  Author: Michal Suchanek <hramrach@xxxxxxxxx>
  Date:   Thu Jul 30 23:12:43 2015 +0900

      ARM: dts: Add SPI CS on exynos5250-snow

      Although there is only one choice of chipselect it is necessary to
      specify it. The driver cannot claim the gpio otherwise.

      Signed-off-by: Michal Suchanek <hramrach@xxxxxxxxx>
      Acked-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Acked-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Kukjin Kim <kgene@xxxxxxxxxx>

  commit 5600f8cc8aa8bdcf335e84a7f85eae204b379bae
  Author: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>
  Date:   Thu Jul 30 23:02:22 2015 +0900

      ARM: dts: Add CPU cooling binding for exynos3250 boards

      This patch add the cooling device to control the overheating issue on
      Exynos3250-based Rinato/Monk board.

      Signed-off-by: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>
      Acked-by: Kyungmin Park <kyungmin.park@xxxxxxxxxxx>
      Acked-by Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Kukjin Kim <kgene@xxxxxxxxxx>

  commit df09df6f9ac384fef825c2c21c62cd576acda17f
  Author: Chanho Park <parkch98@xxxxxxxxx>
  Date:   Thu Jul 30 23:11:00 2015 +0900

      ARM: dts: add exynos5422-cpus.dtsi to correct cpu order

      The odroid-xu3 board which is based on exynos5422 not exynos5800
      is booted from cortex-a7 core unlike exynos5800. The odroid-xu3's
      cpu order is quite strange. cpu0 and cpu5-7 are cortex-a7 cores and
      cpu1-4 are cortex-a15 cores. To correct this mis-odering, I added
      exynos5422-cpus.dtsi and reversing cpu orders from exynos5420.
      Now, cpu0-3 are cortex-a7 and cpu4-7 are cortex-a15.

      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Chanho Park <parkch98@xxxxxxxxx>
      Signed-off-by: Kukjin Kim <kgene@xxxxxxxxxx>

  commit f44997412e5b39b6a1231f16555120c5b2aae0ed
  Author: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
  Date:   Wed Aug 12 07:38:45 2015 +0900

      ARM: dts: add CPU OPP and regulator supply property for exynos4x12

      For Exynos4x12 platforms, add CPU operating points (using
      opp-v2 bindings) and CPU regulator supply properties for
      migrating from Exynos specific cpufreq driver to using
      generic cpufreq driver.

      Based on the earlier work by Thomas Abraham.

      Cc: Doug Anderson <dianders@xxxxxxxxxxxx>
      Cc: Andreas Faerber <afaerber@xxxxxxx>
      Cc: Thomas Abraham <thomas.ab@xxxxxxxxxxx>
      Reviewed-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Tested-by: Tobias Jakobi <tjakobi@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
      Tested-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Kukjin Kim <kgene@xxxxxxxxxx>

  commit 48816affd931c44045913873dff21693cd7fc948
  Author: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>
  Date:   Fri Jul 24 12:55:21 2015 +0900

      ARM: dts: Add CPU OPP and regulator supply property for exynos3250

      This patch add CPU operating points which include CPU frequency and
      regulator voltage to use generic cpufreq drivers.

      Signed-off-by: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>
      Acked-by: Kyungmin Park <kyungmin.park@xxxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Reviewed-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
      Signed-off-by: Kukjin Kim <kgene@xxxxxxxxxx>

  commit 846c53009170bae6cfe0b75eb793c6966d2c0f83
  Author: Thomas Abraham <thomas.ab@xxxxxxxxxxx>
  Date:   Wed Jul 1 15:10:36 2015 +0200

      ARM: dts: add CPU OPP and regulator supply property for exynos5250

      For Exynos5250 platforms, add CPU operating points and CPU regulator
      supply properties for migrating from Exynos specific cpufreq driver
      to using generic cpufreq driver.

      Cc: Doug Anderson <dianders@xxxxxxxxxxxx>
      Cc: Andreas Faerber <afaerber@xxxxxxx>
      Signed-off-by: Thomas Abraham <thomas.ab@xxxxxxxxxxx>
      [b.zolnierkie: split Exynos5250 support from the original patch]
      [b.zolnierkie: added CPU regulator supply property for Spring boards]
      Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
      Reviewed-by: Javier Martinez Canillas <javier@xxxxxxxxxxxx>
      Tested-by: Javier Martinez Canillas <javier@xxxxxxxxxxxx>
      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Kukjin Kim <kgene@xxxxxxxxxx>

  commit 58c036a7ac417013bc01d09ae876265069e189d9
  Author: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>
  Date:   Fri Jul 24 12:58:41 2015 +0900

      ARM: EXYNOS: Add exynos3250 compatible to use generic cpufreq driver

      This patch add exynos3250 compatible string to exynos_cpufreq_matches
      for supporting generic cpufreq driver on Exynos3250.

      Signed-off-by: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>
      Acked-by: Kyungmin Park <kyungmin.park@xxxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Reviewed-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
      Signed-off-by: Kukjin Kim <kgene@xxxxxxxxxx>

  commit c913f022dacad8c92ce1ed6bca7587e45a3b380e
  Author: Thomas Abraham <thomas.ab@xxxxxxxxxxx>
  Date:   Wed Jul 1 15:10:37 2015 +0200

      ARM: EXYNOS: switch to using generic cpufreq driver for exynos5250

      The new CPU clock type allows the use of generic CPUfreq driver.
      Switch Exynos5250 to using generic cpufreq driver.

      Cc: Tomasz Figa <tomasz.figa@xxxxxxxxx>
      Signed-off-by: Thomas Abraham <thomas.ab@xxxxxxxxxxx>
      [b.zolnierkie: split Exynos5250 support from the original patch]
      Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
      Reviewed-by: Javier Martinez Canillas <javier@xxxxxxxxxxxx>
      Tested-by: Javier Martinez Canillas <javier@xxxxxxxxxxxx>
      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Kukjin Kim <kgene@xxxxxxxxxx>

  commit 966f2a71a92d1e7adafb5c62d1634beb451b1500
  Author: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
  Date:   Wed Aug 12 07:44:22 2015 +0900

      cpufreq: exynos: remove Exynos4x12 specific cpufreq driver support

      Exynos4x12 based platforms have switched over to use generic
      cpufreq driver for cpufreq functionality.  So the Exynos
      specific cpufreq support for these platforms can be removed.

      Also once Exynos4x12 based platforms support have been removed
      the shared exynos-cpufreq driver is no longer needed and can
      be deleted.

      Based on the earlier work by Thomas Abraham.

      Cc: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Cc: Thomas Abraham <thomas.ab@xxxxxxxxxxx>
      Reviewed-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Tested-by: Tobias Jakobi <tjakobi@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
      Tested-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Kukjin Kim <kgene@xxxxxxxxxx>

  commit cd6aceef028afc3fa216e3e7bc94cc31632cad43
  Author: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
  Date:   Wed Aug 12 07:36:47 2015 +0900

      clk: exynos4x12: add cpu clock configuration data and instantiate cpu 
clock

      With the addition of the new Samsung specific cpu-clock type, the
      arm clock can be represented as a cpu-clock type. Add the CPU clock
      configuration data and instantiate the CPU clock type for Exynos4x12.

      Based on the earlier work by Thomas Abraham.

      Cc: Tomasz Figa <tomasz.figa@xxxxxxxxx>
      Cc: Michael Turquette <mturquette@xxxxxxxxxxxx>
      Cc: Thomas Abraham <thomas.ab@xxxxxxxxxxx>
      Reviewed-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
      Reviewed-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Acked-by: Sylwester Nawrocki <s.nawrocki@xxxxxxxxxxx>
      Tested-by: Tobias Jakobi <tjakobi@xxxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@xxxxxxxxxxx>
      Tested-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Kukjin Kim <kgene@xxxxxxxxxx>

  commit 41609892701e26724b8617201f43254cadf2e7ae
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Wed Aug 12 15:59:45 2015 +0530

      blk-cgroup: Drop unlikely before IS_ERR(_OR_NULL)

      IS_ERR(_OR_NULL) already contain an 'unlikely' compiler flag and there
      is no need to do that again from its callers. Drop it.

      Acked-by: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Jens Axboe <axboe@xxxxxx>

  commit 11cec15bf3fb498206ef63b1fa26c27689e02d0e
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Thu Aug 6 14:20:31 2015 +0200

      iommu/tegra-smmu: Parameterize number of TLB lines

      The number of TLB lines was increased from 16 on Tegra30 to 32 on
      Tegra114 and later. Parameterize the value so that the initial default
      can be set accordingly.

      On Tegra30, initializing the value to 32 would effectively disable the
      TLB and hence cause massive latencies for memory accesses translated
      through the SMMU. This is especially noticeable for isochronuous clients
      such as display, whose FIFOs would continuously underrun.

      Fixes: 891846516317 ("memory: Add NVIDIA Tegra memory controller support")
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 1ec0e115f8604940491861d207cc1e1478db97b3
  Author: Tomeu Vizoso <tomeu.vizoso@xxxxxxxxxxxxx>
  Date:   Tue May 19 16:49:12 2015 +0200

      ARM: tegra: cpuidle: implement cpuidle_state.enter_freeze()

      This callback is expected to do the same as enter() but it has to
      guarantee that interrupts aren't enabled at any point in its execution,
      as the tick is frozen.

      It will be called when the system goes to suspend-to-idle and will
      reduce power usage because CPUs won't be awaken for unnecessary IRQs.

      By setting the CPUIDLE_FLAG_TIMER_STOP flag, we can reuse the same code
      for both the enter() and enter_freeze() callbacks.

      Signed-off-by: Tomeu Vizoso <tomeu.vizoso@xxxxxxxxxxxxx>
      Cc: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit fc0cf1773434c153a831067a29935e4627803583
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Mon Feb 23 15:24:11 2015 +0100

      ARM: tegra: Disable cpuidle if PSCI is available

      This is only relevant on Tegra114 and Tegra124, because earlier Tegra
      generations used Cortex-A9 without secure extensions.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 592431b0369dc7a1f4a68f15ff0c48d94b66297f
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Tue Aug 4 15:25:03 2015 +0200

      soc/tegra: pmc: Use existing pclk reference

      The driver requests the pclk clock at probe time already and stores its
      reference to it in struct tegra_pmc, so there is no need to look it up
      everytime it is needed. Use the existing reference instead.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 4a4466a6a418b96d6cb07ffb46cefa13df8f12ef
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Fri Jul 3 11:50:27 2015 +0200

      soc/tegra: pmc: Remove unnecessary return statement

      Functions returning no value don't need an explicit return statement.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit e538674740e632b57091f72cc06c0b03b45fb021
  Author: Andreas Gruenbacher <andreas.gruenbacher@xxxxxxxxx>
  Date:   Tue Aug 11 11:30:31 2015 +0200

      nfsd: Fix two typos in comments

      (espect -> expect) and (no -> know)

      Signed-off-by: Andreas Gruenbacher <agruenba@xxxxxxxxxx>
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit 9462510ce31e2b91156bdcc33e4c737e6768e5f8
  Author: Tomeu Vizoso <tomeu.vizoso@xxxxxxxxxxxxx>
  Date:   Tue Jul 14 10:29:55 2015 +0200

      pinctrl: tegra: Only set the gpio range if needed

      If the gpio DT node has the gpio-ranges property, the range will be
      added by the gpio core and doesn't need to be added by the pinctrl
      driver.

      By having the gpio-ranges property, we have an explicit dependency from
      the gpio node to the pinctrl node and we can stop using the deprecated
      pinctrl_add_gpio_range() function.

      Signed-off-by: Tomeu Vizoso <tomeu.vizoso@xxxxxxxxxxxxx>
      Acked-by: Stephen Warren <swarren@xxxxxxxxxx>
      Acked-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit c87fb4a378f93f114b9906e180d83877cee4e7f4
  Author: J. Bruce Fields <bfields@xxxxxxxxxx>
  Date:   Thu Aug 6 12:47:02 2015 -0400

      lockd: NLM grace period shouldn't block NFSv4 opens

      NLM locks don't conflict with NFSv4 share reservations, so we're not
      going to learn anything new by watiting for them.

      They do conflict with NFSv4 locks and with delegations.

      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit 4bc6603778e473938ae815123b786e724084790c
  Author: Jeff Layton <jlayton@xxxxxxxxxxxxxxx>
  Date:   Thu Jul 30 09:52:13 2015 -0400

      nfsd: include linux/nfs4.h in export.h

      export.h refers to the pnfs_layouttype enum, which is defined there.

      Signed-off-by: Jeff Layton <jeff.layton@xxxxxxxxxxxxxxx>
      Reviewed-by: Christoph Hellwig <hch@xxxxxx>
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit 7c9fd23ff12e04f36be5ae5ff5dfe72fb913f215
  Author: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
  Date:   Fri Jul 31 14:58:21 2015 +0900

      soc: tegra: Remove redundant $(CONFIG_ARCH_TEGRA) in Makefile

      Kbuild descends into drivers/soc/tegra/ only when CONFIG_ARCH_TEGRA
      is enabled. (see drivers/soc/Makefile)

      $(CONFIG_ARCH_TEGRA) in drivers/soc/tegra/Makefile always evaluates
      to 'y'.

      Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 15ee1f7d1432c8a781df5d8f92c18bd952088667
  Author: Heiko Stuebner <heiko@xxxxxxxxx>
  Date:   Tue Aug 11 18:12:03 2015 +0800

      clk: rockchip: add pclk_pd_pmu to the list of rk3288 critical clocks

      pclk_pd_pmu needs to keep running and with the upcoming gpio clock
      handling this is not always the case anymore. So add it to the list
      of critical clocks for now.

      Signed-off-by: Heiko Stuebner <heiko@xxxxxxxxx>
      Signed-off-by: Lin Huang <hl@xxxxxxxxxxxxxx>
      Reviewed-by: Douglas Anderson <dianders@xxxxxxxxxxxx>
      Acked-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 588c43a7bd5a53ae523b318e1db16bdd59963a3c
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Mon Mar 23 10:45:12 2015 +0100

      memory: tegra: Add Tegra210 support

      Add the table of memory clients and SWGROUPs for Tegra210 to enable SMMU
      support for this new SoC.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 3c01cf3befa66cc21f06672685cf59a53056887a
  Author: Paul Walmsley <paul@xxxxxxxxx>
  Date:   Thu Jun 4 19:33:48 2015 +0000

      memory: tegra: Add support for a variable-size client ID bitfield

      Recent versions of the Tegra MC hardware extend the size of the client
      ID bitfield in the MC_ERR_STATUS register by one bit.  While one could
      simply extend the bitfield for older hardware, that would allow data
      from reserved bits into the driver code, which is generally a bad idea
      on principle.  So this patch instead passes in the client ID mask from
      from the per-SoC MC data.

      There's no MC support for T210 (yet), but when that support winds up
      in the kernel, the appropriate soc->client_id_mask value for that chip
      will be 0xff.

      Based on an original patch by David Ung <davidu@xxxxxxxxxx>.

      Signed-off-by: Paul Walmsley <paul@xxxxxxxxx>
      Cc: Paul Walmsley <pwalmsley@xxxxxxxxxx>
      Cc: Thierry Reding <treding@xxxxxxxxxx>
      Cc: David Ung <davidu@xxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 4080e99b8341f81c4ed1e17d8ef44d171c473a1b
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 13:30:12 2015 +0100

      iommu/tegra-smmu: Factor out tegra_smmu_set_pde()

      This code is used both when creating a new page directory entry and when
      tearing it down, with only the PDE value changing between both cases.

      Factor the code out so that it can be reused.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      [treding@xxxxxxxxxx: make commit message more accurate]
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 7ffc6f066eb73b07a0ef7c94d05107aef271ac21
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Thu Aug 6 14:56:39 2015 +0200

      iommu/tegra-smmu: Extract tegra_smmu_pte_get_use()

      Extract the use count reference accounting into a separate function and
      separate it from allocating the PTE.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      [treding@xxxxxxxxxx: extract and write commit message]
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 707917cbc6ac0c0ea968b5eb635722ea84808286
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 13:30:02 2015 +0100

      iommu/tegra-smmu: Use __GFP_ZERO to allocate zeroed pages

      Rather than explicitly zeroing pages allocated via alloc_page(), add
      __GFP_ZERO to the gfp mask to ask the allocator for zeroed pages.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 05a65f06f69fa6c487c2933f2971d9ec4e33eb0d
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 13:29:57 2015 +0100

      iommu/tegra-smmu: Remove PageReserved manipulation

      Remove the unnecessary manipulation of the PageReserved flags in the
      Tegra SMMU driver.  None of this is required as the page(s) remain
      private to the SMMU driver.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit e3c971960fd41fc55235ba05b95e053355cb0e73
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 13:29:52 2015 +0100

      iommu/tegra-smmu: Convert to use DMA API

      Use the DMA API instead of calling architecture internal functions in
      the Tegra SMMU driver.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit d62c7a886c2bc9f9258164814245dc0678b9a52e
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 13:29:46 2015 +0100

      iommu/tegra-smmu: smmu_flush_ptc() wants device addresses

      Pass smmu_flush_ptc() the device address rather than struct page
      pointer.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit b8fe03827b192a23d04e99c40d72e6b938fa6576
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 13:29:41 2015 +0100

      iommu/tegra-smmu: Split smmu_flush_ptc()

      smmu_flush_ptc() is used in two modes: one is to flush an individual
      entry, the other is to flush all entries.  We know at the call site
      which we require.  Split the function into smmu_flush_ptc_all() and
      smmu_flush_ptc().

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 4b3c7d10765403ab19628fb7d530b8ce1c50b81d
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 13:29:36 2015 +0100

      iommu/tegra-smmu: Move flush_dcache to tegra-smmu.c

      Drivers should not be using __cpuc_* functions nor outer_cache_flush()
      directly.  This change partly cleans up tegra-smmu.c.

      The only difference between cache handling of the tegra variants is
      Denver, which omits the call to outer_cache_flush().  This is due to
      Denver being an ARM64 CPU, and the ARM64 architecture does not provide
      this function.  (This, in itself, is a good reason why these should not
      be used.)

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      [treding@xxxxxxxxxx: fix build failure on 64-bit ARM]
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 32924c76b0cbc67aa4cf0741f7bc6c37f097aaf3
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 13:29:31 2015 +0100

      iommu/tegra-smmu: Use kcalloc() to allocate counter array

      Use kcalloc() to allocate the use-counter array for the page directory
      entries/page tables.  Using kcalloc() allows us to be provided with
      zero-initialised memory from the allocators, rather than initialising
      it ourselves.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 853520fa96511e4a49942d2cba34a329528c7e41
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 13:29:26 2015 +0100

      iommu/tegra-smmu: Store struct page pointer for page tables

      Store the struct page pointer for the second level page tables, rather
      than working back from the page directory entry.  This is necessary as
      we want to eliminate the use of physical addresses used with
      arch-private functions, switching instead to use the streaming DMA API.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 0b42c7c1132f331fba263f0d2ca23544770584b7
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 13:29:21 2015 +0100

      iommu/tegra-smmu: Fix page table lookup in unmap/iova_to_phys methods

      Fix the page table lookup in the unmap and iova_to_phys methods.
      Neither of these methods should allocate a page table; a missing page
      table should be treated the same as no mapping present.

      More importantly, using as_get_pte() for an IOVA corresponding with a
      non-present page table entry increments the use-count for the page
      table, on the assumption that the caller of as_get_pte() is going to
      setup a mapping.  This is an incorrect assumption.

      Fix both of these bugs by providing a separate helper which only looks
      up the page table, but never allocates it.  This is akin to pte_offset()
      for CPU page tables.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 34d35f8cbe51bf93faf3214ee5b5d6f8ae7df4c1
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 13:29:16 2015 +0100

      iommu/tegra-smmu: Add iova_pd_index() and iova_pt_index() helpers

      Add a pair of helpers to get the page directory and page table indexes.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 8482ee5ea1097445f6498ee522965f5311667763
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 13:29:10 2015 +0100

      iommu/tegra-smmu: Factor out common PTE setting

      Factor out the common PTE setting code into a separate function.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit b98e34f0c6f1c4ac7af41afecc4a26f5f2ebe68d
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 13:29:05 2015 +0100

      iommu/tegra-smmu: Fix unmap() method

      The Tegra SMMU unmap path has several problems:
      1. as_pte_put() can perform a write-after-free
      2. tegra_smmu_unmap() can perform cache maintanence on a page we have
         just freed.
      3. when a page table is unmapped, there is no CPU cache maintanence of
         the write clearing the page directory entry, nor is there any
         maintanence of the IOMMU to ensure that it sees the page table has
         gone.

      Fix this by getting rid of as_pte_put(), and instead coding the PTE
      unmap separately from the PDE unmap, placing the PDE unmap after the
      PTE unmap has been completed.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 9113785c3e918187b6b0c084c60e0344a2f1685c
  Author: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 13:29:00 2015 +0100

      iommu/tegra-smmu: Fix iova_to_phys() method

      iova_to_phys() has several problems:
      (a) iova_to_phys() is supposed to return 0 if there is no entry present
          for the iova.
      (b) if as_get_pte() fails, we oops the kernel by dereferencing a NULL
          pointer.  Really, we should not even be trying to allocate a page
          table at all, but should only be returning the presence of the 2nd
          level page table.  This will be fixed in a subsequent patch.

      Treat both of these conditions as "no mapping" conditions.

      Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 8152d8cc593095fab36d7b71365bd32c9c1dfd29
  Author: Marcus Cooper <codekipper@xxxxxxxxx>
  Date:   Wed Aug 12 19:27:48 2015 +0200

      pinctrl: sun4i: add spdif to pin description.

      Signed-off-by: Marcus Cooper <codekipper@xxxxxxxxx>
      Reviewed-by: Hans de Goede <hdegoede@xxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 929550b9f9f870d73489df98318a740183c2e955
  Author: Dirk Behme <dirk.behme@xxxxxxxxxxxx>
  Date:   Tue Aug 11 15:51:59 2015 +0300

      gpio: mxc: fix section mismatch warning

      Fix the section mismatch warning

      WARNING: vmlinux.o(.text+0x2b2788): Section mismatch in reference from 
the function mxc_gpio_probe() to the function .init.text:mxc_gpio_init_gc()
      The function mxc_gpio_probe() references
      the function __init mxc_gpio_init_gc().
      This is often because mxc_gpio_probe lacks a __init
      annotation or the annotation of mxc_gpio_init_gc is wrong.

      Signed-off-by: Dirk Behme <dirk.behme@xxxxxxxxxxxx>
      Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@xxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 39ba928f8b34720b60c68d4c1bb274ae219ab39e
  Author: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
  Date:   Thu Aug 13 20:06:41 2015 +0800

      spi: Mediatek: fixup cpu_to_le32 incorrect usage

      writel() already does a cpu_to_le32 conversion, so
      remove cpu_to_le32().

      Signed-off-by: Leilk Liu <leilk.liu@xxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit d3fb9800146b7ad96b7604755c1a943fe1abbde2
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Thu Aug 13 18:09:49 2015 +0530

      regulator: core: Spelling fix

      Trivial spell fix, s/succesfully/successfully.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 0bf413558eb5668fe92b1a1931dc26b0df5908ae
  Merge: 3d3cacc ba68227
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 13 15:05:06 2015 +0200

      Merge tag 'qcom-soc-for-4.3' of 
git://codeaurora.org/quic/kernel/agross-msm into next/drivers

      Qualcomm ARM Based SoC Updates for 4.3

      * Add SMEM driver
      * Add SMD driver
      * Add RPM over SMD driver
      * Select QCOM_SCM by default

      * tag 'qcom-soc-for-4.3' of git://codeaurora.org/quic/kernel/agross-msm:
        devicetree: soc: Add Qualcomm SMD based RPM DT binding
        soc: qcom: Driver for the Qualcomm RPM over SMD
        soc: qcom: Add Shared Memory Driver
        soc: qcom: Add device tree binding for Shared Memory Device
        drivers: qcom: Select QCOM_SCM unconditionally for QCOM_PM
        soc: qcom: Add Shared Memory Manager driver

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 129e5824cd96d9289679973f0ff7c48e88d569bb
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Mon Jul 27 11:10:15 2015 +0800

      sunrpc: Switch to using hash list instead single list

      Switch using list_head for cache_head in cache_detail,
      it is useful of remove an cache_head entry directly from cache_detail.

      v8, using hash list, not head list

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Reviewed-by: NeilBrown <neilb@xxxxxxxx>
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit c8c081b70cb563cc4d41ab9933fa3323c6f6ffca
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Mon Jul 27 11:09:42 2015 +0800

      sunrpc/nfsd: Remove redundant code by exports seq_operations functions

      Nfsd has implement a site of seq_operations functions as sunrpc's cache.
      Just exports sunrpc's codes, and remove nfsd's redundant codes.

      v8, same as v6

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Reviewed-by: NeilBrown <neilb@xxxxxxxx>
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit 9936f2ae37482aff54ce53918c69b378bb50097c
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Mon Jul 27 11:09:10 2015 +0800

      sunrpc: Store cache_detail in seq_file's private directly

      Cleanup.

      Just store cache_detail in seq_file's private,
      an allocated handle is redundant.

      v8, same as v6.

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Reviewed-by: NeilBrown <neilb@xxxxxxxx>
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit 7ba6cad6c88f1bf0b7d66d9628d7c3f36ecb4bfe
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Wed Jun 24 16:33:37 2015 +0800

      nfsd: New helper nfsd4_cb_sequence_done() for processing more cb errors

      According to Christoph's advice, this patch introduce a new helper
      nfsd4_cb_sequence_done() for processing more callback errors, following
      the example of the client's nfs41_sequence_done().

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: J. Bruce Fields <bfields@xxxxxxxxxx>

  commit 509b642ec1cb161f0e9d349bb6bd416554955b3a
  Merge: ab39aab d93ac74
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 13 14:48:09 2015 +0200

      Merge tag 'berlin64-for-v4.3-1' of 
git://git.infradead.org/users/hesselba/linux-berlin into next/arm64

      Initial support for Marvell Berlin4CT ARM64 SoC

      * tag 'berlin64-for-v4.3-1' of 
git://git.infradead.org/users/hesselba/linux-berlin:
        arm64: dts: Add dts files for Marvell Berlin4CT SoC

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 952cfbd38e263ae81fbb4e575fe40d220891d68b
  Author: Ulises Brindis <ubrindis56@xxxxxxxxx>
  Date:   Wed Aug 5 10:23:07 2015 -0700

      gpio/mxc: mask gpio interrupts in suspend

      Currently in the FSL platform all GPIO interrupts in a bank are muxed
      into two GPIO lines to the GPC interrupt controller. In each GPIO bank
      GPIOs 0-15 are OR'ed into one GPC interrupt controller interrupt and 16-31
      are OR'ed into another. With the current code, if any of the 0-15 or
      16-31 interrupts are marked as wakeup capable, all interrupts belonging
      to that sub-bank (either 0-15 or 16-31) will wake up the device. This is
      because interrupts are only being masked at the interrupt controller
      and not at the GPIO controller.

      This patch allows masking of GPIO interrupts at the GPIO controller during
      suspend if they have not been labeled wakeup capable. This patch uses
      preexisting IRQCHIP_MASK_ON_SUSPEND flag while initializing the GPIO
      interrupts to get the desired behavior.

      Cc: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Cc: Alexandre Courbot <gnurou@xxxxxxxxx>
      Cc: linux-gpio@xxxxxxxxxxxxxxx
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Eduardo Valentin <edubezval@xxxxxxxxx>
      Signed-off-by: Ulises Brindis <ubrindis56@xxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 627c89b4d7c0a916b7702e23ded6e063dcb14ad5
  Author: Axel Lin <axel.lin@xxxxxxxxxx>
  Date:   Wed Aug 5 22:37:41 2015 +0800

      gpio: omap: Fix missing raw locks conversion

      Fix below build warning:
        CC      drivers/gpio/gpio-omap.o
      drivers/gpio/gpio-omap.c: In function 'omap_gpio_irq_type':
      drivers/gpio/gpio-omap.c:504:3: warning: passing argument 1 of 
'spin_unlock_irqrestore' from incompatible pointer type [enabled by default]
      include/linux/spinlock.h:360:29: note: expected 'struct spinlock_t *' but 
argument is of type 'struct raw_spinlock_t *'

      Fixes: commit 4dbada2be460 ("gpio: omap: use raw locks for locking")
      Signed-off-by: Axel Lin <axel.lin@xxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 5f6f02cd49d61e9856ff2c337578316a1a1b3f88
  Merge: 3afa129 cbfe8fa
  Author: Linus Walleij <linus.walleij@xxxxxxxxxx>
  Date:   Thu Aug 13 14:42:55 2015 +0200

      Merge tag 'v4.2-rc4' into devel

      Linux 4.2-rc4

  commit 627b1516a390e19fb26b1c0c9bd2546722524965
  Author: Wei Chen <Wei.Chen@xxxxxxx>
  Date:   Wed Aug 5 03:22:14 2015 +0000

      pinctrl: atlas7: clear ugly branch statements for pull and drivestrength

      To set/get atlas7 pull & drive strength, we use lots of if/else
      to check pad type. But except mask value or immediate value, all
      actions in these conditional branches are the same.
      So we use predefined pull info table and drive strength table
      to reduce these redundancy code.

      Signed-off-by: Wei Chen <Wei.Chen@xxxxxxx>
      Signed-off-by: Barry Song <Baohua.Song@xxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 94fdc2e627d1b479a117cd8b9ece5f4613a5c956
  Author: Jes Sorensen <Jes.Sorensen@xxxxxxxxxx>
  Date:   Thu Aug 6 12:46:31 2015 -0400

      orinoco: Do not call wiphy_unregister() from free_orinocodev()

      alloc_orinocodev() would allocate the wiphy entry, but it would only get
      registered much later in orinoco_init(). If something failed in the init
      process inbetween the call to alloc_orinocodev() and the completion
      of orinoco_init(), the drivers would end up calling wiphy_unregister()
      with a NULL pointer causing beautiful OOPS fireworks.

      Explicitly call wiphy_unregister() instead in the right places.

      Signed-off-by: Jes Sorensen <Jes.Sorensen@xxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit cb9d61e5304e2880180e4ccf685a298c868094e0
  Author: Aniket Nagarnaik <aniketn@xxxxxxxxxxx>
  Date:   Thu Aug 6 00:39:16 2015 -0700

      mwifiex: claim sdio bus while downloading the firmware

      Our 8887 A2 chip can have separate firmware images for
      bluetooth and WLAN. We observed an issue during parallel
      downloading of these images by btmrvl and mwifiex drivers.

      This patch claims sdio bus before starting of the firmware
      download in mwifiex and releases it after completion to
      fix the problem.

      Signed-off-by: Aniket Nagarnaik <aniketn@xxxxxxxxxxx>
      Signed-off-by: Amitkumar Karwar <akarwar@xxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 2375fa2b36feaf34c7728ee999dc4d8f4d92031d
  Author: chunfan chen <jeffc@xxxxxxxxxxx>
  Date:   Wed Aug 5 06:09:42 2015 -0700

      mwifiex: fix unable to connect hidden SSID AP on DFS channel

      We will check if any hidden SSID found in passive scan channels
      and do specific SSID active scan for those channels.

      Signed-off-by: chunfan chen <jeffc@xxxxxxxxxxx>
      Signed-off-by: Amitkumar Karwar <akarwar@xxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit eee7f1961b9d85d1fbd1febf73c90d421cc75536
  Author: Zhaoyang Liu <liuzy@xxxxxxxxxxx>
  Date:   Wed Aug 5 06:09:41 2015 -0700

      mwifiex: add firmware dump support for SD8997

      This patch adds firmware dump feature for SD8997 chipset.
      The difference here is only one memory type is needed
      to save all firmware information. Device dump information
      will be uploaded to usersapace file.

      Signed-off-by: Zhaoyang Liu <liuzy@xxxxxxxxxxx>
      Signed-off-by: Cathy Luo <cluo@xxxxxxxxxxx>
      Signed-off-by: Amitkumar Karwar <akarwar@xxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 6d85ef00d9dfe3bb61b021476465fa4e371ed076
  Author: Zhaoyang Liu <liuzy@xxxxxxxxxxx>
  Date:   Wed Aug 5 06:09:40 2015 -0700

      mwifiex: add support for 8997 chipset

      This patch adds support for 8997 chipset to mwifiex
      with SDIO/PCIe/USB interface.

      The corresponding firmware image files are located in:
      "mrvl/sd8997_uapsta.bin"
      "mrvl/pcie8997_uapsta.bin"
      "mrvl/usb8997_uapsta.bin"

      Signed-off-by: Zhaoyang Liu <liuzy@xxxxxxxxxxx>
      Signed-off-by: Cathy Luo <cluo@xxxxxxxxxxx>
      Signed-off-by: Amitkumar Karwar <akarwar@xxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 9ef7e25ff62033065ec019425a9c769374455a1a
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Tue Apr 14 14:57:14 2015 +0200

      drm/panel: Add Samsung prefix to panel drivers

      The likelihood of getting a large number of panel drivers from different
      vendors is quite high. Add a prefix to the two existing Samsung panel
      drivers to set a guideline for future patch submissions. Using vendor
      prefixes consistently should allow a cleaner organization of the tree.

      Acked-by: Krzysztof Kozlowski <k.kozlowski@xxxxxxxxxxx>
      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 3b1f0e86958b8afcfb6980f987c41e149480f9bd
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Tue Aug 4 10:49:27 2015 +0300

      mwifiex: usb: return an error if kmalloc fails

      The current code returns success if kmalloc fails.

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Acked-by: Amitkumar Karwar <akarwar@xxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 3544f9f150bb58a3678c161a505b186893971c8a
  Author: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
  Date:   Mon Aug 3 16:15:53 2015 -0500

      rtlwifi: rtl8192c-common: Fix two typos

      In this driver, two variables are masked by one quantity, and then tested
      against a second number with more bits that the mask. Accordingly, the
      test always fails. To minimize the possibility of such typos, a symbolic
      definition of the mask is created and used.

      The separate load and mask operations are also combined into a single
      statement.

      Reported-by: David Binderman <dcb314@xxxxxxxxxxx>
      Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
      Cc: David Binderman <dcb314@xxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 8d882bcf82743f20b0546088f935a718b4ae6f60
  Author: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
  Date:   Mon Aug 3 15:56:16 2015 -0500

      rtlwifi: rtl8192ee: Fix firmware header endian issues

      This driver is converted to use the common firmware header struct.
      Because the old header definition failed to indicate that the multi-byte
      entries should be little endian, several problems were thus exposed.
      These are fixed.

      Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 201b63c7c907bcc89bb11797ce2ca2a93027004b
  Author: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
  Date:   Mon Aug 3 15:56:15 2015 -0500

      rtlwifi: rtl888ee: Fix firmware header endian issues

      This driver is converted to use the common firmware header struct.
      Because the old header definition failed to indicate that the multi-byte
      entries should be little endian, several problems were thus exposed.
      These are fixed.

      Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit b290b57d18aa0e1d35caf209ccc12ac3ef14a6b3
  Author: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
  Date:   Mon Aug 3 15:56:14 2015 -0500

      rtlwifi: rtl8192de: Fix firmware header endian issues

      This driver is converted to use the common firmware header struct.
      Because the old header definition failed to indicate that the multi-byte
      entries should be little endian, several problems were thus exposed.
      These are fixed.

      Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 253f10abb7c24665988cf0abda65acaa40ce5815
  Author: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
  Date:   Mon Aug 3 15:56:13 2015 -0500

      rtlwifi: rtl8821ae: Fix firmware endian issues

      This driver is converted to use the common firmware header struct.
      Because the old header definition failed to indicate that the multi-byte
      entries should be little endian, several problems were thus exposed.
      These are fixed.

      Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 7c24d086ef9ccbffc46f5f9e2680f292ca356166
  Author: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
  Date:   Mon Aug 3 15:56:12 2015 -0500

      rtlwifi: rtl8723ae: rtl8723be: rtl8723com: Fix firmware header endian 
issues

      The drivers are converted to use the common firmware header struct.
      Because the old header definition failed to indicate that the multi-byte
      entries should be little endian, several problems were thus exposed.
      These are fixed.

      Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit e41c513599187bd100644566bde86541c01db1d6
  Author: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
  Date:   Mon Aug 3 15:56:11 2015 -0500

      rtlwifi: rtl8192ce: rtl8192cu: Fix endian issue

      Commit e996db69833a (rtlwifi: rtl8192c: Add init codes for "fw_version"
      and "fw_subversion") added initialization for fw_version, but failed to
      note that the variable in the firmware header is little-endian. The
      following Sparse warning results:

        CHECK   drivers/net/wireless/rtlwifi/rtl8192c/fw_common.c
      drivers/net/wireless/rtlwifi/rtl8192c/fw_common.c:242:36: warning: 
incorrect type in assignment (different base types)
      drivers/net/wireless/rtlwifi/rtl8192c/fw_common.c:242:36:    expected 
unsigned short [unsigned] [usertype] fw_version
      drivers/net/wireless/rtlwifi/rtl8192c/fw_common.c:242:36:    got 
restricted __le16 [usertype] version

      When fixing this problem, I noticed that several of the drivers contain
      nearly identical copies of the firmware header struct, and that only the 
one
      used in rtl8192c{e,u} had correct endian notation. The struct has been
      moved into a common header, and the other drivers will be fixed in
      subsequant patches.

      Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit d3928d0946bf75dc6709a08b12839ecb889f2564
  Author: Vineet Gupta <Vineet.Gupta1@xxxxxxxxxxxx>
  Date:   Thu Jul 9 13:43:18 2015 +0530

      brcmfmac: dhd_sdio.c: use existing atomic_or primitive

      There's already a generic implementation so use that instead.

      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit ab63cb8b0cc84a89f65e418357d7e6b9b914c89a
  Author: Nicholas Mc Guire <hofrat@xxxxxxxxx>
  Date:   Thu May 14 18:56:16 2015 +0200

      ath9k: match wait_for_completion_timeout return type

      Return type of wait_for_completion_timeout is unsigned long not int.
      As time_left is exclusively used for wait_for_completion_timeout here its
      type is simply changed to unsigned long.

      API conformance testing for completions with coccinelle spatches are being
      used to locate API usage inconsistencies:
      ./drivers/net/wireless/ath/ath9k/link.c:197
              int return assigned to unsigned long

      Patch was compile tested with x86_64_defconfig + CONFIG_ATH_CARDS=m,

      Patch is against 4.1-rc3 (localversion-next is -next-20150514)

      Signed-off-by: Nicholas Mc Guire <hofrat@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 61fc39204bc0db0070267fe0f7920c38b0af87ef
  Author: Nicholas Mc Guire <hofrat@xxxxxxxxx>
  Date:   Thu May 14 18:43:41 2015 +0200

      ath9k_htc: wmi: match wait_for_completion_timeout return type

      Return type of wait_for_completion_timeout is unsigned long not int.
      As time_left is exclusively used for wait_for_completion_timeout here its
      type is simply changed to unsigned long.

      API conformance testing for completions with coccinelle spatches are being
      used to locate API usage inconsistencies:
      ./drivers/net/wireless/ath/ath9k/wmi.c:331
        int return assigned to unsigned long

      Patch was compile tested with x86_64_defconfig + CONFIG_ATH_CARDS=m,
      CONFIG_ATH9K_HTC=m

      Patch is against 4.1-rc3 (localversion-next is -next-20150514)

      Signed-off-by: Nicholas Mc Guire <hofrat@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 39ce8150a079e3ae6ed9abf26d7918a558ef7c19
  Author: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 15:03:14 2015 +0300

      pinctrl: baytrail: Serialize all register access

      There is a hardware issue in Intel Baytrail where concurrent GPIO register
      access might result reads of 0xffffffff and writes might get dropped
      completely.

      Prevent this from happening by taking the serializing lock in all places
      where it is possible that more than one thread might be accessing the
      hardware concurrently.

      Signed-off-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 70a56550a664ce93583f59ef1b885e7616c942e4
  Author: Nicholas Mc Guire <hofrat@xxxxxxxxx>
  Date:   Thu May 14 18:25:26 2015 +0200

      ath9k_htc: drv_init: match wait_for_completion_timeout return type

      Return type of wait_for_completion_timeout is unsigned long not int.
      As time_left is exclusively used for wait_for_completion_timeout here its
      type is simply changed to unsigned long.

      API conformance testing for completions with coccinelle spatches are being
      used to locate API usage inconsistencies:
      ./drivers/net/wireless/ath/ath9k/htc_drv_init.c:81
        int return assigned to unsigned long

      Patch was compile tested with x86_64_defconfig + CONFIG_ATH_CARDS=m,
      CONFIG_ATH9K_HTC=m

      Patch is against 4.1-rc3 (localversion-next is -next-20150514)

      Signed-off-by: Nicholas Mc Guire <hofrat@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 5ab49db8e007c4479be1a682ea64d9b562aa4880
  Author: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 15:03:13 2015 +0300

      pinctrl: baytrail: Drop FSF mailing address

      The FSF address is already mentioned in the COPYING file. No need to
      duplicate that information to individual files.

      Signed-off-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 34edd5f6839db083b625d473efa4145449cd1af0
  Author: Nicholas Mc Guire <hofrat@xxxxxxxxx>
  Date:   Thu May 14 17:29:54 2015 +0200

      ath9k_htc: match wait_for_completion_timeout return type

      Return type of wait_for_completion_timeout is unsigned long not int.
      As time_left is exclusively used for wait_for_completion_timeout here its
      type is simply changed to unsigned long.

      API conformance testing for completions with coccinelle spatches are being
      used to locate API usage inconsistencies:
      ./drivers/net/wireless/ath/ath9k/htc_hst.c:171
        int return assigned to unsigned long
      ./drivers/net/wireless/ath/ath9k/htc_hst.c:277
        int return assigned to unsigned long
      ./drivers/net/wireless/ath/ath9k/htc_hst.c:206
        int return assigned to unsigned long

      Patch was compile tested with x86_64_defconfig + CONFIG_ATH_CARDS=m,
      CONFIG_ATH9K_HTC=m

      Patch is against 4.1-rc3 (localversion-next is -next-20150514)

      Signed-off-by: Nicholas Mc Guire <hofrat@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 07a06ae99ef9b8eda3ec0b69c8f477856042a511
  Author: Lin Huang <hl@xxxxxxxxxxxxxx>
  Date:   Tue Aug 11 18:12:04 2015 +0800

      pinctrl: rockchip: only enable gpio clock when it setting

      gpio can keep state even the clock disable, for save power
      consumption, only enable gpio clock when it setting

      Signed-off-by: Lin Huang <hl@xxxxxxxxxxxxxx>
      Reviewed-by: Heiko Stuebner <heiko@xxxxxxxxx>
      Reviewed-by: Douglas Anderson <dianders@xxxxxxxxxxxx>
      Tested-by: Douglas Anderson <dianders@xxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit d07cb049af1a3343cf2043618aaa29f8c84f4649
  Author: Cheolhyun Park <pch851130@xxxxxxxxx>
  Date:   Sun Apr 12 16:59:48 2015 +0000

      rtlwifi: misspelled code and comments corrected.

      Signed-off-by: Cheolhyun Park <pch851130@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>

  commit 43a0da25c0949f6dba0a8d6296907263f1b97ddd
  Merge: 0122a51 c020e37
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Thu Aug 13 13:22:26 2015 +0100

      Merge remote-tracking branch 'spi/fix/bcm2835' into spi-fix-bcm2835

  commit c70336cc4ca1162808ee71dfe84696cb1cc91eac
  Author: Colin Ian King <colin.king@xxxxxxxxxxxxx>
  Date:   Mon Aug 3 00:10:45 2015 +0100

      pinctrl/mediatek: fix spelling mistake in dev_err error message

      Trivial change, fix spelling mistake 'invaild' -> 'invalid' in
      dev_err message.

      Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
      Acked-by: Hongzhou Yang <hongzhou.yang@xxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit ffebfc364dcaa5dea1a589d42207834b028df789
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Tue Apr 14 15:37:14 2015 +0200

      drm/exynos: Remove PTN3460 dependency

      Now that the PTN3460 driver has been rewritten as a proper I2C driver
      and there is infrastructure to hook up the bridge with a DRM device, it
      is no longer necessary to have this dependency to ensure the correct
      build mode.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit ac22a1d3386e195c57e299da3bfad97a061b9616
  Author: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>
  Date:   Thu Aug 13 09:19:43 2015 +0900

      extcon: palmas: Fix build break due to devm_gpiod_get_optional API change

      With commit b17d1bf16cc7 ("gpio: make flags mandatory for gpiod_get 
functions")
      it becomes necessary to pass the flags argument. And this patch adds the 
gpio
      header file to fix the build breakage when build testing with random
      configuration files.

      Reported-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      Signed-off-by: Chanwoo Choi <cw00.choi@xxxxxxxxxxx>
      Acked-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>

  commit 459cc2c6800b545a482e428a631d99bca8da7790
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Thu Jul 30 10:34:24 2015 +0200

      drm/tegra: sor: Add HDMI support

      The SOR1 introduced on Tegra210 supports HDMI 2.0 and DisplayPort. Add
      HDMI support and name the debugfs node after the type of SOR. The SOR
      introduced with Tegra124 is known simply as "sor", whereas the
      additional SOR found on Tegra210 is known as "sor1".

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 3309ac836229d8bc3db7618e04a51334bef13b0a
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Thu Jul 30 10:32:46 2015 +0200

      drm/tegra: sor: Add Tegra210 eDP support

      The SOR found on Tegra210 is very similar to the version found on
      Tegra124, except that it no longer supports LVDS.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 003fc848774fcc7b7f14a2b4f3e6411764f43fc0
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Mon Aug 3 13:16:26 2015 +0200

      drm/tegra: dc: Implement atomic DPMS

      Move all code into the new canonical ->disable() and ->enable() helper
      callbacks so that they play extra nice with atomic DPMS.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 850bab448034f0a601727fe266afd0ef64fef6dc
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Jul 29 17:58:41 2015 +0200

      drm/tegra: sor: Restore DPMS

      In order to restore DPMS with atomic mode-setting, move all code from
      the ->mode_set() callback into ->enable(). At the same time, rename the
      ->prepare() callback to ->disable() to use the names preferred by atomic
      mode-setting. This simplifies the calling sequence and will allow DPMS
      to use runtime PM in subsequent patches.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 171e2e6dd912dac625e085919f0822cd94c04ff0
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Jul 29 16:04:44 2015 +0200

      drm/tegra: dsi: Restore DPMS

      In order to restore DPMS with atomic mode-setting, move all code from
      the ->mode_set() callback into ->enable(). At the same time, rename the
      ->prepare() callback to ->disable() to use the names preferred by atomic
      mode-setting. This simplifies the calling sequence and will allow DPMS
      to use runtime PM in subsequent patches.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 29871b21c48c7b13adbd056755d923394ff6110b
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Jul 29 09:46:40 2015 +0200

      drm/tegra: hdmi: Restore DPMS

      In order to restore DPMS with atomic mode-setting, move all code from
      the ->mode_set() callback into ->enable(). At the same time, rename the
      ->prepare() callback to ->disable() to use the names preferred by atomic
      mode-setting. This simplifies the calling sequence and will allow DPMS
      code to use runtime PM in subsequent patches.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 32c3dee11e8e8ff790a8724c1bfe87a51976d7f8
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Jul 29 10:08:17 2015 +0200

      drm/tegra: rgb: Restore DPMS

      In order to restore DPMS with atomic mode-setting, move all code from
      the ->mode_set() callback into ->enable(). At the same time, rename the
      ->prepare() callback to ->disable() to use the names preferred by atomic
      mode-setting. This simplifies the calling sequence and will allow DPMS
      code to use runtime PM in subsequent patches.

      While at it, remove the enabled field that hasn't been used since the
      demidlayering of the output drivers done in preparation for the atomic
      mode-setting conversion.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 530239a8b82c0d051ccda341cb346d3f11a80e70
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Thu Aug 6 11:04:54 2015 +0200

      drm/tegra: sor: Use DRM debugfs infrastructure for CRC

      Instead of duplicating most of the code to set up a debugfs file, use
      the existing DRM core debugfs infrastructure instead.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 51511d05defe92715c19c3e583c9d1ac1c82e1e6
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Thu Jul 30 18:47:07 2015 +0200

      drm/tegra: sor: Write correct head state registers

      The head state registers are per head, so they must be properly indexed.
      This has worked fine so far because all boards with eDP use it as the
      primary output, so it is very likely to end up attached to head 0.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 8044449556338fb27b1a03f6b1dbbdbc59e4ebfa
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Jul 29 18:20:01 2015 +0200

      drm/tegra: sor: Constify display mode

      The data structure is always only read, never written, and can hence be
      referred to by a const pointer.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 066d30f8c7547f9ca744cd090092d66847e85de4
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Fri Jul 3 14:16:30 2015 +0200

      drm/tegra: sor: Reset the correct debugfs fields

      When tearing down debugfs support, make sure to reset the fields to NULL
      in the correct order, otherwise the debugfs root will not be properly
      removed.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 3ff1f22c882493dcceb25cbca5b516d8e4271151
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Fri Jul 3 14:14:29 2015 +0200

      drm/tegra: sor: Set minor after debugfs initialization

      The DRM minor is needed to teardown debugfs, so it needs to be tracked
      to prevent a crash on driver removal.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 4dbdc740c4beec653920e81470a6e6d69c6ab064
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Mon Apr 27 15:04:26 2015 +0200

      drm/tegra: sor: Provide error messages in probe

      When probing the SOR device fails, output proper error messages to help
      diagnose the cause of the failure.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit a9a9e4fd7c923707a11b1b386cc31156d474039c
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Mon Apr 27 15:01:14 2015 +0200

      drm/tegra: sor: Rename registers for consistency

      The TRM lists indexed registers without an underscore to separate name
      from index. Use that convention in the driver for consistency.

      While at it, rename some of the field names to the names used in the
      TRM.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 9e532b3ad9a7fc5f00d29c766439ffbdcc403146
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Fri Jul 3 14:56:46 2015 +0200

      drm/tegra: dpaux: Disable interrupt when detached

      When the DPAUX isn't attached to an SOR the interrupts are not useful.
      This also prevents a race that could potentially cause a crash on driver
      removal.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 3227166c3bd64dc3a44b7a1bf79efff34ec27aa3
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Mon Apr 27 15:16:26 2015 +0200

      drm/tegra: dpaux: Configure pads as I2C by default

      The DPAUX code paths already configure the pads in AUX mode, but there
      is no way to reconfigure them in I2C mode for HDMI (the DPAUX module is
      unused in that case). Enabling the pads in I2C mode by default is the
      quickest way to support HDMI. Eventually this may need an explicit call
      in the user drivers.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 08f580ef2fcef724db1107545bc14306b7c9eae2
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Mon Apr 27 14:50:30 2015 +0200

      drm/tegra: dpaux: Provide error message in probe

      When probing the dpaux device fails, output proper error messages to
      help diagnose the cause of the failure.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit ddfb406b2f9f83e85734e43d043cdd1b2519df13
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Apr 8 16:56:22 2015 +0200

      drm/tegra: dsi: Add Tegra210 support

      The DSI host controller hasn't changed from Tegra132 to Tegra210, but
      different characterization parameters may be required.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit c06c793084ecf62e77361e671465214a196a2f55
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Fri Apr 10 11:35:21 2015 +0200

      drm/tegra: dsi: Add Tegra132 support

      The DSI host controller hasn't changed from Tegra124 to Tegra132, but
      different characterization parameters may be required.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 7d3385875b7a4722dad4045c65fa51829acd5dff
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Fri Apr 10 11:35:21 2015 +0200

      drm/tegra: dsi: Add Tegra124 support

      The DSI host controller hasn't changed from Tegra114 to Tegra124, but
      different characterization parameters may be required.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit b8be0bdbd52d35aac30fb2d8c295f9a3000873f2
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Apr 8 16:58:07 2015 +0200

      drm/tegra: dsi: Use proper back-porch for non-sync video mode

      In video modes without sync pulses, the horizontal back-porch needs to
      include the horizontal sync width.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 472a6d1fd5f5d37a1c081e69f5c8ad5307ac358f
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 5 16:39:55 2015 +0200

      drm/tegra: dc: Rename BASE_COLOR_SIZE* fields

      Use an underscore to separate the prefix from the color size suffix.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 76ac3284bb708545e762091ba5d6d0f0dbc008bc
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Fri Aug 7 09:26:57 2015 +0200

      drm/tegra: dc: Don't explicitly set owner module

      The call to platform_driver_register() will already set up the .owner
      field, so there's no need to do it explicitly.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 8fd3ffa902a0d9f282ffa80599970ff1c823b1a8
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Mon Apr 27 14:48:35 2015 +0200

      drm/tegra: dc: Rename register for consistency

      The horizontal pulse enable bits are named H_PULSE{0,1,2}_ENABLE in the
      TRM. Modify the driver to use the same naming for consistency.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 791ddb1e1cea14aa278580b3832cd0f10252aafa
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Tue Jul 28 21:27:05 2015 +0200

      drm/tegra: dc: Record statistics

      Record interrupt statistics, such as the number of frames and VBLANKs
      received and the number of FIFO underflow and overflows.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 01a5da0c104d0ce38d2847da2295c510becddbe0
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Mon Aug 3 13:18:41 2015 +0200

      drm/tegra: dc: Request syncpoint earlier

      Request a syncpoint for display prior to registering the host1x client.
      This will ensure that the syncpoint will be acquired when the KMS driver
      initializes.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit e83dcb5bb610a46d10d2d74a67132a75c49804e6
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Tue Jul 28 21:28:55 2015 +0200

      drm/tegra: dc: Remove gratuituous blank line

      Blank lines at the end of functions are hideous, so get rid of it.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit a1df3b24884d5d8946d6cdf44e6d403e3925b4c6
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Tue Jul 21 16:42:30 2015 +0200

      drm/tegra: dc: Clarify comment about cursor treatment

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 6ca1f62f0d69120030469cc0b409bd521cbd67cc
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Apr 1 14:59:40 2015 +0200

      drm/tegra: dc: Implement CRC debugfs interface

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 5b4f516f5c6a2d3ac6edf750a40041842f928198
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Fri Mar 27 10:31:58 2015 +0100

      drm/tegra: dc: Add Tegra210 support

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 31930d4d0860fc87f93d9b76b0a4e6ac0b823dbf
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Thu Jul 2 17:04:06 2015 +0200

      drm/tegra: dc: Reset VBLANK to off

      Upon driver load, reset the VBLANK machinery to off to reflect the
      hardware state. Since the ->reset() callback is called from the initial
      drm_mode_config_reset() call, move the latter after the VBLANK machinery
      initialization by drm_vblank_init().

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit fb36d0eed4fe3359aca8e6000c1bd92cc5199718
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Mon Apr 27 15:12:39 2015 +0200

      drm/tegra: output: Support low-active hotplug detect

      Support low-active hotplug detect signals by storing the GPIO flags
      parsed from device tree.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 114bb13968162451f5e1d7fe793f9eb7e0083d9a
  Author: Nicolin Chen <nicoleotsuka@xxxxxxxxx>
  Date:   Wed Aug 12 13:06:12 2015 -0700

      ASoC: fsl-asoc-card: Specify codec_dai_name for DAI links

      The dev->name of CODEC might not be identical to its codec_dai_name,
      so using dev->name to probe the CODEC dai is not a correct approach.

      This patch specifies each supporting codec_dai_name instead of using
      dev->name any more.

      Signed-off-by: Nicolin Chen <nicoleotsuka@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit a13f1dc4c3b7ac7de9d9ac266c0ed0374cae3421
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Tue Aug 11 13:22:44 2015 +0200

      drm/tegra: Use SIMPLE_DEV_PM_OPS

      Use this macro to reduce some of the boilerplate.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit cdc630b6c677b6d981b368baf44c8b4297adbb09
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Tue Jul 21 16:45:49 2015 +0200

      drm/tegra: Allow VBLANK to be disabled

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 15372d4be7f099662dc84e4e35e844bd4373d959
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Fri Apr 10 11:29:41 2015 +0200

      gpu: host1x: mipi: Power down regulators when unused

      Keep track of the number of users of DSI and CSI pads and power down the
      regulators that supply the bricks when all users are gone.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 5e7752436e10427ba598de4f2f6b7889daf586cc
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Apr 8 17:23:20 2015 +0200

      gpu: host1x: mipi: Add Tegra210 support

      Some changes are needed to the configuration settings for some lanes. In
      addition, the clock lanes for the CSI pads can no longer be calibrated.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 7fd3ecad3f768fd2b39fc4db12044437fbf5d735
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Apr 8 17:20:32 2015 +0200

      gpu: host1x: mipi: Add Tegra132 support

      While Tegra132 has the same pads as Tegra124, some configuration values
      need to be programmed slightly differently.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit c22fb79099dbec82b8280106c43f6e800ecc854c
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Apr 8 17:19:19 2015 +0200

      gpu: host1x: mipi: Constify OF match table

      This table is never modified and can therefore reside in read-only
      memory.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 2ed264bf916b689fe0c71ac726995f0876062667
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Apr 8 17:17:44 2015 +0200

      gpu: host1x: mipi: Clear calibration status

      Before starting a new calibration cycle, make sure to clear the current
      status by writing a 1 to the various "calibration done" bits.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 8ed5c0623272663783e052123fea02651464a0a5
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Apr 8 17:06:08 2015 +0200

      gpu: host1x: mipi: Fix clock lane register for DSI

      Use more consistent names for the clock lane configuration registers and
      fix the offset of the upper clock lane configuration register for the
      first DSI pad.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 83a3c223cc5678c5ced554fa2819747fd53437c7
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Apr 8 17:03:49 2015 +0200

      gpu: host1x: mipi: Parameterize to support future SoCs

      Parameterize more of the register programming to accomodate for changes
      required by future SoC generations.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>

  commit 6e588a0d839b51bae49852b68740a25cacc91978
  Author: Lars-Peter Clausen <lars@xxxxxxxxxx>
  Date:   Tue Aug 11 21:38:01 2015 +0200

      ASoC: dapm: Consolidate path trace events

      The snd_soc_dapm_input_path and snd_soc_dapm_output_path trace events are
      identical except for the direction. Instead of having two events have a
      single one that has a field that contains the direction.

      Signed-off-by: Lars-Peter Clausen <lars@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit a3423b02cf745c1418f1f199646c450d6fc9ca4e
  Author: Lars-Peter Clausen <lars@xxxxxxxxxx>
  Date:   Tue Aug 11 21:38:00 2015 +0200

      ASoC: dapm: Consolidate input and output path handling

      After the recent cleanups and generalizations of the DAPM algorithm the
      handling of input and output paths is now fully symmetric. This means by
      making some slight changes to the data structure and using arrays with one
      entry for each direction, rather than separate fields, it is possible to
      create a generic implementation that is capable of handling both input and
      output paths.

      Unfortunately this generalization significantly increases the code size on
      the hot path of is_connected_{input,output}_ep() and
      dapm_widget_invalidate_{input,output}_paths(), which has a negative impact
      on the overall performance. The inner loops of those functions are quite
      small and the generic implementation adds extra pointer arithmetic in a 
few
      places.

      Testing on ARM shows that the combined code size of the specialized
      functions is about 50% larger than the generalized function in relative
      numbers. But in absolute numbers its less than 200 bytes, which is still
      quite small. On the other hand the generalized function increases the
      execution time of dapm_power_one_widget() by 30%. Given that this function
      is one of the most often called functions of the DAPM framework the
      trade-off of getting better performance at expense of generating slightly
      larger code at seems to be worth it.

      To avoid this still keep two versions of these functions around, one for
      input and one for output. But have a generic implementation of the
      algorithm which gets inlined by those two versions. And then let the
      compiler take care of optimizing it and removing he extra instructions.

      This still reduces the source code size as well as the makes making 
changes
      to the implementation more straight forward since the same change does no
      longer need to be done in two separate places. Also on the slow paths we
      can use a generic implementations that handle both input and output paths.

      Signed-off-by: Lars-Peter Clausen <lars@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 30abbe7727b23c6661daeea5d36be36ed7a41665
  Author: Lars-Peter Clausen <lars@xxxxxxxxxx>
  Date:   Tue Aug 11 21:37:59 2015 +0200

      ASoC: dapm: dapm_dai_get_connected_widgets: Fix missing mutex unlock

      Make sure to unlock the DAPM mutex when dapm_widget_list_create() fails.

      This means the function will now generate a trace_snd_soc_dapm_connected
      event, even if the creation of the list fails. But that was the behavior
      before the patch that introduced the unlock issue, so that should be fine.

      Fixes: 1ce43acff0c0 ("ASoC: dapm: Simplify list creation in 
dapm_dai_get_connected_widgets()")
      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Lars-Peter Clausen <lars@xxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit e04cafbc38c70af2aad3810ce24ab0eba8114779
  Author: Michal Kazior <michal.kazior@xxxxxxxxx>
  Date:   Wed Aug 5 12:15:24 2015 +0200

      ath10k: fix peer limit enforcement

      Firmware peer entries are involved in internal
      firmware vdev structures. This was not accounted
      for and could lead firmware to crash due to asking
      it to do more than it could.

      Fixes: 039a0051ec1a ("ath10k: allocate fw resources for iface 
combinations")
      Signed-off-by: Michal Kazior <michal.kazior@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit adaeed74bc085bc59991cd6e23ee7f720b6c6aab
  Author: Michal Kazior <michal.kazior@xxxxxxxxx>
  Date:   Wed Aug 5 12:15:23 2015 +0200

      ath10k: don't remove peer that doesn't exist

      If peer creation failed during offchannel Tx the
      driver attempted to delete the peer nonetheless.
      This caused the ar->num_peers counter to be
      incorrectly decremented. This subsequently could
      cause the counter to drop below 0 and also
      eventually lead to firmware crash because host
      would think there are less peer entries created in
      firmware then there really were.

      Signed-off-by: Michal Kazior <michal.kazior@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 16ea9b8ac45bf11d48af6013283e141e8ed86348
  Author: Ricardo Ribalda Delgado <ricardo.ribalda@xxxxxxxxx>
  Date:   Wed Aug 12 18:04:04 2015 +0200

      spi/spi-xilinx: Fix mixed poll/irq mode

      Once the module process a transfer in irq mode, the next poll transfer
      will not work because the transmitter is left in inhibited state.

      Fixes: 22417352f6b7f623 (Use polling mode on small transfers)
      Reported-by: Edward Kigwana <ekigwana@xxxxxxxxxx>
      Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@xxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx

  commit 6f7429c29b9979d64d067543caec940bbc023340
  Author: Michal Kazior <michal.kazior@xxxxxxxxx>
  Date:   Wed Aug 5 12:08:38 2015 +0200

      ath10k: fix hw reconfig on wow failure

      When WoWLAN resume fails with retval 1 mac80211
      will attempt to reconfig the device in a similar
      manner when hw restart is requested. This wasn't
      handled properly and yielded call trace warnings
      and the device ended up not working.

      Signed-off-by: Michal Kazior <michal.kazior@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 84e3df60f0daba5b1e7874101502d0b030afb867
  Author: Michal Kazior <michal.kazior@xxxxxxxxx>
  Date:   Wed Aug 5 06:55:37 2015 +0200

      ath10k: initialize fw_features var

      If firmware did not have any feature flags set the
      var would be left with values found on the stack
      (i.e. garbage) yielding print string like this:

        (...) features \xffffffa6m:^R\xfffffffbÔ?\xffffffc4^E

      Fixes: b27bc5a40f91 ("ath10k: dump fw features during probing")
      Signed-off-by: Michal Kazior <michal.kazior@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit a48e2cc8992a13a58cff04e54e05f959d418554b
  Author: Vivek Natarajan <nataraja@xxxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 10:45:12 2015 +0530

      ath10k: Enable MU MIMO txbf support for QCA99X0

      This patch enables MU-MIMO transmit beamforming support
      for QCA99X0 chipsets.

      Signed-off-by: Vivek Natarajan <nataraja@xxxxxxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 08e75ea84cb595c52f140049fcf6362679473592
  Author: Vivek Natarajan <nataraja@xxxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 10:45:11 2015 +0530

      ath10k: Support different txbf configuration schemes

      qca61x4 uses the vdev param as a sole sufficient configuration
      for txbf while qca99x0 enables txbf during peer assoc by
      combining the vdev param value with peer assoc's vht capabilities

      This patch gets the appropriate txbf configuration scheme
      before passing the wmi command to enable the same in the firmware.

      Signed-off-by: Vivek Natarajan <nataraja@xxxxxxxxxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 4585b000ace6438d0b142746baab658056b223d9
  Author: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 3 12:46:38 2015 +0300

      pinctrl: cherryview: Serialize all register access

      There is a hardware issue in Intel Braswell/Cherryview where concurrent
      GPIO register access might results reads of 0xffffffff and writes might 
get
      dropped.

      Prevent this from happening by taking the serializing lock for all places
      where it is possible that more than one thread might be accessing the
      hardware concurrently.

      Signed-off-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 39b87ad166114b842159e5384a948b168cfa61d8
  Author: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
  Date:   Sat Aug 1 12:38:52 2015 +0900

      pinctrl: UniPhier: PH1-Pro5: add I2C ch6 pin-mux setting

      The initial version of this driver missed to add I2C ch6 pin-muxing.

      Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 92092fe528e79c9bd25784ca0ef341d5a1d1b642
  Author: Michal Kazior <michal.kazior@xxxxxxxxx>
  Date:   Mon Aug 3 11:16:43 2015 +0200

      ath10k: reject 11b tx fragmentation configuration

      Even though there's a WMI enum for fragmentation
      threshold no known firmware actually implements
      it. Moreover it is not possible to rely frame
      fragmentation to mac80211 because firmware clears
      the "more fragments" bit in frame control making
      it impossible for remote devices to reassemble
      frames.

      Hence implement a dummy callback just to say
      fragmentation isn't supported. This effectively
      prevents mac80211 from doing frame fragmentation
      in software.

      This fixes Tx becoming broken after setting
      fragmentation threshold.

      Fixes: 1010ba4c5d1c ("ath10k: unregister and remove frag_threshold 
callback")
      Signed-off-by: Michal Kazior <michal.kazior@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 4dca0e6edd14e0c8afa19c8ad90f711f1563b52e
  Author: Michal Kazior <michal.kazior@xxxxxxxxx>
  Date:   Mon Aug 3 11:16:42 2015 +0200

      ath10k: remove futile fragmentation threshold config

      Commit 1010ba4c5d1c ("ath10k: unregister and
      remove frag_threshold callback") didn't remove all
      instances of (futile) fragmentation threshold
      configuration. No known firmware supports the
      parameter so don't even bother setting it.

      Signed-off-by: Michal Kazior <michal.kazior@xxxxxxxxx>
      Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxxxx>

  commit 3afa129a9de0957d72165cf08a54e5c69938011c
  Author: Gregory Fong <gregory.0xf0@xxxxxxxxx>
  Date:   Fri Jul 31 18:17:44 2015 -0700

      gpio: brcmstb: support wakeup from S5 cold boot

      For wake from S5, we need to:
      - register a reboot handler
      - set wakeup capability before requesting IRQ so wakeup count is
        incremented
      - mask all GPIO IRQs and clear any pending interrupts during driver
        probe to since no driver will yet be registered to handle any IRQs
        carried over from boot at that time, and it's possible that the
        booted kernel does not request the same IRQ anyway.

      This means that /sys/.../power/wakeup_count is valid at boot time, and
      we can properly account for S5 wakeup stats. e.g.:

        ### After waking from S5 from a GPIO key
        # cat /sys/bus/platform/drivers/brcmstb-gpio/f04172c0.gpio/power/wakeup
        enabled
        # cat 
/sys/bus/platform/drivers/brcmstb-gpio/f04172c0.gpio/power/wakeup_count
        1

      Signed-off-by: Gregory Fong <gregory.0xf0@xxxxxxxxx>
      Reviewed-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 19a7b6940b781256ea8821e803d1e5f2933224b1
  Author: Gregory Fong <gregory.0xf0@xxxxxxxxx>
  Date:   Fri Jul 31 18:17:43 2015 -0700

      gpio: brcmstb: Add interrupt and wakeup source support

      Uses the gpiolib irqchip helpers.  For this to work, the irq setup
      function is called once per bank instead of once per device.  Note
      that all known uses of this block have a BCM7120 L2 interrupt
      controller as a parent.  Supports interrupts for all GPIOs.

      In the IRQ handler, we check for raised IRQs for invalid GPIOs and
      warn (ratelimited) if they're encountered.

      Also, several drivers (e.g. gpio-keys) allow for GPIOs to be
      configured as wakeup sources, and this GPIO controller supports that
      through a separate interrupt path.

      The de-facto standard DT property "wakeup-source" is checked, since
      that indicates whether the GPIO controller hardware can wake.  Uses
      the IRQCHIP_MASK_ON_SUSPEND irq_chip flag because UPG GIO doesn't have
      any of its own wakeup source configuration.

      Aside regarding gpiolib irqchip helpers: It wasn't obvious (to me)
      that you can have multiple chained irqchips and associated IRQ domains
      for a single parent IRQ, and as long as the xlate function is written
      correctly, a GPIO IRQ request end up checking the correct domain and
      will get associated with the correct IRQ.  What helps make this clear
      is to read
        drivers/gpio/gpiolib-of.c:
         - of_gpiochip_find_and_xlate()
         - of_get_named_gpiod_flags()
        drivers/gpio/gpiolib.c:
         - gpiochip_find()

      Signed-off-by: Gregory Fong <gregory.0xf0@xxxxxxxxx>
      Reviewed-by: Florian Fainelli <f.fainelli@xxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit 77a775b7ccaf86b0bb67ceaaf3b6d2720e12b506
  Author: Linus Walleij <linus.walleij@xxxxxxxxxx>
  Date:   Mon Aug 10 11:51:46 2015 +0200

      gpio/ABI: document what is already the case

      commit 926b663ce8215ba448960e1ff6e58b67a2c3b99b
      "gpiolib: allow GPIOs to be named" added the ability to
      name GPIO lines by an array of names stored in the GPIO
      chip. This was in 2009 and has been an ABI since. Let's
      document it properly.

      Cc: Daniel Silverstone <dsilvers@xxxxxxxxxxxxxxxxx>
      Cc: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Cc: Johan Hovold <johan@xxxxxxxxxx>
      Cc: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

  commit f9511a4fc47940c7b08ae51567bd9bddb54b8461
  Author: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
  Date:   Mon Jul 27 14:11:17 2015 +1000

      clk: ti: fix for definition movement

      Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit e7895461593506e2e86404a255208876340d4bca
  Merge: 93621d7 fd26f88
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 13 12:26:29 2015 +0200

      Merge tag 'rpi-dt-for-armsoc-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/rpi/linux-rpi into next/dt

       - New Firmware node and accompanying binding document

      * tag 'rpi-dt-for-armsoc-4.3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/rpi/linux-rpi:
        dt/bindings: Add binding for the Raspberry Pi firmware driver
        ARM: bcm2835: Add the firmware driver information to the RPi DT

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 16478b61f0d88a08163b92af27f0e77f471576ce
  Author: Linus Walleij <linus.walleij@xxxxxxxxxx>
  Date:   Tue Aug 11 17:17:18 2015 +0200

      ARM/fb: ep93xx: switch framebuffer to use modedb only

      All the EP93xx boards exclusively use modedb to look up video
      modes from the command line. Root out the parametrization of
      custom video modes from the platform data and board files
      and simplify the driver.

      Cc: Jean-Christophe Plagniol-Villard <plagnioj@xxxxxxxxxxxx>
      Reviewed-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 93621d7037084676b1fe7c1a8d59a98754f846ec
  Merge: 6d511a2 6855e5b
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 13 12:19:38 2015 +0200

      Merge tag 'socfpga_dts_for_v4.3_part_2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux into next/dt

      SoCFPGA DTS updates for v4.3, take 2
      - Add DTS property "altr,modrst-offset" for reset driver to
        use
      - Add updated reset defines for the reset driver
      - Add reset property for EMACs on Arria10

      * tag 'socfpga_dts_for_v4.3_part_2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux:
        ARM: socfpga: dts: Add resets for EMACs on Arria10
        ARM: socfpga: dts: add "altr,modrst-offset" property
        dt-bindings: Add reset manager offsets for Arria10

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 6d511a26ce45fc05600f12f02200a65578d67a63
  Merge: 85ef6b2 378abcd
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 13 12:14:29 2015 +0200

      Merge tag 'v4.3-rockchip32-dts2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/dt

      Some more devicetree changes, including usbphy support for the
      Cortex-A9 SoCs and actually enabling usb on the rk3066-marsboard,
      Two more veyron-devices - namely Speedy and Minnie and a fix for
      the tsadc.
      One slightly more interesting fix is the blocking of the last
      16MB of memory on 4GB rk3288 devices. The rk3288 cannot use this
      area for dma operations, so things like the mmc or usb controllers
      regularly fail when trying to read data. This solution mimicks the
      solution from the ChromeOS kernel, who also do not seem to have
      found a better solution yet. Here it only moves to the devicetree.
      As this issue is also present on the arm64 rk3368, any future
      better solution to this problem would need to describe this in
      the devicetree as well and could then remove this block.

      * tag 'v4.3-rockchip32-dts2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
        ARM: dts: rockchip: add veyron-minnie board
        ARM: dts: rockchip: reserve unusable memory region on rk3288
        ARM: dts: rockchip: enable usb controller on marsboard
        ARM: dts: rockchip: add usb phys to Cortex-A9 socs
        ARM: dts: rockchip: set correct dwc2 params for cortex-a9 socs
        ARM: dts: rockchip: Add veyron-speedy board
        ARM: dts: rockchip: Use correct dts properties for tsadc node on veyron

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 8943835e248bca0df431c717f4edce94fa2b8c8e
  Merge: fb3c442 9bb91ae
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 13 12:13:54 2015 +0200

      Merge tag 'v4.3-rockchip32-soc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into next/soc

      Improve reliability of resume on rk3288 boards. For whatever
      reason resuming from suspend worked sucessfully on the rk3288-evb
      but not on other boards, like veyron-devices. Two problems seem
      to have existed. For one the stabilization delays for pmic and
      oscillator may have been to short and secondly the shallow
      suspend seems to need GPIO wakups enabled. Normally this should
      be covered by the more generic ARMINT wakeups already and
      the reason for this is still investigated at Rockchip, but
      meanwhile this makes boards actually resume.

      * tag 'v4.3-rockchip32-soc2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
        ARM: rockchip: enable PMU_GPIOINT_WAKEUP_EN when entering shallow 
suspend
        ARM: rockchip: set correct stabilization thresholds in suspend
        ARM: rockchip: rename osc_switch_to_32k variable

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit fb3c44267684b76329b20317f2a62dacc452a09d
  Author: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
  Date:   Sat Aug 8 21:13:44 2015 +0900

      ARM: uniphier: drop v7_invalidate_l1 call at secondary entry

      This is unnecessary since commit 02b4e2756e01 ("ARM: v7 setup
      function should invalidate L1 cache").

      Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit ab39aab323a38a3fb079651952b13ba1868f90fd
  Merge: bcfff4d b6e1f7f
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 13 12:10:09 2015 +0200

      Merge tag 'v4.2-next-arm64-2' of https://github.com/mbgg/linux-mediatek 
into next/arm64

      Add SMP support for mt6795 SoC.

      * tag 'v4.2-next-arm64-2' of https://github.com/mbgg/linux-mediatek:
        ARM64: dts: mt6795: enable basic SMP bringup for MT6795

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 80d352de659b57e69856b00d773d7abefe28bf32
  Author: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Jul 31 19:30:07 2015 +0200

      ARM: at91/defconfig: at91_dt: remove ARM_AT91_ETHER

      CONFIG_ARM_AT91_ETHER doesn't exist anymore, both drivers have been merged
      in the macb driver.

      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 5bfb1e4113ed88f0da07a3628f5b9be7b5c29384
  Author: Josh Wu <josh.wu@xxxxxxxxx>
  Date:   Fri Jul 31 19:26:36 2015 +0200

      ARM: at91/defconfig: at91_dt: enable DRM hlcdc support

      This patch adds drm atmel lcdc, simple panel and backlight options.

      Signed-off-by: Josh Wu <josh.wu@xxxxxxxxx>
      Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 3d3cacc0b8c624d042fe905bbc71f97a4d443cdc
  Merge: 0ff818e 44e259a
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 13 12:02:07 2015 +0200

      Merge tag 'mvebu-soc-4.3-2' of git://git.infradead.org/linux-mvebu into 
next/drivers

      mvebu soc changes for v4.3 (part #2)

      SoC part of the Dove PMU series

      * tag 'mvebu-soc-4.3-2' of git://git.infradead.org/linux-mvebu:
        ARM: dove: create a proper PMU driver for power domains, PMU IRQs and 
resets

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 85ef6b26d1abc01101cd7a6c8094787990b95c1c
  Merge: eb2b508 15979ae
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 13 11:59:56 2015 +0200

      Merge tag 'mvebu-dt-4.3-3' of git://git.infradead.org/linux-mvebu into 
next/dt

      mvebu dt changes for v4.3 (part #3)

      - device tree part of the Dove PMU series
      - converting a new orion5x based platform to dt: Linkstation Mini

      * tag 'mvebu-dt-4.3-3' of git://git.infradead.org/linux-mvebu:
        ARM: dts: Convert Linkstation Mini to Device Tree
        ARM: dt: dove: add GPU power domain description
        ARM: dt: dove: add video decoder power domain description
        ARM: dt: dove: wire up RTC interrupt
        ARM: dt: Add PMU node, making PMU child devices childs of this node

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit eb2b5084366a93a5d40cd5746a2d178e02d7762c
  Merge: 1a08a84 761c586
  Author: Olof Johansson <olof@xxxxxxxxx>
  Date:   Thu Aug 13 11:58:22 2015 +0200

      Merge tag 'at91-ab-dt2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux into next/dt

      Second batch of DT changes for 4.3:
      - Add the slow clock to the nodes that will use it
      - Add hlcd to the at91sam9x5 and at91sam9n12
      - Add touchscreen and touch button support to the at91sam9x5ek

      * tag 'at91-ab-dt2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (22 commits)
        ARM: at91/dt: sama5d2: use slow clock where necessary
        ARM: at91/dt: at91sam9x5dm: add QT1070 touch button controller
        ARM: at91/dt: at91sam9x5dm: add support for the touschscreen
        ARM: at91/dt: add drm support for at91sam9n12ek
        ARM: at91/dt: enable lcd support for at91sam9x5 SoCs
        ARM: at91/dt: add at91sam9x5-ek Display Module dtsi
        ARM: at91/dt: include lcd dtsi in at91sam9x5 dtsis
        ARM: at91/dt: define hlcdc node in at91sam9x5_lcd.dtsi
        ARM: at91/dt: sama5d4: use slow clock where necessary
        ARM: at91/dt: sama5d3: use slow clock where necessary
        ARM: at91/dt: at91sam9x5: use slow clock where necessary
        ARM: at91/dt: at91sam9rl: use slow clock where necessary
        ARM: at91/dt: at91sam9n12: use slow clock where necessary
        ARM: at91/dt: at91sam9g45: use slow clock where necessary
        ARM: at91/dt: at91sam9263: use slow clock where necessary
        ARM: at91/dt: at91sam9261: use slow clock where necessary
        ARM: at91/dt: at91sam9260: use slow clock where necessary
        ARM: at91/dt: at91rm9200: use slow clock where necessary
        Documentation: dt: rtc: at91rm9200: add clocks property
        Documentation: watchdog: at91sam9_wdt: add clocks property
        ...

      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit ae6c0aa6ae4d18d0ae74a58af5c521ec771e3730
  Merge: b6bb424 152b283
  Author: Paolo Bonzini <pbonzini@xxxxxxxxxx>
  Date:   Thu Aug 13 11:51:50 2015 +0200

      Merge tag 'kvm-s390-next-20150812' of 
git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux into HEAD

      KVM: s390: fix and feature for kvm/next (4.3)

      1. error handling for irq routes
      2. Gracefully handle STP time changes
         s390 supports a protocol for syncing different systems via the stp
         protocol that will steer the TOD clocks to keep all participating
         clocks below the round trip time between the system. In case of
         specific out of sync event Linux can opt-in to accept sync checks.
         This will result in non-monotonic jumps of the TOD clock, which
         Linux will correct via time offsets to keep the wall clock time
         monotonic. Now: KVM guests also base their time on the host TOD,
         so we need to fixup the offset for them as well.

  commit d330615b90d4997909806f8c22be6a3a2c3449b9
  Author: Hans Ulli Kroll <ulli.kroll@xxxxxxxxxxxxxx>
  Date:   Tue Aug 11 22:09:05 2015 +0200

      ARM: gemini: Setup timer3 as free running timer

      In the original driver it is missed to setup a free running driver.
      This timer is needed for the scheduler.
      So setup it.

      Signed-off-by: Hans Ulli Kroll <ulli.kroll@xxxxxxxxxxxxxx>
      Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 5dc90739888e741985036994e2e5700c6dc9d118
  Author: Hans Ulli Kroll <ulli.kroll@xxxxxxxxxxxxxx>
  Date:   Tue Aug 11 22:09:04 2015 +0200

      ARM: gemini: Use timer1 for clockevent

      Use timer1 as clockevent timer.
      The old driver uses timer2, which has some issues to setup

      Signed-off-by: Hans Ulli Kroll <ulli.kroll@xxxxxxxxxxxxxx>
      Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 570ceed4e267a6d354653f4884bb8c2b4a975087
  Author: Hans Ulli Kroll <ulli.kroll@xxxxxxxxxxxxxx>
  Date:   Tue Aug 11 22:09:03 2015 +0200

      ARM: gemini: Add missing register definitions for gemini timer

      Add missing register defintions for the gemini clocksource
      Also do some #define' cleanup to make the code more readable.

      Signed-off-by: Hans Ulli Kroll <ulli.kroll@xxxxxxxxxxxxxx>
      Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 75dbf00b443c1763138486e87f4978ff43506f9e
  Author: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  Date:   Mon Jul 27 11:11:11 2015 +0300

      mac80211: remove always true condition

      The outside if statement checks that IEEE80211_TX_INTFL_MLME_CONN_TX is
      set so this condition is always true.  Checking twice upsets the static
      checkers.

      Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 4b58c37bb9d4282446f7a0194dbc44325787ac8c
  Author: Johannes Berg <johannes.berg@xxxxxxxxx>
  Date:   Wed Jul 8 15:41:48 2015 +0300

      mac80211: remove ieee80211_aes_cmac_calculate_k1_k2()

      The iwlwifi driver was the only driver that used this, but as
      it turns out it never needed it, so we can remove it.

      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 2001a130d4fa8386b9d7978578dc40aa1f0dad6c
  Author: Johannes Berg <johannes.berg@xxxxxxxxx>
  Date:   Fri Jun 19 10:20:10 2015 +0200

      iwlwifi: mvm: don't set K1/K2 for AES-CMAC

      According to firmware engineers, the firmware has never required
      these fields and the values have always been calculated, they were
      just leftovers from a previous implementation.

      Therefore remove the unnecessary calculation.

      Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@xxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit a54868b460b65bd93a5324a7fc35dfd556fe576c
  Author: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Thu Aug 6 14:41:13 2015 +0530

      ARM: ep93xx/timer: Migrate to new 'set-state' interface

      Migrate EP93xx driver to the new 'set-state' interface provided by
      clockevents core, the earlier 'set-mode' interface is marked obsolete
      now.

      This also enables us to implement callbacks for new states of clockevent
      devices, for example: ONESHOT_STOPPED.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Acked-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Reviewed-by: H Hartley Sweeten <hsweeten@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Olof Johansson <olof@xxxxxxxxx>

  commit 36890997b0d219427e9d9d2aad5d46eb44fe808d
  Author: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
  Date:   Sun Aug 2 11:09:54 2015 +0200

      rfkill: Allow compile test of GPIO consumers if !GPIOLIB

      The GPIO subsystem provides dummy GPIO consumer functions if GPIOLIB is
      not enabled. Hence drivers that depend on GPIOLIB, but use GPIO consumer
      functionality only, can still be compiled if GPIOLIB is not enabled.

      Relax the dependency on GPIOLIB if COMPILE_TEST is enabled, where
      appropriate.

      Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
      Acked-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>

  commit 8cbd4c2f6a996f6cf5dfdf8775d331606cff95bd
  Author: Felipe Balbi <balbi@xxxxxx>
  Date:   Wed Aug 12 14:56:54 2015 -0500

      arm: boot: dts: am4372: add ARM timers and SCU nodes

      AM437x devices sport SCU, TWD and Global timers,
      let's add them to DTS so they have a chance to
      probe and be used by Linux.

      Signed-off-by: Felipe Balbi <balbi@xxxxxx>
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit 6c36dfe949187dc2729abfad4b083758ac5c2e0e
  Author: Borislav Petkov <bp@xxxxxxx>
  Date:   Wed Aug 12 18:29:45 2015 +0200

      x86/ras: Move AMD MCE injector to arch/x86/ras/

      This is an x86-specific module and would benefit from being
      closer to the arch code. Move it there. Update copyright while
      at it.

      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tony Luck <tony.luck@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439396985-12812-14-git-send-email-bp@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit a79da38494ec23f1a7d6ee734e07e9575fd18b58
  Author: Borislav Petkov <bp@xxxxxxx>
  Date:   Wed Aug 12 18:29:44 2015 +0200

      x86/mce: Add a wrapper around mce_log() for injection

      Will be used by an injector module in a following patch.

      Additionally, add a missing module export reported by 0-DAY
      kernel test.

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tony Luck <tony.luck@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439396985-12812-13-git-send-email-bp@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 9a7783d02197f299f71b4fa2364a345c05f92b83
  Author: Borislav Petkov <bp@xxxxxxx>
  Date:   Wed Aug 12 18:29:43 2015 +0200

      x86/mce: Rename rcu_dereference_check_mce() to mce_log_get_idx_check()

      The "rcu_" prefix misleads for it being a proper RCU interface
      which is not. It basically checks whether we're preemptible or
      holding the chrdev_read mutex.

      Rename it accordingly.

      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Acked-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tony Luck <tony.luck@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439396985-12812-12-git-send-email-bp@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 9b45ef443acde55526485db37440cd3e8f03d544
  Author: Borislav Petkov <bp@xxxxxxx>
  Date:   Wed Aug 12 18:29:42 2015 +0200

      RAS: Add a menuconfig option with descriptive text

      Text taken a previous patch from "Gong Chen" <gong.chen@xxxxxxxxxxxxxxx>.

      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Cc: Gong Chen <gong.chen@xxxxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tony Luck <tony.luck@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439396985-12812-11-git-send-email-bp@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 1b48465500611a2dc5e75800c61ac352e22d41c3
  Author: Xie XiuQi <xiexiuqi@xxxxxxxxxx>
  Date:   Wed Aug 12 18:29:41 2015 +0200

      x86/mce: Reenable CMCI banks when swiching back to interrupt mode

      Zhang Liguang reported the following issue:

      1) System detects a CMCI storm on the current CPU.

      2) Kernel disables the CMCI interrupt on banks owned by the
         current CPU and switches to poll mode

      3) After the CMCI storm subsides, kernel switches back to
         interrupt mode

      4) We expect the system to reenable the CMCI interrupt on banks
         owned by the current CPU

         mce_intel_adjust_timer
         |-> cmci_reenable
             |-> cmci_discover     # owned banks are ignored here

        static void cmci_discover(int banks)
        ...
        for (i = 0; i < banks; i++) {
                ...
                if (test_bit(i, owned)) # ownd banks is ignore here
                        continue;

      So convert cmci_storm_disable_banks() to
      cmci_toggle_interrupt_mode() which controls whether to enable or
      disable CMCI interrupts with its argument.

      NB: We cannot clear the owned bit because the banks won't be
      polled, otherwise. See:

        27f6c573e0f7 ("x86, CMCI: Add proper detection of end of CMCI storms")

      for more info.

      Reported-by: Zhang Liguang <zhangliguang@xxxxxxxxxx>
      Signed-off-by: Xie XiuQi <xiexiuqi@xxxxxxxxxx>
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Cc: <stable@xxxxxxxxxxxxxxx> # v3.15+
      Cc: H. Peter Anvin <hpa@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tony Luck <tony.luck@xxxxxxxxx>
      Cc: huawei.libin@xxxxxxxxxx
      Cc: linux-edac <linux-edac@xxxxxxxxxxxxxxx>
      Cc: rui.xiang@xxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1439396985-12812-10-git-send-email-bp@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 8838eb6c0bf3b6a6494a163947ab3d1700ab45d2
  Author: Ashok Raj <ashok.raj@xxxxxxxxx>
  Date:   Wed Aug 12 18:29:40 2015 +0200

      x86/mce: Clear Local MCE opt-in before kexec

      kexec could boot a kernel that could be legacy with no knowledge
      of LMCE. Hence we should make sure we clear LMCE optin before
      kexec reboot.

      Signed-off-by: Ashok Raj <ashok.raj@xxxxxxxxx>
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
      Cc: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@xxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Oleg Nesterov <oleg@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tony Luck <tony.luck@xxxxxxxxx>
      Cc: linux-edac <linux-edac@xxxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439396985-12812-9-git-send-email-bp@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 4d1d5cdc345d15e09518a2410f7fcd069465ffac
  Author: Ashok Raj <ashok.raj@xxxxxxxxx>
  Date:   Wed Aug 12 18:29:39 2015 +0200

      x86/mce: Remove unused function declarations

      Remove unused function declarations.

      Signed-off-by: Ashok Raj <ashok.raj@xxxxxxxxx>
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tony Luck <tony.luck@xxxxxxxxx>
      Cc: linux-edac <linux-edac@xxxxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439396985-12812-8-git-send-email-bp@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit eef4dfa0cb83899c782935ac5345532f47073cea
  Author: Borislav Petkov <bp@xxxxxxx>
  Date:   Wed Aug 12 18:29:38 2015 +0200

      x86/mce: Kill drain_mcelog_buffer()

      This used to flush out MCEs logged during early boot and which
      were in the MCA registers from a previous system run. No need
      for that now, since we've moved to a genpool.

      Suggested-by: Tony Luck <tony.luck@xxxxxxxxx>
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439396985-12812-7-git-send-email-bp@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit f29a7aff4bd60ebc3da4982f80144a4158c4c74a
  Author: Chen, Gong <gong.chen@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 18:29:37 2015 +0200

      x86/mce: Avoid potential deadlock due to printk() in MCE context

      Printing in MCE context is a no-no, currently, as printk() is
      not NMI-safe. If some of the notifiers on the MCE chain call do
      so, we may deadlock. In order to avoid that, delay printk() to
      process context where it is safe.

      Reported-by: Xie XiuQi <xiexiuqi@xxxxxxxxxx>
      Signed-off-by: Chen, Gong <gong.chen@xxxxxxxxxxxxxxx>
      [ Fold in subsequent patch from Boris for early boot logging. ]
      Signed-off-by: Tony Luck <tony.luck@xxxxxxxxx>
      [ Kick irq_work in mce_log() directly. ]
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439396985-12812-6-git-send-email-bp@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit fd4cf79fcc4b5130ced8fd8c40378d3cec2e5fa8
  Author: Chen, Gong <gong.chen@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 18:29:36 2015 +0200

      x86/mce: Remove the MCE ring for Action Optional errors

      Use unified genpool to save Action Optional error events and put
      Action Optional error handling in the same notification chain as
      MCE error decoding.

      Signed-off-by: Chen, Gong <gong.chen@xxxxxxxxxxxxxxx>
      [ Fold in subsequent patch from Boris for early boot logging. ]
      Signed-off-by: Tony Luck <tony.luck@xxxxxxxxx>
      [ Correct a lot. ]
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439396985-12812-5-git-send-email-bp@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 061120aed7081b9a4393fbe07b558192f40ad911
  Author: Chen, Gong <gong.chen@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 18:29:35 2015 +0200

      x86/mce: Don't use percpu workqueues

      An MCE is a rare event. Therefore, there's no need to have
      per-CPU instances of both normal and IRQ workqueues. Make them
      both global.

      Signed-off-by: Chen, Gong <gong.chen@xxxxxxxxxxxxxxx>
      [ Fold in subsequent patch from Rui/Boris/Tony for early boot logging. ]
      Signed-off-by: Tony Luck <tony.luck@xxxxxxxxx>
      [ Massage commit message. ]
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439396985-12812-4-git-send-email-bp@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 648ed94038c030245a06e4be59744fd5cdc18c40
  Author: Chen, Gong <gong.chen@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 18:29:34 2015 +0200

      x86/mce: Provide a lockless memory pool to save error records

      printk() is not safe to use in MCE context. Add a lockless
      memory allocator pool to save error records in MCE context.
      Those records will be issued later, in a printk-safe context.
      The idea is inspired by the APEI/GHES driver.

      We're very conservative and allocate only two pages for it but
      since we're going to use those pages throughout the system's
      lifetime, we allocate them statically to avoid early boot time
      allocation woes.

      Signed-off-by: Chen, Gong <gong.chen@xxxxxxxxxxxxxxx>
      [ Rewrite. ]
      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tony Luck <tony.luck@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439396985-12812-3-git-send-email-bp@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 20d51a426fe9a0d0a63cc3a7488f621c8bac37e1
  Author: Borislav Petkov <bp@xxxxxxx>
  Date:   Wed Aug 12 18:29:33 2015 +0200

      x86/mce: Reuse one of the u16 padding fields in 'struct mce'

      ... to save the error severity of the MCE and whether the
      reported address of the error is usable.

      Signed-off-by: Borislav Petkov <bp@xxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Tony Luck <tony.luck@xxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439396985-12812-2-git-send-email-bp@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit ed293d1ad2b0c28b6abc3bd728b07754bc00f1cd
  Author: Rob Herring <robh@xxxxxxxxxx>
  Date:   Sun Jul 12 09:26:45 2015 -0500

      memory: kill off set_irq_flags usage

      set_irq_flags is ARM specific with custom flags which have genirq
      equivalents. Convert drivers to use the genirq interfaces directly, so we
      can kill off set_irq_flags. The translation of flags is as follows:

      IRQF_VALID -> !IRQ_NOREQUEST
      IRQF_PROBE -> !IRQ_NOPROBE
      IRQF_NOAUTOEN -> IRQ_NOAUTOEN

      For IRQs managed by an irqdomain, the irqdomain core code handles clearing
      and setting IRQ_NOREQUEST already, so there is no need to do this in
      .map() functions and we can simply remove the set_irq_flags calls. Some
      users also set IRQ_NOPROBE and this has been maintained although it is not
      clear that is really needed. There appears to be a great deal of blind
      copy and paste of this code.

      Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
      Acked-by: Roger Quadros <rogerq@xxxxxx>
      Cc: linux-omap@xxxxxxxxxxxxxxx
      Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>

  commit a897b5f0393a8a05d230c9248dc5324fb30720a0
  Merge: 5f1230c 71ef150
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Thu Aug 13 09:23:53 2015 +0200

      Merge tag 'perf-core-for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core

      Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:

      User visible changes:

        - Allow selecting the type of callchains per event, including disabling
          callchains in all but one entry in an event list, to save space, and 
also
          to ask for the callchains collected in one event to be used in other
          events. (Kan Liang)

        - Beautify more syscall arguments in 'perf trace': (Arnaldo Carvalho de 
Melo)
          - A bunch more translate file/pathnames from pointers to strings.
          - Convert numbers to strings for the 'keyctl' syscall 'option' arg.
          - Add missing 'clockid' entries.

        - Fix 'perf probe -L sys_*' as it was not showing all the source code 
for
          syscall functions in the kernel. (Masami Hiramatsu)

        - Make ESC unzoom as well in the hists browser, i.e. in 'report' and 
'top',
          as we're considering repurposing the right and left arrow keys to use 
in
          horizontal scrolling, i.e. leave just ESC to be used for what <- works
          now, and ENTER for what -> does (they are already aliases for ages).
          (Arnaldo Carvalho de Melo)

      Infrastructure fixes:

        - Check for SRCLINE_UNKNOWN case in "srcfile" processing (Andi Kleen)

        - Wrap the slsmg_{printf,write_nstring} slang functions behind 
ui_browser, so
          that we can make the ui_browser based browsers (annotate, menus, 
hists, etc) UI
          library agnostic and usable with multiple backends (slang now, GTK+ 
and others
          in the future, maybe) (Arnaldo Carvalho de Melo)

      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit e558017b558d2a477b68961b0da792d4346a01b4
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Wed Aug 12 14:39:38 2015 -0300

      crypto: caam - Remove unneeded 'ret' variable

      Variable 'ret' is only used for returning the value 0.

      We can make it simpler and just return 0 instead.

      The semantic patch that makes this change is available
      in scripts/coccinelle/misc/returnvar.cocci.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit ac8ad30777467c5258c52aa4899a8a07a3e56b54
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Wed Aug 12 11:48:42 2015 -0300

      crypto: caam - Fix error handling in caam_rng_init()

      In the error paths we should free the resources that were
      previously acquired, so fix it accordingly.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Reviewed-by: Horia Geant? <horia.geanta@xxxxxxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 8669f34e122bad56e4d3ecde5f4720c40261bf4c
  Author: Wu Fengguang <fengguang.wu@xxxxxxxxx>
  Date:   Wed Aug 12 12:50:17 2015 +0800

      crypto: qat - fix simple_return.cocci warnings

      drivers/crypto/qat/qat_common/adf_sriov.c:258:1-4: WARNING: end returns 
can be simpified and declaration on line 212 can be dropped

       Simplify a trivial if-return sequence.  Possibly combine with a
       preceding function call.
      Generated by: scripts/coccinelle/misc/simple_return.cocci

      CC: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
      Signed-off-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 18be4ebe1f6ba8f5c329a997c2b60c8bba1cf800
  Author: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
  Date:   Tue Aug 11 11:05:37 2015 -0700

      crypto: qat - Fix unmet direct dependencies for QAT_DH895xCCVF

      Reported-by: Fengguang Wu <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Tadeusz Struk <tadeusz.struk@xxxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 14fee74ca8370e4bfa5c9386e63bfa521b37a505
  Author: Chen-Yu Tsai <wens@xxxxxxxx>
  Date:   Tue Aug 11 13:32:57 2015 +0800

      ARM: dts: sun6i: Add security system crypto engine clock and device nodes

      A31/A31s have the same "Security System" crypto engine as A10/A20,
      but with a separate reset control.

      Signed-off-by: Chen-Yu Tsai <wens@xxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit 7ab64628bb4ab139aea9f1238ce6f945be580773
  Author: Chen-Yu Tsai <wens@xxxxxxxx>
  Date:   Tue Aug 11 13:32:56 2015 +0800

      crypto: sunxi-ss - Add optional reset control support

      On sun6i and later platforms, the reset control is split out of the
      clock gates. Add support for an optional reset control.

      Signed-off-by: Chen-Yu Tsai <wens@xxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit ca6bc691b1b7cf45862410952806f73c1aa62fe6
  Author: Chen-Yu Tsai <wens@xxxxxxxx>
  Date:   Tue Aug 11 13:32:55 2015 +0800

      crypto: sunxi-ss - Document optional reset control bindings

      Later Allwinner SoCs split out the reset controls for individual modules
      out of the clock gate controls. The "Security System" crypto engine is
      no different.

      Signed-off-by: Chen-Yu Tsai <wens@xxxxxxxx>
      Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>

  commit d420acd816c07c7be31bd19d09cbcb16e5572fa6
  Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
  Date:   Wed Aug 12 21:04:22 2015 +0200

      jump_label/x86: Work around asm build bug on older/backported GCCs

      Boris reported that gcc version 4.4.4 20100503 (Red Hat
      4.4.4-2) fails to build linux-next kernels that have
      this fresh commit via the locking tree:

        11276d5306b8 ("locking/static_keys: Add a new static_key interface")

      The problem appears to be that even though @key and @branch are
      compile time constants, it doesn't see the following expression
      as an immediate value:

         &((char *)key)[branch]

      More recent GCCs don't appear to have this problem.

      In particular, Red Hat backported the 'asm goto' feature into 4.4,
      'normal' 4.4 compilers will not have this feature and thus not
      run into this asm.

      The workaround is to supply both values to the asm as immediates
      and do the addition in asm.

      Suggested-by: H. Peter Anvin <hpa@xxxxxxxxx>
      Reported-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Tested-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit e9a5e8cc55286941503f36c5b7485a5aa923b3f1
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Thu Aug 13 04:03:12 2015 +0100

      sign-file: Fix warning about BIO_reset() return value

      Fix the following warning:

        scripts/sign-file.c: In function â??mainâ??:
        scripts/sign-file.c:188: warning: value computed is not used

      whereby the result of BIO_ctrl() is cast inside of BIO_reset() to an
      integer of a different size - which we're not checking but probably 
should.

      Reported-by: James Morris <jmorris@xxxxxxxxx>
      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>

  commit 15ce414b82b07acb99afda6e4d9bd14f317b6011
  Author: Richard Guy Briggs <rgb@xxxxxxxxxx>
  Date:   Sat Aug 8 10:20:25 2015 -0400

      fixup: audit: implement audit by executable

      The Intel build-bot detected a sparse warning with with a patch I posted a
      couple of days ago that was accepted in the audit/next tree:

      Subject: [linux-next:master 6689/6751] kernel/audit_watch.c:543:36: 
sparse: dereference of noderef expression
      Date: Friday, August 07, 2015, 06:57:55 PM
      From: kbuild test robot <fengguang.wu@xxxxxxxxx>
      tree:   git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git 
master
      head:   e6455bc5b91f41f842f30465c9193320f0568707
      commit: 2e3a8aeb63e5335d4f837d453787c71bcb479796 [6689/6751] Merge 
remote- tracking branch 'audit/next'
      sparse warnings: (new ones prefixed by >>)
      >> kernel/audit_watch.c:543:36: sparse: dereference of noderef expression
         kernel/audit_watch.c:544:28: sparse: dereference of noderef expression

      34d99af5 Richard Guy Briggs 2015-08-05  541  int audit_exe_compare(struct 
task_struct *tsk, struct audit_fsnotify_mark *mark)
      34d99af5 Richard Guy Briggs 2015-08-05  542  {
      34d99af5 Richard Guy Briggs 2015-08-05 @543     unsigned long ino = 
tsk->mm- >exe_file->f_inode->i_ino;
      34d99af5 Richard Guy Briggs 2015-08-05  544     dev_t dev = 
tsk->mm->exe_file- >f_inode->i_sb->s_dev;

      :::::: The code at line 543 was first introduced by commit
      :::::: 34d99af52ad40bd498ba66970579a5bc1fb1a3bc audit: implement audit by 
executable

      tsk->mm->exe_file requires RCU access.  The warning was reproduceable by 
adding
      "C=1 CF=-D__CHECK_ENDIAN__" to the build command, and verified eliminated 
with
      this patch.

      Signed-off-by: Richard Guy Briggs <rgb@xxxxxxxxxx>
      Signed-off-by: Paul Moore <pmoore@xxxxxxxxxx>

  commit 772111ab01eace6a7e4cf821a4348cec64a97c92
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Thu Aug 13 02:51:33 2015 +0100

      PKCS#7: Add MODULE_LICENSE() to test module

      Add a MODULE_LICENSE() line to the PKCS#7 test key module to fix this
      warning:

        WARNING: modpost: missing MODULE_LICENSE() in
        crypto/asymmetric_keys/pkcs7_test_key.o

      Whilst we're at it, also add a module description.

      Reported-by: James Morris <jmorris@xxxxxxxxx>
      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>

  commit 3d04c92403d377918c9a3bddab6ee103f0db25dd
  Author: Casey Schaufler <casey@xxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 11:56:02 2015 -0700

      Smack - Fix build error with bringup unconfigured

      The changes for mounting binary filesystems was allied
      improperly, with the list of tokens being in an ifdef that
      it shouldn't have been. Fix that, and a couple style issues
      that were bothering me.

      Reported-by: Jim Davis <jim.epost@xxxxxxxxx>
      Signed-off-by: Casey Schaufler <casey@xxxxxxxxxxxxxxxx>

  commit e8fed985d7bd6cda695e196028b54a5f3d2d91bb
  Author: Rick Jones <rick.jones2@xxxxxx>
  Date:   Wed Aug 12 10:23:14 2015 -0700

      documentation: bring vxlan documentation more up-to-date

      A few things have changed since the previous version of the vxlan
      documentation was written, so update it and correct some grammar and
      such while we are at it.

      Signed-off-by: Rick Jones <rick.jones2@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit b0c6ce24911fcb64715de9569f0f7b4f54d1d045
  Author: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
  Date:   Wed Aug 12 12:10:23 2015 -0300

      net: fec: Remove unneeded use of IS_ERR_VALUE() macro

      There is no need to use the IS_ERR_VALUE() macro for checking
      the return value from pm_runtime_* functions.

      Just do a simple negative test instead.

      The semantic patch that makes this change is available
      in scripts/coccinelle/api/pm_runtime.cocci.

      Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 140d8b335a9beb234fd0ed9a15aa6a47f47fd771
  Author: Wei-Chun Chao <weichunc@xxxxxxxxxxxx>
  Date:   Wed Aug 12 07:57:12 2015 -0700

      bpf: fix bpf_perf_event_read() loop upper bound

      Verifier rejects programs incorrectly.

      Fixes: 35578d798400 ("bpf: Implement function bpf_perf_event_read()")
      Cc: Kaixu Xia <xiakaixu@xxxxxxxxxx>
      Cc: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Signed-off-by: Wei-Chun Chao <weichunc@xxxxxxxxxxxx>
      Acked-by: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
      Acked-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit dcef70704d6c2792c6025ceba9708554d441a4bb
  Merge: 7655078 a4011fd
  Author: David S. Miller <davem@xxxxxxxxxxxxx>
  Date:   Wed Aug 12 16:42:12 2015 -0700

      Merge branch 'cxgb4-more-debug-info'

      Hariprasad Shenai says:

      ====================
      Add some more debug info

      This patch series adds the following.
      Add more info for sge_qinfo dump
      Differentiate tid and stids between different regions, and add a debugfs
      entry to dump all the tid info

      This patch series has been created against net-next tree and includes
      patches on cxgb4 driver.

      We have included all the maintainers of respective drivers. Kindly review
      the change and let us know in case of any review comments.
      ====================

      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit a4011fd470d334253a425942b29e65844642d0ff
  Author: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
  Date:   Wed Aug 12 16:55:07 2015 +0530

      cxgb4: Add debugfs support to dump tid info

      Add debugfs support to dump tid info like stid, sftid, tids, atid and
      hwtids

      Signed-off-by: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 2248b29349fa8c59e8bf7e13197f7d5303c0a86a
  Author: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
  Date:   Wed Aug 12 16:55:06 2015 +0530

      cxgb4: Differentiate between stids between server and filter region

      For T4 adapter, offloaded servers tid for IPv4 connections are
      allocated from filter region. So add a new field for server filter tid if
      server tid is allocated from filter region.

      Signed-off-by: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 9a1bb9f64e31febbcf289809343bc7bbbac15519
  Author: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
  Date:   Wed Aug 12 16:55:05 2015 +0530

      cxgb4: Differentiates between TIDs being used in TCAM and HASH

      For the tid info, differentiate from which region the TID is allocated
      from. It can be from TCAM region or HASH region.

      Signed-off-by: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit e106a4d9ede30cc83b95bbd8ccf75a4aad8b0557
  Author: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
  Date:   Wed Aug 12 16:55:04 2015 +0530

      cxgb4: Add some more details to sge qinfo

      Adding more details to sge qinfo for debugging purpose.

      Signed-off-by: Hariprasad Shenai <hariprasad@xxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 76550786c6780d95db1b2de56a115a84347b242d
  Author: Mugunthan V N <mugunthanvnm@xxxxxx>
  Date:   Wed Aug 12 15:31:43 2015 +0530

      net: ipv4: increase dhcp inter device timeout

      When a system has multiple ethernet devices and during DHCP
      request (for using NFS), the system waits only for HZ/2 which is
      500mS before switching to another interface for DHCP.

      There are some routers (Ex: Trendnet routers) which responds to
      DHCP request at about 560mS. When the system has only one
      ethernet interface there is no issue as the timeout is 2S and the
      dev xid doesn't changes and only retries.

      But when the system has multiple Ethernet like DRA74x with CPSW
      in dual EMAC mode, the DHCP response is dropped as the dev xid
      changes while shifting to the next device. So changing inter
      device timeout to HZ (which is 1S).

      Signed-off-by: Mugunthan V N <mugunthanvnm@xxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 5ed3ccbd5ac11414d61c16182718e68868becc16
  Author: Kaixu Xia <xiakaixu@xxxxxxxxxx>
  Date:   Wed Aug 12 09:37:53 2015 +0000

      bpf: fix build warnings and add function read_trace_pipe()

      There are two improvements in this patch:
       1. Fix the build warnings;
       2. Add function read_trace_pipe() to print the result on
          the screen;

      Before this patch, we can get the result through /sys/kernel/de
      bug/tracing/trace_pipe and get nothing on the screen.
      By applying this patch, the result can be printed on the screen.
        $ ./tracex6
        ...
               tracex6-705   [003] d..1   131.428593: : CPU-3   19981414
                  sshd-683   [000] d..1   131.428727: : CPU-0   221682321
                  sshd-683   [000] d..1   131.428821: : CPU-0   221808766
                  sshd-683   [000] d..1   131.428950: : CPU-0   221982984
                  sshd-683   [000] d..1   131.429045: : CPU-0   222111851
               tracex6-705   [003] d..1   131.429168: : CPU-3   20757551
                  sshd-683   [000] d..1   131.429170: : CPU-0   222281240
                  sshd-683   [000] d..1   131.429261: : CPU-0   222403340
                  sshd-683   [000] d..1   131.429378: : CPU-0   222561024
        ...

      Signed-off-by: Kaixu Xia <xiakaixu@xxxxxxxxxx>
      Acked-by: Alexei Starovoitov <ast@xxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 47b344b27a003fcdaccbdc07b3d558a7ccdfec04
  Author: Ron Angeles <ronangeles@xxxxxxxxx>
  Date:   Tue Aug 11 23:01:20 2015 -0700

      net: atl1c: add BQL support

      This BQL implementation is mostly derived from its related driver, alx.
      Tested on AR8131 (rev c0) [1969:1063]. Saturated a 100mbps link with 5
      concurrent runs of netperf. Ping latency dropped from 14ms to 3ms.

      Signed-off-by: Ron Angeles <ronangeles@xxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8d6a9f5676f0e734967ac3739f5c6a28a0b047d9
  Author: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>
  Date:   Wed Jul 1 11:31:27 2015 +0200

      storvsc: use shost_for_each_device() instead of open coding

      Comment in struct Scsi_Host says that drivers are not supposed to access
      __devices directly. storvsc_host_scan() doesn't happen in irq context
      so we can just use shost_for_each_device().

      Signed-off-by: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>
      Reviewed-by: Long Li <longli@xxxxxxxxxxxxx>
      Acked-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit cb1cf0804fe582f8a626c3cc591cb3127536137c
  Author: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>
  Date:   Thu Jun 25 18:12:11 2015 +0200

      storvsc: be more picky about scmnd->sc_data_direction

      Under the 'default' case in scmnd->sc_data_direction we have 3 options:
      - DMA_NONE which we handle correctly.
      - DMA_BIDIRECTIONAL which is never supposed to be set by SCSI stack.
      - Garbage value.

      Do WARN() and return -EINVAL in the last two cases. virtio_scsi does
      BUG_ON() here but it looks like an overkill.

      Reported-by: Radim KrÄ?máÅ? <rkrcmar@xxxxxxxxxx>
      Signed-off-by: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>
      Acked-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 10978e48ccc1718dce5c2d275b761ab99c593a81
  Author: Seymour, Shane M <shane.seymour@xxxxxx>
  Date:   Wed Jun 24 06:54:35 2015 +0000

      st: convert DRIVER_ATTR macros to DRIVER_ATTR_RO

      Convert DRIVER_ATTR macros to DRIVER_ATTR_RO requested by
      Greg KH. Also switched to using scnprintf instead of snprintf
      per Documentation/filesystems/sysfs.txt.

      Suggested-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Shane Seymour <shane.seymour@xxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxx>
      Reviewed-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Kai Mäkisara <kai.makisara@xxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit b5960e6e2b5c52520cec5888c3feb71b71ba1980
  Author: Andrew Schwartzmeyer <andschwa@xxxxxxxxxxxxx>
  Date:   Tue Aug 11 17:14:32 2015 -0700

      hv_netvsc: Implement set_channels ethtool op

      This enables the use of ethtool --set-channels devname combined N to
      change the number of vRSS queues. Separate rx, tx, and other parameters
      are not supported. The maximum is rsscap.num_recv_que. It passes the
      given value to rndis_filter_device_add through the device_info->num_chn
      field.

      If the procedure fails, it attempts to recover to the prior state. If
      the recovery fails, it logs an error and aborts.

      Current num_chn is saved and restored when changing the MTU.

      Signed-off-by: Andrew Schwartzmeyer <andschwa@xxxxxxxxxxxxx>
      Reviewed-by: Haiyang Zhang <haiyangz@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 8ebdcc52b9b8a53e3ba2643f515d41fff44d4743
  Author: Andrew Schwartzmeyer <andschwa@xxxxxxxxxxxxx>
  Date:   Tue Aug 11 17:14:31 2015 -0700

      hv_netvsc: Set vRSS with num_chn in RNDIS filter

      Uses device_info->num_chn to pass user provided number of vRSS
      queues (from ethtool --set-channels) to rndis_filter_device_add. If
      nonzero and less than the maximum, set net_device->num_chn to the given
      value; else default to prior algorithm.

      Always initialize struct device_info to 0, otherwise not all its fields
      are guaranteed to be 0, which is necessary when checking if num_chn has
      been purposefully set.

      Signed-off-by: Andrew Schwartzmeyer <andschwa@xxxxxxxxxxxxx>
      Reviewed-by: Haiyang Zhang <haiyangz@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit d57f6232c157f03db7cb1ae62a3dcc548014a530
  Author: Woojung.Huh@xxxxxxxxxxxxx <Woojung.Huh@xxxxxxxxxxxxx>
  Date:   Tue Aug 11 15:23:33 2015 +0000

      lan78xx: Remove BUG_ON()

      Removing BUG_ON()

      Signed-off-by: Woojung Huh <woojung.huh@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 81c38e811af6107b9941c6716e82c6fd93308541
  Author: Woojung.Huh@xxxxxxxxxxxxx <Woojung.Huh@xxxxxxxxxxxxx>
  Date:   Tue Aug 11 15:21:41 2015 +0000

      lan78xx: Fix Smatch Warnings

      lan78xx.c:2282 tx_complete() warn: variable dereferenced before check 
'skb' (see line 2249)
      lan78xx.c:2885 lan78xx_bh() info: ignoring unreachable code.
      lan78xx.c:3159 lan78xx_probe() info: ignoring unreachable code.

      Reported-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>

      Signed-off-by: Woojung Huh <woojung.huh@xxxxxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit c3ffe0ca4a75ec1b5183e6141bed4dfcde4309fb
  Author: Tobias Klauser <tklauser@xxxxxxxxxx>
  Date:   Mon Aug 10 12:26:32 2015 +0200

      net: eth: altera: Remove sgdmadesclen member from altera_tse_private

      altera_tse_private->sgdmadesclen is always assigned assigned the same
      value and never changes during runtime.  Remove the struct member and
      use a new define for sizeof(struct sgdma_descrip) instead.

      Signed-off-by: Tobias Klauser <tklauser@xxxxxxxxxx>
      Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

  commit 4b75de8615050c1b0dd8d7794838c42f74ed36ba
  Author: Eric W. Biederman <ebiederm@xxxxxxxxxxxx>
  Date:   Wed Aug 12 15:00:12 2015 -0500

      fs: Set the size of empty dirs to 0.

      Before the make_empty_dir_inode calls were introduce into proc, sysfs,
      and sysctl those directories when stated reported an i_size of 0.
      make_empty_dir_inode started reporting an i_size of 2.  At least one
      userspace application depended on stat returning i_size of 0.  So
      modify make_empty_dir_inode to cause an i_size of 0 to be reported for
      these directories.

      Cc: stable@xxxxxxxxxxxxxxx
      Reported-by: Tejun Heo <tj@xxxxxxxxxx>
      Acked-by: Tejun Heo <tj@xxxxxxxxxx>
      Signed-off-by: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>

  commit 76c44f6d80e151d230844db7ffc058ac21b9e3f2
  Author: Mikulas Patocka <mpatocka@xxxxxxxxxx>
  Date:   Sun Jun 21 16:31:33 2015 -0400

      dm snapshot: don't invalidate on-disk image on snapshot write overflow

      When the snapshot overflows because of a write to the origin, the on-disk
      image has to be invalidated.  However, when the snapshot overflows because
      of a write to the snapshot, the on-disk image doesn't have to be
      invalidated.  Change the behavior so that the on-disk image is not
      invalidated in this case.

      When the snapshot overflows, the variable snapshot_overflowed is set.
      All writes to the snapshot are disallowed to minimize filesystem
      corruption - this condition is cleared when the snapshot is deactivated
      and activated.

      The user can extend the overflowed snapshot, deactivate and activate it
      again, run fsck (if journaling filesystem is not used) mount it and
      recover the data.

      Signed-off-by: Mikulas Patocka <mpatocka@xxxxxxxxxx>
      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>

  commit a93429c300483fa2509ae949a7915a01bd0acd20
  Author: linux <linux@xxxxxxxxxxxxxxxxxx>
  Date:   Fri Jul 31 11:25:55 2015 +0800

      hptiop: Support HighPoint RR36xx HBAs and Support SAS tape and SAS media 
changer

      Support HighPoint RR36xx HBAs which are based on Marvell Frey.
      Support SAS tape and SAS media changer.

      [jejb: remove now unused label]
      Signed-off-by: HighPoint Linux Team <linux@xxxxxxxxxxxxxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit faf00da544045fdc1454f3b9e6d7f65c841de302
  Author: Eric W. Biederman <ebiederm@xxxxxxxxxxxx>
  Date:   Mon Aug 10 18:25:44 2015 -0500

      userns,pidns: Force thread group sharing, not signal handler sharing.

      The code that places signals in signal queues computes the uids, gids,
      and pids at the time the signals are enqueued.  Which means that tasks
      that share signal queues must be in the same pid and user namespaces.

      Sharing signal handlers is fine, but bizarre.

      So make the code in fork and userns_install clearer by only testing
      for what is functionally necessary.

      Also update the comment in unshare about unsharing a user namespace to
      be a little more explicit and make a little more sense.

      Acked-by: Oleg Nesterov <oleg@xxxxxxxxxx>
      Signed-off-by: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>

  commit 12c641ab8270f787dfcce08b5f20ce8b65008096
  Author: Eric W. Biederman <ebiederm@xxxxxxxxxxxx>
  Date:   Mon Aug 10 17:35:07 2015 -0500

      unshare: Unsharing a thread does not require unsharing a vm

      In the logic in the initial commit of unshare made creating a new
      thread group for a process, contingent upon creating a new memory
      address space for that process.  That is wrong.  Two separate
      processes in different thread groups can share a memory address space
      and clone allows creation of such proceses.

      This is significant because it was observed that mm_users > 1 does not
      mean that a process is multi-threaded, as reading /proc/PID/maps
      temporarily increments mm_users, which allows other processes to
      (accidentally) interfere with unshare() calls.

      Correct the check in check_unshare_flags() to test for
      !thread_group_empty() for CLONE_THREAD, CLONE_SIGHAND, and CLONE_VM.
      For sighand->count > 1 for CLONE_SIGHAND and CLONE_VM.
      For !current_is_single_threaded instead of mm_users > 1 for CLONE_VM.

      By using the correct checks in unshare this removes the possibility of
      an accidental denial of service attack.

      Additionally using the correct checks in unshare ensures that only an
      explicit unshare(CLONE_VM) can possibly trigger the slow path of
      current_is_single_threaded().  As an explict unshare(CLONE_VM) is
      pointless it is not expected there are many applications that make
      that call.

      Cc: stable@xxxxxxxxxxxxxxx
      Fixes: b2e0d98705e60e45bbb3c0032c48824ad7ae0704 userns: Implement unshare 
of the user namespace
      Reported-by: Ricky Zhou <rickyz@xxxxxxxxxxxx>
      Reported-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Reviewed-by: Kees Cook <keescook@xxxxxxxxxxxx>
      Signed-off-by: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>

  commit 1c46ae0af6df0bbde66c5e868563be57f18a27b4
  Merge: a73e99c 41d903c
  Author: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 12:43:41 2015 -0700

      Merge tag 'iio-for-4.3b-2' of 
git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next

      Jonathan writes:

      Second set of new device support, features and cleanup for the 4.3 cycle.
      Take 2 also includes a fix set that was too late for the 4.2 cycle.

      As we had a lot of tools and docs work in this set, I have broken those
      out into their own categories in this description.

      Fixes from the pull request '4th set of IIO fixes for the 4.2 cycle'.
      * Poll functions for both event chardev and the buffer one were returning
        negative error codes (via a positive value).
      * A recent change to lsiio adding some error handling that was wrong and
        stopped the tool working.
      * bmg160 was missing some dependencies in Kconfig
      * berlin2-adc had a misshandled register (wrote a value rather than a 
bitmap)

      New device support
      * TI opt3001 light sensor
      * TXC PA12 ALS and proximity sensor.
      * mcp3301 ADC support (in mcp320x driver)
      * ST lsm303agr accelerometer and magnetometer drivers (plus some 
st-sensors
        common support to allow different WHOAMI register addresses, devices 
with
        fixed scale and allow interrupt equiped magnetometers).
      * ADIS16305, ADIS16367, ADIS16445IMUs (in the adis16400 driver)
      * ADIS16266 gyro (in the adis16260 driver)
      * ADIS16137 gyro (in the adis16136 driver)

      New functionality
      * mmc35240 DT bindings.
      * Inverse unit conversion macros to aid handing of values written to sysfs
        attributes.

      Core cleanup
      * Forward declaration of struct iio_trigger to avoid a compile warning.

      Driver cleanup / fixes
      * mxs-lradc
        - Clarify which parts are supported.
        - Fix spelling erorrs.
        - Missing/extra includes
        - reorder includes
        - add datasheet name listings for all usable channels (to allow them
          to be bound by name from consumer drivers)
      * acpi-als - add some function prefixes as per general iio style.
      * bmc150_magn - replace a magic value with the existing define.
      * vf610 - determine possible sample frequencies taking into account the
        electrical characteristics (defining a minimum sample time)
      * dht11
        - whitespace
        - additional docs
        - avoid mulitple assignments in one line
        - Use the new funciton ktime_get_resolution_ns to cleanup a nasty trick
          previously used for timing.
      * Fix all drivers that consider 0 a valid IRQ for historical reasons.
      * Export I2C module alias info where previously missing (to allow 
autoprobing)
      * Export OF module alias info where previously missing.
      * mmc35240 - switch some variables into arrays to improve readability.
      * mlx90614 - define some magic numbers for readability.
      * bmc150_magn
        - expand area locked by a mutex to cover all the use of the
          data->buffer.
        - use descriptive naming for a mask instead of a magic value.
      * berin2-adc
        - pass up an error code rather that a generic error
        - constify the iio_chan_spec
        - some other little tidy ups.
      * stk8312
        - fix a dependency on triggered buffers in kconfig
        - add a check for invalid attribute values
        - improve error handling by returning error codes where possible and
          return immediately where relevant
        - rework macro defs to use GENMASK etc
        - change some variable types to reduce unnecessary casting
        - clean up code style
        - drop a local buffer copy for bulk reads and use the one in 
data->buffer
           instead.
      * adis16400 - the adis16448 gyroscope scale was wrong.
      * adis16480 - some more wrong scales for various parts.
      * adis16300 - has an undocumented product id and serial number registers 
so
        use them.
      * iio_simple_dummy - fix some wrong code indentation.
      * bmc150-accel - use the chip ID to detect the chip present rather than
        verifying the expected part was there.  This was in response to a wrong
        ACPI entry on the WinBook TW100.
      * mma8452
        - fix _get_hp_filter_index
        - drop a double include
        - pass up an error code rather than rewriting it
        - range check input values to attribute writes
        - register defs tidy up using GENMASK and reordering them to be easier 
to
          follow.
        - various coding style cleanups
        - put the Kconfig entry in the write place (alphabetically).

      Tools related
      * Tools cleanup - drop an explicity NULL comparison, some unnecessary 
braces,
        use the ARRAY_SIZE macro, send error messages to stderr instead of 
dropping
        them in the middle of normal output.
      * Fix tools to allow that scale and offset attributes are optional.
      * More tools fixes including allowing true 32bit data (previously an 
overflow
        prevented more than 31bits)
      * Drop a stray header guard that ended up in a c file.
      * Make calc_digits static as it isn't exported or in the header.
      * Set ci_array pointer to NULL after free as a protection against non safe
        usage of the tools core code.  Also convert a double pointer to a single
        one as the extra level of indirection was unnecessary.

      Docs
      * DocBook introduction by Daniel Baluta.  Glad we are beginning to
        draw together some more introductory docs to suplement the various
        tools / examples.
      * Drop bytes_per_datum sysfs attribute docs as it no longer exists.
      * A whole load of missing / fixing of kernel-doc for the core of IIO.
      * Document the trigger name sysfs attribute in the ABI docs.
      * Minor typos in the ABI docs related to power down modes.

  commit 15398566f0ea95c66d202b8705dba4f59b9ba01c
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Fri Aug 7 09:06:37 2015 -0700

      hwmon: (ltc2978) Add support for LTC3887

      LTC3887 is an enhanced version of LTC3880 and supports the same commands.

      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit e8047a2686d32854e4b82bd5d328da61025fb01a
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Fri Aug 7 01:04:56 2015 -0700

      hwmon: (ltc2978) Add additional chip IDs for LTM4676 and LTM4676A

      Per datasheet, the chip ID for LTM4676 is 0x448x. This was observed
      in real systems. In addition to that, chip ID 0x4401 was observed
      as well. Research shows that the chip ID has been changed from 0x440x
      to 0x448x in datasheet revision C. Add support for the additional chip ID.

      Also add the chip ID for LTM4676A, which is functionally identical
      to LTM4676.

      Reported-by: Ananda Babu Nettam <anandab@xxxxxxxxxxx>
      Cc: Ananda Babu Nettam <anandab@xxxxxxxxxxx>
      Cc: Amit U Jain <amjain@xxxxxxxxxxx>
      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit bf89386f166b18c21b2b7a2c5b6e496726c4f25f
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Mon Jun 8 10:29:45 2015 -0700

      hwmon: (ltc2978) Add support for LTC3882

      LTC3882 is mostly compatible with LTC3880. Major differences are that it
      does not measure the input current, and it no longer supports LTC's legacy
      mechanism to identify the chip.

      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit 836954dadcb351d65cf96584f22c9e437169bd49
  Author: Guenter Roeck <linux@xxxxxxxxxxxx>
  Date:   Mon Jun 8 10:14:00 2015 -0700

      hwmon: (ltc2978) Move code to read chip ID into separate function

      Verifying the chip type is getting more complicated with new chips,
      since not all chips support the same mechanism to read the chip type.
      Move the code into a separate function to simplify adding support for
      those chips.

      Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>

  commit 58830550f009c5f60f702c9d3021f8c3be0012b0
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 17:18:10 2015 -0400

      NFSv4.1/pnfs: Remove redundant wakeup in pnfs_send_layoutreturn()

      pnfs_clear_layoutreturn_waitbit() should already be calling
      rpc_wake_up(&NFS_SERVER(ino)->roc_rpcwaitq) for us.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit e1c06f80dcca54cd323d1b98eb385a2c05c6e06b
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 16:40:08 2015 -0400

      NFSv4.1/pnfs: Remove redundant check in pnfs_layoutgets_blocked()

      layoutget now should already be serialised w.r.t. layout returns

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 2d8ae84fbc32a14bba176cf9c20d5eb2a3d42791
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 16:15:48 2015 -0400

      NFSv4.1/pnfs: Remove redundant lo->plh_block_lgets in layoutreturn

      The NFS_LAYOUT_RETURN bit already suffices to ensure that layoutget
      is blocked.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 5c4a79fb2b1cd80cb58986f6acf402721901c545
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 15:57:13 2015 -0400

      NFSv4.1/pnfs: Don't prevent layoutgets when doing return-on-close

      If there is an outstanding return-on-close, then we just want new
      layoutget requests to wait rather than fail.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 8f70f53a87007bdbb34c79d11178a153914f5db1
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 16:09:44 2015 -0400

      NFSv4.1/pnfs: Fix serialisation of layout return and layoutget

      We should always test for outstanding layout returns, whether or not
      pnfs_should_retry_layoutget() is true.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit a4497a58e4043a925b7b308bd2c32f0744eca440
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 4 15:41:50 2015 -0400

      NFSv4.1/pnfs: Remove redundant checks in pnfs_layoutgets_blocked()

      If there are no valid layout segments, then we should already have
      checked in pnfs_update_layout() whether or not this is the first
      layoutget.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 27571297a7e9a2a845c232813a7ba7e1227f5ec6
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 3 17:38:33 2015 -0400

      pNFS: Tighten up locking around DS commit buckets

      I'm not aware of any bugreports around this issue, but the locking
      around the pnfs_commit_bucket is inconsistent at best. This patch
      tightens it up by ensuring that the 'bucket->committing' list is always
      changed atomically w.r.t. the 'bucket->clseg' layout segment tracking.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 442d75628a3040bbfeb4a1f743b70a8afec0adbc
  Author: Seymour, Shane M <shane.seymour@xxxxxx>
  Date:   Tue Jun 23 08:11:00 2015 +0000

      st: convert to using driver attr groups for sysfs

      This patch changes the st driver to use attribute groups so
      driver sysfs files are created automatically. See the
      following for reference:

      http://kroah.com/log/blog/2013/06/26/how-to-create-a-sysfs-file-correctly/

      Signed-off-by: Shane Seymour <shane.seymour@xxxxxx>
      Reviewed-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
      Acked-by: Kai Mäkisara <kai.makisara@xxxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 0847ef88c3c9318d85e92fc42369df0e0190e1ab
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Thu Jul 30 21:40:06 2015 +0800

      NFS: Remove duplicate svc_xprt_put from nfs41_callback_up

      The xprt created by svc_create_xprt have be added to serv->sv_permsocks.
      So putting the xprt directly is useless.
      Otherwise, there is a more svc_xprt_put after the xprt be freed.

      v2, same as v1.

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit efcbc04e16dfa95fef76309f89710dd1d99a5453
  Author: NeilBrown <neilb@xxxxxxxx>
  Date:   Thu Jul 30 13:00:56 2015 +1000

      NFSv4: don't set SETATTR for O_RDONLY|O_EXCL

      It is unusual to combine the open flags O_RDONLY and O_EXCL, but
      it appears that libre-office does just that.

      [pid  3250] stat("/home/USER/.config", {st_mode=S_IFDIR|0700, 
st_size=8192, ...}) = 0
      [pid  3250] 
open("/home/USER/.config/libreoffice/4-suse/user/extensions/buildid", 
O_RDONLY|O_EXCL <unfinished ...>

      NFSv4 takes O_EXCL as a sign that a setattr command should be sent,
      probably to reset the timestamps.

      When it was an O_RDONLY open, the SETATTR command does not
      identify any actual attributes to change.
      If no delegation was provided to the open, the SETATTR uses the
      all-zeros stateid and the request is accepted (at least by the
      Linux NFS server - no harm, no foul).

      If a read-delegation was provided, this is used in the SETATTR
      request, and a Netapp filer will justifiably claim
      NFS4ERR_BAD_STATEID, which the Linux client takes as a sign
      to retry - indefinitely.

      So only treat O_EXCL specially if O_CREAT was also given.

      Signed-off-by: NeilBrown <neilb@xxxxxxxx>
      Cc: stable@xxxxxxxxxxxxxxx
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 5ef8d792fabedeb932375b23735bc7a1a3e8684d
  Author: Kinglong Mee <kinglongmee@xxxxxxxxx>
  Date:   Thu Jul 30 21:41:08 2015 +0800

      NFS: Error out when register_shrinker fail in register_nfs_fs

      Commit 1d3d4437ea "vmscan: per-node deferred work" have made
      register_shrinker can return an intergater error.

      If register_shrinker() fail, the later unregister_shrinker() will
       cause a NULL pointer access.

      v2, same as v1.

      Signed-off-by: Kinglong Mee <kinglongmee@xxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 3ff448b5b7dc7ad4d664588c343da1e5e2ce18dd
  Author: Alexey Khoroshilov <khoroshilov@xxxxxxxxx>
  Date:   Fri Jun 12 01:50:45 2015 +0300

      bfa: fix leak of bfad_im_port_index on module unload

      Resources allocated within bfad_im_port_index idr are not deallocated
      on module unload. The patch adds idr_destroy() in exit function.

      Found by Linux Driver Verification project (linuxtesting.org).

      Signed-off-by: Alexey Khoroshilov <khoroshilov@xxxxxxxxx>
      Reviewed-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 24a9a9610ce3ba36fd87c1d2f2c9106de6b7e832
  Author: Jeff Layton <jlayton@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 3 07:44:53 2015 -0400

      sunrpc: increase UNX_MAXNODENAME from 32 to __NEW_UTS_LEN bytes

      The current limit of 32 bytes artificially limits the name string that
      we end up stuffing into NFSv4.x client ID blobs. If you have multiple
      hosts with long hostnames that only differ near the end, then this can
      cause NFSv4 client ID collisions.

      Linux nodenames are actually limited to __NEW_UTS_LEN bytes (64), so use
      that as the limit instead. Also, use XDR_QUADLEN to specify the slack
      length, just for clarity and in case someone in the future changes this
      to something not evenly divisible by 4.

      Reported-by: Michael Skralivetsky <michael.skralivetsky@xxxxxxxxxxxxxxx>
      Signed-off-by: Jeff Layton <jeff.layton@xxxxxxxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit c8ad8894e92b853df5a766061ee9cde7e10e682f
  Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 5 17:31:58 2015 -0400

      NFSv4.2/pnfs: Use GFP_NOIO for layoutstat reporting in the writeback path

      Prevent a potential deadlock.

      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 41d903c00051d8f31c98a8136edbac67e6f8688f
  Author: Cristina Opriceana <cristina.opriceana@xxxxxxxxx>
  Date:   Mon Aug 3 13:00:47 2015 +0300

      iio: event: Remove negative error code from iio_event_poll

      Negative return values are not supported by iio_event_poll since
      its return type is unsigned int.

      Fixes: f18e7a068a0a3 ("iio: Return -ENODEV for file operations if the 
device has been unregistered")

      Signed-off-by: Cristina Opriceana <cristina.opriceana@xxxxxxxxx>
      Cc: <Stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Jonathan Cameron <jic23@xxxxxxxxxx>

  commit 1bdc0293901cbea23c6dc29432e81919d4719844
  Author: Cristina Opriceana <cristina.opriceana@xxxxxxxxx>
  Date:   Mon Aug 3 13:37:40 2015 +0300

      iio: industrialio-buffer: Fix iio_buffer_poll return value

      Change return value to 0 if no device is bound since
      unsigned int cannot support negative error codes.

      Fixes: f18e7a068 ("iio: Return -ENODEV for file operations if the
      device has been unregistered")

      Signed-off-by: Cristina Opriceana <cristina.opriceana@xxxxxxxxx>
      Cc: <Stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Jonathan Cameron <jic23@xxxxxxxxxx>

  commit af255cd562aaa72455f9022a26afacd68f3fbf73
  Author: Linus Walleij <linus.walleij@xxxxxxxxxx>
  Date:   Tue Aug 4 16:21:49 2015 +0200

      iio: lsiio: fix error code handling error

      commit acf50b3586f8d8a7530b905e111dda41876d38f4
      "tools:iio:lsiio: add error handling"
      introduced error handling of errors returned from
      read_sysfs_string(), but with a simple if (retval),
      missing the fact that these functions return a positive
      value if the read was successful.

      As a result lsiio regresses and does not show any
      devices on my filesystem. Fix this by checking for
      only negative error codes.

      Cc: Hartmut Knaack <knaack.h@xxxxxx>
      Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
      Acked-by: Hartmut Knaack <knaack.h@xxxxxx>
      Signed-off-by: Jonathan Cameron <jic23@xxxxxxxxxx>

  commit d099d7b8316f3ebd63472d207c4801a464330016
  Author: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
  Date:   Mon Aug 10 16:47:32 2015 +0800

      pnfs/flexfiles: LAYOUTSTATS ii_count should be ops instead of bytes

      Turned out I misinterpreted the spec...

      Cc: Tom Haynes <thomas.haynes@xxxxxxxxxxxxxxx>
      Reported-by: Jean Spector <jean@xxxxxxxxxxxxxxx>
      Signed-off-by: Peng Tao <tao.peng@xxxxxxxxxxxxxxx>
      Signed-off-by: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>

  commit 06d2f6ca5a38abe92f1f3a132b331eee773868c3
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Wed Jul 29 15:46:03 2015 +0200

      iio: bmg160: IIO_BUFFER and IIO_TRIGGERED_BUFFER are required

      This patch adds selects for IIO_BUFFER and IIO_TRIGGERED_BUFFER. Without
      IIO_BUFFER, the driver does not compile.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@xxxxxxxxxxxxxxx>
      Cc: <Stable@xxxxxxxxxxxxxxx>
      Signed-off-by: Jonathan Cameron <jic23@xxxxxxxxxx>

  commit 57cb06762d5e587d58005b17b0fa99bd1e391c29
  Author: Hartmut Knaack <knaack.h@xxxxxx>
  Date:   Tue Jul 28 00:38:57 2015 +0200

      iio:adc:berlin2-adc: Fix register definition

      Active channel number is stored in BERLIN2_SM_CTRL as value, instead of a
      bit map.
      The masks for channel interrupts and data ready are a 16 bits wide bit
      map each, instead of just 4 bits.

      Also correct the data mask for the temperature sensor, which was
      Reported-by: Antoine Tenart <antoine.tenart@xxxxxxxxxxxxxxxxxx>

      Signed-off-by: Hartmut Knaack <knaack.h@xxxxxx>
      Acked-by: Antoine Tenart <antoine.tenart@xxxxxxxxxxxxxxxxxx>
      Signed-off-by: Jonathan Cameron <jic23@xxxxxxxxxx>

  commit ce83a4ca18391cfe823629c3863108d265e976f8
  Author: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
  Date:   Fri Jun 5 14:20:40 2015 -0700

      libfc: Fix a typo in a source code comment

      Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxxxxxx>
      Signed-off-by: Vasu Dev <vasu.dev@xxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 0a66ac17abf2bd03e30fbe20b1847258b960b683
  Author: Johannes Thumshirn <jthumshirn@xxxxxxx>
  Date:   Fri May 22 11:15:02 2015 +0200

      mvsas: always iounmap resources

      In case pci_resource_start() or pci_resource_len() reutrn 0, mvsas_ioremap
      returns without doing an iounmap() of mvi->regs_ex.

      Found by the cocinelle tool.

      Signed-off-by: Johannes Thumshirn <jthumshirn@xxxxxxx>
      Reviewed-by: Hannes Reinecke <hare@xxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit a30c2a3bf8571c6748dd16edc10b32d45ed71a72
  Author: Thadeu Lima de Souza Cascardo <cascardo@xxxxxxxxxxxxxxxxxx>
  Date:   Thu Apr 30 09:13:05 2015 -0300

      qla2xxx: prevent board_disable from running during EEH

      Commit f3ddac1918fe963bcbf8d407a3a3c0881b47248b ("[SCSI] qla2xxx:
      Disable adapter when we encounter a PCI disconnect.") has introduced a
      code that disables the board, releasing some resources, when reading
      0xffffffff.

      In case this happens when there is an EEH, this read will trigger EEH
      detection and set PCI channel offline. EEH will be able to recover the
      card from this state by doing a reset, so it's a better option than
      simply disabling the card.

      Since eeh_check_failure will mark the channel as offline before
      returning the read value, in case there really was an EEH, we can simply
      check for pci_channel_offline, preventing the board_disable code from
      running if it's true.

      Without this patch, EEH code will try to access those same resources
      that board_disable will try to free. This race can cause EEH recovery to
      fail.

      [  504.370577] EEH: Notify device driver to resume
      [  504.370580] qla2xxx [0001:07:00.0]-9002:2: The device failed to resume 
I/O from slot/link_reset.

      Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@xxxxxxxxxxxxxxxxxx>
      Acked-by: Himanshu Madhani <himanshu.madhani@xxxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit d8571b1ecbd497d78923e046262872e3206b2deb
  Author: Suresh Thiagarajan <Suresh.Thiagarajan@xxxxxxxx>
  Date:   Thu Feb 12 12:04:37 2015 +0530

      pm80xx: Added pm8006 controller support

      Signed-off-by: Suresh Thiagarajan <Suresh.Thiagarajan@xxxxxxxx>
      Signed-off-by: Viswas G <Viswas.G@xxxxxxxx>
      Acked-by: Jack Wang <xjtuwjp@xxxxxxxxx>
      Signed-off-by: James Bottomley <JBottomley@xxxxxxxx>

  commit 54fbde8a94a8a78547597215c9e4be590d075ee0
  Author: Sinclair Yeh <syeh@xxxxxxxxxx>
  Date:   Wed Jul 29 12:38:02 2015 -0700

      drm/vmwgfx: Fix copyright headers

      Updating and fixing copyright headers.
      Bump version minor to signal vgpu10 support.

      Signed-off-by: Sinclair Yeh <syeh@xxxxxxxxxx>
      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
      Reviewed-by: Brian Paul <brianp@xxxxxxxxxx>

  commit fd11a3c0bd39162547e8abe44e1aaa11059c15f5
  Author: Sinclair Yeh <syeh@xxxxxxxxxx>
  Date:   Mon Aug 10 10:56:15 2015 -0700

      drm/vmwgfx: Add DX query support. Various fixes.

      Add support for vgpu10 queries. Functional- and formatting fixes.

      Signed-off-by: Sinclair Yeh <syeh@xxxxxxxxxx>
      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>

  commit 0fca749e9a085ac4623a807ab12c37fc09851e3c
  Author: Neha Bhende <nbhende@xxxxxxxxxx>
  Date:   Mon Aug 10 10:51:07 2015 -0700

      drm/vmwgfx: Add command parser support for a couple of DX commands

      Add support for SVGA_3D_CMD_DX_BUFFER_COPY and
      SVGA_3D_CMD_DX_PRED_COPY_REGION

      Signed-off-by: Neha Bhende <nbhende@xxxxxxxxxx>
      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>

  commit 2f633e5e40798d5c8db512118b5e464b62f7ff06
  Author: Charmaine Lee <charmainel@xxxxxxxxxx>
  Date:   Mon Aug 10 10:45:11 2015 -0700

      drm/vmwgfx: Command parser fixes for DX

      Implement support for a couple of missing commands and fix a command 
parser
      error path. Also fix uninitialized devcaps and surface size computation.

      Signed-off-by: Charmaine Lee <charmainel@xxxxxxxxxx>
      Signed-off-by: Sinclair Yeh <syeh@xxxxxxxxxx>
      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>

  commit d80efd5cb3dec16a8d1aea9b8a4a7921972dba65
  Author: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
  Date:   Mon Aug 10 10:39:35 2015 -0700

      drm/vmwgfx: Initial DX support

      Initial DX support.
      Co-authored with Sinclair Yeh, Charmaine Lee and Jakob Bornecrantz.

      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
      Signed-off-by: Sinclair Yeh <syeh@xxxxxxxxxx>
      Signed-off-by: Charmaine Lee <charmainel@xxxxxxxxxx>

  commit 8ce75f8ab9044fe11caaaf2b2c82471023212f9f
  Author: Sinclair Yeh <syeh@xxxxxxxxxx>
  Date:   Wed Jul 8 21:20:39 2015 -0700

      drm/vmwgfx: Update device includes for DX device functionality

      Add DX includes and move all device includes to a separate directory.

      Co-authored with Thomas Hellstrom, Charmaine Lee and above all,
      the VMware device team.

      Signed-off-by: Sinclair Yeh <syeh@xxxxxxxxxx>
      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
      Signed-off-by: Charmaine Lee <charmainel@xxxxxxxxxx>

  commit 5101020c78c9f242fe77bd7986bc24f7b800172a
  Author: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
  Date:   Fri Jul 10 22:31:08 2015 -0700

      drm: export the DRM permission check code

      This way drm_ioctl_permit() can be used by drivers

      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
      Reviewed-by: Sinclair Yeh <syeh@xxxxxxxxxx>

  commit 05c9501859c8bd80635d7299c384e2a8db7c0ce1
  Author: Sinclair Yeh <syeh@xxxxxxxxxx>
  Date:   Tue Aug 11 22:53:39 2015 -0700

      drm/vmwgfx: Fix crash when unloading vmwgfx v2

      This patch fixes two issues.  One, when a surface is a proxy for a DMA
      buffer, it holds an extra reference that needs to be cleared.

      Two, when fbdev is enabled, we need to unpin the framebuffer before
      unloading the driver.  This is done by a call to vmw_fb_off().

      v2
      Moved unreferencing surface to from vmw_framebuffer_surface_destroy()
      to vmw_kms_new_framebuffer()

      Added "struct vmw_framebuffer *vfb = NULL;" to silence a compiler
      warning.

      Removed error checking after calling vmw_surface/dmabuf_reference()

      Signed-off-by: Sinclair Yeh <syeh@xxxxxxxxxx>
      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>

  commit df45e9d410fc07ab816b006414f52ec4e2fbf2d7
  Author: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
  Date:   Wed Aug 12 09:30:09 2015 -0700

      drm/vmwgfx: Fix framebuffer creation on older hardware

      On older hardware, texture max width and height is not available, so set
      it to something reasonable, like 8192.

      Signed-off-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>
      Reviewed-by: Sinclair Yeh <syeh@xxxxxxxxxx>

  commit 65ade7d34bb6436104f1fdcce899bd81707da2e1
  Author: Sinclair Yeh <syeh@xxxxxxxxxx>
  Date:   Thu Jul 16 10:49:13 2015 -0700

      drm/vmwgfx: Fixed topology boundary checking for Screen Targets

      For a Screen Target capable display device, the display topology is
      limited by SVGA_REG_MAX_PRIMARY_BOUNDING_BOX_MEM.  Two values are
      checked against this limit:
        1.  Size of the bounding box enclosing all the displays, and
        2.  Size of the total number of displays, e.g. framebuffers

      The limitations above mean we do not have exact max width and
      height for the topology.  The best current option is to set those to
      the maximum texture width/height.

      Signed-off-by: Sinclair Yeh <syeh@xxxxxxxxxx>
      Reviewed-by: Thomas Hellstrom <thellstrom@xxxxxxxxxx>

  commit 9a5ad7d0e3e1c6c0c11df89fbc5376f8aaf7a90f
  Author: Jungseok Lee <jungseoklee85@xxxxxxxxx>
  Date:   Wed Aug 12 15:16:19 2015 +0100

      arm64: Add __exception_irq_entry definition for function graph

      The gic_handle_irq() is defined with __exception_irq_entry attribute.
      A single remaining work is to add its definition as ARM did. Below
      shows how function graph data is changed with these hunks.

      A prologue of an interrupt handler is drawn as follows.

      - current status

       0)   0.208 us    |  cpuidle_not_available();
       0)               |  default_idle_call() {
       0)               |    arch_cpu_idle() {
       0)               |      __handle_domain_irq() {
       0)               |        irq_enter() {
       0)   0.313 us    |          rcu_irq_enter();
       0)   0.261 us    |          __local_bh_disable_ip();

      - with this change

       0)   0.625 us    |  cpuidle_not_available();
       0)               |  default_idle_call() {
       0)               |    arch_cpu_idle() {
       0)   ==========> |
       0)               |      gic_handle_irq() {
       0)               |        __handle_domain_irq() {
       0)               |          irq_enter() {
       0)   0.885 us    |            rcu_irq_enter();
       0)   0.781 us    |            __local_bh_disable_ip();

      An epilogue of an interrupt handler is recorded as follows.

      - current status

       0)   0.261 us    |          idle_cpu();
       0)               |          rcu_irq_exit() {
       0)   0.521 us    |            rcu_eqs_enter_common.isra.46();
       0)   2.552 us    |          }
       0) ! 322.448 us  |        }
       0) ! 583.437 us  |      }
       0) # 1656.041 us |    }
       0) # 1658.073 us |  }

      - with this change

       0)   0.677 us    |            idle_cpu();
       0)               |            rcu_irq_exit() {
       0)   1.770 us    |              rcu_eqs_enter_common.isra.46();
       0)   7.968 us    |            }
       0) # 1803.541 us |          }
       0) # 2626.667 us |        }
       0) # 2632.969 us |      }
       0)   <========== |
       0) # 14425.00 us |    }
       0) # 14430.98 us |  }

      Cc: AKASHI Takahiro <takahiro.akashi@xxxxxxxxxx>
      Cc: Marc Zyngier <marc.zyngier@xxxxxxx>
      Cc: Rabin Vincent <rabin@xxxxxx>
      Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
      Signed-off-by: Jungseok Lee <jungseoklee85@xxxxxxxxx>
      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>

  commit 71ef150ee06df29c5b427307dc0bacfe06a8baea
  Author: Kan Liang <kan.liang@xxxxxxxxx>
  Date:   Tue Aug 11 06:30:50 2015 -0400

      perf tests: Add tests to callgraph and time parse

      Add tests in tests/parse-events.c to check call-graph and time option.

      Signed-off-by: Kan Liang <kan.liang@xxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439289050-40510-4-git-send-email-kan.liang@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 9e207ddfa20781e56465ce9a537f0a377c9d34fb
  Author: Kan Liang <kan.liang@xxxxxxxxx>
  Date:   Tue Aug 11 06:30:49 2015 -0400

      perf report: Show call graph from reference events

      Introduce --show-ref-call-graph for perf report to print reference
      callgraph for no callgraph event.

      Here is an example.

       perf report --show-ref-call-graph --stdio

       # To display the perf.data header info, please use
       --header/--header-only options.
       #
       #
       # Total Lost Samples: 0
       #
       # Samples: 5  of event 'cpu/cpu-cycles,call-graph=fp/'
       # Event count (approx.): 144985
       #
       # Children      Self  Command  Shared Object     Symbol
       # ........  ........  .......  ................  
........................................
       #
          72.30%     0.00%  sleep    [kernel.vmlinux]  [k] 
entry_SYSCALL_64_fastpath
                    |
                    ---entry_SYSCALL_64_fastpath
                       |
                       |--22.62%-- __GI___libc_nanosleep
                        --77.38%-- [...]

      ......

       # Samples: 6  of event 'cpu/instructions,call-graph=no/', show reference 
callgraph
       # Event count (approx.): 172780
       #
       # Children      Self  Command  Shared Object     Symbol
       # ........  ........  .......  ................  
........................................
       #
          73.16%     0.00%  sleep    [kernel.vmlinux]  [k] 
entry_SYSCALL_64_fastpath
                    |
                    ---entry_SYSCALL_64_fastpath
                       |
                       |--31.44%-- __GI___libc_nanosleep
                        --68.56%-- [...]

      Signed-off-by: Kan Liang <kan.liang@xxxxxxxxx>
      Tested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439289050-40510-3-git-send-email-kan.liang@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit f9db0d0f1b2cf030083c83d3ed3a4bbae6bdc8b7
  Author: Kan Liang <kan.liang@xxxxxxxxx>
  Date:   Tue Aug 11 06:30:48 2015 -0400

      perf callchain: Allow disabling call graphs per event

      This patch introduce "call-graph=no" to disable per-event callgraph.

      Here is an example.

        perf record -e 
'cpu/cpu-cycles,call-graph=fp/,cpu/instructions,call-graph=no/' sleep 1

        perf report --stdio

        # To display the perf.data header info, please use
        --header/--header-only options.
        #
        #
        # Total Lost Samples: 0
        #
        # Samples: 6  of event 'cpu/cpu-cycles,call-graph=fp/'
        # Event count (approx.): 774218
        #
        # Children      Self  Command  Shared Object     Symbol
        # ........  ........  .......  ................  
........................................
        #
          61.94%     0.00%  sleep    [kernel.vmlinux]  [k] 
entry_SYSCALL_64_fastpath
                    |
                    ---entry_SYSCALL_64_fastpath
                       |
                       |--97.30%-- __brk
                       |
                        --2.70%-- mmap64
                                  _dl_check_map_versions
                                  _dl_check_all_versions

          61.94%     0.00%  sleep    [kernel.vmlinux]  [k] perf_event_mmap
                    |
                    ---perf_event_mmap
                       |
                       |--97.30%-- do_brk
                       |          sys_brk
                       |          entry_SYSCALL_64_fastpath
                       |          __brk
                       |
                        --2.70%-- mmap_region
                                  do_mmap_pgoff
                                  vm_mmap_pgoff
                                  sys_mmap_pgoff
                                  sys_mmap
                                  entry_SYSCALL_64_fastpath
                                  mmap64
                                  _dl_check_map_versions
                                  _dl_check_all_versions
        ......

        # Samples: 6  of event 'cpu/instructions,call-graph=no/'
        # Event count (approx.): 359692
        #
        # Children      Self  Command  Shared Object     Symbol
        # ........  ........  .......  ................  
.................................
        #
           89.03%     0.00%  sleep    [unknown]         [.] 0xffff6598ffff6598
           89.03%     0.00%  sleep    ld-2.17.so        [.] 
_dl_resolve_conflicts
           89.03%     0.00%  sleep    [kernel.vmlinux]  [k] page_fault

      Signed-off-by: Kan Liang <kan.liang@xxxxxxxxx>
      Tested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439289050-40510-2-git-send-email-kan.liang@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit d457c96392bb418bd998f3ccf93e0e4c958fcd0f
  Author: Kan Liang <kan.liang@xxxxxxxxx>
  Date:   Tue Aug 11 06:30:47 2015 -0400

      perf callchain: Per-event type selection support

      This patchkit adds the ability to set callgraph mode (fp, dwarf, lbr) per
      event. This in term can reduce sampling overhead and the size of the
      perf.data.

      Here is an example.

        perf record -e 
'cpu/cpu-cycles,period=1000,call-graph=fp,time=1/,cpu/instructions,call-graph=lbr/'
 sleep 1

       perf evlist -v
       cpu/cpu-cycles,period=1000,call-graph=fp,time=1/: type: 4, size: 112,
       config: 0x3c, { sample_period, sample_freq }: 1000, sample_type:
       IP|TID|TIME|CALLCHAIN|PERIOD|IDENTIFIER, read_format: ID, disabled: 1,
       inherit: 1, mmap: 1, comm: 1, enable_on_exec: 1, task: 1, sample_id_all:
       1, exclude_guest: 1, mmap2: 1, comm_exec: 1
       cpu/instructions,call-graph=lbr/: type: 4, size: 112, config: 0xc0, {
       sample_period, sample_freq }: 4000, sample_type:
       IP|TID|TIME|CALLCHAIN|PERIOD|BRANCH_STACK|IDENTIFIER, read_format: ID,
       disabled: 1, inherit: 1, freq: 1, enable_on_exec: 1, sample_id_all: 1,
       exclude_guest: 1

      Signed-off-by: Kan Liang <kan.liang@xxxxxxxxx>
      Tested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Cc: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439289050-40510-1-git-send-email-kan.liang@xxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 75186a9b09e47072f442f43e292cd47180b67b5c
  Author: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
  Date:   Wed Aug 12 10:24:07 2015 +0900

      perf probe: Fix to show lines of sys_ functions correctly

      "perf probe --lines sys_poll" shows only the first line of sys_poll,
      because the SYSCALL_DEFINE macro:

        ----
        SYSCALL_DEFINE*(foo,...)
        {
          body;
        }
        ----

        is expanded as below (on debuginfo)

        ----

        static inline int SYSC_foo(...)
        {
          body;
        }
        int SyS_foo(...) <- is an alias of sys_foo.
        {
          return SYSC_foo(...);
        }
        ----

      So, "perf probe --lines sys_foo" decodes SyS_foo function and it also 
skips
      inlined functions(SYSC_foo) inside the target function because those 
functions
      are usually defined somewhere else.

      To fix this issue, this fix checks whether the inlined function is 
defined at
      the same point of the target function, and if so, it doesn't skip the 
inline
      function.

      Reported-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@xxxxxxxxxxx>
      Tested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/20150812012406.11811.94691.stgit@xxxxxxxxxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 228c37ff980f5643401a1667f5ab7c6f38602cf8
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Tue Aug 11 12:38:54 2015 +0100

      sign-file: Document dependency on OpenSSL devel libraries

      The revised sign-file program is no longer a script that wraps the openssl
      program, but now rather a program that makes use of OpenSSL's crypto
      library.  This means that to build the sign-file program, the kernel build
      process now has a dependency on the OpenSSL development packages in
      addition to OpenSSL itself.

      Document this in Kconfig and in module-signing.txt.

      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
      Reviewed-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>

  commit 99db44350672c8a5ee9a7b0a6f4cd6ff10136065
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Wed Aug 5 15:22:27 2015 +0100

      PKCS#7: Appropriately restrict authenticated attributes and content type

      A PKCS#7 or CMS message can have per-signature authenticated attributes
      that are digested as a lump and signed by the authorising key for that
      signature.  If such attributes exist, the content digest isn't itself
      signed, but rather it is included in a special authattr which then
      contributes to the signature.

      Further, we already require the master message content type to be
      pkcs7_signedData - but there's also a separate content type for the data
      itself within the SignedData object and this must be repeated inside the
      authattrs for each signer [RFC2315 9.2, RFC5652 11.1].

      We should really validate the authattrs if they exist or forbid them
      entirely as appropriate.  To this end:

       (1) Alter the PKCS#7 parser to reject any message that has more than one
           signature where at least one signature has authattrs and at least one
           that does not.

       (2) Validate authattrs if they are present and strongly restrict them.
           Only the following authattrs are permitted and all others are
           rejected:

           (a) contentType.  This is checked to be an OID that matches the
                 content type in the SignedData object.

           (b) messageDigest.  This must match the crypto digest of the data.

           (c) signingTime.  If present, we check that this is a valid, 
parseable
                 UTCTime or GeneralTime and that the date it encodes fits within
                 the validity window of the matching X.509 cert.

           (d) S/MIME capabilities.  We don't check the contents.

           (e) Authenticode SP Opus Info.  We don't check the contents.

           (f) Authenticode Statement Type.  We don't check the contents.

           The message is rejected if (a) or (b) are missing.  If the message is
           an Authenticode type, the message is rejected if (e) is missing; if
           not Authenticode, the message is rejected if (d) - (f) are present.

           The S/MIME capabilities authattr (d) unfortunately has to be allowed
           to support kernels already signed by the pesign program.  This only
           affects kexec.  sign-file suppresses them (CMS_NOSMIMECAP).

           The message is also rejected if an authattr is given more than once 
or
           if it contains more than one element in its set of values.

       (3) Add a parameter to pkcs7_verify() to select one of the following
           restrictions and pass in the appropriate option from the callers:

           (*) VERIFYING_MODULE_SIGNATURE

         This requires that the SignedData content type be pkcs7-data and
         forbids authattrs.  sign-file sets CMS_NOATTR.  We could be more
         flexible and permit authattrs optionally, but only permit minimal
         content.

           (*) VERIFYING_FIRMWARE_SIGNATURE

         This requires that the SignedData content type be pkcs7-data and
         requires authattrs.  In future, this will require an attribute
         holding the target firmware name in addition to the minimal set.

           (*) VERIFYING_UNSPECIFIED_SIGNATURE

         This requires that the SignedData content type be pkcs7-data but
         allows either no authattrs or only permits the minimal set.

           (*) VERIFYING_KEXEC_PE_SIGNATURE

         This only supports the Authenticode SPC_INDIRECT_DATA content type
         and requires at least an SpcSpOpusInfo authattr in addition to the
         minimal set.  It also permits an SPC_STATEMENT_TYPE authattr (and
         an S/MIME capabilities authattr because the pesign program doesn't
         remove these).

           (*) VERIFYING_KEY_SIGNATURE
           (*) VERIFYING_KEY_SELF_SIGNATURE

         These are invalid in this context but are included for later use
         when limiting the use of X.509 certs.

       (4) The pkcs7_test key type is given a module parameter to select between
           the above options for testing purposes.  For example:

        echo 1 >/sys/module/pkcs7_test_key/parameters/usage
        keyctl padd pkcs7_test foo @s </tmp/stuff.pkcs7

           will attempt to check the signature on stuff.pkcs7 as if it contains 
a
           firmware blob (1 being VERIFYING_FIRMWARE_SIGNATURE).

      Suggested-by: Andy Lutomirski <luto@xxxxxxxxxx>
      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
      Reviewed-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>
      Reviewed-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>

  commit f29299b4801076e14bb149cb2fc44bd8dc2f51cc
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Fri Jul 31 11:43:23 2015 +0100

      KEYS: Add a name for PKEY_ID_PKCS7

      Add a name for PKEY_ID_PKCS7 into the pkey_id_type_name array.

      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>

  commit fd19a3d195be23e8d9d0d66576b96ea25eea8323
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Wed Jul 29 16:58:32 2015 +0100

      PKCS#7: Improve and export the X.509 ASN.1 time object decoder

      Make the X.509 ASN.1 time object decoder fill in a time64_t rather than a
      struct tm to make comparison easier (unfortunately, this makes readable
      display less easy) and export it so that it can be used by the PKCS#7 code
      too.

      Further, tighten up its parsing to reject invalid dates (eg. weird
      characters, non-existent hour numbers) and unsupported dates (eg. 
timezones
      other than 'Z' or dates earlier than 1970).

      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
      Reviewed-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>

  commit 770f2b98760ef0500183d7206724aac762433e2d
  Author: David Woodhouse <David.Woodhouse@xxxxxxxxx>
  Date:   Mon Jul 20 21:16:34 2015 +0100

      modsign: Use extract-cert to process CONFIG_SYSTEM_TRUSTED_KEYS

      Fix up the dependencies somewhat too, while we're at it.

      Signed-off-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>

  commit 84706caae9e06363db4f956cde4f9715ce5c0ef3
  Author: David Woodhouse <David.Woodhouse@xxxxxxxxx>
  Date:   Mon Jul 20 21:16:33 2015 +0100

      extract-cert: Cope with multiple X.509 certificates in a single file

      This is not required for the module signing key, although it doesn't do 
any
      harm â?? it just means that any additional certs in the PEM file are also
      trusted by the kernel.

      But it does allow us to use the extract-cert tool for processing the extra
      certs from CONFIG_SYSTEM_TRUSTED_KEYS, instead of that horrid awk|base64
      hack.

      Also cope with being invoked with no input file, creating an empty output
      file as a result.

      Signed-off-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>

  commit ed8c20762a314124cbdd62e9d3e8aa7aa2a16020
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Mon Jul 20 21:16:33 2015 +0100

      sign-file: Generate CMS message as signature instead of PKCS#7

      Make sign-file use the OpenSSL CMS routines to generate a message to be
      used as the signature blob instead of the PKCS#7 routines.  This allows us
      to change how the matching X.509 certificate is selected.  With PKCS#7 the
      only option is to match on the serial number and issuer fields of an X.509
      certificate; with CMS, we also have the option of matching by subjectKeyId
      extension.  The new behaviour is selected with the "-k" flag.

      Without the -k flag specified, the output is pretty much identical to the
      PKCS#7 output.

      Whilst we're at it, don't include the S/MIME capability list in the 
message
      as it's irrelevant to us.

      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
      Reviewed-By: David Woodhouse <David.Woodhouse@xxxxxxxxx

  commit 60d65cacd7c2d84a6dcad69bcb57bbf0220c8643
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Mon Jul 20 21:16:33 2015 +0100

      PKCS#7: Support CMS messages also [RFC5652]

      Since CMS is an evolution of PKCS#7, with much of the ASN.1 being
      compatible, add support for CMS signed-data messages also [RFC5652 sec 5].

      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
      Reviewed-By: David Woodhouse <David.Woodhouse@xxxxxxxxx>

  commit a4c6e57f4f5fa65cbdb8cc1c14ff5ca7c56766c3
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Mon Jul 20 21:16:32 2015 +0100

      X.509: Change recorded SKID & AKID to not include Subject or Issuer

      The key identifiers fabricated from an X.509 certificate are currently:

       (A) Concatenation of serial number and issuer

       (B) Concatenation of subject and subjectKeyID (SKID)

      When verifying one X.509 certificate with another, the AKID in the target
      can be used to match the authoritative certificate.  The AKID can specify
      the match in one or both of two ways:

       (1) Compare authorityCertSerialNumber and authorityCertIssuer from the 
AKID
           to identifier (A) above.

       (2) Compare keyIdentifier from the AKID plus the issuer from the target
           certificate to identifier (B) above.

      When verifying a PKCS#7 message, the only available comparison is between
      the IssuerAndSerialNumber field and identifier (A) above.

      However, a subsequent patch adds CMS support.  Whilst CMS still supports a
      match on IssuerAndSerialNumber as for PKCS#7, it also supports an
      alternative - which is the SubjectKeyIdentifier field.  This is used to
      match to an X.509 certificate on the SKID alone.  No subject information 
is
      available to be used.

      To this end change the fabrication of (B) above to be from the X.509 SKID
      alone.  The AKID in keyIdentifier form then only matches on that and does
      not include the issuer.

      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
      Reviewed-By: David Woodhouse <David.Woodhouse@xxxxxxxxx>

  commit 2c7fd3675ef1867d0d0c39e9f0bb5ddb67bfc7a7
  Author: David Howells <dhowells@xxxxxxxxxx>
  Date:   Mon Jul 20 21:16:31 2015 +0100

      PKCS#7: Check content type and versions

      We only support PKCS#7 signed-data [RFC2315 sec 9] content at the top 
level,
      so reject anything else.  Further, check that the version numbers in
      SignedData and SignerInfo are 1 in both cases.

      Note that we don't restrict the inner content type.  In the PKCS#7 code we
      don't parse the data attached there, but merely verify the signature over
      it.

      Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
      Reviewed-By: David Woodhouse <David.Woodhouse@xxxxxxxxx>

  commit 63ab1749f39aeec27b0dcf71cd7996d862c5ad63
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Wed Aug 12 12:42:58 2015 -0300

      perf hists browser: Make ESC unzoom as well

      In addition to <-, that may be repurposed for horizontal scrolling.

      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Link: http://lkml.kernel.org/n/tip-w3rctelxr4yxrjufx7z3fclb@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit d4853630b334017cab9a4602f5e9677e3b792c8a
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 12 17:00:35 2015 +0200

      drm/atomic: Use KMS VBLANK API

      Instead of using the legacy VBLANK API, use the new KMS API. This is
      part of an effort to convert all existing users so that the KMS API can
      be changed to properly use per-CRTC data.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit c30e11fc66fe21882c46e176ed695728ebd4293a
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 12 17:00:33 2015 +0200

      drm/irq: Document return values more consistently

      Some of the functions are documented inconsistently. Add Returns:
      sections where missing and use consistent style to describe the return
      value.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit cc1ef118fc099295ae6aabbacc8af94d8d8885eb
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 12 17:00:31 2015 +0200

      drm/irq: Make pipe unsigned and name consistent

      Name all references to the pipe number (CRTC index) consistently to make
      it easier to distinguish which is a pipe number and which is a pointer
      to struct drm_crtc.

      While at it also make all references to the pipe number unsigned because
      there is no longer any reason why it should ever be negative.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 7d1de851632d013023cd7c89eb8664f62e5beb2c
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 12 17:00:30 2015 +0200

      drm/irq: Check for valid VBLANK before dereference

      When accessing the array of per-CRTC VBLANK structures we must always
      check that the index into the array is valid before dereferencing to
      avoid crashing.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      [danvet: Squash in my own whitespace ocd fixup in drm_vblank_count.]
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit fc0a446152877d3a4e40166ddb19b6e0cb5f6567
  Author: viresh kumar <viresh.kumar@xxxxxxxxxx>
  Date:   Mon Aug 10 11:42:26 2015 +0530

      dm: remove unlikely() before IS_ERR()

      IS_ERR() already contains an 'unlikely' compiler flag so there is no
      need to do that again from IS_ERR() callers.

      Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>

  commit e80d1c805a3b2f0ad2081369be5dc5deedd5ee59
  Author: Vivek Goyal <vgoyal@xxxxxxxxxx>
  Date:   Fri Jul 31 09:20:36 2015 -0400

      dm: do not override error code returned from dm_get_device()

      Some of the device mapper targets override the error code returned by
      dm_get_device() and return either -EINVAL or -ENXIO.  There is nothing
      gained by this override.  It is better to propagate the returned error
      code unchanged to caller.

      This work was motivated by hitting an issue where the underlying device
      was busy but -EINVAL was being returned.  After this change we get
      -EBUSY instead and it is easier to figure out the problem.

      Signed-off-by: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>

  commit ab37844d6169c2dd6f96e665b07b692ba1a4c180
  Author: Mikulas Patocka <mpatocka@xxxxxxxxxx>
  Date:   Wed Jul 1 17:30:36 2015 -0400

      dm: test return value for DM_MAPIO_SUBMITTED

      In properly written code we should not assume that DM_MAPIO_SUBMITTED is
      zero. We should test the return value for DM_MAPIO_SUBMITTED rather than
      testing it for zero.

      Signed-off-by: Mikulas Patocka <mpatocka@xxxxxxxxxx>
      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>

  commit 4fb9aa5abdb791defedb3a5ce254ad193e82d77b
  Author: Sami Tolvanen <samitolvanen@xxxxxxxxxx>
  Date:   Mon Jun 29 14:14:00 2015 +0100

      dm verity: remove unused mempool

      Since commit 003b5c571 ("block: Convert drivers to immutable biovecs"),
      vec_mempool in struct dm_verity is no longer used.  Remove it and
      related definitions.

      Signed-off-by: Sami Tolvanen <samitolvanen@xxxxxxxxxx>
      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>

  commit e44b6a5a3c711c1ada4cf7135bf9dbf860caffd2
  Author: Joe Thornber <ejt@xxxxxxxxxx>
  Date:   Thu Jul 30 09:29:40 2015 +0100

      dm cache: move wake_waker() from free_migrations() to where it is needed

      This stops spurious wake ups from calls to prealloc_free_structs().

      Signed-off-by: Joe Thornber <ejt@xxxxxxxxxx>
      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>

  commit 8c747fd0c3f514233afaca98139c03cca2cf2d2f
  Author: Vivek Goyal <vgoyal@xxxxxxxxxx>
  Date:   Mon Jul 6 11:55:41 2015 -0400

      dm btree remove: remove unused function get_nr_entries()

      rebalance_children() calls get_nr_entries() and assigns the result to an
      unused local 'child_entries' variable.  Remove get_nr_entries() and
      cleanup rebalance_children() accordingly.

      Signed-off-by: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>

  commit 0a8d4c3ef8f14cbd26d97767e3676722d4eebee5
  Author: Vivek Goyal <vgoyal@xxxxxxxxxx>
  Date:   Mon Jul 6 11:55:40 2015 -0400

      dm btree: remove unused "dm_block_t root" parameter in 
btree_split_sibling()

      Signed-off-by: Vivek Goyal <vgoyal@xxxxxxxxxx>
      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>

  commit 4051aab762f161826f15ea63c8baaf33cb5e6fe3
  Author: Joe Thornber <ejt@xxxxxxxxxx>
  Date:   Fri Jun 26 13:25:12 2015 +0100

      dm cache policy smq: change the mutex to a spinlock

      We no longer sleep in any of the smq functions, so this can become a
      spinlock.  Switching from mutex to spinlock improves performance when
      the fast cache device is a very low latency device (e.g. NVMe SSD).

      The switch to spinlock also allows for removal of the extra tick_lock;
      which is no longer needed since the main lock being a spinlock now
      fulfills the locking requirements needed by interrupt context.

      Signed-off-by: Joe Thornber <ejt@xxxxxxxxxx>
      Signed-off-by: Mike Snitzer <snitzer@xxxxxxxxxx>

  commit 2a7d3d6d5ddbd202c09f228829cd03609a8efb23
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 12 17:00:24 2015 +0200

      drm/irq: Remove negative CRTC index special-case

      The drm_send_vblank_event() function treats negative CRTC indices as
      meaning that a driver doesn't have proper VBLANK handling. This is the
      only place where DRM needs negative CRTC indices, so in order to enable
      subsequent cleanup, remove this special case and replace it by the more
      obvious check for whether or not VBLANK support was initialized.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit b54a0935b03888c8412aa5acbf873af9d753fbdd
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 12 16:54:29 2015 +0200

      drm/plane: Remove redundant extern

      Use of the extern keyword for function prototypes is unnecessary, so it
      can be removed.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 45e3743aff6f3fbe3f08d43d443dc2d7b5396a31
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 12 16:54:28 2015 +0200

      drm/plane: Use consistent data types for format count

      Rather than a mix of the the sized uint32_t and signed integer, use an
      unsized unsigned int to specify the format count.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 798ae0f6693deac4a07377d0c45b4325b7026278
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 12 16:32:12 2015 +0200

      vga_switcheroo: Remove unnecessary checks

      debugfs_remove() gracefully ignores NULL parameters, so the explicit
      checks can be removed.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 7491bfb446741b1dd65aadda54bade18bfaba442
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 12 16:32:11 2015 +0200

      vga_switcheroo: Wrap overly long lines

      Wrap overly long lines to make checkpatch happy. While at it, also add
      blank lines after declarations to eliminate additional problems flagged
      by checkpatch.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 9b0be1ebec804c5698541a86486a0b2a4143279d
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 12 16:32:10 2015 +0200

      vga_switcheroo: Use pr_fmt()

      Use pr_fmt() to define the "vga_switcheroo: " prefix that is prepended
      to all output messages emitted by pr_*() functions. This allows making
      existing strings much shorter and eliminates a bunch of warnings from
      checkpatch about lines being overly long.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 713092783082a1469d329cb63be7c7a0992b2448
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 12 16:32:09 2015 +0200

      vga_switcheroo: Cleanup header comment

      The header comment uses a weird combination of formatting styles. Make
      it consistent.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit bf8252b3fc247f8634df521af429101064fc43d1
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 12 16:32:08 2015 +0200

      vga_switcheroo: Use pr_*() instead of printk()

      This silences a bunch of checkpatch warnings and makes the code shorter.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 5d90ccf908bd806f0767bc07310e4c25c8501369
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 12 16:32:07 2015 +0200

      vgaarb: Fix a few checkpatch errors and warnings

      Wrap overly long lines (offending lines were mostly comments, so trivial
      to fix up) and a number of other coding style issues pointed out by the
      checkpatch tool.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 8b7e2e865fef94d6a46746c3b7f334b910814031
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 12 16:32:06 2015 +0200

      vgaarb: Use vgaarb: prefix consistently in messages

      Define the pr_fmt() macro to causes all messages emitted by pr_*()
      functions to be prefixed with "vgaarb: ".

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit eb6944f2fc01d5c83bce37fa0e68810565f78a75
  Author: Thierry Reding <treding@xxxxxxxxxx>
  Date:   Wed Aug 12 16:32:05 2015 +0200

      vgaarb: Stop complaining about absent devices

      Some setups do not register a default VGA device, in which case the VGA
      arbiter will still complain about the (non-existent) PCI device being a
      non-VGA device.

      Fix this by making the error message conditional on a default VGA device
      having been set up. Note that the easy route of erroring out early isn't
      going to work because otherwise priv->target won't be properly updated.

      Signed-off-by: Thierry Reding <treding@xxxxxxxxxx>
      Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxx>

  commit 50d78bcf5d06871a0b3adcb3cbec6e6ca33f226a
  Author: Frederic Danis <frederic.danis@xxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 12:46:01 2015 +0200

      Bluetooth: hci_bcm: Fix "implicit declaration"

      The kbuild test robot reported implicit declaration of function
      'acpi_dev_get_resources'.

      Surround ACPI function by CONFIG_ACPI test.

      Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
      Signed-off-by: Frederic Danis <frederic.danis@xxxxxxxxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>

  commit 62aaefa7d03804aef30639ab362f845b1f3e92ed
  Author: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
  Date:   Wed Aug 12 09:20:56 2015 +0200

      Bluetooth: hci_bcm: improve use of gpios API

      devm_gpiod_get currently has an optional parameter to set initial
      direction and value for the requested gpio. Make use of this to simplify
      the driver and make it not fail to build when this parameter is made
      mandatory (which is scheduled for 4.3-rc1).

      Moreover use the _optional variant of devm_gpiod_get to simplify error
      handling (which also gets more strict for free).

      Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx>
      Signed-off-by: Marcel Holtmann <marcel@xxxxxxxxxxxx>

  commit f303e50766298feac17c8715e29ecd14b2c12680
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Thu Jul 23 18:37:13 2015 +0200

      iommu/vt-d: Avoid duplicate device_domain_info structures

      When a 'struct device_domain_info' is created as an alias
      for another device, this struct will not be re-used when the
      real device is encountered. Fix that to avoid duplicate
      device_domain_info structures being added.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 08a7f456a759e971caf0cc13987a963de2b0ae7c
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Thu Jul 23 18:09:11 2015 +0200

      iommu/vt-d: Only insert alias dev_info if there is an alias

      For devices without an PCI alias there will be two
      device_domain_info structures added. Prevent that by
      checking if the alias is different from the device.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 127c761598f7fbe7ffe6650cdc491eb57c5aaecd
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Thu Jul 23 17:44:46 2015 +0200

      iommu/vt-d: Pass device_domain_info to __dmar_remove_one_dev_info

      This struct contains all necessary information for the
      function already. Also handle the info->dev == NULL case
      while at it.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 2309bd793ead6d5e4ace611502aa87b3202856ca
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Wed Jul 22 17:29:47 2015 +0200

      iommu/vt-d: Remove dmar_global_lock from device_notifier

      The code in the locked section does not touch anything
      protected by the dmar_global_lock. Remove it from there.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 55d940430ab91b89ff5fc7240555544d86475783
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Wed Jul 22 16:50:40 2015 +0200

      iommu/vt-d: Get rid of domain->iommu_lock

      When this lock is held the device_domain_lock is also
      required to make sure the device_domain_info does not vanish
      while in use. So this lock can be removed as it gives no
      additional protection.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit de7e888646466e6c32cdd41124c0164cfed4abcb
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Wed Jul 22 11:58:07 2015 +0200

      iommu/vt-d: Only call domain_remove_one_dev_info to detach old domain

      There is no need to make a difference here between VM and
      non-VM domains, so simplify this code here.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit d160aca5276d093fc68d6ff48888586c90309d03
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Wed Jul 22 11:52:53 2015 +0200

      iommu/vt-d: Unify domain->iommu attach/detachment

      Move the code to attach/detach domains to iommus and vice
      verce into a single function to make sure there are no
      dangling references.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit c6c2cebd665933216785246a1d15b4112fa74bbf
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Wed Jul 22 13:11:53 2015 +0200

      iommu/vt-d: Establish domain<->iommu link in dmar_insert_one_dev_info

      This makes domain attachment more synchronous with domain
      deattachment. The domain<->iommu link is released in
      dmar_remove_one_dev_info.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit dc534b25d11f42e6b4caa5b1918f549d9c0e9d4d
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Wed Jul 22 12:44:02 2015 +0200

      iommu/vt-d: Pass an iommu pointer to domain_init()

      This allows to do domain->iommu attachment after domain_init
      has run.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 2452d9db1218fdb1c29afb921838c323987f5799
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Thu Jul 23 16:20:14 2015 +0200

      iommu/vt-d: Rename iommu_detach_dependent_devices()

      Rename this function and the ones further down its
      call-chain to domain_context_clear_*. In particular this
      means:

        iommu_detach_dependent_devices -> domain_context_clear
                   iommu_detach_dev_cb -> domain_context_clear_one_cb
                      iommu_detach_dev -> domain_context_clear_one

      These names match a lot better with its
      domain_context_mapping counterparts.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit e6de0f8dfcd0395efee874db97536531555d91af
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Wed Jul 22 16:30:36 2015 +0200

      iommu/vt-d: Rename domain_remove_one_dev_info()

      Rename the function to dmar_remove_one_dev_info to match is
      name better with its dmar_insert_one_dev_info counterpart.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 5db31569e9503654477b504de7161d01f85f7261
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Wed Jul 22 12:40:43 2015 +0200

      iommu/vt-d: Rename dmar_insert_dev_info()

      Rename this function to dmar_insert_one_dev_info() to match
      the name better with its counter part function
      domain_remove_one_dev_info().

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit cc4e2575cc96b1aac910f56e1d7ef45d219b40b2
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Wed Jul 22 10:04:36 2015 +0200

      iommu/vt-d: Move context-mapping into dmar_insert_dev_info

      Do the context-mapping of devices from a single place in the
      call-path and clean up the other call-sites.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 76f45fe35c7a54e6fe5539660db2c8cfb23a2972
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Tue Jul 21 18:25:11 2015 +0200

      iommu/vt-d: Simplify domain_remove_dev_info()

      Just call domain_remove_one_dev_info() for all devices in
      the domain instead of reimplementing the functionality.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit b608ac3b6d54c38d6cf0eb91547f0f960633eb2d
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Tue Jul 21 18:19:08 2015 +0200

      iommu/vt-d: Simplify domain_remove_one_dev_info()

      Simplify this function as much as possible with the new
      iommu_refcnt field.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 42e8c186b595a32918933b3dec445f0bf0f486f6
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Tue Jul 21 15:50:02 2015 +0200

      iommu/vt-d: Simplify io/tlb flushing in intel_iommu_unmap

      We don't need to do an expensive search for domain-ids
      anymore, as we keep track of per-iommu domain-ids.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 29a27719abaa4d74aed928803c1aa9437bbdde89
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Tue Jul 21 17:17:12 2015 +0200

      iommu/vt-d: Replace iommu_bmp with a refcount

      This replaces the dmar_domain->iommu_bmp with a similar
      reference count array. This allows us to keep track of how
      many devices behind each iommu are attached to the domain.

      This is necessary for further simplifications and
      optimizations to the iommu<->domain attachment code.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit af1089ce388b2d14c8331b96567b7e3b7eb5f35b
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Tue Jul 21 15:45:19 2015 +0200

      iommu/vt-d: Kill dmar_domain->id

      This field is now obsolete because all places use the
      per-iommu domain-ids. Kill the remaining uses of this field
      and remove it.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 0dc7971594aad73b50722878ea7175055a4fdfcd
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Tue Jul 21 15:40:06 2015 +0200

      iommu/vt-d: Don't pre-allocate domain ids for si_domain

      There is no reason for this special handling of the
      si_domain. The per-iommu domain-id can be allocated
      on-demand like for any other domain. So remove the
      pre-allocation code.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit a1ddcbe9301023928f877b675a40914427928f2a
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Tue Jul 21 15:20:32 2015 +0200

      iommu/vt-d: Pass dmar_domain directly into iommu_flush_iotlb_psi

      This function can figure out the domain-id to use itself
      from the iommu_did array. This is more reliable over
      different domain types and brings us one step further to
      remove the domain->id field.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit de24e55395698e29f2a0582ae1899fa0001f829a
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Tue Jul 21 14:53:04 2015 +0200

      iommu/vt-d: Simplify domain_context_mapping_one

      Get rid of the special cases for VM domains vs. non-VM
      domains and simplify the code further to just handle the
      hardware passthrough vs. page-table case.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 28ccce0d954a1cf3baba335bf12581357112fb35
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Tue Jul 21 14:45:31 2015 +0200

      iommu/vt-d: Calculate translation in domain_context_mapping_one

      There is no reason to pass the translation type through
      multiple layers. It can also be determined in the
      domain_context_mapping_one function directly.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit e2411427f7d3ddcf8d5f35d5ab0a397180deac3a
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Tue Jul 21 11:18:21 2015 +0200

      iommu/vt-d: Get rid of iommu_attach_vm_domain()

      The special case for VM domains is not needed, as other
      domains could be attached to the iommu in the same way. So
      get rid of this special case.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 8bf478163e69e42973c7070179a11815139e5bf0
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Tue Jul 21 10:41:21 2015 +0200

      iommu/vt-d: Split up iommu->domains array

      This array is indexed by the domain-id and contains the
      pointers to the domains attached to this iommu. Modern
      systems support 65536 domain ids, so that this array has a
      size of 512kb, per iommu.

      This is a huge waste of space, as the array is usually
      sparsely populated. This patch makes the array
      two-dimensional and allocates the memory for the domain
      pointers on-demand.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 9452d5bfe5c3df6befb89835d2c44920e03bd390
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Tue Jul 21 10:00:56 2015 +0200

      iommu/vt-d: Add access functions for iommu->domains

      This makes it easier to change the layout of the data
      structure later.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit c0e8a6c8033e205835fa5e67db7ab4589d2491b2
  Author: Joerg Roedel <jroedel@xxxxxxx>
  Date:   Tue Jul 21 09:39:46 2015 +0200

      iommu/vt-d: Keep track of per-iommu domain ids

      Instead of searching in the domain array for already
      allocated domain ids, keep track of them explicitly.

      Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>

  commit 517dfdb315fa2da9b144f6fa494b4f54b490de7e
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Tue Aug 11 12:50:55 2015 -0300

      perf ui browser: Introduce ui_browser__printf()

      To remove direct access to libslang functions, with the immediate goal
      of implementing horizontal scrolling at the ui_browser level, but also
      because we may at some point want to implement ui_browser with other UIs
      in addition to the current libslang implementation.

      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Link: http://lkml.kernel.org/n/tip-w0niblabqrkecs4o0eogfy6c@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 26270a008251ec36431623bd992252934bbe529a
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Tue Aug 11 12:24:27 2015 -0300

      perf ui browser: Introduce ui_browser__write_nstring()

      To remove direct access to libslang functions, with the immediate goal
      of implementing horizontal scrolling at the ui_browser level, but also
      because we may at some point want to implement ui_browser with other UIs
      in addition to the current libslang implementation.

      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Link: http://lkml.kernel.org/n/tip-437ineavoejzou727mr9bxpi@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit b62bee1bdea6d78e444183b04c81ce982a371571
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Tue Aug 11 11:05:36 2015 -0300

      perf trace: Beautify keyctl's option arg

       8.697 (0.103 ms): pool/2343 keyctl(option: GET_PERSISTENT, arg2: 1000, 
arg3: 4294967294, arg4: 140703061514067, arg5: 140703692383680) = 1023192809
       8.763 (0.049 ms): pool/2343 keyctl(option: SEARCH, arg2: 1023192809, 
arg3: 140703745767772, arg4: 140703745767832, arg5: 4294967294) = 140224497
       8.789 (0.016 ms): pool/2343 keyctl(option: SEARCH, arg2: 140224497, 
arg3: 140703745767814, arg4: 140703745767900) = 512300257
       8.807 (0.011 ms): pool/2343 keyctl(option: READ, arg2: 512300257         
                         ) = 13
       8.822 (0.008 ms): pool/2343 keyctl(option: READ, arg2: 512300257, arg3: 
140703061514000, arg4: 13 ) = 13
       8.837 (0.007 ms): pool/2343 keyctl(option: READ, arg2: 140224497         
                         ) = 4
       8.852 (0.009 ms): pool/2343 keyctl(option: READ, arg2: 140224497, arg3: 
140703061514000, arg4: 4  ) = 4
       8.869 (0.010 ms): pool/2343 keyctl(option: SEARCH, arg2: 140224497, 
arg3: 140703745767772, arg4: 140703061514032) = -1 ENOKEY Required key not 
available
       8.892 (0.017 ms): pool/2343 keyctl(option: DESCRIBE, arg2: 512300257     
                         ) = 43
       8.910 (0.012 ms): pool/2343 keyctl(option: DESCRIBE, arg2: 512300257, 
arg3: 140703061544384, arg4: 43) = 43

      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Link: http://lkml.kernel.org/n/tip-013ab219irsxngyumrf5gp8s@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 8d8c66a248dfb9a7e517822b5ef87e357b1605bf
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Tue Aug 11 10:57:02 2015 -0300

      perf trace: Use the FD beautifier for socket syscall fds

      But we really should have something like 'strace -yy' here...

      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Link: http://lkml.kernel.org/n/tip-eyrt1ypfq68u4ljagyk2nj1i@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 76b10655818c939e257377f83992975a5f55ffb3
  Author: Andi Kleen <ak@xxxxxxxxxxxxxxx>
  Date:   Tue Aug 11 06:36:55 2015 -0700

      perf sort: Check for SRCLINE_UNKNOWN case in "srcfile" processing

      Handle the SRCLINE_UNKNOWN case correctly when processing "srcfile".

      Commiter note:

      We can't just free it, as it was't allocated via malloc, its a guard
      variable.

      Reported-by: Namhyung Kim <namhyung@xxxxxxxxxx>
      Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Link: http://lkml.kernel.org/r/20150811133655.GC4524@xxxxxxxxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 28ebb87c73f9c17266d4f7570d65a1e695df7d9d
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Tue Aug 11 10:38:38 2015 -0300

      perf trace: Add missing clockid entries

      We were missing:

        CLOCK_BOOTTIME, CLOCK_REALTIME_ALARM, CLOCK_BOOTTIME_ALARM,
        CLOCK_SGI_CYCLE and CLOCK_TAI.

      Add them.

      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Milian Wolff <milian.wolff@xxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Link: http://lkml.kernel.org/n/tip-d67rwqtwm9jyenwes98kr0cr@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit 090389b6d95c046cc6caca2e7e00adc27829acf2
  Author: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
  Date:   Mon Aug 10 19:20:52 2015 -0300

      perf trace: Associate some more syscall args with the getname beautifier

      This time using 'trinity' to test these:

        fchmodat, futimesat, llistxattr, lremovexattr, lstat, mknodat,
        mq_unlink, stat and vmsplice.

      Cc: Adrian Hunter <adrian.hunter@xxxxxxxxx>
      Cc: Borislav Petkov <bp@xxxxxxx>
      Cc: David Ahern <dsahern@xxxxxxxxx>
      Cc: Frederic Weisbecker <fweisbec@xxxxxxxxx>
      Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
      Cc: Milian Wolff <milian.wolff@xxxxxxxx>
      Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
      Cc: Stephane Eranian <eranian@xxxxxxxxxx>
      Link: http://lkml.kernel.org/n/tip-a1uqu249nwwh0ixrhm80k4a4@xxxxxxxxxxxxxx
      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

  commit dcfcf2c2cd71906073beef32aadb1989e8996951
  Author: Xiubo Li <lixiubo@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 14:38:18 2015 +0800

      ASoC: fsl: fix typos for sound/soc/fsl/*

      There are too much noise about the typos for fsl's drivers. So I fix
      all the typos here in this patch in almost every file I touched.

      Signed-off-by: Xiubo Li <lixiubo@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit b486afbd1baf796a9e4b793b2f9121c12e1469af
  Author: Xiubo Li <lixiubo@xxxxxxxxxxxxxxxxxxxx>
  Date:   Wed Aug 12 15:02:19 2015 +0800

      regmap: fix typos in regmap.c

      There are two typos in drivers/base/regmap/regmap.c, and they may
      introduce some noise when checking new patches.

      Signed-off-by: Xiubo Li <lixiubo@xxxxxxxxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 3cb5ff0220e31bd1043bb18fd5765c9f86928491
  Author: Jamie Lentin <jm@xxxxxxxxxxxx>
  Date:   Tue Aug 11 22:40:52 2015 +0100

      HID: lenovo: Hide middle-button press until release

      Don't relay a middle button press to userspace until release, and then
      only if there was no scroll events inbetween. This is closer to what
      Xorg's wheel emulation does, and avoids spurious middle-click pastes.

      Signed-off-by: Jamie Lentin <jm@xxxxxxxxxxxx>
      Signed-off-by: Jiri Kosina <jkosina@xxxxxxx>

  commit dbfebb44b7c650dd134a8be07f9afd5862150987
  Author: Jamie Lentin <jm@xxxxxxxxxxxx>
  Date:   Tue Aug 11 22:40:51 2015 +0100

      HID: lenovo: Add missing return-value check

      Signed-off-by: Jamie Lentin <jm@xxxxxxxxxxxx>
      Signed-off-by: Jiri Kosina <jkosina@xxxxxxx>

  commit 7f65068fb77f173c5466545fc11818de7a35c1f3
  Author: Jamie Lentin <jm@xxxxxxxxxxxx>
  Date:   Tue Aug 11 22:40:50 2015 +0100

      HID: lenovo: Use constants for axes names

      Signed-off-by: Jamie Lentin <jm@xxxxxxxxxxxx>
      Signed-off-by: Jiri Kosina <jkosina@xxxxxxx>

  commit 609ca5f3cb32c2d11fd8cabe293ff3689e7d2613
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Mon Aug 10 19:43:47 2015 +0100

      regulator: core: Use class device list for regulator_list in late init

      The regulator_list has exactly the same contents as the list that the
      driver core maintains of regulator_class members so is redundant. As a
      first step in converting over to use the class device list convert our
      iteration in late_initcall() to use the class device iterator.

      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 2f9b660b2128c92d66f18ac7fbd7c39a91cec159
  Author: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
  Date:   Wed Aug 12 12:12:28 2015 +0200

      regmap: Fix integertypes for register address and value

      These values are defined as unsigned int in the struct and are assigned
      to int values.

      This patch fixes the type to be unsigned int instead.

      Signed-off-by: Markus Pargmann <mpa@xxxxxxxxxxxxxx>
      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit f120cd6533d21075ab103ae6c225b1697853660d
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Mon Jun 23 13:59:13 2014 +0100

      KVM: arm/arm64: timer: Allow the timer to control the active state

      In order to remove the crude hack where we sneak the masked bit
      into the timer's control register, make use of the phys_irq_map
      API control the active state of the interrupt.

      This causes some limited changes to allow for potential error
      propagation.

      Reviewed-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 773299a570725d1f253d6046cd6475209b0dcd55
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Fri Jul 24 11:30:43 2015 +0100

      KVM: arm/arm64: vgic: Prevent userspace injection of a mapped interrupt

      Virtual interrupts mapped to a HW interrupt should only be triggered
      from inside the kernel. Otherwise, you could end up confusing the
      kernel (and the GIC's) state machine.

      Rearrange the injection path so that kvm_vgic_inject_irq is
      used for non-mapped interrupts, and kvm_vgic_inject_mapped_irq is
      used for mapped interrupts. The latter should only be called from
      inside the kernel (timer, irqfd).

      Reviewed-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 6e84e0e0677281b4e7fc634c7e9d085fbcf41b10
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Mon Jun 8 16:13:30 2015 +0100

      KVM: arm/arm64: vgic: Add vgic_{get,set}_phys_irq_active

      In order to control the active state of an interrupt, introduce
      a pair of accessors allowing the state to be set/queried.

      This only affects the logical state, and the HW state will only be
      applied at world-switch time.

      Acked-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 08fd6461e8752d2db233c1f237fa5771bcefc63f
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Mon Jun 8 16:06:13 2015 +0100

      KVM: arm/arm64: vgic: Allow HW interrupts to be queued to a guest

      To allow a HW interrupt to be injected into a guest, we lookup the
      guest virtual interrupt in the irq_phys_map list, and if we have
      a match, encode both interrupts in the LR.

      We also mark the interrupt as "active" at the host distributor level.

      On guest EOI on the virtual interrupt, the host interrupt will be
      deactivated.

      Reviewed-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 6c3d63c9a26ba56e2ca63a9f68d52f77ae551d91
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Mon Jun 23 17:37:18 2014 +0100

      KVM: arm/arm64: vgic: Allow dynamic mapping of physical/virtual interrupts

      In order to be able to feed physical interrupts to a guest, we need
      to be able to establish the virtual-physical mapping between the two
      worlds.

      The mappings are kept in a set of RCU lists, indexed by virtual 
interrupts.

      Reviewed-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 7a67b4b7e04b30345584c1b76a80db628530bf21
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Fri Jun 5 16:45:29 2015 +0100

      KVM: arm/arm64: vgic: Relax vgic_can_sample_irq for edge IRQs

      We only set the irq_queued flag for level interrupts, meaning
      that "!vgic_irq_is_queued(vcpu, irq)" is a good enough predicate
      for all interrupts.

      This will allow us to inject edge HW interrupts, for which the
      state ACTIVE+PENDING is not allowed.

      Reviewed-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit fb182cf84568cc33ab41121bc8cc999f7aacbd47
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Mon Jun 8 15:37:26 2015 +0100

      KVM: arm/arm64: vgic: Allow HW irq to be encoded in LR

      Now that struct vgic_lr supports the LR_HW bit and carries a hwirq
      field, we can encode that information into the list registers.

      This patch provides implementations for both GICv2 and GICv3.

      Reviewed-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 32d2d8010cd7080a0f1712f1084b92657858428e
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Mon Jun 8 15:21:32 2015 +0100

      KVM: arm/arm64: vgic: Convert struct vgic_lr to use bitfields

      As we're about to cram more information in the vgic_lr structure
      (HW interrupt number and additional state information), we switch
      to a layout similar to the HW's:

      - use bitfields to save space (we don't need more than 10 bits
        to represent the irq numbers)
      - source CPU and HW interrupt can share the same field, as
        a SGI doesn't have a physical line.

      Reviewed-by: Alex Bennée <alex.bennee@xxxxxxxxxx>
      Reviewed-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit abdf58438356c7baf34bdd98084b094ca3a6a23f
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Mon Jun 8 15:00:28 2015 +0100

      arm/arm64: KVM: Move vgic handling to a non-preemptible section

      As we're about to introduce some serious GIC-poking to the vgic code,
      it is important to make sure that we're going to poke the part of
      the GIC that belongs to the CPU we're about to run on (otherwise,
      we'd end up with some unexpected interrupts firing)...

      Introducing a non-preemptible section in kvm_arch_vcpu_ioctl_run
      prevents the problem from occuring.

      Reviewed-by: Alex Bennée <alex.bennee@xxxxxxxxxx>
      Reviewed-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 9a99d050705318d1cb27979e1c810464347db9db
  Author: Marc Zyngier <marc.zyngier@xxxxxxx>
  Date:   Fri Jun 5 09:33:28 2015 +0100

      arm/arm64: KVM: Fix ordering of timer/GIC on guest entry

      As we now inject the timer interrupt when we're about to enter
      the guest, it makes a lot more sense to make sure this happens
      before the vgic code queues the pending interrupts.

      Otherwise, we get the interrupt on the following exit, which is
      not great for latency (and leads to all kind of bizarre issues
      when using with active interrupts at the HW level).

      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>
      Reviewed-by: Alex Bennée <alex.bennee@xxxxxxxxxx>
      Reviewed-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>

  commit 48f8bd57756573b08520629a2413227fcdf058f5
  Author: Vladimir Murzin <Vladimir.Murzin@xxxxxxx>
  Date:   Tue Jul 28 10:42:23 2015 +0100

      arm64: KVM: remove remaining reference to vgic_sr_vectors

      Since commit 8a14849 (arm64: KVM: Switch vgic save/restore to
      alternative_insn) vgic_sr_vectors is not used anymore, so remove
      remaining leftovers and kill the structure.

      Signed-off-by: Vladimir Murzin <vladimir.murzin@xxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit bca556ac468ab4744692926b67cb525cdce850c9
  Author: Suzuki K. Poulose <suzuki.poulose@xxxxxxx>
  Date:   Wed Jun 17 10:00:46 2015 +0100

      arm64/kvm: Add generic v8 KVM target

      This patch adds a generic ARM v8 KVM target cpu type for use
      by the new CPUs which eventualy ends up using the common sys_reg
      table. For backward compatibility the existing targets have been
      preserved. Any new target CPU that can be covered by generic v8
      sys_reg tables should make use of the new generic target.

      Signed-off-by: Suzuki K. Poulose <suzuki.poulose@xxxxxxx>
      Acked-by: Marc Zyngier <Marc.Zyngier@xxxxxxx>
      Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>

  commit 5f1230c9b80b89f404938ff88dfa64a963f74f2c
  Merge: 709bc87 4605bb5
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Wed Aug 12 12:16:11 2015 +0200

      Merge tag 'perf-core-for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core

      Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:

      User visible changes:

        - Introduce 'srcfile' sort key: (Andi Kleen)

          # perf record -F 10000 usleep 1
          # perf report --stdio --dsos '[kernel.vmlinux]' -s srcfile
          <SNIP>
          # Overhead  Source File
              26.49%  copy_page_64.S
               5.49%  signal.c
               0.51%  msr.h
          #

          It can be combined with other fields, for instance, experiment with
          '-s srcfile,symbol'.

          There are some oddities in some distros and with some specific DSOs, 
being
          investigated, so your mileage may vary.

        - Update the column width for the "srcline" sort key (Arnaldo Carvalho 
de Melo)

        - Support per-event 'freq' term: (Namhyung Kim)

          $ perf record -e 'cpu/instructions,freq=1234/',cycles -c 1000 sleep 1
          $ perf evlist -F
          cpu/instructions,freq=1234/: sample_freq=1234
          cycles: sample_period=1000
          $

      Infrastructure changes:

        - Move perf_counts struct and functions into separate object (Jiri Olsa)

        - Unset perf_event_attr::freq when period term is set (Jiri Olsa)

        - Move callchain option parsing code to util.c (Kan Liang)

      Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 9b9412dc7008f360c8e8ed10a654d3c8719f69d8
  Merge: 58ccab9 3dbe43f
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Wed Aug 12 12:12:12 2015 +0200

      Merge branch 'for-mingo' of 
git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/rcu

      Pull RCU changes from Paul E. McKenney:

        - The combination of tree geometry-initialization simplifications
          and OS-jitter-reduction changes to expedited grace periods.
          These two are stacked due to the large number of conflicts
          that would otherwise result.

          [ With one addition, a temporary commit to silence a lockdep false
            positive. Additional changes to the expedited grace-period
            primitives (queued for 4.4) remove the cause of this false
            positive, and therefore include a revert of this temporary commit. ]

        - Documentation updates.

        - Torture-test updates.

        - Miscellaneous fixes.

      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit ff277d4250fe715b6666219b1a3423b863418794
  Author: Andrea Parri <parri.andrea@xxxxxxxxx>
  Date:   Wed Aug 5 15:56:19 2015 +0200

      sched/deadline: Fix comment in enqueue_task_dl()

      The "dl_boosted" flag is set by comparing *absolute* deadlines
      (c.f., rt_mutex_setprio()).

      Signed-off-by: Andrea Parri <parri.andrea@xxxxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Mike Galbraith <efault@xxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1438782979-9057-2-git-send-email-parri.andrea@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 4ffa08ed4cc4c5d47d197d749aae6f79af91eb73
  Author: Andrea Parri <parri.andrea@xxxxxxxxx>
  Date:   Wed Aug 5 15:56:18 2015 +0200

      sched/deadline: Fix comment in push_dl_tasks()

      The comment is "misleading"; fix it by adapting a comment from
      push_rt_tasks().

      Signed-off-by: Andrea Parri <parri.andrea@xxxxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Mike Galbraith <efault@xxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1438782979-9057-1-git-send-email-parri.andrea@xxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 6c37067e27867db172b988cc11b9ff921175dee5
  Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
  Date:   Fri May 15 17:43:36 2015 +0200

      sched: Change the sched_class::set_cpus_allowed() calling context

      Change the calling context of sched_class::set_cpus_allowed() such
      that we can assume the task is inactive.

      This allows us to easily make changes that affect accounting done by
      enqueue/dequeue. This does in fact completely remove
      set_cpus_allowed_rt() and greatly reduces set_cpus_allowed_dl().

      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Mike Galbraith <efault@xxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: dedekind1@xxxxxxxxx
      Cc: juri.lelli@xxxxxxx
      Cc: mgorman@xxxxxxx
      Cc: riel@xxxxxxxxxx
      Cc: rostedt@xxxxxxxxxxx
      Link: http://lkml.kernel.org/r/20150515154833.667516139@xxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit c5b2803840817115e9b568d5054e5007ae36176b
  Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
  Date:   Fri May 15 17:43:35 2015 +0200

      sched: Make sched_class::set_cpus_allowed() unconditional

      Give every class a set_cpus_allowed() method, this enables some small
      optimization in the RT,DL implementation by avoiding a double
      cpumask_weight() call.

      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Mike Galbraith <efault@xxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: dedekind1@xxxxxxxxx
      Cc: juri.lelli@xxxxxxx
      Cc: mgorman@xxxxxxx
      Cc: riel@xxxxxxxxxx
      Cc: rostedt@xxxxxxxxxxx
      Link: http://lkml.kernel.org/r/20150515154833.614517487@xxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 25834c73f93af7f0712c98ca4593691592e6b360
  Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
  Date:   Fri May 15 17:43:34 2015 +0200

      sched: Fix a race between __kthread_bind() and sched_setaffinity()

      Because sched_setscheduler() checks p->flags & PF_NO_SETAFFINITY
      without locks, a caller might observe an old value and race with the
      set_cpus_allowed_ptr() call from __kthread_bind() and effectively undo
      it:

        __kthread_bind()
          do_set_cpus_allowed()
                                                <SYSCALL>
                                                  sched_setaffinity()
                                                    if (p->flags & 
PF_NO_SETAFFINITIY)
                                                    set_cpus_allowed_ptr()
          p->flags |= PF_NO_SETAFFINITY

      Fix the bug by putting everything under the regular scheduler locks.

      This also closes a hole in the serialization of 
task_struct::{nr_,}cpus_allowed.

      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Acked-by: Tejun Heo <tj@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Mike Galbraith <efault@xxxxxx>
      Cc: Oleg Nesterov <oleg@xxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: dedekind1@xxxxxxxxx
      Cc: juri.lelli@xxxxxxx
      Cc: mgorman@xxxxxxx
      Cc: riel@xxxxxxxxxx
      Cc: rostedt@xxxxxxxxxxx
      Link: http://lkml.kernel.org/r/20150515154833.545640346@xxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 7855a35ac07a350e2cd26f09568a6d8e372be358
  Author: Byungchul Park <byungchul.park@xxxxxxx>
  Date:   Mon Aug 10 18:02:55 2015 +0900

      sched: Ensure a task has a non-normalized vruntime when returning back to 
CFS

      Current code ensures that a task has a normalized vruntime when switching 
away
      from the fair class, but it does not ensure the task has a non-normalized
      vruntime when switching back to the fair class.

      This is an example breaking this consistency:

        1. a task is in fair class and !queued
        2. changes its class to RT class (still !queued)
        3. changes its class to fair class again (still !queued)

      Signed-off-by: Byungchul Park <byungchul.park@xxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Mike Galbraith <efault@xxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439197375-27927-1-git-send-email-byungchul.park@xxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit e237882b8f83dd1a0eece1608bcb689d4f4b221b
  Author: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@xxxxxxx>
  Date:   Mon Aug 10 20:20:48 2015 -0500

      sched/numa: Fix NUMA_DIRECT topology identification

      Systems which have all nodes at a distance of at most 1 hop should be
      identified as 'NUMA_DIRECT'.

      However, the scheduler incorrectly identifies it as 'NUMA_BACKPLANE'.
      This is because 'n' is assigned to sched_max_numa_distance but the
      code (mis)interprets it to mean 'number of hops'.

      Rik had actually used sched_domains_numa_levels for detecting a
      'NUMA_DIRECT' topology:

        http://marc.info/?l=linux-kernel&m=141279712429834&w=2

      But that was changed when he removed the hops table in the
      subsequent version:

        http://marc.info/?l=linux-kernel&m=141353106106771&w=2

      Fixing the issue here.

      Signed-off-by: Aravind Gopalakrishnan <Aravind.Gopalakrishnan@xxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Reviewed-by: Rik van Riel <riel@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Mike Galbraith <efault@xxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1439256048-3748-1-git-send-email-Aravind.Gopalakrishnan@xxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 29f5f4860a8ef9407736594ec43b4fa4152ac7fa
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Fri Aug 7 20:01:32 2015 +0100

      regulator: core: Move more deallocation into class unregister

      We really ought to be using the class dvice lifetime management features
      more than we are rather than open coding them so take a step towards that
      by moving some of the simplest deallocations to the dev_release() 
function.

      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 1768514eebfa888563049fa165449a1c1eba92d8
  Author: Mark Brown <broonie@xxxxxxxxxx>
  Date:   Fri Aug 7 21:19:26 2015 +0100

      regulator: core: Reduce rdev locking region when releasing regulator

      When we release a regulator we need to remove references to it from the
      rdev which means locking the rdev.  Currently we also free resources
      associated with the regulator inside the rdev lock but there is no need
      to do this, we can reduce the region the lock is held by restricting it
      to just actions that affect the rdev.

      Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

  commit 16eefbd1ed4ff474807b1aad50bc2f6317fcb9f4
  Author: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
  Date:   Mon Aug 3 11:29:30 2015 +0200

      x86/kconfig: Enable CONFIG_JUMP_LABEL in the defconfigs

      Enable CONFIG_JUMP_LABEL in the defconfigs, the feature already deals with
      GCC not having the asm-goto feature so will not break the build on
      older compilers.

      Having it enabled generates a faster kernel at very little extra cost
      since we already include all the code patching code by having KPROBES
      enabled.

      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: linux-kernel@xxxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 0ca326de7aa9cb253db9c1a3eb3f0487c8dbf912
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Thu Aug 6 17:54:44 2015 +0100

      locking, ARM, atomics: Define our SMP atomics in terms of _relaxed() 
operations

      By defining our SMP atomics in terms of relaxed operations, we gain
      a small reduction in code size and have acquire/release/fence variants
      generated automatically by the core code.

      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Waiman.Long@xxxxxx
      Cc: paulmck@xxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1438880084-18856-9-git-send-email-will.deacon@xxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit cd074aea9261784e44f292e1132830ec221802c6
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Thu Aug 6 17:54:43 2015 +0100

      locking, include/llist: Use linux/atomic.h instead of asm/cmpxchg.h

      Including an asm/ header directly is best avoided, so use linux/atomic.h
      instead of asm/cmpxchg.h in linux/llist.h.

      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Waiman.Long@xxxxxx
      Cc: paulmck@xxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1438880084-18856-8-git-send-email-will.deacon@xxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 77e430e3e45662b696dc49aa53ea0f7ac63f2574
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Thu Aug 6 17:54:42 2015 +0100

      locking/qrwlock: Make use of _{acquire|release|relaxed}() atomics

      The qrwlock implementation is slightly heavy in its use of memory
      barriers, mainly through the use of _cmpxchg() and _return() atomics, 
which
      imply full barrier semantics.

      This patch modifies the qrwlock code to use the more relaxed atomic
      routines so that we can reduce the unnecessary barrier overhead on
      weakly-ordered architectures.

      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Waiman.Long@xxxxxx
      Cc: paulmck@xxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1438880084-18856-7-git-send-email-will.deacon@xxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 2b2a85a4d3534b8884fcfa5bb52837f0e1c672bc
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Thu Aug 6 17:54:41 2015 +0100

      locking/qrwlock: Implement queue_write_unlock() using smp_store_release()

      Since the following commit:

        536fa402221f ("compiler: Allow 1- and 2-byte smp_load_acquire() and 
smp_store_release()")

      smp_store_release() supports byte accesses, so use that in writer unlock
      and remove the conditional macro override.

      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Reviewed-by: Waiman Long <Waiman.Long@xxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: paulmck@xxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1438880084-18856-6-git-send-email-will.deacon@xxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit f5468ffde13fc991bd4d6bdec507ffd5777865bd
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Thu Aug 6 17:54:40 2015 +0100

      locking/lockref: Remove homebrew cmpxchg64_relaxed() macro definition

      cmpxchg64_relaxed() is now defined by linux/atomic.h, so we can
      remove our local definition from the lockref code.

      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Waiman.Long@xxxxxx
      Cc: paulmck@xxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1438880084-18856-5-git-send-email-will.deacon@xxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 6d79ef2d30ee5af7315535d1e7bf6fce0008f815
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Thu Aug 6 17:54:39 2015 +0100

      locking, asm-generic: Add _{relaxed|acquire|release}() variants for 
'atomic_long_t'

      This patch adds 'atomic_long_t' wrappers for the new relaxed atomic 
operations.

      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Waiman.Long@xxxxxx
      Cc: paulmck@xxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1438880084-18856-4-git-send-email-will.deacon@xxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 586b610e43a5ad5096640312fefa6ce931738c7d
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Thu Aug 6 17:54:38 2015 +0100

      locking, asm-generic: Rework atomic-long.h to avoid bulk code duplication

      We can use some (admittedly ugly) macros to generate the 32-bit and
      64-bit based atomic_long implementations from the same code.

      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Waiman.Long@xxxxxx
      Cc: paulmck@xxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1438880084-18856-3-git-send-email-will.deacon@xxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 654672d4ba1a6001c365833be895f9477c4d5eab
  Author: Will Deacon <will.deacon@xxxxxxx>
  Date:   Thu Aug 6 17:54:37 2015 +0100

      locking/atomics: Add _{acquire|release|relaxed}() variants of some atomic 
operations

      Whilst porting the generic qrwlock code over to arm64, it became
      apparent that any portable locking code needs finer-grained control of
      the memory-ordering guarantees provided by our atomic routines.

      In particular: xchg, cmpxchg, {add,sub}_return are often used in
      situations where full barrier semantics (currently the only option
      available) are not required. For example, when a reader increments a
      reader count to obtain a lock, checking the old value to see if a writer
      was present, only acquire semantics are strictly needed.

      This patch introduces three new ordering semantics for these operations:

        - *_relaxed: No ordering guarantees. This is similar to what we have
                     already for the non-return atomics (e.g. atomic_add).

        - *_acquire: ACQUIRE semantics, similar to smp_load_acquire.

        - *_release: RELEASE semantics, similar to smp_store_release.

      In memory-ordering speak, this means that the acquire/release semantics
      are RCpc as opposed to RCsc. Consequently a RELEASE followed by an
      ACQUIRE does not imply a full barrier, as already documented in
      memory-barriers.txt.

      Currently, all the new macros are conditionally mapped to the full-mb
      variants, however if the *_relaxed version is provided by the
      architecture, then the acquire/release variants are constructed by
      supplementing the relaxed routine with an explicit barrier.

      Signed-off-by: Will Deacon <will.deacon@xxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Cc: Waiman.Long@xxxxxx
      Cc: paulmck@xxxxxxxxxxxxxxxxxx
      Link: 
http://lkml.kernel.org/r/1438880084-18856-2-git-send-email-will.deacon@xxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit ba33034fffc1189d95301bd865f1c799256e72a2
  Author: Christian Borntraeger <borntraeger@xxxxxxxxxx>
  Date:   Tue Aug 4 09:55:48 2015 +0200

      locking, compiler.h: Cast away attributes in the WRITE_ONCE() magic

      The kernel build bot showed a new warning triggered by commit:

        76695af20c01 ("locking, arch: use WRITE_ONCE()/READ_ONCE() in 
smp_store_release()/smp_load_acquire()")

      because Sparse does not like WRITE_ONCE() accessing elements
      from the (sparse) RCU address space:

        fs/afs/inode.c:448:9: sparse: incorrect type in initializer (different 
address spaces)
        fs/afs/inode.c:448:9:    expected struct afs_permits *__val
        fs/afs/inode.c:448:9:    got void [noderef] <asn:4>*<noident>

      Solution is to force cast away the sparse attributes for the initializer
      of the union in WRITE_ONCE().

      (And as this now gets too long, also split the macro into multiple lines.)

      Signed-off-by: Christian Borntraeger <borntraeger@xxxxxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Andrey Konovalov <andreyknvl@xxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Paul McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1438674948-38310-2-git-send-email-borntraeger@xxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit f52609fdabb1c726f8b9fdf64df3161781aa186e
  Merge: 20f9ed1 41b9e9f
  Author: Ingo Molnar <mingo@xxxxxxxxxx>
  Date:   Wed Aug 12 11:44:30 2015 +0200

      Merge branch 'locking/arch-atomic' into locking/core, because it's ready 
for upstream

      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit 709bc871923c12b284424f9d47b99dc975ba8b29
  Author: Takao Indoh <indou.takao@xxxxxxxxxxxxxx>
  Date:   Tue Aug 4 18:36:55 2015 +0900

      perf/x86/intel/pt: Clean up files of Intel Processor Trace

      This patch just cleans up some files of Intel Processor Trace, does not
      change its behavior. This patch removes unused definitions and replaces a
      constant value with a macro.

      Signed-off-by: Takao Indoh <indou.takao@xxxxxxxxxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Alexander Shishkin<alexander.shishkin@xxxxxxxxxxxxxxx>
      Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
      Cc: H.Peter Anvin <hpa@xxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: 
http://lkml.kernel.org/r/1438681015-5124-1-git-send-email-indou.takao@xxxxxxxxxxxxxx
      Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>

  commit c2ad6b51efc5f27d70ce952decd2a15679b83600
  Author: Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx>
  Date:   Tue Jul 28 09:00:04 2015 +0300

      perf/ring-buffer: Clarify the use of page::private for high-order AUX 
allocations

      A question [1] was raised about the use of page::private in AUX buffer
      allocations, so let's add a clarification about its intended use.

      The private field and flag are used by perf's rb_alloc_aux() path to
      tell the pmu driver the size of each high-order allocation, so that the
      driver can program those appropriately into its hardware. This only
      matters for PMUs that don't support hardware scatter tables. Otherwise,
      every page in the buffer is just a page.

      This patch adds a comment about the private field to the AUX buffer
      allocation path.

        [1] http://marc.info/?l=linux-kernel&m=143803696607968

      Reported-by: Mathieu Poirier <mathieu.poirier@xxxxxxxxxx>
      Signed-off-by: Alexander Shishkin <alexander.shishkin@xxxxxxxxxxxxxxx>
      Signed-off-by: Peter Zijlstra (Intel) <peterz@xxxxxxxxxxxxx>
      Cc: Arnaldo Carvalho de Melo <acme@xxxxxxxxxxxxx>
      Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
      Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
      Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
      Link: