1. 26 Feb, 2016 6 commits
    • Linus Torvalds's avatar
      Merge tag 'powerpc-4.5-4' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 9aca90a7
      Linus Torvalds authored
      Pull powerpc fixes from Michael Ellerman:
       - eeh: Fix partial hotplug criterion from Gavin Shan
       - mm: Clear the invalid slot information correctly from Aneesh Kumar K.V
      
      * tag 'powerpc-4.5-4' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/mm/hash: Clear the invalid slot information correctly
        powerpc/eeh: Fix partial hotplug criterion
      9aca90a7
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 70d070f5
      Linus Torvalds authored
      Pull s390 bugfixes from Martin Schwidefsky:
       "Two critical bug fixes for the signal handling"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/fpu: signals vs. floating point control register
        s390/compat: correct restore of high gprs on signal return
      70d070f5
    • Linus Torvalds's avatar
      Merge tag 'nfsd-4.5-1' of git://linux-nfs.org/~bfields/linux · 81904dbb
      Linus Torvalds authored
      Pull nfsd bugfix from Bruce Fields:
       "One fix for a bug that could cause a NULL write past the end of a
        buffer in case of unusually long writes to some system interfaces used
        by mountd and other nfs support utilities"
      
      * tag 'nfsd-4.5-1' of git://linux-nfs.org/~bfields/linux:
        sunrpc/cache: fix off-by-one in qword_get()
      81904dbb
    • Linus Torvalds's avatar
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · 3acdb84c
      Linus Torvalds authored
      Pull drm fixes from Dave Airlie:
       "This is a bit larger than Id like, but I asked the Intel guys to pull
        in some Skylake fixes in the possibly vain hope that Skylake might be
        more functional now that I'm seeing production hardware shipping.
      
        For i915, it's mostly the same patch in a few places, making sure the
        hw doesn't turn off when we are programming it.
      
        Apart from that are two nouveau fixes, one for a module defer bug, and
        one for using nouveau on new Lenovo P50 models.
      
        Then there are a bunch of AMDGPU fixes, one is a fix for v4.4 vblank
        regressions, and some PM fixes"
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: (26 commits)
        drm/nouveau/disp/dp: ensure sink is powered up before attempting link training
        drm/nouveau: platform: Fix deferred probe
        drm/amdgpu: disable direct VM updates when vm_debug is set
        amdgpu: fix NULL pointer dereference at tonga_check_states_equal
        drm/i915/gen9: Verify and enforce dc6 state writes
        drm/i915/gen9: Check for DC state mismatch
        drm/radeon/pm: adjust display configuration after powerstate
        drm/amdgpu/pm: adjust display configuration after powerstate
        drm/amdgpu/pm: add some checks for PX
        drm/amdgpu: fix locking in force performance level
        drm/amdgpu/gfx8: fix priv reg interrupt enable
        drm/i915/skl: Ensure HW is powered during DDB HW state readout
        drm/i915/lvds: Ensure the HW is powered during HW state readout
        drm/i915/hdmi: Ensure the HW is powered during HW state readout
        drm/i915/dsi: Ensure the HW is powered during HW state readout
        drm/i915/dp: Ensure the HW is powered during HW state readout
        drm/i915: Ensure the HW is powered when accessing the CRC HW block
        drm/i915/ddi: Ensure the HW is powered during HW state readout
        drm/i915/crt: Ensure the HW is powered during HW state readout
        drm/i915: Ensure the HW is powered during HW access in assert_pipe
        ...
      3acdb84c
    • Linus Torvalds's avatar
      Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · 3d7b3654
      Linus Torvalds authored
      Pull libnvdimm fixes from Dan Williams:
      
       - Two fixes for compatibility with the ACPI 6.1 specification.
      
         Without these fixes multi-interface DIMMs will fail to be probed, and
         address range scrub commands to find memory errors will give results
         that the kernel will mis-interpret.  For multi-interface DIMMs Linux
         will accept either the original 6.0 implementation or 6.1.
      
         For address range scrub we'll only support 6.1 since ACPI formalized
         this DSM differently than the original example [1] implemented in
         v4.2.  The expectation is that production systems will only ever ship
         the ACPI 6.1 address range scrub command definition.
      
       - The wider async address range scrub work targeting 4.6 discovered
         that the original synchronous implementation in 4.5 is not sizing its
         return buffer correctly.
      
       - Arnd caught that my recent fix to the size of the pfn_t flags missed
         updating the flags variable used in the pmem driver.
      
       - Toshi found that we mishandle the memremap() return value in
         devm_memremap().
      
      * 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
        nvdimm: use 'u64' for pfn flags
        devm_memremap: Fix error value when memremap failed
        nfit: update address range scrub commands to the acpi 6.1 format
        libnvdimm, tools/testing/nvdimm: fix 'ars_status' output buffer sizing
        nfit: fix multi-interface dimm handling, acpi6.1 compatibility
      3d7b3654
    • Linus Torvalds's avatar
      Merge tag 'for-v4.5-rc' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply · 1ebe3839
      Linus Torvalds authored
      Pull power supply fixes from Sebastian Reichel:
       "Add a regression fix for changed sysfs path of bq27xxx_battery and
        update MAINTAINERS file"
      
      * tag 'for-v4.5-rc' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply:
        power: bq27xxx_battery: Restore device name
        MAINTAINERS: update bq27xxx driver
      1ebe3839
  2. 25 Feb, 2016 3 commits
  3. 24 Feb, 2016 20 commits
    • Dave Airlie's avatar
      Merge tag 'drm-intel-fixes-2016-02-22' of git://anongit.freedesktop.org/drm-intel into drm-fixes · 398cb0c9
      Dave Airlie authored
      This is a bit large, but it really helps Skylake bugs we are seeing
      on a number of laptops.
      
      Most of the commits are quite similar, ensuring the display power
      doesn't vanish under us during hardware access. Also do note that it's
      not just Skylake that's affected.
      
      * tag 'drm-intel-fixes-2016-02-22' of git://anongit.freedesktop.org/drm-intel:
        drm/i915/gen9: Verify and enforce dc6 state writes
        drm/i915/gen9: Check for DC state mismatch
        drm/i915/skl: Ensure HW is powered during DDB HW state readout
        drm/i915/lvds: Ensure the HW is powered during HW state readout
        drm/i915/hdmi: Ensure the HW is powered during HW state readout
        drm/i915/dsi: Ensure the HW is powered during HW state readout
        drm/i915/dp: Ensure the HW is powered during HW state readout
        drm/i915: Ensure the HW is powered when accessing the CRC HW block
        drm/i915/ddi: Ensure the HW is powered during HW state readout
        drm/i915/crt: Ensure the HW is powered during HW state readout
        drm/i915: Ensure the HW is powered during HW access in assert_pipe
        drm/i915: Ensure the HW is powered when disabling VGA
        drm/i915/ibx: Ensure the HW is powered during PLL HW readout
        drm/i915: Ensure the HW is powered during display pipe HW readout
        drm/i915: Add helper to get a display power ref if it was already enabled
      398cb0c9
    • Dave Airlie's avatar
      Merge branch 'drm-fixes-4.5' of git://people.freedesktop.org/~agd5f/linux into drm-fixes · ad00a57a
      Dave Airlie authored
      A few radeon and amdgpu fixes for 4.5.  A few further fixes for the vblank
      regressions in 4.4 and a couple of other minor fixes.
      
      * 'drm-fixes-4.5' of git://people.freedesktop.org/~agd5f/linux:
        drm/amdgpu: disable direct VM updates when vm_debug is set
        amdgpu: fix NULL pointer dereference at tonga_check_states_equal
        drm/radeon/pm: adjust display configuration after powerstate
        drm/amdgpu/pm: adjust display configuration after powerstate
        drm/amdgpu/pm: add some checks for PX
        drm/amdgpu: fix locking in force performance level
        drm/amdgpu/gfx8: fix priv reg interrupt enable
        drm/amdgpu: Don't hang in amdgpu_flip_work_func on disabled crtc.
        drm/radeon: Don't hang in radeon_flip_work_func on disabled crtc. (v2)
      ad00a57a
    • Linus Torvalds's avatar
      Merge tag 'arc-4.5-rc6-fixes-upd' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · 6dc390ad
      Linus Torvalds authored
      Pull ARC fixes from Vineet Gupta:
       - Fix for csd deadlock due to missing self IPI
       - Accompanying IPI cleanups / optimization
       - Brown paper bag bug in one of the cleanups above
       - Boot reporting updates for new hardware features
       - Don't force DEVTMPFS if INITRAMFS
      
      * tag 'arc-4.5-rc6-fixes-upd' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
        arc: SMP: CONFIG_ARC_IPI_DBG cleanup
        ARC: SMP: No need for CONFIG_ARC_IPI_DBG
        ARCv2: Elide sending new cross core intr if receiver didn't ack prev
        ARCv2: SMP: Push IPI_IRQ into IPI provider
        ARC: [intc-compact] Remove IPI setup from ARCompact port
        ARCv2: SMP: Emulate IPI to self using software triggered interrupt
        arc: get rid of DEVTMPFS dependency on INITRAMFS_SOURCE
        ARCv2: boot report CCMs (Closely Coupled Memories)
        ARCv2: boot print Low Latency Memory
        ARC: Assume multiplier is always present
      6dc390ad
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · aa263c43
      Linus Torvalds authored
      Pull vfs fixes from Al Viro:
       "Assorted fixes - xattr one from this cycle, the rest - stable fodder"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        fs/pnode.c: treat zero mnt_group_id-s as unequal
        affs_do_readpage_ofs(): just use kmap_atomic() around memcpy()
        xattr handlers: plug a lock leak in simple_xattr_list
        fs: allow no_seek_end_llseek to actually seek
      aa263c43
    • Kirill A. Shutemov's avatar
      thp: call pmdp_invalidate() with correct virtual address · 2ac015e2
      Kirill A. Shutemov authored
      Sebastian Ott and Gerald Schaefer reported random crashes on s390.
      It was bisected to my THP refcounting patchset.
      
      The problem is that pmdp_invalidated() called with wrong virtual
      address. It got offset up by HPAGE_PMD_SIZE by loop over ptes.
      
      The solution is to introduce new variable to be used in loop and don't
      touch 'haddr'.
      Signed-off-by: default avatarKirill A. Shutemov <kirill.shutemov@linux.intel.com>
      Reported-and-tested-by: default avatarGerald Schaefer <gerald.schaefer@de.ibm.com>
      Reported-and-tested-by Sebastian Ott <sebott@linux.vnet.ibm.com>
      Reviewed-by: default avatarWill Deacon <will.deacon@arm.com>
      Cc: Christian Borntraeger <borntraeger@de.ibm.com>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
      Cc: Andrea Arcangeli <aarcange@redhat.com>
      Cc: Sasha Levin <sasha.levin@oracle.com>
      Cc: Jerome Marchand <jmarchan@redhat.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      2ac015e2
    • Christian König's avatar
      drm/amdgpu: disable direct VM updates when vm_debug is set · 6378076b
      Christian König authored
      That should make user space bugs more obvious.
      Signed-off-by: default avatarChristian König <christian.koenig@amd.com>
      Reviewed-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      6378076b
    • Bradley Pankow's avatar
      amdgpu: fix NULL pointer dereference at tonga_check_states_equal · 827108d0
      Bradley Pankow authored
      The event_data passed from pem_fini was not cleared upon initialization.
      This caused NULL checks to pass and cast_const_phw_tonga_power_state to
      attempt to dereference an invalid pointer. Clear the event_data in
      pem_init and pem_fini before calling pem_handle_event.
      Reviewed-by: default avatarRex Zhu <Rex.Zhu@amd.com>
      Signed-off-by: default avatarBradley Pankow <btpankow@gmail.com>
      Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      827108d0
    • Valentin Rothberg's avatar
      arc: SMP: CONFIG_ARC_IPI_DBG cleanup · 9ef2d8be
      Valentin Rothberg authored
      Previous Commit ("ARC: SMP: No need for CONFIG_ARC_IPI_DBG") removed
      the Kconfig option ARC_IPI_DBG.  Remove the last reference on this
      option.
      Signed-off-by: default avatarValentin Rothberg <valentinrothberg@gmail.com>
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      9ef2d8be
    • Vineet Gupta's avatar
      ARC: SMP: No need for CONFIG_ARC_IPI_DBG · d73b73f5
      Vineet Gupta authored
      This was more relevant during SMP bringup.
      
      The warning for bogus msg better be visible always.
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      d73b73f5
    • Vineet Gupta's avatar
      ARCv2: Elide sending new cross core intr if receiver didn't ack prev · 3dea30ca
      Vineet Gupta authored
      ARConnect/MCIP IPI sending has a retry-wait loop in case caller had
      not seen a previous such interrupt. Turns out that it is not needed at
      all. Linux cross core calling allows coalescing multiple IPIs to same
      receiver - it is fine as long as there is one.
      
      This logic is built into upper layer already, at a higher level of
      abstraction. ipi_send_msg_one() sets the actual msg payload, but it only
      calls MCIP IPI sending if msg holder was empty (using
      atomic-set-new-and-get-old construct). Thus it is unlikely that the
      retry-wait looping was ever getting exercised at all.
      
      Cc: Chuck Jordan <cjordan@synopsys.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      3dea30ca
    • Vineet Gupta's avatar
      96817879
    • Vineet Gupta's avatar
      ARC: [intc-compact] Remove IPI setup from ARCompact port · dbcbc7e7
      Vineet Gupta authored
      There is no real ARC700 based SMP SoC so remove IPI definition.
      EZChip's SMP ARC700 is going to use a different intc and IPI provider
      anyways.
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      dbcbc7e7
    • Vineet Gupta's avatar
      ARCv2: SMP: Emulate IPI to self using software triggered interrupt · bb143f81
      Vineet Gupta authored
      ARConnect/MCIP Inter-Core-Interrupt module can't send interrupt to
      local core. So use core intc capability to trigger software
      interrupt to self, using an unsued IRQ #21.
      
      This showed up as csd deadlock with LTP trace_sched on a dual core
      system. This test acts as scheduler fuzzer, triggering all sorts of
      schedulting activity. Trouble starts with IPI to self, which doesn't get
      delivered (effectively lost due to H/w capability), but the msg intended
      to be sent remain enqueued in per-cpu @ipi_data.
      
      All subsequent IPIs to this core from other cores get elided due to the
      IPI coalescing optimization in ipi_send_msg_one() where a pending msg
      implies an IPI already sent and assumes other core is yet to ack it.
      After the elided IPI, other core simply goes into csd_lock_wait()
      but never comes out as this core never sees the interrupt.
      
      Fixes STAR 9001008624
      
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: <stable@vger.kernel.org>        [4.2]
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      bb143f81
    • Linus Torvalds's avatar
      Merge tag 'dm-4.5-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm · 84e54c46
      Linus Torvalds authored
      Pull device mapper fix from Mike Snitzer:
       "Fix a 112 byte leak for each IO request that is requeued while DM
        multipath is handling faults due to path failures.
      
        This leak does not happen if blk-mq DM multipath is used.  It only
        occurs if .request_fn DM multipath is stacked ontop of blk-mq paths
        (e.g. scsi-mq devices)"
      
      * tag 'dm-4.5-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
        dm: fix dm_rq_target_io leak on faults with .request_fn DM w/ blk-mq paths
      84e54c46
    • Linus Torvalds's avatar
      Merge tag 'mmc-v4.5-rc4' of git://git.linaro.org/people/ulf.hansson/mmc · 0ecdcd3a
      Linus Torvalds authored
      Pull MMC fix from Ulf Hansson:
       "Here's an mmc fix intended for v4.5 rc6.
      
        MMC host:
         - omap_hsmmc: Fix PM regression for deferred probe"
      
      * tag 'mmc-v4.5-rc4' of git://git.linaro.org/people/ulf.hansson/mmc:
        mmc: omap_hsmmc: Fix PM regression with deferred probe for pm_runtime_reinit
      0ecdcd3a
    • Arnd Bergmann's avatar
      nvdimm: use 'u64' for pfn flags · c4544205
      Arnd Bergmann authored
      A recent bugfix changed pfn_t to always be 64-bit wide, but did not
      change the code in pmem.c, which is now broken on 32-bit architectures
      as reported by gcc:
      
      In file included from ../drivers/nvdimm/pmem.c:28:0:
      drivers/nvdimm/pmem.c: In function 'pmem_alloc':
      include/linux/pfn_t.h:15:17: error: large integer implicitly truncated to unsigned type [-Werror=overflow]
       #define PFN_DEV (1ULL << (BITS_PER_LONG_LONG - 3))
      
      This changes the intermediate pfn_flags in struct pmem_device to
      be 64 bit wide as well, so they can store the flags correctly.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Fixes: db78c222 ("mm: fix pfn_t vs highmem")
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      c4544205
    • Toshi Kani's avatar
      devm_memremap: Fix error value when memremap failed · 93f834df
      Toshi Kani authored
      devm_memremap() returns an ERR_PTR() value in case of error.
      However, it returns NULL when memremap() failed.  This causes
      the caller, such as the pmem driver, to proceed and oops later.
      
      Change devm_memremap() to return ERR_PTR(-ENXIO) when memremap()
      failed.
      Signed-off-by: default avatarToshi Kani <toshi.kani@hpe.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: <stable@vger.kernel.org>
      Reviewed-by: default avatarRoss Zwisler <ross.zwisler@linux.intel.com>
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      93f834df
    • Dan Williams's avatar
      nfit: update address range scrub commands to the acpi 6.1 format · 4577b066
      Dan Williams authored
      The original format of these commands from the "NVDIMM DSM Interface
      Example" [1] are superseded by the ACPI 6.1 definition of the "NVDIMM Root
      Device _DSMs" [2].
      
      [1]: http://pmem.io/documents/NVDIMM_DSM_Interface_Example.pdf
      [2]: http://www.uefi.org/sites/default/files/resources/ACPI_6_1.pdf
           "9.20.7 NVDIMM Root Device _DSMs"
      
      Changes include:
      1/ New 'restart' fields in ars_status, unfortunately these are
         implemented in the middle of the existing definition so this change
         is not backwards compatible.  The expectation is that shipping
         platforms will only ever support the ACPI 6.1 definition.
      
      2/ New status values for ars_start ('busy') and ars_status ('overflow').
      
      Cc: Vishal Verma <vishal.l.verma@intel.com>
      Cc: Linda Knippers <linda.knippers@hpe.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
      4577b066
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-4.5-4' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · 420eb6d7
      Linus Torvalds authored
      Pull NFS client bugfixes from Trond Myklebust:
       "Stable bugfixes:
         - Fix nfs_size_to_loff_t
         - NFSv4: Fix a dentry leak on alias use
      
        Other bugfixes:
         - Don't schedule a layoutreturn if the layout segment can be freed
           immediately.
         - Always set NFS_LAYOUT_RETURN_REQUESTED with lo->plh_return_iomode
         - rpcrdma_bc_receive_call() should init rq_private_buf.len
         - fix stateid handling for the NFS v4.2 operations
         - pnfs/blocklayout: fix a memeory leak when using,vmalloc_to_page
         - fix panic in gss_pipe_downcall() in fips mode
         - Fix a race between layoutget and pnfs_destroy_layout
         - Fix a race between layoutget and bulk recalls"
      
      * tag 'nfs-for-4.5-4' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
        NFSv4.x/pnfs: Fix a race between layoutget and bulk recalls
        NFSv4.x/pnfs: Fix a race between layoutget and pnfs_destroy_layout
        auth_gss: fix panic in gss_pipe_downcall() in fips mode
        pnfs/blocklayout: fix a memeory leak when using,vmalloc_to_page
        nfs4: fix stateid handling for the NFS v4.2 operations
        NFSv4: Fix a dentry leak on alias use
        xprtrdma: rpcrdma_bc_receive_call() should init rq_private_buf.len
        pNFS: Always set NFS_LAYOUT_RETURN_REQUESTED with lo->plh_return_iomode
        pNFS: Fix pnfs_mark_matching_lsegs_return()
        nfs: fix nfs_size_to_loff_t
      420eb6d7
    • Linus Torvalds's avatar
      x86: fix SMAP in 32-bit environments · de9e478b
      Linus Torvalds authored
      In commit 11f1a4b9 ("x86: reorganize SMAP handling in user space
      accesses") I changed how the stac/clac instructions were generated
      around the user space accesses, which then made it possible to do
      batched accesses efficiently for user string copies etc.
      
      However, in doing so, I completely spaced out, and didn't even think
      about the 32-bit case.  And nobody really even seemed to notice, because
      SMAP doesn't even exist until modern Skylake processors, and you'd have
      to be crazy to run 32-bit kernels on a modern CPU.
      
      Which brings us to Andy Lutomirski.
      
      He actually tested the 32-bit kernel on new hardware, and noticed that
      it doesn't work.  My bad.  The trivial fix is to add the required
      uaccess begin/end markers around the raw accesses in <asm/uaccess_32.h>.
      
      I feel a bit bad about this patch, just because that header file really
      should be cleaned up to avoid all the duplicated code in it, and this
      commit just expands on the problem.  But this just fixes the bug without
      any bigger cleanup surgery.
      Reported-and-tested-by: default avatarAndy Lutomirski <luto@kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      de9e478b
  4. 23 Feb, 2016 2 commits
    • Stefan Hajnoczi's avatar
      sunrpc/cache: fix off-by-one in qword_get() · b7052cd7
      Stefan Hajnoczi authored
      The qword_get() function NUL-terminates its output buffer.  If the input
      string is in hex format \xXXXX... and the same length as the output
      buffer, there is an off-by-one:
      
        int qword_get(char **bpp, char *dest, int bufsize)
        {
            ...
            while (len < bufsize) {
                ...
                *dest++ = (h << 4) | l;
                len++;
            }
            ...
            *dest = '\0';
            return len;
        }
      
      This patch ensures the NUL terminator doesn't fall outside the output
      buffer.
      Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
      b7052cd7
    • Alexey Brodkin's avatar
      arc: get rid of DEVTMPFS dependency on INITRAMFS_SOURCE · 3e5177c1
      Alexey Brodkin authored
      Even though DEVTMPFS is required when our pre-built initramfs
      is used it is not the case in general. It is perfectly possible
      to use initramfs with device nodes already populated or there
      could be other usages, see discussion below for more detials:
      http://thread.gmane.org/gmane.comp.embedded.openwrt.devel/37819/focus=37821
      
      This change removes mentioned dependency from arch/arc/Kconfig
      updating instead those defconfigs that are usually used with this
      kind of pre-build initramfs.
      
      And while at it all touched defconfigs were regenerated via
      savedefconfig and some options were removed:
       * USB is selected by other options implicitly
       * VGA_CONSOLE is disableb for ARC since
         031e29b5
       * EXT3_FS automatically selects EXT4_FS
       * MTDxxx and JFFS2_FS make no sense for AXS because
         AXS NAND controller is not upstreamed
       * NET_OSCI_LAN is not in upstream as well
       * ARCPGU_xxx options make no sense because ARC PGU is not yet
         in upstream and when it gets there all config options would
         be taken from devicetree
      Signed-off-by: default avatarAlexey Brodkin <abrodkin@synopsys.com>
      Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
      3e5177c1
  5. 22 Feb, 2016 9 commits
    • Trond Myklebust's avatar
      NFSv4.x/pnfs: Fix a race between layoutget and bulk recalls · 9fd4b9fc
      Trond Myklebust authored
      Replace another case where the layout 'plh_block_lgets' can trigger
      infinite loops in send_layoutget().
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      9fd4b9fc
    • Trond Myklebust's avatar
      NFSv4.x/pnfs: Fix a race between layoutget and pnfs_destroy_layout · 2454dfea
      Trond Myklebust authored
      If the server reboots while there is a layoutget outstanding, then
      the call to pnfs_choose_layoutget_stateid() will fail with an EAGAIN
      error, which causes an infinite loop in send_layoutget(). The reason
      why we never break out of the loop is that the layout 'plh_block_lgets'
      field is never cleared.
      
      Fix is to replace plh_block_lgets with NFS_LAYOUT_INVALID_STID, which
      can be reset after a new layoutget.
      
      Fixes: ab7d763e ("pNFS: Ensure nfs4_layoutget_prepare returns...")
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
      2454dfea
    • Linus Torvalds's avatar
      Merge tag 'trace-fixes-v4.5-rc5' of... · 4de8ebef
      Linus Torvalds authored
      Merge tag 'trace-fixes-v4.5-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace
      
      Pull tracing fixes from Steven Rostedt:
       "Two more small fixes.
      
        One is by Yang Shi who added a READ_ONCE_NOCHECK() to the scan of the
        stack made by the stack tracer.  As the stack tracer scans the entire
        kernel stack, KASAN triggers seeing it as a "stack out of bounds"
        error.  As the scan is looking at the contents of the stack from
        parent functions.  The NOCHECK() tells KASAN that this is done on
        purpose, and is not some kind of stack overflow.
      
        The second fix is to the ftrace selftests, to retrieve the PID of
        executed commands from the shell with '$!' and not by parsing 'jobs'"
      
      * tag 'trace-fixes-v4.5-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        tracing, kasan: Silence Kasan warning in check_stack of stack_tracer
        ftracetest: Fix instance test to use proper shell command for pids
      4de8ebef
    • Linus Torvalds's avatar
      Merge tag 'for-linus-4.5-rc5-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip · 692b8c66
      Linus Torvalds authored
      Pull xen bug fixes from David Vrabel:
      
       - Two scsiback fixes (resource leak and spurious warning).
      
       - Fix DMA mapping of compound pages on arm/arm64.
      
       - Fix some pciback regressions in MSI-X handling.
      
       - Fix a pcifront crash due to some uninitialize state.
      
      * tag 'for-linus-4.5-rc5-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
        xen/pcifront: Fix mysterious crashes when NUMA locality information was extracted.
        xen/pcifront: Report the errors better.
        xen/pciback: Save the number of MSI-X entries to be copied later.
        xen/pciback: Check PF instead of VF for PCI_COMMAND_MEMORY
        xen: fix potential integer overflow in queue_reply
        xen/arm: correctly handle DMA mapping of compound pages
        xen/scsiback: avoid warnings when adding multiple LUNs to a domain
        xen/scsiback: correct frontend counting
      692b8c66
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · dea08e60
      Linus Torvalds authored
      Pull networking fixes from David Miller:
       "Looks like a lot, but mostly driver fixes scattered all over as usual.
      
        Of note:
      
         1) Add conditional sched in nf conntrack in cleanup to avoid NMI
            watchdogs.  From Florian Westphal.
      
         2) Fix deadlock in nfnetlink cttimeout, also from Floarian.
      
         3) Fix handling of slaves in bonding ARP monitor validation, from Jay
            Vosburgh.
      
         4) Callers of ip_cmsg_send() are responsible for freeing IP options,
            some were not doing so.  Fix from Eric Dumazet.
      
         5) Fix per-cpu bugs in mvneta driver, from Gregory CLEMENT.
      
         6) Fix vlan handling in mv88e6xxx DSA driver, from Vivien Didelot.
      
         7) bcm7xxx PHY driver bug fixes from Florian Fainelli.
      
         8) Avoid unaligned accesses to protocol headers wrt.  GRE, from
            Alexander Duyck.
      
         9) SKB leaks and other problems in arc_emac driver, from Alexander
            Kochetkov.
      
        10) tcp_v4_inbound_md5_hash() releases listener socket instead of
            request socket on error path, oops.  Fix from Eric Dumazet.
      
        11) Missing socket release in pppoe_rcv_core() that seems to have
            existed basically forever.  From Guillaume Nault.
      
        12) Missing slave_dev unregister in dsa_slave_create() error path,
            from Florian Fainelli.
      
        13) crypto_alloc_hash() never returns NULL, fix return value check in
            __tcp_alloc_md5sig_pool.  From Insu Yun.
      
        14) Properly expire exception route entries in ipv4, from Xin Long.
      
        15) Fix races in tcp/dccp listener socket dismantle, from Eric
            Dumazet.
      
        16) Don't set IFF_TX_SKB_SHARING in vxlan, geneve, or GRE, it's not
            legal.  These drivers modify the SKB on transmit.  From Jiri Benc.
      
        17) Fix regression in the initialziation of netdev->tx_queue_len.
            From Phil Sutter.
      
        18) Missing unlock in tipc_nl_add_bc_link() error path, from Insu Yun.
      
        19) SCTP port hash sizing does not properly ensure that table is a
            power of two in size.  From Neil Horman.
      
        20) Fix initializing of software copy of MAC address in fmvj18x_cs
            driver, from Ken Kawasaki"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (129 commits)
        bnx2x: Fix 84833 phy command handler
        bnx2x: Fix led setting for 84858 phy.
        bnx2x: Correct 84858 PHY fw version
        bnx2x: Fix 84833 RX CRC
        bnx2x: Fix link-forcing for KR2
        net: ethernet: davicom: fix devicetree irq resource
        fmvj18x_cs: fix incorrect indexing of dev->dev_addr[] when copying the MAC address
        Driver: Vmxnet3: Update Rx ring 2 max size
        net: netcp: rework the code for get/set sw_data in dma desc
        soc: ti: knav_dma: rename pad in struct knav_dma_desc to sw_data
        net: ti: netcp: restore get/set_pad_info() functionality
        MAINTAINERS: Drop myself as xen netback maintainer
        sctp: Fix port hash table size computation
        can: ems_usb: Fix possible tx overflow
        Bluetooth: hci_core: Avoid mixing up req_complete and req_complete_skb
        net: bcmgenet: Fix internal PHY link state
        af_unix: Don't use continue to re-execute unix_stream_read_generic loop
        unix_diag: fix incorrect sign extension in unix_lookup_by_ino
        bnxt_en: Failure to update PHY is not fatal condition.
        bnxt_en: Remove unnecessary call to update PHY settings.
        ...
      dea08e60
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-linus-v4.5-rc6' of... · 5c102d0e
      Linus Torvalds authored
      Merge tag 'hwmon-for-linus-v4.5-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
      
      Pull hwmon fixes from Guenter Roeck:
       "Two fixes headed for stable:
      
         - Remove an unnecessary speed_index lookup for thermal hook in the
           gpio-fan driver.  The unnecessary speed lookup can hog the system.
      
         - Handle negative conversion values correctly in the ads1015 driver"
      
      * tag 'hwmon-for-linus-v4.5-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
        hwmon: (gpio-fan) Remove un-necessary speed_index lookup for thermal hook
        hwmon: (ads1015) Handle negative conversion values correctly
      5c102d0e
    • Linus Torvalds's avatar
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma · a16152c8
      Linus Torvalds authored
      Pull rdma fixes from Doug Ledford:
       "One ocrdma fix:
      
         - The new CQ API support was added to ocrdma, but they got the arming
           logic wrong, so without this, transfers eventually fail when they
           fail to arm the interrupt properly under load
      
        Two related fixes for mlx4:
      
         - When we added the 64bit extended counters support to the core IB
           code, they forgot to update the RoCE side of the mlx4 driver (the
           IB side they properly updated).
      
           I debated whether or not to include these patches as they could be
           considered feature enablement patches, but the existing code will
           blindy copy the 32bit counters, whether any counters were requested
           at all (a bug).
      
           These two patches make it (a) check to see that counters were
           requested and (b) copy the right counters (the 64bit support is
           new, the 32bit is not).  For that reason I went ahead and took
           them"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dledford/rdma:
        IB/mlx4: Add support for the port info class for RoCE ports
        IB/mlx4: Add support for extended counters over RoCE ports
        RDMA/ocrdma: Fix arm logic to align with new cq API
      a16152c8
    • Linus Torvalds's avatar
      Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux · 7ee302f6
      Linus Torvalds authored
      Pull i2c fixes from Wolfram Sang:
       "Some bugfixes from I2C for you:
      
        A fix for a RuntimePM regression with OMAP, a fix to enable TCO for
        Lewisburg platforms, and a typo fix while we are here"
      
      * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
        i2c: i801: Adding Intel Lewisburg support for iTCO
        i2c: uniphier: fix typos in error messages
        i2c: omap: Fix PM regression with deferred probe for pm_runtime_reinit
      7ee302f6
    • Mika Kuoppala's avatar
      drm/i915/gen9: Verify and enforce dc6 state writes · 9b18572e
      Mika Kuoppala authored
      It has been observed that sometimes disabling the dc6 fails
      and dc6 state pops back up, brief moment after disabling. This
      has to be dmc save/restore timing issue or other bug in the
      way dc states are handled.
      
      Try to work around this issue as we don't have firmware fix
      yet available. Verify that the value we wrote for the dmc sticks,
      and also enforce it by rewriting it, if it didn't.
      
      v2: Zero rereads on rewrite for extra paranoia (Imre)
      
      Testcase: kms_flip/basic-flip-vs-dpms
      References: https://bugs.freedesktop.org/show_bug.cgi?id=93768
      Cc: Patrik Jakobsson <patrik.jakobsson@linux.intel.com>
      Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
      Cc: Imre Deak <imre.deak@intel.com>
      Signed-off-by: default avatarMika Kuoppala <mika.kuoppala@intel.com>
      Reviewed-by: default avatarImre Deak <imre.deak@intel.com>
      Signed-off-by: default avatarImre Deak <imre.deak@intel.com>
      Link: http://patchwork.freedesktop.org/patch/msgid/1455811089-27884-1-git-send-email-mika.kuoppala@intel.com
      (cherry picked from commit 779cb5d3)
      Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
      9b18572e