Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Dec 8, 2009
  1. @gregkh


    gregkh authored
  2. @RoelKluin @gregkh

    isdn: hfc_usb: Fix read buffer overflow

    RoelKluin authored gregkh committed
    commit 286e633 upstream.
    Check whether index is within bounds before testing the element.
    Signed-off-by: Roel Kluin <>
    Cc: Karsten Keil <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: David S. Miller <>
    Signed-off-by: Greg Kroah-Hartman <>
  3. @sthibaul @gregkh

    Input: keyboard - fix braille keyboard keysym generation

    sthibaul authored gregkh committed
    commit 46a9654 upstream.
    Keysyms stored in key_map[] are not simply K() values, but U(K()) values,
    as can be seen in the KDSKBENT ioctl handler.  The kernel-generated
    braille keysyms thus need a U() call too.
    Signed-off-by: Samuel Thibault <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: Dmitry Torokhov <>
    Signed-off-by: Greg Kroah-Hartman <>
  4. @xypiie @gregkh

    acerhdf: return temperature in milidegree instead of degree

    xypiie authored gregkh committed
    commit 7005291 upstream.
    Return temperature in milidegree instead of degree, as sysfs-api requires
    the temperature in milidegree.
    Signed-off-by: Peter Feuerer <>
    Tested-by: Borislav Petkov <>
    Cc: Andreas Mohr <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: Len Brown <>
    Signed-off-by: Greg Kroah-Hartman <>
  5. @xypiie @gregkh

    acerhdf: additional BIOS versions

    xypiie authored gregkh committed
    commit f944915 upstream.
    Added BIOS versions:
    Acer: AOA110-v0.3307, AOA150-v0.3301, AOA150-v0.3307
    Packard Bell: AOA150-v0.3105
    Signed-off-by: Peter Feuerer <>
    Cc: Andreas Mohr <>
    Cc: Borislav Petkov <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: Len Brown <>
    Signed-off-by: Greg Kroah-Hartman <>
  6. @gregkh

    PCI: Prevent AER driver from being loaded on non-root port PCIE devices

    Kenji Kaneshige authored gregkh committed
    commit 30fc24b upstream.
    A bug was seen on boards using a PLX 8518 switch device which advertises
    AER on each of it's transparent bridges. The AER driver was loaded for
    each bridge and this driver tried to access the AER source ID register
    whenever an interrupt occured on the shared PCI INTX lines. The source
    ID register does not exist on non root port PCIE device's  which
    advertise AER and trying to access this register causes a unsupported
    request error on the bridge. Thus, when the next interrupt occurs,
    another error is found and the non existent source ID register is
    accessed again, and so it goes on.
    The result is a spammed dmesg with unsupported request PCI express
    errors on the bridge device that the AER driver is loaded against.
    Reported-by: Malcolm Crossley <>
    Signed-off-by: Kenji Kaneshige <>
    Tested-by: Malcolm Crossley <>
    Signed-off-by: Jesse Barnes <>
    Cc: Jean Delvare <>
    Signed-off-by: Greg Kroah-Hartman <>
  7. @ErikAndren @gregkh

    V4L/DVB (13257): gspca - m5602-s5k4aa: Add vflip for Fujitsu Amilo Xi…

    ErikAndren authored gregkh committed
    … 2528
    commit 81191f6 upstream.
    Adds a vflip quirk for the Fujitsu Amilo Xi 2528. Thanks to Evgeny for the report.
    Signed-off-by: Erik Andrén <>
    Signed-off-by: Mauro Carvalho Chehab <>
  8. @ErikAndren @gregkh

    V4L/DVB (13256): gspca - m5602-s5k4aa: Add another MSI GX700 vflip quirk

    ErikAndren authored gregkh committed
    commit 2339a18 upstream.
    Adds another vflip quirk for the MSI GX700.
    Thanks to John Katzmaier for reporting.
    Signed-off-by: Erik Andrén <>
    Signed-off-by: Mauro Carvalho Chehab <>
    Signed-off-by: Greg Kroah-Hartman <>
  9. @ErikAndren @gregkh

    V4L/DVB (13255): gspca - m5602-s5k4aa: Add vflip quirk for the Brunei…

    ErikAndren authored gregkh committed
    …nit laptop
    commit b6ef883 upstream.
    Adds a vflip quirk for the Bruneinit laptop. Thanks to Jörg for the report
    Signed-off-by: Erik Andrén <>
    Signed-off-by: Mauro Carvalho Chehab <>
    Signed-off-by: Greg Kroah-Hartman <>
  10. @michalsimek @gregkh

    tty/of_serial: add missing ns16550a id

    michalsimek authored gregkh committed
    commit 16173c7 upstream.
    Many boards have a bug-free ns16550 compatible serial port, which we should
    register as PORT_16550A. This introduces a new value "ns16550a" for the
    compatible property of of_serial to let a firmware choose that model instead
    of using the crippled PORT_16550 mode.
    Reported-by: Alon Ziv <>
    Signed-off-by: Michal Simek <>
    Signed-off-by: Arnd Bergmann <>
    Signed-off-by: Greg Kroah-Hartman <>
  11. @cladisch @gregkh

    drm/fb: fix FBIOGET/PUT_VSCREENINFO pixel clock handling

    cladisch authored gregkh committed
    commit 5349ef3 upstream
    When the framebuffer driver does not publish detailed timing information
    for the current video mode, the correct value for the pixclock field is
    zero, not -1.
    Since pixclock is actually unsigned, the value -1 would be interpreted
    as 4294967295 picoseconds (i.e., about 4 milliseconds) by
    register_framebuffer() and userspace programs.
    This patch allows's fbdev driver to work.
    Signed-off-by: Clemens Ladisch <>
    Tested-by: Paulius Zaleckas <>
    Signed-off-by: Dave Airlie <>
    Signed-off-by: Greg Kroah-Hartman <>
  12. @xypiie @gregkh

    acerhdf: fix fan control for AOA150 model

    xypiie authored gregkh committed
    commit ded0cdf upstream.
    - Apply Borislav Petkov's patch (convert the fancmd[] array to a real
      struct thus disambiguating command handling and making code more
    - Add BIOS product to BIOS table as AOA110 and AOA150 have different
      register values
    - Add force_product parameter to allow forcing different product
    - fix linker warning caused by "acerhdf_drv" not being named
    Signed-off-by: Peter Feuerer <>
    Cc: Andreas Mohr <>
    Acked-by: Borislav Petkov <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: Len Brown <>
    Cc: Adrian von Bidder <>
    Signed-off-by: Greg Kroah-Hartman <>
  13. @gregkh

    i2c: Fix userspace_device list corruption

    Jean Delvare authored gregkh committed
    commit bbd2d9c upstream.
    Fix userspace_device list corruption. The corruption was caused by
    clients not being removed when adapters with such clients were
    themselves removed. Something like the following would trigger it
    (assuming i2c-stub gets adapter number 3):
    # modprobe i2c-stub chip_addr=0x50
    # echo 24c08 0x50 > /sys/bus/i2c/devices/i2c-3/new_device
    # rmmod i2c-stub
    # modprobe i2c-stub chip_addr=0x50
    # echo 24c08 0x50 > /sys/bus/i2c/devices/i2c-3/new_device
    For the records, the stack trace in the kernel logs look like this:
    kernel: WARNING: at lib/list_debug.c:30 __list_add+0x8b/0x90()
    kernel: Hardware name: (...)
    kernel: list_add corruption. prev->next should be next (c137fc84), but was (null). (prev=f57111b8).
    kernel: Modules linked in: (...)
    kernel: Pid: 4669, comm: bash Not tainted 2.6.32-rc8 #259
    kernel: Call Trace:
    kernel:  [<c111eb8b>] ? __list_add+0x8b/0x90
    kernel:  [<c111eb8b>] ? __list_add+0x8b/0x90
    kernel:  [<c103265c>] warn_slowpath_common+0x6c/0xc0
    kernel:  [<c111eb8b>] ? __list_add+0x8b/0x90
    kernel:  [<c10326f6>] warn_slowpath_fmt+0x26/0x30
    kernel:  [<c111eb8b>] __list_add+0x8b/0x90
    kernel:  [<c11ba165>] i2c_sysfs_new_device+0x1c5/0x250
    kernel:  [<c10861be>] ? might_fault+0x2e/0x80
    kernel:  [<c11b9fa0>] ? i2c_sysfs_new_device+0x0/0x250
    kernel:  [<c118c625>] dev_attr_store+0x25/0x30
    kernel:  [<c10e305c>] sysfs_write_file+0x9c/0xf0
    kernel:  [<c109d35c>] vfs_write+0x9c/0x160
    kernel:  [<c10e2fc0>] ? sysfs_write_file+0x0/0xf0
    kernel:  [<c109d4dd>] sys_write+0x3d/0x70
    kernel:  [<c1002ed8>] sysenter_do_call+0x12/0x36
    Signed-off-by: Jean Delvare <>
    Signed-off-by: Greg Kroah-Hartman <>
  14. @gregkh

    ath5k: Linear PCDAC code fixes

    Nick Kossifidis authored gregkh committed
    commit d1cb0bd upstream.
    * Set correct xpd curve indices for high/low gain curves during
       rfbuffer setup on RF5112B with both calibration curves available.
     * Don't return zero min power when we have the same pcdac value
       twice because it breaks interpolation. Instead return the right
       x barrier as we do when we have equal power levels for 2 different
       pcdac values.
    Signed-off-by: Nick Kossifidis <>
    Acked-by: Bob Copeland <>
    Signed-off-by: John W. Linville <>
    Cc: Dan Williams <>
    Signed-off-by: Greg Kroah-Hartman <>
  15. @gregkh

    sky2: set carrier off in probe

    Brandon Philips authored gregkh committed
    commit 33cb7d3 upstream.
    Before bringing up a sky2 interface up ethtool reports
    "Link detected: yes". Do as ixgbe does and netif_carrier_off() on
    Signed-off-by: Brandon Philips <>
    Signed-off-by: David S. Miller <>
    Signed-off-by: Greg Kroah-Hartman <>
  16. @gregkh

    crypto: padlock-aes - Use the correct mask when checking whether copy…

    Chuck Ebbert authored gregkh committed
    …ing is required
    commit e8edb3c upstream.
    Masking with PAGE_SIZE is just wrong...
    Signed-off-by: Chuck Ebbert <>
    Signed-off-by: Herbert Xu <>
    Signed-off-by: Greg Kroah-Hartman <>
  17. @gregkh

    b43: Fix DMA TX bounce buffer copying

    Michael Buesch authored gregkh committed
    commit 9a3f451 upstream.
    b43 allocates a bouncebuffer, if the supplied TX skb is in an invalid
    memory range for DMA.
    However, this is broken in that it fails to copy over some metadata to the
    new skb.
    This patch fixes three problems:
    * Failure to adjust the ieee80211_tx_info pointer to the new buffer.
      This results in a kmemcheck warning.
    * Failure to copy the skb cb, which contains ieee80211_tx_info, to the new skb.
      This results in breakage of various TX-status postprocessing (Rate control).
    * Failure to transfer the queue mapping.
      This results in the wrong queue being stopped on saturation and can result in queue overflow.
    Signed-off-by: Michael Buesch <>
    Tested-by: Christian Casteyde <>
    Signed-off-by: John W. Linville <>
    Signed-off-by: Greg Kroah-Hartman <>
  18. @gregkh

    netfilter: xt_connlimit: fix regression caused by zero family value

    Jan Engelhardt authored gregkh committed
    commit 539054a upstream.
    Commit v2.6.28-rc1~717^2~109^2~2 was slightly incomplete; not all
    instances of par->match->family were changed to par->family.
    Signed-off-by: Jan Engelhardt <>
    Signed-off-by: Patrick McHardy <>
    Signed-off-by: David S. Miller <>
    Signed-off-by: Greg Kroah-Hartman <>
  19. @gregkh

    netfilter: nf_nat: fix NAT issue in

    Jozsef Kadlecsik authored gregkh committed
    commit f9dd09c upstream.
    Vitezslav Samel discovered that since active FTP can not work
    over NAT. The "cause" of the problem was a fix of unacknowledged data
    detection with NAT (commit a3a9f79).
    However, actually, that fix uncovered a long standing bug in TCP conntrack:
    when NAT was enabled, we simply updated the max of the right edge of
    the segments we have seen (td_end), by the offset NAT produced with
    changing IP/port in the data. However, we did not update the other parameter
    (td_maxend) which is affected by the NAT offset. Thus that could drift
    away from the correct value and thus resulted breaking active FTP.
    The patch below fixes the issue by *not* updating the conntrack parameters
    from NAT, but instead taking into account the NAT offsets in conntrack in a
    consistent way. (Updating from NAT would be more harder and expensive because
    it'd need to re-calculate parameters we already calculated in conntrack.)
    Signed-off-by: Jozsef Kadlecsik <>
    Signed-off-by: Patrick McHardy <>
    Signed-off-by: David S. Miller <>
    Signed-off-by: Greg Kroah-Hartman <>
  20. @gregkh

    agp/intel: new host bridge support

    Zhenyu Wang authored gregkh committed
    commit 9cf1e35 upstream.
    Add new CPU host bridge id, needed for support Ironlake graphics
    device with it. No change for graphics device itself, so no need to
    update drm/i915.
    Signed-off-by: Zhenyu Wang <>
    Signed-off-by: Eric Anholt <>
    Signed-off-by: Greg Kroah-Hartman <>
  21. @gregkh

    hwmon: (adt7475) Cache limits for 60 seconds

    Jean Delvare authored gregkh committed
    commit 56e35ee upstream.
    The comment says that limits are cached for 60 seconds but the code
    actually caches them for only 2 seconds. Align the code on the
    comment, as 60 seconds makes more sense.
    Signed-off-by: Jean Delvare <>
    Acked-by: Hans de Goede <>
    Cc: Jordan Crouse <>
    Signed-off-by: Greg Kroah-Hartman <>
  22. @gregkh

    hwmon: (adt7475) Fix temperature fault flags

    Jean Delvare authored gregkh committed
    commit cf312e0 upstream.
    The logic of temperature fault flags is wrong, it shows faults when
    there are none and vice versa. Fix it.
    I can't believe this has been broken since the driver was added, 8
    months ago, basically breaking temp1 and temp3, and nobody ever
    Signed-off-by: Jean Delvare <>
    Acked-by: Hans de Goede <>
    Cc: Jordan Crouse <>
    Signed-off-by: Greg Kroah-Hartman <>
  23. @neilbrown @gregkh

    block: use after free bug in __blkdev_get

    neilbrown authored gregkh committed
    commit 960cc0f upstream.
    commit 0762b8b
    (from 14 months ago) introduced a use-after-free bug which has just
    recently started manifesting in my md testing.
    I tried git bisect to find out what caused the bug to start
    manifesting, and it could have been the recent change to
    blk_unregister_queue (48c0d4d) but the results were inconclusive.
    This patch certainly fixes my symptoms and looks correct as the two
    calls are now in the same order as elsewhere in that function.
    Signed-off-by: NeilBrown <>
    Acked-by: Tejun Heo <>
    Signed-off-by: Jens Axboe <>
    Signed-off-by: Greg Kroah-Hartman <>
  24. @gregkh

    hso: fix soft-lockup

    Antti Kaijanmäki authored gregkh committed
    commit dcfcb25 upstream.
    Fix soft-lockup in hso.c which is triggered on SMP machine when
    modem is removed while file descriptor(s) under /dev are still open:
      old version called kref_put() too early which resulted in destroying
      hso_serial and hso_device objects which were still used later on.
    Signed-off-by: Antti Kaijanmäki <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: David S. Miller <>
  25. @paulusmack @gregkh

    perf_event: Adjust frequency and unthrottle for non-group-leader events

    paulusmack authored gregkh committed
    commit 03541f8 upstream.
    The loop in perf_ctx_adjust_freq checks the frequency of sampling
    event counters, and adjusts the event interval and unthrottles the
    event if required, and resets the interrupt count for the event.
    However, at present it only looks at group leaders.
    This means that a sampling event that is not a group leader will
    eventually get throttled, once its interrupt count reaches
    sysctl_perf_event_sample_rate/HZ --- and that is guaranteed to
    happen, if the event is active for long enough, since the interrupt
    count never gets reset.  Once it is throttled it never gets
    unthrottled, so it basically just stops working at that point.
    This fixes it by making perf_ctx_adjust_freq use ctx->event_list
    rather than ctx->group_list.  The existing spin_lock/spin_unlock
    around the loop makes it unnecessary to put rcu_read_lock/
    rcu_read_unlock around the list_for_each_entry_rcu().
    Reported-by: Mark W. Krentel <>
    Signed-off-by: Paul Mackerras <>
    Cc: Corey Ashford <>
    Cc: Peter Zijlstra <>
    LKML-Reference: <>
    Signed-off-by: Ingo Molnar <>
    Signed-off-by: Greg Kroah-Hartman <>
  26. @neilbrown @gregkh

    md: revert incorrect fix for read error handling in raid1.

    neilbrown authored gregkh committed
    commit d0e2607 upstream.
    commit 4706b34 was a forward port of a fix that was needed
    for SLES10.  But in fact it is not needed in mainline because
    the earlier commit dd00a99 fixes the same problem in a
    better way.
    Further, this commit introduces a bug in the way it interacts with
    the automatic read-error-correction.  If, after a read error is
    successfully corrected, the same disk is chosen to re-read - the
    re-read won't be attempted but an error will be returned instead.
    After reverting that commit, there is the possibility that a
    read error on a read-only array (where read errors cannot
    be corrected as that requires a write) will repeatedly read the same
    device and continue to get an error.
    So in the "Array is readonly" case, fail the drive immediately on
    a read error.
    Signed-off-by: NeilBrown <>
    Signed-off-by: Greg Kroah-Hartman <>
  27. @gregkh

    modules: don't export section names of empty sections via sysfs

    Helge Deller authored gregkh committed
    commit 35dead4 upstream.
    On the parisc architecture we face for each and every loaded kernel module
    this kernel "badness warning":
      sysfs: cannot create duplicate filename '/module/ac97_bus/sections/.text'
      Badness at fs/sysfs/dir.c:487
    Reason for that is, that on parisc all kernel modules do have multiple
    .text sections due to the usage of the -ffunction-sections compiler flag
    which is needed to reach all jump targets on this platform.
    An objdump on such a kernel module gives:
    Idx Name          Size      VMA       LMA       File off  Algn
      0 00000024  00000000  00000000  00000034  2**2
                      CONTENTS, ALLOC, LOAD, READONLY, DATA
      1 .text         00000000  00000000  00000000  00000058  2**0
                      CONTENTS, ALLOC, LOAD, READONLY, CODE
      2 .text.ac97_bus_match 0000001c  00000000  00000000  00000058  2**2
                      CONTENTS, ALLOC, LOAD, READONLY, CODE
      3 .text         00000000  00000000  00000000  000000d4  2**0
                      CONTENTS, ALLOC, LOAD, READONLY, CODE
    Since the .text sections are empty (size of 0 bytes) and won't be
    loaded by the kernel module loader anyway, I don't see a reason
    why such sections need to be listed under
    /sys/module/<module_name>/sections/<section_name> either.
    The attached patch does solve this issue by not exporting section
    names which are empty.
    This fixes bugzilla
    Signed-off-by: Helge Deller <>
    Signed-off-by: Linus Torvalds <>
    Signed-off-by: Greg Kroah-Hartman <>
  28. @rustyrussell @gregkh

    param: don't complain about unused module parameters.

    rustyrussell authored gregkh committed
    commit f066a4f upstream.
    Jon confirms that recent modprobe will look in /proc/cmdline, so these
    cmdline options can still be used.
    Reported-by: Adam Williamson <>
    Signed-off-by: Rusty Russell <>
    Signed-off-by: Linus Torvalds <>
    Signed-off-by: Greg Kroah-Hartman <>
  29. @zonque @gregkh

    pxamci: call mmc_remove_host() before freeing resources

    zonque authored gregkh committed
    commit 5d6b1ed upstream.
    mmc_remove_host() will cause the mmc core to switch off the bus power by
    eventually calling pxamci_set_ios(). This function uses the regulator or
    the GPIO which have been freed already.
    This causes the following Oops on module unload.
    [   49.519649] Unable to handle kernel paging request at virtual address 30303a70
    [   49.526878] pgd = c7084000
    [   49.529563] [30303a70] *pgd=00000000
    [   49.533136] Internal error: Oops: 5 [#1]
    [   49.537025] last sysfs file: /sys/devices/platform/pxa27x-ohci/usb1/1-1/1-1:1.0/host0/target0:0:0/0:0:0:0/scsi_level
    [   49.547471] Modules linked in: pxamci(-) eeti_ts
    [   49.552061] CPU: 0    Not tainted  (2.6.32-rc8 #322)
    [   49.557001] PC is at regulator_is_enabled+0x3c/0xbc
    [   49.561846] LR is at regulator_is_enabled+0x30/0xbc
    [   49.566691] pc : [<c01a2448>]    lr : [<c01a243c>]    psr: 60000013
    [   49.566702] sp : c7083e70  ip : 30303a30  fp : 00000000
    [   49.578093] r10: c705e200  r9 : c7082000  r8 : c705e2e0
    [   49.583280] r7 : c7061340  r6 : c7061340  r5 : c7083e70  r4 : 00000000
    [   49.589759] r3 : c04dc434  r2 : c04dc434  r1 : c03eecea  r0 : 00000047
    [   49.596241] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
    [   49.603329] Control: 0000397f  Table: a7084018  DAC: 00000015
    [   49.609031] Process rmmod (pid: 1101, stack limit = 0xc7082278)
    [   49.614908] Stack: (0xc7083e70 to 0xc7084000)
    [   49.619238] 3e60:                                     c7082000 c703c4f8 c705ea00 c04f4074
    [   49.627366] 3e80: 00000000 c705e3a0 ffffffff c0247ddc c70361a0 00000000 c705e3a0 ffffffff
    [   49.635499] 3ea0: c705e200 bf006400 c78c4f00 c705e200 c705e3a0 ffffffff c705e200 ffffffff
    [   49.643633] 3ec0: c04d8ac8 c02476d0 ffffffff c0247c60 c705e200 c0248678 c705e200 c0249064
    [   49.651765] 3ee0: ffffffff bf006204 c04d8ad0 c04d8ad0 c04d8ac8 bf007490 00000880 c00440c4
    [   49.659898] 3f00: 0000b748 c01c5708 bf007490 c01c44c8 c04d8ac8 c04d8afc bf007490 c01c4570
    [   49.668031] 3f20: bf007490 bf00750c c04f4258 c01c37a4 00000000 bf00750c c7083f44 c007b014
    [   49.676162] 3f40: 4000d000 6d617870 08006963 00000001 00000000 c7085000 00000001 00000000
    [   49.684287] 3f60: 4000d000 c7083f8c 00000001 bea01a54 00005401 c7ab1400 c00440c4 00082000
    [   49.692420] 3f80: bf00750c 00000880 c7083f8c 00000000 4000cfa8 00000000 00000880 bea01cc8
    [   49.700552] 3fa0: 00000081 c0043f40 00000000 00000880 bea01cc8 00000880 00000006 00000000
    [   49.708677] 3fc0: 00000000 00000880 bea01cc8 00000081 00000097 0000cca4 0000b748 00000000
    [   49.716802] 3fe0: 4001a4f0 bea01cc0 00018bf4 4001a4fc 20000010 bea01cc8 a063e021 a063e421
    [   49.724958] [<c01a2448>] (regulator_is_enabled+0x3c/0xbc) from [<c0247ddc>] (mmc_regulator_set_ocr+0x14/0xd8)
    [   49.734836] [<c0247ddc>] (mmc_regulator_set_ocr+0x14/0xd8) from [<bf006400>] (pxamci_set_ios+0xd8/0x17c [pxamci])
    [   49.745044] [<bf006400>] (pxamci_set_ios+0xd8/0x17c [pxamci]) from [<c02476d0>] (mmc_power_off+0x50/0x58)
    [   49.754555] [<c02476d0>] (mmc_power_off+0x50/0x58) from [<c0247c60>] (mmc_detach_bus+0x68/0xc4)
    [   49.763207] [<c0247c60>] (mmc_detach_bus+0x68/0xc4) from [<c0248678>] (mmc_stop_host+0xd4/0x1bc)
    [   49.771944] [<c0248678>] (mmc_stop_host+0xd4/0x1bc) from [<c0249064>] (mmc_remove_host+0xc/0x20)
    [   49.780681] [<c0249064>] (mmc_remove_host+0xc/0x20) from [<bf006204>] (pxamci_remove+0xc8/0x174 [pxamci])
    [   49.790211] [<bf006204>] (pxamci_remove+0xc8/0x174 [pxamci]) from [<c01c5708>] (platform_drv_remove+0x1c/0x24)
    [   49.800164] [<c01c5708>] (platform_drv_remove+0x1c/0x24) from [<c01c44c8>] (__device_release_driver+0x7c/0xc4)
    [   49.810110] [<c01c44c8>] (__device_release_driver+0x7c/0xc4) from [<c01c4570>] (driver_detach+0x60/0x8c)
    [   49.819535] [<c01c4570>] (driver_detach+0x60/0x8c) from [<c01c37a4>] (bus_remove_driver+0x90/0xcc)
    [   49.828452] [<c01c37a4>] (bus_remove_driver+0x90/0xcc) from [<c007b014>] (sys_delete_module+0x1d8/0x254)
    [   49.837891] [<c007b014>] (sys_delete_module+0x1d8/0x254) from [<c0043f40>] (ret_fast_syscall+0x0/0x28)
    [   49.847145] Code: eb06c53a e596c030 e1a0500d e59f106c (e59c0040)
    [   49.853566] ---[ end trace b5fa66a00cea142f ]---
    Signed-off-by: Daniel Mack <>
    Reported-by: Sven Neumann <>
    Cc: Pierre Ossman <>
    Signed-off-by: Eric Miao <>
    Signed-off-by: Greg Kroah-Hartman <>
  30. @gregkh

    tty_port: handle the nonblocking open of a dead port corner case

    Alan Cox authored gregkh committed
    commit 8627b96 upstream.
    Some drivers allow O_NDELAY of a dead port (eg for setserial to work). In that
    situation we must not try to raise the carrier.
    Signed-off-by: Alan Cox <>
    Signed-off-by: Greg Kroah-Hartman <>
  31. @gregkh

    USB: work around for EHCI with quirky periodic schedules

    Oliver Neukum authored gregkh committed
    commit ee4ecb8 upstream.
    a quirky chipset needs periodic schedules to run for a minimum
    time before they can be disabled again. This enforces the requirement
    with a time stamp and a calculated delay
    Signed-off-by: Oliver Neukum <>
    Signed-off-by: Greg Kroah-Hartman <>
  32. @ebiederm @gregkh

    USB: ftdi_sio: Keep going when write errors are encountered.

    ebiederm authored gregkh committed
    commit 0de6ab8 upstream.
    The use of urb->actual_length to update tx_outstanding_bytes
    implicitly assumes that the number of bytes actually written is the
    same as the number of bytes we tried to write.  On error that
    assumption is violated so just use transfer_buffer_length the number
    of bytes we intended to write to the device.
    If an error occurs we need to fall through and call
    usb_serial_port_softint to wake up processes waiting in
    Signed-off-by: Eric W. Biederman <>
    Signed-off-by: Greg Kroah-Hartman <>
  33. @gregkh

    usb: amd5536udc: fixed shared interrupt bug and warning oops

    Thomas Dahlmann authored gregkh committed
    commit c5deb83 upstream.
    - fixed shared interrupt bug reported by Vadim Lobanov
     - fixed possible warning oops on driver unload when connected
     - prevent interrupt flood in PIO mode ("modprobe amd5536udc use_dma=0")
       when using gadget ether
    Signed-off-by: Thomas Dahlmann <>
    Cc: Robert Richter <>
    Cc: David Brownell <>
    Signed-off-by: Andrew Morton <>
    Signed-off-by: Greg Kroah-Hartman <>
  34. @gregkh

    USB: musb_gadget: fix STALL handling

    Sergei Shtylyov authored gregkh committed
    commit cea8324 upstream.
    The driver incorrectly cancels the mass-storage device CSW request
    (which leads to device reset) due to giving back URB at the head of
    endpoint's queue after sending each STALL handshake; stop doing that
    and start checking for the queue being non-empty before stalling an
    endpoint and disallowing stall in such case in musb_gadget_set_halt()
    like the other gadget drivers do.
    Moreover, the driver starts Rx request despite of the endpoint being
    halted -- fix this by moving the SendStall bit check from musb_g_rx()
    to rxstate().  And we also sometimes get into rxstate() with DMA still
    active after clearing an endpoint's halt (not clear why), so bail out
    in this case, similarly to what txstate() does...
    While at it, also do the following changes :
    - in musb_gadget_set_halt(), remove pointless Tx FIFO flushing (the
      driver does not allow stalling with non-empty Tx FIFO anyway);
    - in rxstate(), stop pointlessly zeroing the 'csr' variable;
    - in musb_gadget_set_halt(), move the 'done' label to a more proper
    - in musb_g_rx(), eliminate the 'done' label completely...
    Signed-off-by: Sergei Shtylyov <>
    Signed-off-by: Greg Kroah-Hartman <>
  35. @gregkh

    USB: EHCI: don't send Clear-TT-Buffer following a STALL

    Alan Stern authored gregkh committed
    commit c2f6595 upstream.
    This patch (as1304) fixes a regression in ehci-hcd.  Evidently some
    hubs don't handle Clear-TT-Buffer requests correctly, so we should
    avoid sending them when they don't appear to be absolutely necessary.
    The reported symptom is that output on a downstream audio device cuts
    out because the hub stops relaying isochronous packets.
    The patch prevents Clear-TT-Buffer requests from being sent following
    a STALL handshake.  In theory a STALL indicates either that the
    downstream device sent a STALL or that no matching TT buffer could be
    found.  In either case, the transfer is completed and the TT buffer
    does not remain busy, so it doesn't need to be cleared.
    Also, the patch fixes a minor flaw in the code that actually sends the
    Clear-TT-Buffer requests.  Although the pipe direction isn't really
    used for control transfers, it should be a Send rather than a Receive.
    Signed-off-by: Alan Stern <>
    Reported-by: Javier Kohen <>
    CC: David Brownell <>
    Signed-off-by: Greg Kroah-Hartman <>
Something went wrong with that request. Please try again.