1. 28 1月, 2017 1 次提交
    • B
      xfs: prevent quotacheck from overloading inode lru · e0d76fa4
      Brian Foster 提交于
      Quotacheck runs at mount time in situations where quota accounting must
      be recalculated. In doing so, it uses bulkstat to visit every inode in
      the filesystem. Historically, every inode processed during quotacheck
      was released and immediately tagged for reclaim because quotacheck runs
      before the superblock is marked active by the VFS. In other words,
      the final iput() lead to an immediate ->destroy_inode() call, which
      allowed the XFS background reclaim worker to start reclaiming inodes.
      
      Commit 17c12bcd ("xfs: when replaying bmap operations, don't let
      unlinked inodes get reaped") marks the XFS superblock active sooner as
      part of the mount process to support caching inodes processed during log
      recovery. This occurs before quotacheck and thus means all inodes
      processed by quotacheck are inserted to the LRU on release.  The
      s_umount lock is held until the mount has completed and thus prevents
      the shrinkers from operating on the sb. This means that quotacheck can
      excessively populate the inode LRU and lead to OOM conditions on systems
      without sufficient RAM.
      
      Update the quotacheck bulkstat handler to set XFS_IGET_DONTCACHE on
      inodes processed by quotacheck. This causes ->drop_inode() to return 1
      and in turn causes iput_final() to evict the inode. This preserves the
      original quotacheck behavior and prevents it from overloading the LRU
      and running out of memory.
      
      CC: stable@vger.kernel.org # v4.9
      Reported-by: NMartin Svec <martin.svec@zoner.cz>
      Signed-off-by: NBrian Foster <bfoster@redhat.com>
      Reviewed-by: NEric Sandeen <sandeen@redhat.com>
      Reviewed-by: NDarrick J. Wong <darrick.wong@oracle.com>
      Signed-off-by: NDarrick J. Wong <darrick.wong@oracle.com>
      e0d76fa4
  2. 27 1月, 2017 1 次提交
    • D
      xfs: fix bmv_count confusion w/ shared extents · c364b6d0
      Darrick J. Wong 提交于
      In a bmapx call, bmv_count is the total size of the array, including the
      zeroth element that userspace uses to supply the search key.  The output
      array starts at offset 1 so that we can set up the user for the next
      invocation.  Since we now can split an extent into multiple bmap records
      due to shared/unshared status, we have to be careful that we don't
      overflow the output array.
      
      In the original patch f86f4037 ("xfs: teach get_bmapx about shared
      extents and the CoW fork") I used cur_ext (the output index) to check
      for overflows, albeit with an off-by-one error.  Since nexleft no longer
      describes the number of unfilled slots in the output, we can rip all
      that out and use cur_ext for the overflow check directly.
      
      Failure to do this causes heap corruption in bmapx callers such as
      xfs_io and xfs_scrub.  xfs/328 can reproduce this problem.
      Reviewed-by: NEric Sandeen <sandeen@redhat.com>
      Signed-off-by: NDarrick J. Wong <darrick.wong@oracle.com>
      c364b6d0
  3. 26 1月, 2017 2 次提交
    • D
      xfs: clear _XBF_PAGES from buffers when readahead page · 2aa6ba7b
      Darrick J. Wong 提交于
      If we try to allocate memory pages to back an xfs_buf that we're trying
      to read, it's possible that we'll be so short on memory that the page
      allocation fails.  For a blocking read we'll just wait, but for
      readahead we simply dump all the pages we've collected so far.
      
      Unfortunately, after dumping the pages we neglect to clear the
      _XBF_PAGES state, which means that the subsequent call to xfs_buf_free
      thinks that b_pages still points to pages we own.  It then double-frees
      the b_pages pages.
      
      This results in screaming about negative page refcounts from the memory
      manager, which xfs oughtn't be triggering.  To reproduce this case,
      mount a filesystem where the size of the inodes far outweighs the
      availalble memory (a ~500M inode filesystem on a VM with 300MB memory
      did the trick here) and run bulkstat in parallel with other memory
      eating processes to put a huge load on the system.  The "check summary"
      phase of xfs_scrub also works for this purpose.
      Signed-off-by: NDarrick J. Wong <darrick.wong@oracle.com>
      Reviewed-by: NEric Sandeen <sandeen@redhat.com>
      2aa6ba7b
    • C
      xfs: extsize hints are not unlikely in xfs_bmap_btalloc · 493611eb
      Christoph Hellwig 提交于
      With COW files they are the hotpath, just like for files with the
      extent size hint attribute.  We really shouldn't micro-manage anything
      but failure cases with unlikely.
      
      Additionally Arnd Bergmann recently reported that one of these two
      unlikely annotations causes link failures together with an upcoming
      kernel instrumentation patch, so let's get rid of it ASAP.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Reported-by: NArnd Bergmann <arnd@arndb.de>
      Reviewed-by: NDarrick J. Wong <darrick.wong@oracle.com>
      Signed-off-by: NDarrick J. Wong <darrick.wong@oracle.com>
      493611eb
  4. 25 1月, 2017 4 次提交
  5. 24 1月, 2017 1 次提交
    • C
      xfs: fix COW writeback race · d2b3964a
      Christoph Hellwig 提交于
      Due to the way how xfs_iomap_write_allocate tries to convert the whole
      found extents from delalloc to real space we can run into a race
      condition with multiple threads doing writes to this same extent.
      For the non-COW case that is harmless as the only thing that can happen
      is that we call xfs_bmapi_write on an extent that has already been
      converted to a real allocation.  For COW writes where we move the extent
      from the COW to the data fork after I/O completion the race is, however,
      not quite as harmless.  In the worst case we are now calling
      xfs_bmapi_write on a region that contains hole in the COW work, which
      will trip up an assert in debug builds or lead to file system corruption
      in non-debug builds.  This seems to be reproducible with workloads of
      small O_DSYNC write, although so far I've not managed to come up with
      a with an isolated reproducer.
      
      The fix for the issue is relatively simple:  tell xfs_bmapi_write
      that we are only asked to convert delayed allocations and skip holes
      in that case.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Reviewed-by: NBrian Foster <bfoster@redhat.com>
      Reviewed-by: NDarrick J. Wong <darrick.wong@oracle.com>
      Signed-off-by: NDarrick J. Wong <darrick.wong@oracle.com>
      d2b3964a
  6. 23 1月, 2017 5 次提交
  7. 22 1月, 2017 5 次提交
    • L
      Merge tag 'usb-4.10-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · c497f8d1
      Linus Torvalds 提交于
      Pull USB fixes from Greg KH:
       "Here are a few small USB fixes for 4.10-rc5.
      
        Most of these are gadget/dwc2 fixes for reported issues, all of these
        have been in linux-next for a while. The last one is a single xhci
        WARN_ON removal to handle an issue that the dwc3 driver is hitting in
        the 4.10-rc tree. The warning is harmless and needs to be removed, and
        a "real" fix that is more complex will show up in 4.11-rc1 for this
        device.
      
        That last patch hasn't been in linux-next yet due to the weekend
        timing, but it's a "simple" WARN_ON() removal so what could go wrong?
        :)"
      
      Famous last words.
      
      * tag 'usb-4.10-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        xhci: remove WARN_ON if dma mask is not set for platform devices
        usb: dwc2: host: fix Wmaybe-uninitialized warning
        usb: dwc2: gadget: Fix GUSBCFG.USBTRDTIM value
        usb: gadget: udc: atmel: remove memory leak
        usb: dwc3: exynos fix axius clock error path to do cleanup
        usb: dwc2: Avoid suspending if we're in gadget mode
        usb: dwc2: use u32 for DT binding parameters
        usb: gadget: f_fs: Fix iterations on endpoints.
        usb: dwc2: gadget: Fix DMA memory freeing
        usb: gadget: composite: Fix function used to free memory
      c497f8d1
    • L
      Merge branch 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · f68d8531
      Linus Torvalds 提交于
      Pull libnvdimm fixes from Dan Williams:
       "Two fixes:
      
         - a regression fix for the multiple-pmem-namespace-per-region support
           added in 4.9. Even if an existing environment is not using that
           feature the act of creating and a destroying a single namespace
           with the ndctl utility will lead to the proliferation of extra
           unwanted namespace devices.
      
         - a fix for the error code returned from the pmem driver when the
           memcpy_mcsafe() routine returns -EFAULT. Btrfs seems to be the only
           block I/O consumer that tries to parse the meaning of the error
           code when it is non-zero.
      
        Neither of these fixes are critical, the namespace leak is awkward in
        that it can cause device naming to change and complicates debugging
        namespace initialization issues. The error code fix is included out of
        caution for what other consumers might be expecting -EIO for block I/O
        errors"
      
      * 'libnvdimm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
        libnvdimm, namespace: fix pmem namespace leak, delete when size set to zero
        pmem: return EIO on read_pmem() failure
      f68d8531
    • L
      Merge tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · f5e8c0ff
      Linus Torvalds 提交于
      Pull clk fix from Stephen Boyd:
       "One fix for Samsung Exynos524x SoCs where recent IOMMU patches have
        caused some of these clocks to turn off when they were always left on
        before"
      
      * tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
        clk/samsung: exynos542x: mark some clocks as critical
      f5e8c0ff
    • L
      Merge tag 'arc-4.10-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · 455a70cb
      Linus Torvalds 提交于
      Pull ARC fixes from Vineet Gupta:
      
       - more intc updates [Yuriv]
      
       - fix module build when unwinder is turned off
      
       - IO Coherency Programming model updates
      
       - other miscellaneous
      
      * tag 'arc-4.10-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
        ARC: Revert "ARC: mm: IOC: Don't enable IOC by default"
        ARC: mm: split arc_cache_init to allow __init reaping of bulk
        ARCv2: IOC: Use actual memory size to setup aperture size
        ARCv2: IOC: Adhere to progamming model guidelines to avoid DMA corruption
        ARCv2: IOC: refactor the IOC and SLC operations into own functions
        ARC: module: Fix !CONFIG_ARC_DW2_UNWIND builds
        ARCv2: save r30 on kernel entry as gcc uses it for code-gen
        ARCv2: IRQ: Call entry/exit functions for chained handlers in MCIP
        ARC: IRQ: Use hwirq instead of virq in mask/unmask
        ARC: mmu: clarify the MMUv3 programming model
      455a70cb
    • L
      Merge tag 'powerpc-4.10-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 83fd57a7
      Linus Torvalds 提交于
      Pull powerpc fixes from Michael Ellerman:
       "Two fixes for fallout from the hugetlb changes we merged this cycle.
      
        Ten other fixes, four only affect Power9, and the rest are a bit of a
        mixture though nothing terrible.
      
        Thanks to: Aneesh Kumar K.V, Anton Blanchard, Benjamin Herrenschmidt,
        Dave Martin, Gavin Shan, Madhavan Srinivasan, Nicholas Piggin, Reza
        Arbab"
      
      * tag 'powerpc-4.10-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc: Ignore reserved field in DCSR and PVR reads and writes
        powerpc/ptrace: Preserve previous TM fprs/vsrs on short regset write
        powerpc/ptrace: Preserve previous fprs/vsrs on short regset write
        powerpc/perf: Use MSR to report privilege level on P9 DD1
        selftest/powerpc: Wrong PMC initialized in pmc56_overflow test
        powerpc/eeh: Enable IO path on permanent error
        powerpc/perf: Fix PM_BRU_CMPL event code for power9
        powerpc/mm: Fix little-endian 4K hugetlb
        powerpc/mm/hugetlb: Don't panic when we don't find the default huge page size
        powerpc: Fix pgtable pmd cache init
        powerpc/icp-opal: Fix missing KVM case and harden replay
        powerpc/mm: Fix memory hotplug BUG() on radix
      83fd57a7
  8. 21 1月, 2017 10 次提交
    • L
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 4c9eff7a
      Linus Torvalds 提交于
      Pull KVM fixes from Radim Krčmář:
       "ARM:
         - Fix for timer setup on VHE machines
         - Drop spurious warning when the timer races against the vcpu running
           again
         - Prevent a vgic deadlock when the initialization fails (for stable)
      
        s390:
         - Fix a kernel memory exposure (for stable)
      
        x86:
         - Fix exception injection when hypercall instruction cannot be
           patched"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: s390: do not expose random data via facility bitmap
        KVM: x86: fix fixing of hypercalls
        KVM: arm/arm64: vgic: Fix deadlock on error handling
        KVM: arm64: Access CNTHCTL_EL2 bit fields correctly on VHE systems
        KVM: arm/arm64: Fix occasional warning from the timer work function
      4c9eff7a
    • L
      Merge branch 'scsi-target-for-v4.10' of... · 51162264
      Linus Torvalds 提交于
      Merge branch 'scsi-target-for-v4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/bvanassche/linux
      
      Pull SCSI target fixes from Bart Van Assche:
      
       - two small fixes for the ibmvscsis driver
      
       - ten patches with bug fixes for the target mode of the qla2xxx driver
      
       - four patches that avoid that the "sparse" and "smatch" static
         analyzer tools report false positives for the qla2xxx code base
      
      * 'scsi-target-for-v4.10' of git://git.kernel.org/pub/scm/linux/kernel/git/bvanassche/linux:
        qla2xxx: Disable out-of-order processing by default in firmware
        qla2xxx: Fix erroneous invalid handle message
        qla2xxx: Reduce exess wait during chip reset
        qla2xxx: Terminate exchange if corrupted
        qla2xxx: Fix crash due to null pointer access
        qla2xxx: Collect additional information to debug fw dump
        qla2xxx: Reset reserved field in firmware options to 0
        qla2xxx: Set tcm_qla2xxx version to automatically track qla2xxx version
        qla2xxx: Include ATIO queue in firmware dump when in target mode
        qla2xxx: Fix wrong IOCB type assumption
        qla2xxx: Avoid that building with W=1 triggers complaints about set-but-not-used variables
        qla2xxx: Move two arrays from header files to .c files
        qla2xxx: Declare an array with file scope static
        qla2xxx: Fix indentation
        ibmvscsis: Fix sleeping in interrupt context
        ibmvscsis: Fix max transfer length
      51162264
    • L
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · e3737b91
      Linus Torvalds 提交于
      Pull block fixes from Jens Axboe:
       "Just two small fixes for this -rc.
      
        One is just killing an unused variable from Keith, but the other
        fixes a performance regression for nbd in this series, where we
        inadvertently flipped when we set MSG_MORE when outputting data"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        nbd: only set MSG_MORE when we have more to send
        blk-mq: Remove unused variable
      e3737b91
    • L
      Merge tag 'spi-fix-v4.10-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · cca112ec
      Linus Torvalds 提交于
      Pull spi fixes from Mark Brown:
       "The usual small smattering of driver specific fixes. A few bits that
        stand out here:
      
         - the R-Car patches adding fallbacks are just adding new compatible
           strings to the driver so that device trees are written in a more
           robustly future proof fashion, this isn't strictly a fix but it's
           just new IDs and it's better to get it into mainline sooner to
           improve the ABI
      
         - the DesignWare "switch to new API part 2" patch is actually a
           misleadingly titled fix for a bit that got missed in the original
           conversion"
      
      * tag 'spi-fix-v4.10-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi:
        spi: davinci: use dma_mapping_error()
        spi: spi-axi: Free resources on error path
        spi: pxa2xx: add missed break
        spi: dw-mid: switch to new dmaengine_terminate_* API (part 2)
        spi: dw: Make debugfs name unique between instances
        spi: sh-msiof: Do not use C++ style comment
        spi: armada-3700: Set mode bits correctly
        spi: armada-3700: fix unsigned compare than zero on irq
        spi: sh-msiof: Add R-Car Gen 2 and 3 fallback bindings
        spi: SPI_FSL_DSPI should depend on HAS_DMA
      cca112ec
    • L
      Merge tag 'ceph-for-4.10-rc5' of git://github.com/ceph/ceph-client · e90665a5
      Linus Torvalds 提交于
      Pull ceph fixes from Ilya Dryomov:
       "Three filesystem endianness fixes (one goes back to the 2.6 era, all
        marked for stable) and two fixups for this merge window's patches"
      
      * tag 'ceph-for-4.10-rc5' of git://github.com/ceph/ceph-client:
        ceph: fix bad endianness handling in parse_reply_info_extra
        ceph: fix endianness bug in frag_tree_split_cmp
        ceph: fix endianness of getattr mask in ceph_d_revalidate
        libceph: make sure ceph_aes_crypt() IV is aligned
        ceph: fix ceph_get_caps() interruption
      e90665a5
    • L
      Merge branch 'overlayfs-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs · 56ef1882
      Linus Torvalds 提交于
      Pull overlayfs fix from Miklos Szeredi:
       "This fixes a regression introduced in this cycle"
      
      * 'overlayfs-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs:
        ovl: fix possible use after free on redirect dir lookup
      56ef1882
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse · eefa9feb
      Linus Torvalds 提交于
      Pull fuse fixes from Miklos Szeredi:
       "Fix two regressions, one introduced in 4.9 and a less recent one in
        4.2"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:
        fuse: fix time_to_jiffies nsec sanity check
        fuse: clear FR_PENDING flag when moving requests out of pending queue
      eefa9feb
    • L
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · f09ff1de
      Linus Torvalds 提交于
      Pull SCSI fixes from James Bottomley:
       "This is a set of 12 fixes including the mpt3sas one that was causing
        hangs on ATA passthrough.
      
        The others are a couple of zoned block device fixes, a SAS device
        detection bug which lead to SATA drives not being matched to bays, two
        qla2xxx MSI fixes, a qla2xxx req for rsp confusion caused by cut and
        paste, and a few other minor fixes"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        scsi: mpt3sas: fix hang on ata passthrough commands
        scsi: lpfc: Set elsiocb contexts to NULL after freeing it
        scsi: sd: Ignore zoned field for host-managed devices
        scsi: sd: Fix wrong DPOFUA disable in sd_read_cache_type
        scsi: bfa: fix wrongly initialized variable in bfad_im_bsg_els_ct_request()
        scsi: ses: Fix SAS device detection in enclosure
        scsi: libfc: Fix variable name in fc_set_wwpn
        scsi: lpfc: avoid double free of resource identifiers
        scsi: qla2xxx: remove irq_affinity_notifier
        scsi: qla2xxx: fix MSI-X vector affinity
        scsi: qla2xxx: Fix apparent cut-n-paste error.
        scsi: qla2xxx: Get mutex lock before checking optrom_state
      f09ff1de
    • L
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · f8f2d4bd
      Linus Torvalds 提交于
      Pull arm64 fixes from Catalin Marinas:
      
       - avoid potential stack information leak via the ptrace ABI caused by
         uninitialised variables
      
       - SWIOTLB DMA API fall-back allocation fix when the SWIOTLB buffer is
         not initialised (all RAM is suitable for 32-bit DMA masks)
      
       - fix the bad_mode function returning for unhandled exceptions coming
         from user space
      
       - fix name clash in __page_to_voff()
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: avoid returning from bad_mode
        arm64/ptrace: Reject attempts to set incomplete hardware breakpoint fields
        arm64/ptrace: Avoid uninitialised struct padding in fpr_set()
        arm64/ptrace: Preserve previous registers for short regset write
        arm64/ptrace: Preserve previous registers for short regset write
        arm64/ptrace: Preserve previous registers for short regset write
        arm64: mm: avoid name clash in __page_to_voff()
        arm64: Fix swiotlb fallback allocation
      f8f2d4bd
    • R
      Merge tag 'kvm-s390-master-4.10-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kvms390/linux · fec96901
      Radim Krčmář 提交于
      KVM: s390: Fix for 4.10 (via kvm/master)
      
      Fix a kernel memory exposure.
      fec96901
  9. 20 1月, 2017 11 次提交
    • C
      KVM: s390: do not expose random data via facility bitmap · 04478197
      Christian Borntraeger 提交于
      kvm_s390_get_machine() populates the facility bitmap by copying bytes
      from the host results that are stored in a 256 byte array in the prefix
      page. The KVM code does use the size of the target buffer (2k), thus
      copying and exposing unrelated kernel memory (mostly machine check
      related logout data).
      
      Let's use the size of the source buffer instead.  This is ok, as the
      target buffer will always be greater or equal than the source buffer as
      the KVM internal buffers (and thus S390_ARCH_FAC_LIST_SIZE_BYTE) cover
      the maximum possible size that is allowed by STFLE, which is 256
      doublewords. All structures are zero allocated so we can leave bytes
      256-2047 unchanged.
      
      Add a similar fix for kvm_arch_init_vm().
      Reported-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      [found with smatch]
      Signed-off-by: NChristian Borntraeger <borntraeger@de.ibm.com>
      CC: stable@vger.kernel.org
      Acked-by: NCornelia Huck <cornelia.huck@de.ibm.com>
      04478197
    • M
      xhci: remove WARN_ON if dma mask is not set for platform devices · 488dc164
      Mathias Nyman 提交于
      The warn on is a bit too much, we will anyway set the dma mask if not set
      previously.
      
      The main reason for this fix is that 4.10-rc1  has a dwc3 change that
      pass a parent sysdev dev pointer instead of setting the dma mask of
      its xhci platform device. xhci platform driver can then get more
      attributes from the sysdev than just the dma mask.
      
      The usb core and xhci changes are not yet in 4.10, and a fix like
      this was preferred instead of taking those big changes this late in
      the rc-cycle.
      Signed-off-by: NMathias Nyman <mathias.nyman@linux.intel.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      488dc164
    • Z
      bad94f80
    • A
      powerpc: Ignore reserved field in DCSR and PVR reads and writes · 178f3582
      Anton Blanchard 提交于
      IBM bit 31 (for the rest of us - bit 0) is a reserved field in the
      instruction definition of mtspr and mfspr. Hardware is encouraged to
      (and does) ignore it.
      
      As a result, if userspace executes an mtspr DSCR with the reserved bit
      set, we get a DSCR facility unavailable exception. The kernel fails to
      match against the expected value/mask, and we silently return to
      userspace to try and re-execute the same mtspr DSCR instruction. We
      loop forever until the process is killed.
      
      We should do something here, and it seems mirroring what hardware does
      is the better option vs killing the process. While here, relax the
      matching of mfspr PVR too.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: NAnton Blanchard <anton@samba.org>
      Signed-off-by: NMichael Ellerman <mpe@ellerman.id.au>
      178f3582
    • D
      powerpc/ptrace: Preserve previous TM fprs/vsrs on short regset write · b34ca601
      Dave Martin 提交于
      Ensure that if userspace supplies insufficient data to PTRACE_SETREGSET
      to fill all the check pointed registers, the thread's old check pointed
      registers are preserved.
      
      Fixes: 9d3918f7 ("powerpc/ptrace: Enable support for NT_PPC_CVSX")
      Fixes: 19cbcbf7 ("powerpc/ptrace: Enable support for NT_PPC_CFPR")
      Cc: stable@vger.kernel.org # v4.8+
      Signed-off-by: NDave Martin <Dave.Martin@arm.com>
      Signed-off-by: NMichael Ellerman <mpe@ellerman.id.au>
      b34ca601
    • D
      powerpc/ptrace: Preserve previous fprs/vsrs on short regset write · 99dfe80a
      Dave Martin 提交于
      Ensure that if userspace supplies insufficient data to PTRACE_SETREGSET
      to fill all the registers, the thread's old registers are preserved.
      
      Fixes: c6e6771b ("powerpc: Introduce VSX thread_struct and CONFIG_VSX")
      Cc: stable@vger.kernel.org # v2.6.27+
      Signed-off-by: NDave Martin <Dave.Martin@arm.com>
      Signed-off-by: NMichael Ellerman <mpe@ellerman.id.au>
      99dfe80a
    • L
      Merge tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 44b4b461
      Linus Torvalds 提交于
      Pull ARM SoC fixes from Olof Johansson:
       "We've been sitting on fixes for a while, and they keep trickling in at
        a low rate. Nothing in here comes across as particularly scary or
        noteworthy, for the most part it's a large collection of small DT
        tweaks"
      
      * tag 'armsoc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (24 commits)
        ARM: dts: da850-evm: fix read access to SPI flash
        ARM: dts: omap3: Fix Card Detect and Write Protect on Logic PD SOM-LV
        ARM64: dts: meson-gxbb-odroidc2: Disable SCPI DVFS
        ARM: dts: OMAP5 / DRA7: indicate that SATA port 0 is available.
        ARM: dts: NSP: Fix DT ranges error
        ARM: multi_v7_defconfig: set bcm47xx watchdog
        ARM: multi_v7_defconfig: fix config typo
        ARM: dts: dra72-evm-revc: fix typo in ethernet-phy node
        soc: ti: wkup_m3_ipc: Fix error return code in wkup_m3_ipc_probe()
        ARM: ux500: fix prcmu_is_cpu_in_wfi() calculation
        ARM: dts: sunxi: Change node name for pwrseq pin on Olinuxino-lime2-emmc
        ARM: dts: sun8i: Support DTB build for NanoPi M1
        ARM: dts: sun6i: hummingbird: Enable display engine again
        ARM: dts: sun6i: Disable display pipeline by default
        ARM, ARM64: dts: drop "arm,amba-bus" in favor of "simple-bus" part 3
        ARM: dts: imx6qdl-nitrogen6_som2: fix sgtl5000 pinctrl init
        ARM: dts: imx6qdl-nitrogen6_max: fix sgtl5000 pinctrl init
        ARM: OMAP1: DMA: Correct the number of logical channels
        ARM: dts: am335x-icev2: Remove the duplicated pinmux setting
        ARM: OMAP2+: Fix WL1283 Bluetooth Baud Rate
        ...
      44b4b461
    • L
      Merge tag 'xfs-for-linux-4.10-rc5-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · 6e0362b3
      Linus Torvalds 提交于
      Pull xfs fixes from Darrick Wong:
       "I have a few more patches this week -- one to make the behavior of a
        quota id ioctl consistent with the other filesystems, and the rest
        improve validation of i_mode & i_size values coming into xfs so that
        we don't read off the ends of arrays or crash when handed garbage disk
        data.
      
        Summary:
         - inode i_mode sanitization
         - prevent overflows in getnextquota
         - minor build fixes"
      
      * tag 'xfs-for-linux-4.10-rc5-1' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        xfs: fix xfs_mode_to_ftype() prototype
        xfs: don't wrap ID in xfs_dq_get_next_id
        xfs: sanity check inode di_mode
        xfs: sanity check inode mode when creating new dentry
        xfs: replace xfs_mode_to_ftype table with switch statement
        xfs: add missing include dependencies to xfs_dir2.h
        xfs: sanity check directory inode di_size
        xfs: make the ASSERT() condition likely
      6e0362b3
    • F
      ARM: dts: da850-evm: fix read access to SPI flash · 43849785
      Fabien Parent 提交于
      Read access to the SPI flash are broken on da850-evm, i.e. the data
      read is not what is actually programmed on the flash.
      According to the datasheet for the M25P64 part present on the da850-evm,
      if the SPI frequency is higher than 20MHz then the READ command is not
      usable anymore and only the FAST_READ command can be used to read data.
      
      This commit specifies in the DTS that we should use FAST_READ command
      instead of the READ command.
      
      Cc: stable@vger.kernel.org
      Tested-by: NKevin Hilman <khilman@baylibre.com>
      Signed-off-by: NFabien Parent <fparent@baylibre.com>
      [nsekhar@ti.com: subject line adjustment]
      Signed-off-by: NSekhar Nori <nsekhar@ti.com>
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      43849785
    • B
      virtio/s390: virtio: constify virtio_config_ops structures · 0db1dba5
      Bhumika Goyal 提交于
      Declare virtio_config_ops structure as const as it is only stored in the
      config field of a virtio_device structure. This field is of type const, so
      virtio_config_ops structures having this property can be declared const.
      Done using Coccinelle:
      
      @r1 disable optional_qualifier@
      identifier i;
      position p;
      @@
      static struct virtio_config_ops i@p={...};
      
      @ok1@
      identifier r1.i;
      position p;
      struct virtio_ccw_device x;
      @@
      x.vdev.config=&i@p
      
      @bad@
      position p!={r1.p,ok1.p};
      identifier r1.i;
      @@
      i@p
      
      @depends on !bad disable optional_qualifier@
      identifier r1.i;
      @@
      +const
      struct virtio_config_ops i;
      
      File size before and after applying the patch remains the same.
      text	data	bss	dec	hex   filename
      9235	296	32928	42459	a5db  drivers/s390/virtio/virtio_ccw.o
      Signed-off-by: NBhumika Goyal <bhumirks@gmail.com>
      Message-Id: <1484333336-13443-1-git-send-email-bhumirks@gmail.com>
      Signed-off-by: NChristian Borntraeger <borntraeger@de.ibm.com>
      Signed-off-by: NCornelia Huck <cornelia.huck@de.ibm.com>
      0db1dba5
    • C
      virtio/s390: add missing \n to end of dev_err message · 99240622
      Colin Ian King 提交于
      Trival fix, dev_err message is missing a \n, so add it.
      Signed-off-by: NColin Ian King <colin.king@canonical.com>
      Message-Id: <20160927200844.16008-1-colin.king@canonical.com>
      Signed-off-by: NChristian Borntraeger <borntraeger@de.ibm.com>
      Signed-off-by: NCornelia Huck <cornelia.huck@de.ibm.com>
      99240622