1. 24 1月, 2015 9 次提交
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · c4e00f1d
      Linus Torvalds 提交于
      Pull btrfs fixes from Chris Mason:
       "We have a few fixes in my for-linus branch.
      
        Qu Wenruo's batch fix a regression between some our merge window pull
        and the inode_cache feature.  The rest are smaller bugs"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
        btrfs: Don't call btrfs_start_transaction() on frozen fs to avoid deadlock.
        btrfs: Fix the bug that fs_info->pending_changes is never cleared.
        btrfs: fix state->private cast on 32 bit machines
        Btrfs: fix race deleting block group from space_info->ro_bgs list
        Btrfs: fix incorrect freeing in scrub_stripe
        btrfs: sync ioctl, handle errors after transaction start
      c4e00f1d
    • L
      Merge tag 'platform-drivers-x86-v3.19-2' of... · 53448a53
      Linus Torvalds 提交于
      Merge tag 'platform-drivers-x86-v3.19-2' of git://git.infradead.org/users/dvhart/linux-platform-drivers-x86
      
      Pull platform driver fix from Darren Hart:
       "Revert keyboard backlight sysfs support and documentation.
      
        The support for the dell-laptop keyboard backlight was flawed and the
        fix:
      
              https://lkml.org/lkml/2015/1/14/539
      
        was more invasive that I felt comfortable sending at RC5.
      
        This series reverts the support for the dell-laptop keyboard backlight
        as well as the documentation for the newly created sysfs attributes.
      
        We'll get this implemented correctly for 3.20"
      
      * tag 'platform-drivers-x86-v3.19-2' of git://git.infradead.org/users/dvhart/linux-platform-drivers-x86:
        Revert "platform: x86: dell-laptop: Add support for keyboard backlight"
        Revert "Documentation: Add entry for dell-laptop sysfs interface"
      53448a53
    • L
      Merge tag 'pci-v3.19-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · 55069592
      Linus Torvalds 提交于
      Pull PCI fixes from Bjorn Helgaas:
       "These are fixes for:
      
         - a resource management problem that causes a Radeon "Fatal error
           during GPU init" on machines where the BIOS programmed an invalid
           Root Port window.  This was a regression in v3.16.
      
         - an Atheros AR93xx device that doesn't handle PCI bus resets
           correctly.  This was a regression in v3.14.
      
         - an out-of-date email address"
      
      * tag 'pci-v3.19-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
        MAINTAINERS: Update Richard Zhu's email address
        sparc/PCI: Clip bridge windows to fit in upstream windows
        powerpc/PCI: Clip bridge windows to fit in upstream windows
        parisc/PCI: Clip bridge windows to fit in upstream windows
        mn10300/PCI: Clip bridge windows to fit in upstream windows
        microblaze/PCI: Clip bridge windows to fit in upstream windows
        ia64/PCI: Clip bridge windows to fit in upstream windows
        frv/PCI: Clip bridge windows to fit in upstream windows
        alpha/PCI: Clip bridge windows to fit in upstream windows
        x86/PCI: Clip bridge windows to fit in upstream windows
        PCI: Add pci_claim_bridge_resource() to clip window if necessary
        PCI: Add pci_bus_clip_resource() to clip to fit upstream window
        PCI: Pass bridge device, not bus, when updating bridge windows
        PCI: Mark Atheros AR93xx to avoid bus reset
        PCI: Add flag for devices where we can't use bus reset
      55069592
    • L
      Merge tag 'devicetree-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/glikely/linux · b8de08da
      Linus Torvalds 提交于
      Pull devicetree bug fixes and documentation updates from Grant Likely:
       "A few bugfixes for the new DT overlay feature, documentation updates,
        spelling corrections, and changes to MAINTAINERS.  Nothing earth
        shattering here"
      
      * tag 'devicetree-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/glikely/linux:
        of/unittest: Overlays with sub-devices tests
        of/platform: Handle of_populate drivers in notifier
        of/overlay: Do not generate duplicate nodes
        devicetree: document the "qemu" and "virtio" vendor prefixes
        devicetree: document ARM bindings for QEMU's Firmware Config interface
        Documentation: of: fix typo in graph bindings
        dma-mapping: fix debug print to display correct dma_pfn_offset
        of: replace Asahi Kasei Corp vendor prefix
        ARM: dt: GIC: Spelling s/specific/specifier/, s/flaggs/flags/
        dt/bindings: arm-boards: Spelling s/pointong/pointing/
        MAINTAINERS: Update DT website and git repository
        MAINTAINERS: drop DT regex matching on of_get_property and of_match_table
      b8de08da
    • L
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 2e3810da
      Linus Torvalds 提交于
      Pull kvm fixes from Paolo Bonzini:
       "Three small fixes.
      
        Two for x86 and one avoids that sparse bails out"
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
        KVM: x86: SYSENTER emulation is broken
        KVM: x86: Fix of previously incomplete fix for CVE-2014-8480
        KVM: fix sparse warning in include/trace/events/kvm.h
      2e3810da
    • L
      Merge branch 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm · 0ad4989d
      Linus Torvalds 提交于
      Pull ARM fixes from Russell King:
       "Another round of small ARM fixes.
      
        restore_user_regs early stack deallocation is buggy in the presence of
        FIQs which switch to SVC mode, and could lead to corrupted registers
        being returned to a user process given an inopportune FIQ event.
      
        Another bug was spotted in the ARM perf code where it could lose track
        of perf counter overflows, leading to incorrect perf results.
      
        Lastly, a bug in arm_add_memory() was spotted where the memory sizes
        aren't properly rounded.  As most people pass properly rounded sizes,
        this hasn't been noticed"
      
      * 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
        ARM: 8292/1: mm: fix size rounding-down of arm_add_memory() function
        ARM: 8255/1: perf: Prevent wraparound during overflow
        ARM: 8266/1: Remove early stack deallocation from restore_user_regs
      0ad4989d
    • L
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 222713bb
      Linus Torvalds 提交于
      Pull two arm64 fixes from Will Deacon:
       "Arm64 fixes seem to come in pairs recently.  We've got a fix for
        removing device-tree blobs when doing a make clean and another one
        addressing a missing include, which fixes build failures in -next for
        allmodconfig (spotted by Mark's buildbot).
      
        Summary from signed tag:
      
         - fix cleaning of .dtbs following directory restructuring
         - fix allmodconfig build breakage in -next due to missing include"
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
        arm64: dump: Fix implicit inclusion of definition for PCI_IOBASE
        arm64: Add dtb files to archclean rule
      222713bb
    • D
      Revert "platform: x86: dell-laptop: Add support for keyboard backlight" · b78695a7
      Darren Hart 提交于
      This reverts commit 02b2aaaa.
      
      This interface was determined to be flawed and required too invasive a
      fix for the RC cycle. This will be revisited in 3.20.
      Signed-off-by: NDarren Hart <dvhart@linux.intel.com>
      b78695a7
    • D
      Revert "Documentation: Add entry for dell-laptop sysfs interface" · dc583769
      Darren Hart 提交于
      This reverts commit 3161293b.
      
      This interface was determined to be flawed and required too invasive a
      fix for the RC cycle. This will be revisited in 3.20.
      Signed-off-by: NDarren Hart <dvhart@linux.intel.com>
      dc583769
  2. 23 1月, 2015 8 次提交
  3. 22 1月, 2015 5 次提交
  4. 21 1月, 2015 13 次提交
    • M
      ARM: 8292/1: mm: fix size rounding-down of arm_add_memory() function · 909ba297
      Masahiro Yamada 提交于
      The current rounding of "size" is wrong:
      
       - If "start" is sufficiently near the next page boundary, "size"
         is decremented by more than enough and the last page is lost.
      
       - If "size" is sufficiently small, it is wrapped around and gets
         a bogus value.
      Signed-off-by: NMasahiro Yamada <yamada.m@jp.panasonic.com>
      Acked-by: NGeert Uytterhoeven <geert@linux-m68k.org>
      Acked-by: NArd Biesheuvel <ard.biesheuvel@linaro.org>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      909ba297
    • L
      Merge tag 'sound-3.19-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · 5eb11d6b
      Linus Torvalds 提交于
      Pull sound fixes from Takashi Iwai:
       "This batch contains two fixes for FireWire lib module and a quirk for
        yet another Logitech WebCam.  The former is the fixes for MIDI
        handling I forgot to pick up during the merge window.  All the fixed
        code is pretty local and shouldn't give any regressions"
      
      * tag 'sound-3.19-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: usb-audio: Add mic volume fix quirk for Logitech Webcam C210
        ALSA: firewire-lib: limit the MIDI data rate
        ALSA: firewire-lib: remove rx_blocks_for_midi quirk
      5eb11d6b
    • L
      Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux · 479459a8
      Linus Torvalds 提交于
      Pull drm fixes from Dave Airlie:
       "Just back from LCA + some days off, had some fixes from the past 2 weeks,
      
        Some amdkfd code removal for a feature that wasn't ready, otherwise
        just one fix for core helper sleeping, exynos, i915, and radeon fixes.
      
        I thought I had some sti fixes but they were already in, and it
        confused me for a few mins this morning"
      
      * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
        drm: fb helper should avoid sleeping in panic context
        drm/exynos: fix warning of vblank reference count
        drm/exynos: remove unnecessary runtime pm operations
        drm/exynos: fix reset codes for memory mapped hdmi phy
        drm/radeon: use rv515_ring_start on r5xx
        drm/radeon: add si dpm quirk list
        drm/radeon: don't print error on -ERESTARTSYS
        drm/i915: Fix mutex->owner inspection race under DEBUG_MUTEXES
        drm/i915: Ban Haswell from using RCS flips
        drm/i915: vlv: sanitize RPS interrupt mask during GPU idling
        drm/i915: fix HW lockup due to missing RPS IRQ workaround on GEN6
        drm/i915: gen9: fix RPS interrupt routing to CPU vs. GT
        drm/exynos: remove the redundant machine checking code
        drm/radeon: add a dpm quirk list
        drm/amdkfd: Fix sparse warning (different address space)
        drm/radeon: fix VM flush on CIK (v3)
        drm/radeon: fix VM flush on SI (v3)
        drm/radeon: fix VM flush on cayman/aruba (v3)
        drm/amdkfd: Drop interrupt SW ring buffer
      479459a8
    • L
      Merge tag 'mfd-fixes-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd · 7c4bb81c
      Linus Torvalds 提交于
      Pull MFD fixes from Lee Jones:
       - Avoid platform ID collision in da9052
       - Skip caching volatile registers in tps65218
       - Use correct address base in tps65218
       - Repair deadlock on suspend in rtsx_usb
      
      * tag 'mfd-fixes-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd:
        mfd: rtsx_usb: Fix runtime PM deadlock
        mfd: tps65218: Make INT1 our status_base register
        mfd: tps65218: Make INT[12] and STATUS registers volatile
        mfd: da9052-core: Fix platform-device id collision
      7c4bb81c
    • Q
      btrfs: Don't call btrfs_start_transaction() on frozen fs to avoid deadlock. · a53f4f8e
      Qu Wenruo 提交于
      Commit 6b5fe46d (btrfs: do commit in sync_fs if there are pending
      changes) will call btrfs_start_transaction() in sync_fs(), to handle
      some operations needed to be done in next transaction.
      
      However this can cause deadlock if the filesystem is frozen, with the
      following sys_r+w output:
      [  143.255932] Call Trace:
      [  143.255936]  [<ffffffff816c0e09>] schedule+0x29/0x70
      [  143.255939]  [<ffffffff811cb7f3>] __sb_start_write+0xb3/0x100
      [  143.255971]  [<ffffffffa040ec06>] start_transaction+0x2e6/0x5a0
      [btrfs]
      [  143.255992]  [<ffffffffa040f1eb>] btrfs_start_transaction+0x1b/0x20
      [btrfs]
      [  143.256003]  [<ffffffffa03dc0ba>] btrfs_sync_fs+0xca/0xd0 [btrfs]
      [  143.256007]  [<ffffffff811f7be0>] sync_fs_one_sb+0x20/0x30
      [  143.256011]  [<ffffffff811cbd01>] iterate_supers+0xe1/0xf0
      [  143.256014]  [<ffffffff811f7d75>] sys_sync+0x55/0x90
      [  143.256017]  [<ffffffff816c49d2>] system_call_fastpath+0x12/0x17
      [  143.256111] Call Trace:
      [  143.256114]  [<ffffffff816c0e09>] schedule+0x29/0x70
      [  143.256119]  [<ffffffff816c3405>] rwsem_down_write_failed+0x1c5/0x2d0
      [  143.256123]  [<ffffffff8133f013>] call_rwsem_down_write_failed+0x13/0x20
      [  143.256131]  [<ffffffff811caae8>] thaw_super+0x28/0xc0
      [  143.256135]  [<ffffffff811db3e5>] do_vfs_ioctl+0x3f5/0x540
      [  143.256187]  [<ffffffff811db5c1>] SyS_ioctl+0x91/0xb0
      [  143.256213]  [<ffffffff816c49d2>] system_call_fastpath+0x12/0x17
      
      The reason is like the following:
      (Holding s_umount)
      VFS sync_fs staff:
      |- btrfs_sync_fs()
         |- btrfs_start_transaction()
            |- sb_start_intwrite()
            (Waiting thaw_fs to unfreeze)
      					VFS thaw_fs staff:
      					thaw_fs()
      					(Waiting sync_fs to release
      					 s_umount)
      
      So deadlock happens.
      This can be easily triggered by fstest/generic/068 with inode_cache
      mount option.
      
      The fix is to check if the fs is frozen, if the fs is frozen, just
      return and waiting for the next transaction.
      
      Cc: David Sterba <dsterba@suse.cz>
      Reported-by: NGui Hecheng <guihc.fnst@cn.fujitsu.com>
      Signed-off-by: NQu Wenruo <quwenruo@cn.fujitsu.com>
      [enhanced comment, changed to SB_FREEZE_WRITE]
      Signed-off-by: NDavid Sterba <dsterba@suse.cz>
      Signed-off-by: NChris Mason <clm@fb.com>
      a53f4f8e
    • Q
      btrfs: Fix the bug that fs_info->pending_changes is never cleared. · 6c9fe14f
      Qu Wenruo 提交于
      Fs_info->pending_changes is never cleared since the original code uses
      cmpxchg(&fs_info->pending_changes, 0, 0), which will only clear it if
      pending_changes is already 0.
      
      This will cause a lot of problem when mount it with inode_cache mount
      option.
      If the btrfs is mounted as inode_cache, pending_changes will always be
      1, even when the fs is frozen.
      Signed-off-by: NQu Wenruo <quwenruo@cn.fujitsu.com>
      Reviewed-by: NDavid Sterba <dsterba@suse.cz>
      Signed-off-by: NDavid Sterba <dsterba@suse.cz>
      Signed-off-by: NChris Mason <clm@fb.com>
      6c9fe14f
    • D
      Merge tag 'drm-amdkfd-fixes-2015-01-13' of... · 67cf2d39
      Dave Airlie 提交于
      Merge tag 'drm-amdkfd-fixes-2015-01-13' of git://people.freedesktop.org/~gabbayo/linux into drm-fixes
      
      - Remove the interrupt SW ring buffer impl. as it is not used by any module
        in amdkfd.
      
      - Fix a sparse warning
      
      * tag 'drm-amdkfd-fixes-2015-01-13' of git://people.freedesktop.org/~gabbayo/linux:
        drm/amdkfd: Fix sparse warning (different address space)
        drm/amdkfd: Drop interrupt SW ring buffer
      67cf2d39
    • D
      Merge tag 'drm-intel-fixes-2015-01-15' of git://anongit.freedesktop.org/drm-intel into drm-fixes · 9e4fc22a
      Dave Airlie 提交于
      misc i915 fixes
      
      * tag 'drm-intel-fixes-2015-01-15' of git://anongit.freedesktop.org/drm-intel:
        drm/i915: Fix mutex->owner inspection race under DEBUG_MUTEXES
        drm/i915: Ban Haswell from using RCS flips
        drm/i915: vlv: sanitize RPS interrupt mask during GPU idling
        drm/i915: fix HW lockup due to missing RPS IRQ workaround on GEN6
        drm/i915: gen9: fix RPS interrupt routing to CPU vs. GT
      9e4fc22a
    • R
      drm: fb helper should avoid sleeping in panic context · 9aa609e1
      Rui Wang 提交于
      There are still some places in the fb helper that need to avoid
      sleeping in panic context. Here's an example:
      
      [   65.615496] bad: scheduling from the idle thread!
      [   65.620747] CPU: 92 PID: 0 Comm: swapper/92 Tainted: G   M        E  3.18.0-rc4-7-default+ #20
      
      [   65.630364] Hardware name: Intel Corporation BRICKLAND/BRICKLAND, BIOS
      BRHSXSD1.86B.0056.R01.1409242327 09/24/2014
      [   65.641923]  ffff88087f693d80 ffff88087f689878 ffffffff81566db9 0000000000000000
      [   65.650226]  ffff88087f693d80 ffff88087f689898 ffffffff810871ff ffff88046eb3e0d0
      [   65.658527]  ffff88087f693d80 ffff88087f6898c8 ffffffff8107c1fa 000000017f6898b8
      [   65.666830] Call Trace:
      [   65.669557]  <#MC>  [<ffffffff81566db9>] dump_stack+0x46/0x58
      [   65.675994]  [<ffffffff810871ff>] dequeue_task_idle+0x2f/0x40
      [   65.682412]  [<ffffffff8107c1fa>] dequeue_task+0x5a/0x80
      [   65.688345]  [<ffffffff810804f3>] deactivate_task+0x23/0x30
      [   65.694569]  [<ffffffff81569050>] __schedule+0x580/0x7f0
      [   65.700502]  [<ffffffff81569739>] schedule_preempt_disabled+0x29/0x70
      [   65.707696]  [<ffffffff8156abb6>] __ww_mutex_lock_slowpath+0xb8/0x162
      [   65.714891]  [<ffffffff8156acb3>] __ww_mutex_lock+0x53/0x85
      [   65.721125]  [<ffffffffa00b3a5d>] drm_modeset_lock+0x3d/0x110 [drm]
      [   65.728132]  [<ffffffffa00b3c2a>] __drm_modeset_lock_all+0x8a/0x120 [drm]
      [   65.735721]  [<ffffffffa00b3cd0>] drm_modeset_lock_all+0x10/0x30 [drm]
      [   65.743015]  [<ffffffffa01af8bf>] drm_fb_helper_pan_display+0x2f/0xf0 [drm_kms_helper]
      [   65.751857]  [<ffffffff8132bd21>] fb_pan_display+0xd1/0x1a0
      [   65.758081]  [<ffffffff81326010>] bit_update_start+0x20/0x50
      [   65.764400]  [<ffffffff813259f2>] fbcon_switch+0x3a2/0x550
      [   65.770528]  [<ffffffff813a01c9>] redraw_screen+0x189/0x240
      [   65.776750]  [<ffffffff81322f8a>] fbcon_blank+0x20a/0x2d0
      [   65.782778]  [<ffffffff8137d359>] ? erst_writer+0x209/0x330
      [   65.789002]  [<ffffffff810ba2f3>] ? internal_add_timer+0x63/0x80
      [   65.795710]  [<ffffffff810bc137>] ? mod_timer+0x127/0x1e0
      [   65.801740]  [<ffffffff813a0cd8>] do_unblank_screen+0xa8/0x1d0
      [   65.808255]  [<ffffffff813a0e10>] unblank_screen+0x10/0x20
      [   65.814381]  [<ffffffff812ca0d9>] bust_spinlocks+0x19/0x40
      [   65.820508]  [<ffffffff81561ca7>] panic+0x106/0x1f5
      [   65.825955]  [<ffffffff8102336c>] mce_panic+0x2ac/0x2e0
      [   65.831789]  [<ffffffff812c796a>] ? delay_tsc+0x4a/0x80
      [   65.837625]  [<ffffffff81024e1f>] do_machine_check+0xbaf/0xbf0
      [   65.844138]  [<ffffffff813365d7>] ? intel_idle+0xc7/0x150
      [   65.850166]  [<ffffffff8156f03f>] machine_check+0x1f/0x30
      [   65.856195]  [<ffffffff813365d7>] ? intel_idle+0xc7/0x150
      [   65.862222]  <<EOE>>  [<ffffffff814283d5>] cpuidle_enter_state+0x55/0x170
      [   65.869823]  [<ffffffff814285a7>] cpuidle_enter+0x17/0x20
      [   65.875852]  [<ffffffff81097b08>] cpu_startup_entry+0x2d8/0x370
      [   65.882467]  [<ffffffff8102fe29>] start_secondary+0x159/0x180
      
      There's __drm_modeset_lock_all() which Daniel Vetter introduced for this
      purpose. We can leverage that without reinventing anything. This patch
      works with the latest kernel.
      Reviewed-by: NRob Clark <robdclark@gmail.com>
      Tested-by: NTony Luck <tony.luck@intel.com>
      Signed-off-by: NRui Wang <rui.y.wang@intel.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      9aa609e1
    • D
      Merge branch 'exynos-drm-fixes' of... · e902027a
      Dave Airlie 提交于
      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 below fixups,
      
      - Remove duplicated machine checking.
        . It seems that this code was added when you merged 'v3.18-rc7' into
          drm-next. commit id : e8115e79
      - Fix hdmiphy reset.
        . Exynos hdmi has two interfaces to control hdmyphy, one is I2C, other
          is APB bus - memory mapped I/O. So this patch makes hdmiphy reset
          to be done according to interfaces, I2C or APB bus.
      - And add some exception codes.
      
      * 'exynos-drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos:
        drm/exynos: fix warning of vblank reference count
        drm/exynos: remove unnecessary runtime pm operations
        drm/exynos: fix reset codes for memory mapped hdmi phy
        drm/exynos: remove the redundant machine checking code
      e902027a
    • D
      Merge branch 'drm-fixes-3.19' of git://people.freedesktop.org/~agd5f/linux into drm-fixes · b46ce98d
      Dave Airlie 提交于
      Some radeon fixes for 3.19:
          - GPUVM stability fixes
          - SI dpm quirks
          - Regression fixes
      
      * 'drm-fixes-3.19' of git://people.freedesktop.org/~agd5f/linux:
        drm/radeon: use rv515_ring_start on r5xx
        drm/radeon: add si dpm quirk list
        drm/radeon: don't print error on -ERESTARTSYS
        drm/radeon: add a dpm quirk list
        drm/radeon: fix VM flush on CIK (v3)
        drm/radeon: fix VM flush on SI (v3)
        drm/radeon: fix VM flush on cayman/aruba (v3)
      b46ce98d
    • L
      Merge branch 'for-3.19-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata · b97f880c
      Linus Torvalds 提交于
      Pull libata fixes from Tejun Heo:
      
       - Bartlomiej will be co-maintaining PATA portion of libata.  git
         workflow will stay the same.
      
       - sata_sil24 wasn't happy with tag ordered submission.  An option to
         restore the old tag allocation behavior is implemented for sil24.
      
       - a very old race condition in PIO host state machine which can trigger
         BUG fixed.
      
       - other driver-specific changes
      
      * 'for-3.19-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
        libata: prevent HSM state change race between ISR and PIO
        libata: allow sata_sil24 to opt-out of tag ordered submission
        ata: pata_at91: depend on !ARCH_MULTIPLATFORM
        ahci: Remove Device ID for Intel Sunrise Point PCH
        ahci: Use dev_info() to inform about the lack of Device Sleep support
        libata: Whitelist SSDs that are known to properly return zeroes after TRIM
        sata_dwc_460ex: fix resource leak on error path
        ata: add MAINTAINERS entry for libata PATA drivers
        libata: clean up MAINTAINERS entries
        libata: export ata_get_cmd_descript()
        ahci_xgene: Fix the DMA state machine lockup for the ATA_CMD_PACKET PIO mode command.
        ahci_xgene: Fix the endianess issue in APM X-Gene SoC AHCI SATA controller driver.
      b97f880c
    • L
      Merge branch 'for-3.19-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · d4b2d006
      Linus Torvalds 提交于
      Pull workqueue fix from Tejun Heo:
       "The xfs folks have been running into weird and very rare lockups for
        some time now.  I didn't think this could have been from workqueue
        side because no one else was reporting it.  This time, Eric had a
        kdump which we looked into and it turned out this actually was a
        workqueue bug and the bug has been there since the beginning of
        concurrency managed workqueue.
      
        A worker pool ensures forward progress of the workqueues associated
        with it by always having at least one worker reserved from executing
        work items.  When the pool is under contention, the idle one tries to
        create more workers for the pool and if that doesn't succeed quickly
        enough, it calls the rescuers to the pool.
      
        This logic had a subtle race condition in an early exit path.  When a
        worker invokes this manager function, the function may return %false
        indicating that the caller may proceed to executing work items either
        because another worker is already performing the role or conditions
        have changed and the pool is no longer under contention.
      
        The latter part depended on the assumption that whether more workers
        are necessary or not remains stable while the pool is locked; however,
        pool->nr_running (concurrency count) may change asynchronously and it
        getting bumped from zero asynchronously could send off the last idle
        worker to execute work items.
      
        The race window is fairly narrow, and, even when it gets triggered,
        the pool deadlocks iff if all work items get blocked on pending work
        items of the pool, which is highly unlikely but can be triggered by
        xfs.
      
        The patch removes the race window by removing the early exit path,
        which doesn't server any purpose anymore anyway"
      
      * 'for-3.19-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue: fix subtle pool management issue which can stall whole worker_pool
      d4b2d006
  5. 20 1月, 2015 5 次提交
    • R
      mfd: rtsx_usb: Fix runtime PM deadlock · b166010f
      Roger Tseng 提交于
      sd_set_power_mode() in derived module drivers/mmc/host/rtsx_usb_sdmmc.c
      acquires dev_mutex and then calls pm_runtime_get_sync() to make sure the
      device is awake while initializing a newly inserted card. Once it is
      called during suspending state and explicitly before rtsx_usb_suspend()
      acquires the same dev_mutex, both routine deadlock and further hang the
      driver because pm_runtime_get_sync() waits the pending PM operations.
      
      Fix this by using an empty suspend method. mmc_core always turns the
      LED off after a request is done and thus it is ok to remove the only
      rtsx_usb_turn_off_led() here.
      
      Cc: <stable@vger.kernel.org> # v3.16+
      Fixes: 730876be ("mfd: Add realtek USB card reader driver")
      Signed-off-by: NRoger Tseng <rogerable@realtek.com>
      [Lee: Removed newly unused variable]
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      b166010f
    • F
      mfd: tps65218: Make INT1 our status_base register · f29ae369
      Felipe Balbi 提交于
      If we don't tell regmap-irq that our first status
      register is at offset 1, it will try to read offset
      zero, which is the chipid register.
      
      Fixes: 44b4dc61 mfd: tps65218: Add driver for the TPS65218 PMIC
      Cc: <stable@vger.kernel.org> # v3.15+
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      f29ae369
    • F
      mfd: tps65218: Make INT[12] and STATUS registers volatile · 773328da
      Felipe Balbi 提交于
      STATUS register can be modified by the HW, so we
      should bypass cache because of that.
      
      In the case of INT[12] registers, they are the ones
      that actually clear the IRQ source at the time they
      are read. If we rely on the cache for them, we will
      never be able to clear the interrupt, which will cause
      our IRQ line to be disabled due to IRQ throttling.
      
      Fixes: 44b4dc61 mfd: tps65218: Add driver for the TPS65218 PMIC
      Cc: <stable@vger.kernel.org> # v3.15+
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      773328da
    • F
      mfd: da9052-core: Fix platform-device id collision · b3f6c73d
      Fabio Estevam 提交于
      Allow multiple DA9052 regulators be registered by registering with
      PLATFORM_DEVID_AUTO instead of PLATFORM_DEVID_NONE.
      
      The subdevices are currently registered with PLATFORM_DEVID_NONE, which
      will cause a name collision on the platform bus when multiple regulators
      are registered:
      
      [    0.128855] da9052-regulator da9052-regulator: invalid regulator ID specified
      [    0.128973] da9052-regulator: probe of da9052-regulator failed with error -22
      [    0.129148] ------------[ cut here ]------------
      [    0.129200] WARNING: CPU: 0 PID: 1 at fs/sysfs/dir.c:31 sysfs_warn_dup+0x5c/0x7c()
      [    0.129233] sysfs: cannot create duplicate filename '/devices/platform/soc/60000000.aips/63fc8000.i2c/i2c-0/0-0048/da9052-regulator
      ...
      [    0.132891] ------------[ cut here ]------------
      [    0.132924] WARNING: CPU: 0 PID: 1 at lib/kobject.c:240 kobject_add_internal+0x24c/0x2cc()
      [    0.132957] kobject_add_internal failed for da9052-regulator with -EEXIST, don't try to register things with the same name in the same directory.
      ...
      [    0.137000] da9052 0-0048: mfd_add_devices failed: -17
      [    0.138486] da9052: probe of 0-0048 failed with error -17
      
      Based on the fix done by Johan Hovold at commit b6684228 ("mfd:
      viperboard: Fix platform-device id collision").
      
      Tested on a imx53-qsb board, where multiple DA9053 regulators can be
      successfully probed.
      Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      b3f6c73d
    • J
      arm64: Add dtb files to archclean rule · c7c52e48
      Jungseok Lee 提交于
      As dts files have been reorganised under vendor subdirs, dtb files
      cannot be removed with "make distclean" now. Thus, this patch moves
      dtb files under archclean rule and removes unnecessary entries.
      
      Cc: Robert Richter <rrichter@cavium.com>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Will Deacon <will.deacon@arm.com>
      Signed-off-by: NJungseok Lee <jungseoklee85@gmail.com>
      Signed-off-by: NWill Deacon <will.deacon@arm.com>
      c7c52e48