1. 30 8月, 2014 9 次提交
    • L
      Merge tag 'usb-3.17-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 848298c6
      Linus Torvalds 提交于
      Pull USB fixes from Greg KH:
       "Here are a bunch of fixes for the USB drivers for 3.17-rc3.
      
        Also in here is the movement of the usbip driver out of staging, into
        the "real" part of the kernel, it had to wait until after -rc1 to
        handle the merge issues involved between the USB and staging trees.
        The code is identical, just file movements there.
      
        The USB fixes are all over the place, new device ids, xhci fixes for
        reported issues and the usual gadget driver fixes as well.  All have
        been in linux-next for a while now"
      
      * tag 'usb-3.17-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (46 commits)
        USB: fix build error with CONFIG_PM_RUNTIME disabled
        Revert "usb: ehci/ohci-exynos: Fix PHY getting sequence"
        xhci: Disable streams on Via XHCI with device-id 0x3432
        USB: serial: fix potential heap buffer overflow
        USB: serial: fix potential stack buffer overflow
        usb: ehci/ohci-exynos: Fix PHY getting sequence
        usb: hub: Prevent hub autosuspend if usbcore.autosuspend is -1
        USB: sisusb: add device id for Magic Control USB video
        usb: dwc2: gadget: Set the default EP max packet value as 8 bytes
        usb: ehci: using wIndex + 1 for hub port
        USB: storage: add quirk for Newer Technology uSCSI SCSI-USB converter
        MAINTAINERS: Add an entry for USB/IP driver
        usbip: remove struct usb_device_id table
        usbip: move usbip kernel code out of staging
        usbip: move usbip userspace code out of staging
        USB: whiteheat: Added bounds checking for bulk command response
        usb: gadget: remove $(PWD) in ccflags-y
        usb: pch_udc: usb gadget device support for Intel Quark X1000
        usb: gadget: uvc: fix possible lockup in uvc gadget
        usb: wusbcore: fix below build warning
        ...
      848298c6
    • L
      Merge tag 'staging-3.17-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · bbf6c0a7
      Linus Torvalds 提交于
      Pull staging driver fixes from Greg KH:
       "Here are some staging driver fixes for your tree.  Nothing huge, just
        some fixes for issues that have been reported and a few new device ids
        added.
      
        All have been in linux-next for a while"
      
      * tag 'staging-3.17-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
        staging: r8188eu: Add new USB ID
        staging/rtl8188eu: add 0df6:0076 Sitecom Europe B.V.
        staging: android: fix a possible memory leak
        staging: lustre: lustre: libcfs: workitem.c: Cleaning up missing null-terminate after strncpy call
        staging: et131x: Fix errors caused by phydev->addr accesses before initialisation
        staging: lustre: Remove circular dependency on header
      bbf6c0a7
    • L
      Merge tag 'char-misc-3.17-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 7acaf520
      Linus Torvalds 提交于
      Pull char/misc driver fixes from Greg KH:
       "Here are 3 fixes for the mei and thunderbolt drivers that resolve some
        reported issues.
      
        All have been in linux-next for a while"
      
      * tag 'char-misc-3.17-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
        thunderbolt: Clear hops before overwriting
        mei: nfc: fix memory leak in error path
        mei: reset client state on queued connect request
      7acaf520
    • L
      Merge tag 'fbdev-fixes-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux · 115619b3
      Linus Torvalds 提交于
      Pull fbdev fixes from Tomi Valkeinen:
       "Minor fbdev fixes for da8xx-fb, atmel_lcdfb, arm clcd and chipsfb"
      
      * tag 'fbdev-fixes-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux:
        video: da8xx-fb: preserve display width when changing HSYNC
        video: of: display_timing: double free on error
        drivers: video: fbdev: atmel_lcdfb.c: fix error return code
        video: ARM CLCD: Fix calculation of bits-per-pixel
        fbdev: Remove __init from chips_hw_init() to fix build failure
      115619b3
    • L
      Merge tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · d4f03186
      Linus Torvalds 提交于
      Pull ext4 bugfixes from Ted Ts'o:
       "Ext4 bug fixes for 3.17, to provide better handling of memory
        allocation failures, and to fix some journaling bugs involving
        journal checksums and FALLOC_FL_ZERO_RANGE"
      
      * tag 'ext4_for_linus_stable' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
        ext4: fix same-dir rename when inline data directory overflows
        jbd2: fix descriptor block size handling errors with journal_csum
        jbd2: fix infinite loop when recovering corrupt journal blocks
        ext4: update i_disksize coherently with block allocation on error path
        ext4: fix transaction issues for ext4_fallocate and ext_zero_range
        ext4: fix incorect journal credits reservation in ext4_zero_range
        ext4: move i_size,i_disksize update routines to helper function
        ext4: fix BUG_ON in mb_free_blocks()
        ext4: propagate errors up to ext4_find_entry()'s callers
      d4f03186
    • L
      Merge tag 'dm-3.17-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm · ef13c8af
      Linus Torvalds 提交于
      Pull device mapper fix from Mike Snitzer:
       "Fix a 3.17-rc1 regression introduced by switching the DM crypt target
        to using per-bio data"
      
      * tag 'dm-3.17-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
        dm crypt: fix access beyond the end of allocated space
      ef13c8af
    • L
      Merge branch 'for-linus' of git://git.kernel.dk/linux-block · 522a15db
      Linus Torvalds 提交于
      Pull block layer fixes from Jens Axboe:
       "A smaller collection of fixes that have come up since the initial
        merge window pull request.  This contains:
      
         - error handling cleanup and support for larger than 16 byte cdbs in
           sg_io() from Christoph.  The latter just matches what bsg and
           friends support, sg_io() got left out in the merge.
      
         - an option for brd to expose partitions in /proc/partitions.  They
           are hidden by default for compat reasons.  From Dmitry Monakhov.
      
         - a few blk-mq fixes from me - killing a dead/unused flag, fix for
           merging happening even if turned off, and correction of a few
           comments.
      
         - removal of unnecessary ->owner setting in systemace.  From Michal
           Simek.
      
         - two related fixes for a problem with nesting freezing of queues in
           blk-mq.  One from Ming Lei removing an unecessary freeze operation,
           and another from Tejun fixing the nesting regression introduced in
           the merge window.
      
         - fix for a BUG_ON() at bio_endio time when protection info is
           attached and the IO has an error.  From Sagi Grimberg.
      
         - two scsi_ioctl bug fixes for regressions with scsi-mq from Tony
           Battersby.
      
         - a cfq weight update fix and subsequent comment update from Toshiaki
           Makita"
      
      * 'for-linus' of git://git.kernel.dk/linux-block:
        cfq-iosched: Add comments on update timing of weight
        cfq-iosched: Fix wrong children_weight calculation
        block: fix error handling in sg_io
        fix regression in SCSI_IOCTL_SEND_COMMAND
        scsi-mq: fix requests that use a separate CDB buffer
        block: support > 16 byte CDBs for SG_IO
        block: cleanup error handling in sg_io
        brd: add ram disk visibility option
        block: systemace: Remove .owner field for driver
        blk-mq: blk_mq_freeze_queue() should allow nesting
        blk-mq: correct a few wrong/bad comments
        block: Fix BUG_ON when pi errors occur
        blk-mq: don't allow merges if turned off for the queue
        blk-mq: get rid of unused BLK_MQ_F_SHOULD_SORT flag
        blk-mq: fix WARNING "percpu_ref_kill() called more than once!"
      522a15db
    • W
      alpha: io: implement relaxed accessor macros for writes · 9e36c633
      Will Deacon 提交于
      write{b,w,l,q}_relaxed are implemented by some architectures in order to
      permit memory-mapped I/O writes with weaker barrier semantics than the
      non-relaxed variants.
      
      This patch implements these write macros for Alpha, in the same vein as
      the relaxed read macros, which are already implemented.
      Acked-by: NRichard Henderson <rth@twiddle.net>
      Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      Signed-off-by: NMatt Turner <mattst88@gmail.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      9e36c633
    • M
  2. 29 8月, 2014 11 次提交
    • D
      ext4: fix same-dir rename when inline data directory overflows · d80d448c
      Darrick J. Wong 提交于
      When performing a same-directory rename, it's possible that adding or
      setting the new directory entry will cause the directory to overflow
      the inline data area, which causes the directory to be converted to an
      extent-based directory.  Under this circumstance it is necessary to
      re-read the directory when deleting the old dirent because the "old
      directory" context still points to i_block in the inode table, which
      is now an extent tree root!  The delete fails with an FS error, and
      the subsequent fsck complains about incorrect link counts and
      hardlinked directories.
      
      Test case (originally found with flat_dir_test in the metadata_csum
      test program):
      
      # mkfs.ext4 -O inline_data /dev/sda
      # mount /dev/sda /mnt
      # mkdir /mnt/x
      # touch /mnt/x/changelog.gz /mnt/x/copyright /mnt/x/README.Debian
      # sync
      # for i in /mnt/x/*; do mv $i $i.longer; done
      # ls -la /mnt/x/
      total 0
      -rw-r--r-- 1 root root 0 Aug 25 12:03 changelog.gz.longer
      -rw-r--r-- 1 root root 0 Aug 25 12:03 copyright
      -rw-r--r-- 1 root root 0 Aug 25 12:03 copyright.longer
      -rw-r--r-- 1 root root 0 Aug 25 12:03 README.Debian.longer
      
      (Hey!  Why are there four files now??)
      Signed-off-by: NDarrick J. Wong <darrick.wong@oracle.com>
      Signed-off-by: NTheodore Ts'o <tytso@mit.edu>
      Cc: stable@vger.kernel.org
      d80d448c
    • D
      jbd2: fix descriptor block size handling errors with journal_csum · db9ee220
      Darrick J. Wong 提交于
      It turns out that there are some serious problems with the on-disk
      format of journal checksum v2.  The foremost is that the function to
      calculate descriptor tag size returns sizes that are too big.  This
      causes alignment issues on some architectures and is compounded by the
      fact that some parts of jbd2 use the structure size (incorrectly) to
      determine the presence of a 64bit journal instead of checking the
      feature flags.
      
      Therefore, introduce journal checksum v3, which enlarges the
      descriptor block tag format to allow for full 32-bit checksums of
      journal blocks, fix the journal tag function to return the correct
      sizes, and fix the jbd2 recovery code to use feature flags to
      determine 64bitness.
      
      Add a few function helpers so we don't have to open-code quite so
      many pieces.
      
      Switching to a 16-byte block size was found to increase journal size
      overhead by a maximum of 0.1%, to convert a 32-bit journal with no
      checksumming to a 32-bit journal with checksum v3 enabled.
      Signed-off-by: NDarrick J. Wong <darrick.wong@oracle.com>
      Reported-by: NTR Reardon <thomas_reardon@hotmail.com>
      Signed-off-by: NTheodore Ts'o <tytso@mit.edu>
      Cc: stable@vger.kernel.org
      db9ee220
    • D
      jbd2: fix infinite loop when recovering corrupt journal blocks · 022eaa75
      Darrick J. Wong 提交于
      When recovering the journal, don't fall into an infinite loop if we
      encounter a corrupt journal block.  Instead, just skip the block and
      return an error, which fails the mount and thus forces the user to run
      a full filesystem fsck.
      Signed-off-by: NDarrick J. Wong <darrick.wong@oracle.com>
      Signed-off-by: NTheodore Ts'o <tytso@mit.edu>
      Cc: stable@vger.kernel.org
      022eaa75
    • D
      ext4: update i_disksize coherently with block allocation on error path · 6603120e
      Dmitry Monakhov 提交于
      In case of delalloc block i_disksize may be less than i_size. So we
      have to update i_disksize each time we allocated and submitted some
      blocks beyond i_disksize.  We weren't doing this on the error paths,
      so fix this.
      
      testcase: xfstest generic/019
      Signed-off-by: NDmitry Monakhov <dmonakhov@openvz.org>
      Signed-off-by: NTheodore Ts'o <tytso@mit.edu>
      Cc: stable@vger.kernel.org
      6603120e
    • M
      dm crypt: fix access beyond the end of allocated space · d49ec52f
      Mikulas Patocka 提交于
      The DM crypt target accesses memory beyond allocated space resulting in
      a crash on 32 bit x86 systems.
      
      This bug is very old (it dates back to 2.6.25 commit 3a7f6c99 "dm
      crypt: use async crypto").  However, this bug was masked by the fact
      that kmalloc rounds the size up to the next power of two.  This bug
      wasn't exposed until 3.17-rc1 commit 298a9fa0 ("dm crypt: use per-bio
      data").  By switching to using per-bio data there was no longer any
      padding beyond the end of a dm-crypt allocated memory block.
      
      To minimize allocation overhead dm-crypt puts several structures into one
      block allocated with kmalloc.  The block holds struct ablkcipher_request,
      cipher-specific scratch pad (crypto_ablkcipher_reqsize(any_tfm(cc))),
      struct dm_crypt_request and an initialization vector.
      
      The variable dmreq_start is set to offset of struct dm_crypt_request
      within this memory block.  dm-crypt allocates the block with this size:
      cc->dmreq_start + sizeof(struct dm_crypt_request) + cc->iv_size.
      
      When accessing the initialization vector, dm-crypt uses the function
      iv_of_dmreq, which performs this calculation: ALIGN((unsigned long)(dmreq
      + 1), crypto_ablkcipher_alignmask(any_tfm(cc)) + 1).
      
      dm-crypt allocated "cc->iv_size" bytes beyond the end of dm_crypt_request
      structure.  However, when dm-crypt accesses the initialization vector, it
      takes a pointer to the end of dm_crypt_request, aligns it, and then uses
      it as the initialization vector.  If the end of dm_crypt_request is not
      aligned on a crypto_ablkcipher_alignmask(any_tfm(cc)) boundary the
      alignment causes the initialization vector to point beyond the allocated
      space.
      
      Fix this bug by calculating the variable iv_size_padding and adding it
      to the allocated size.
      
      Also correct the alignment of dm_crypt_request.  struct dm_crypt_request
      is specific to dm-crypt (it isn't used by the crypto subsystem at all),
      so it is aligned on __alignof__(struct dm_crypt_request).
      
      Also align per_bio_data_size on ARCH_KMALLOC_MINALIGN, so that it is
      aligned as if the block was allocated with kmalloc.
      Reported-by: NKrzysztof Kolasa <kkolasa@winsoft.pl>
      Tested-by: NMilan Broz <gmazyland@gmail.com>
      Signed-off-by: NMikulas Patocka <mpatocka@redhat.com>
      Signed-off-by: NMike Snitzer <snitzer@redhat.com>
      d49ec52f
    • L
      Merge tag 'backlight-fixes-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight · 59753a80
      Linus Torvalds 提交于
      Pull backlight fix from Lee Jones:
       "One simple fix to invalidate GPIO non-request"
      
      * tag 'backlight-fixes-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight:
        pwm-backlight: Fix bogus request for GPIO#0 when instantiated from DT
      59753a80
    • L
      Merge tag 'mfd-fixes-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd · 2db3cff2
      Linus Torvalds 提交于
      Pull mfd fixes from Lee Jones:
       "Couple of simple fixes due for the 3.17 rcs
      
        (and a sneaky document addition that slipped from the previous
        pull-request)"
      
      * tag 'mfd-fixes-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd:
        mfd: twl4030-power: Fix PM idle pin configuration to not conflict with regulators
        mfd: tc3589x: Add device tree bindings
        mfd: ab8500-core: Use 'ifdef' for config options
        mfd: htc-i2cpld: Fix %d confusingly prefixed with 0x in format string
        mfd: omap-usb-host: Fix %d confusingly prefixed with 0x in format string
      2db3cff2
    • L
      Merge tag 'pinctrl-v3.17-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · 0caf14e6
      Linus Torvalds 提交于
      Pull pin-control fixes from Linus Walleij:
       "My first (a bit delayed) pack of pin control fixes for the v3.17
        series, only driver fixes:
      
         - SH-PFC (Renesas) r8a7791 CAN bus pin group problem
         - Rockchip (GPIO0 configuration)
         - Tegra-xusb (interrupt handling)
         - Exynos (GPIO interrupt locking)
         - Qualcomm (fix misleading example interrupts)
         - minor non-critical fixes for abx500 and AT91 also sneaked in,
           because I initially intended this pull for post RC-1, hope it's
           still OK"
      
      * tag 'pinctrl-v3.17-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
        pinctrl: qcom: apq8064: Correct interrupts in example
        pinctrl: exynos: Lock GPIOs as interrupts when used as EINTs
        pinctrl: pinctrl-at91.c: fix decimal printf format specifiers prefixed with 0x
        pinctrl: abx500: remove useless check
        pinctrl: tegra-xusb: testing wrong variable in probe()
        pinctrl: tegra-xusb: fix an off by one test
        pinctrl: rockchip: fix rk3288 gpio0 configuration
        sh-pfc: r8a7791: fix CAN pin groups
      0caf14e6
    • L
      Merge tag 'for-3.17-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/sumits/dma-buf · daf543b1
      Linus Torvalds 提交于
      Pull dma-buf fixes from Sumit Semwal:
       "The major changes for 3.17 already went via Greg-KH's tree this time
        as well; this is a small pull request for dma-buf - all documentation
        related"
      
      * tag 'for-3.17-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/sumits/dma-buf:
        dma-buf/fence: Fix one more kerneldoc warning
        dma-buf/fence: Fix a kerneldoc warning
        Documentation/dma-buf-sharing.txt: update API descriptions
      daf543b1
    • L
      Merge tag 'sound-3.17-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 521bd5e4
      Linus Torvalds 提交于
      Pull sound fixes from Takashi Iwai:
       "Here contains not many exciting changes but just a few minor ones: An
        off-by-one proc write fix, a couple of trivial incldue guard fixes,
        Acer laptop pinconfig fix, and a fix for DSD formats that are still
        rarely used"
      
      * tag 'sound-3.17-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: hda - Set up initial pins for Acer Aspire V5
        ALSA: pcm: Fix the silence data for DSD formats
        ALSA: ctxfi: ct20k1reg: Fix typo in include guard
        ALSA: hda: ca0132_regs.h: Fix typo in include guard
        ALSA: core: fix buffer overflow in snd_info_get_line()
      521bd5e4
    • L
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · 6e8f7b09
      Linus Torvalds 提交于
      Pull drm fixes from Dave Airlie:
       "Nothing major, one core oops fixes, some radeon oops fixes, some sti
        driver fixups, msm driver fixes and a minor Kconfig update for the ww
        mutex debugging"
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
        drm/ast: Add missing entry to dclk_table[]
        drm: fix division-by-zero on dumb_create()
        ww-mutex: clarify help text for DEBUG_WW_MUTEX_SLOWPATH
        radeon: Test for PCI root bus before assuming bus->self
        drm/radeon: handle broken disabled rb mask gracefully (6xx/7xx) (v2)
        drm/radeon: save/restore the PD addr on suspend/resume
        drm/msm: Fix missing unlock on error in msm_fbdev_create()
        drm/msm: fix compile error for non-dt builds
        drm/msm/mdp4: request vblank during modeset
        drm/msm: avoid flood of kernel logs on faults
        drm: sti: Add missing dependency on RESET_CONTROLLER
        drm: sti: Make of_device_id array const
        drm: sti: Fix return value check in sti_drm_platform_probe()
        drm: sti: hda: fix return value check in sti_hda_probe()
        drm: sti: hdmi: fix return value check in sti_hdmi_probe()
        drm: sti: tvout: fix return value check in sti_tvout_probe()
      6e8f7b09
  3. 28 8月, 2014 20 次提交