Permalink
Commits on Dec 8, 2009
  1. Linux 2.6.31.7

    gregkh committed Dec 8, 2009
  2. isdn: hfc_usb: Fix read buffer overflow

    commit 286e633 upstream.
    
    Check whether index is within bounds before testing the element.
    
    Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
    Cc: Karsten Keil <isdn@linux-pingi.de>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    RoelKluin committed with gregkh Nov 4, 2009
  3. Input: keyboard - fix braille keyboard keysym generation

    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 <samuel.thibault@ens-lyon.org>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    sthibaul committed with gregkh Nov 26, 2009
  4. acerhdf: return temperature in milidegree instead of degree

    commit 7005291 upstream.
    
    Return temperature in milidegree instead of degree, as sysfs-api requires
    the temperature in milidegree.
    
    Signed-off-by: Peter Feuerer <peter@piie.net>
    Tested-by: Borislav Petkov <petkovbb@gmail.com>
    Cc: Andreas Mohr <andi@lisas.de>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Len Brown <len.brown@intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    xypiie committed with gregkh Nov 17, 2009
  5. acerhdf: additional BIOS versions

    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 <peter@piie.net>
    Cc: Andreas Mohr <andi@lisas.de>
    Cc: Borislav Petkov <petkovbb@googlemail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Len Brown <len.brown@intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    xypiie committed with gregkh Sep 18, 2009
  6. PCI: Prevent AER driver from being loaded on non-root port PCIE devices

    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 <malcolm.crossley2@gefanuc.com>
    Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
    Tested-by: Malcolm Crossley <malcolm.crossley2@gefanuc.com>
    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
    Cc: Jean Delvare <khali@linux-fr.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    kkaneshige committed with gregkh Oct 7, 2009
  7. V4L/DVB (13257): gspca - m5602-s5k4aa: Add vflip for Fujitsu Amilo Xi…

    … 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 <erik.andren@gmail.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
    ErikAndren committed with gregkh Oct 3, 2009
  8. V4L/DVB (13256): gspca - m5602-s5k4aa: Add another MSI GX700 vflip quirk

    commit 2339a18 upstream.
    
    Adds another vflip quirk for the MSI GX700.
    Thanks to John Katzmaier for reporting.
    
    Signed-off-by: Erik Andrén <erik.andren@gmail.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    ErikAndren committed with gregkh Sep 27, 2009
  9. V4L/DVB (13255): gspca - m5602-s5k4aa: Add vflip quirk for the Brunei…

    …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 <erik.andren@gmail.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    ErikAndren committed with gregkh Sep 27, 2009
  10. tty/of_serial: add missing ns16550a id

    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 <alonz@nolaviz.org>
    Signed-off-by: Michal Simek <monstr@monstr.eu>
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    michalsimek committed with gregkh Nov 24, 2009
  11. drm/fb: fix FBIOGET/PUT_VSCREENINFO pixel clock handling

    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 X.org's fbdev driver to work.
    
    Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
    Tested-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    cladisch committed with gregkh Dec 2, 2009
  12. acerhdf: fix fan control for AOA150 model

    commit ded0cdf upstream.
    
    - Apply Borislav Petkov's patch (convert the fancmd[] array to a real
      struct thus disambiguating command handling and making code more
      readable.)
    
    - 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
      "acerhdf_driver"
    
    Signed-off-by: Peter Feuerer <peter@piie.net>
    Cc: Andreas Mohr <andi@lisas.de>
    Acked-by: Borislav Petkov <petkovbb@gmail.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Len Brown <len.brown@intel.com>
    Cc: Adrian von Bidder <avbidder@fortytwo.ch>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    xypiie committed with gregkh Aug 6, 2009
  13. i2c: Fix userspace_device list corruption

    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 <khali@linux-fr.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Jean Delvare committed with gregkh Nov 26, 2009
  14. ath5k: Linear PCDAC code fixes

    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 <mickflemm@gmail.com>
    Acked-by: Bob Copeland <me@bobcopeland.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>
    Cc: Dan Williams <dcbw@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Nick Kossifidis committed with gregkh Aug 10, 2009
  15. sky2: set carrier off in probe

    commit 33cb7d3 upstream.
    
    Before bringing up a sky2 interface up ethtool reports
    "Link detected: yes". Do as ixgbe does and netif_carrier_off() on
    probe().
    
    Signed-off-by: Brandon Philips <bphilips@suse.de>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Brandon Philips committed with gregkh Oct 29, 2009
  16. crypto: padlock-aes - Use the correct mask when checking whether copy…

    …ing is required
    
    commit e8edb3c upstream.
    
    Masking with PAGE_SIZE is just wrong...
    
    Signed-off-by: Chuck Ebbert <cebbert@redhat.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Chuck Ebbert committed with gregkh Nov 3, 2009
  17. b43: Fix DMA TX bounce buffer copying

    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 <mb@bu3sch.de>
    Tested-by: Christian Casteyde <casteyde.christian@free.fr>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Michael Buesch committed with gregkh Oct 28, 2009
  18. netfilter: xt_connlimit: fix regression caused by zero family value

    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.
    
    References: http://bugzilla.netfilter.org/show_bug.cgi?id=610
    Signed-off-by: Jan Engelhardt <jengelh@medozas.de>
    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Jan Engelhardt committed with gregkh Nov 7, 2009
  19. netfilter: nf_nat: fix NAT issue in 2.6.30.4+

    commit f9dd09c upstream.
    
    Vitezslav Samel discovered that since 2.6.30.4+ 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 <kadlec@blackhole.kfki.hu>
    Signed-off-by: Patrick McHardy <kaber@trash.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Jozsef Kadlecsik committed with gregkh Nov 6, 2009
  20. agp/intel: new host bridge support

    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 <zhenyuw@linux.intel.com>
    Signed-off-by: Eric Anholt <eric@anholt.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Zhenyu Wang committed with gregkh Nov 10, 2009
  21. hwmon: (adt7475) Cache limits for 60 seconds

    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 <khali@linux-fr.org>
    Acked-by: Hans de Goede <hdegoede@redhat.com>
    Cc: Jordan Crouse <jordan@cosmicpenguin.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Jean Delvare committed with gregkh Nov 16, 2009
  22. hwmon: (adt7475) Fix temperature fault flags

    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
    complained.
    
    Signed-off-by: Jean Delvare <khali@linux-fr.org>
    Acked-by: Hans de Goede <hdegoede@redhat.com>
    Cc: Jordan Crouse <jordan@cosmicpenguin.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Jean Delvare committed with gregkh Nov 16, 2009
  23. block: use after free bug in __blkdev_get

    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 <neilb@suse.de>
    Acked-by: Tejun Heo <tj@kernel.org>
    Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    neilbrown committed with gregkh Oct 26, 2009
  24. hso: fix soft-lockup

    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 <antti.kaijanmaki@nomovok.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Antti Kaijanmäki committed with gregkh Nov 23, 2009
  25. perf_event: Adjust frequency and unthrottle for non-group-leader events

    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 <krentel@cs.rice.edu>
    Signed-off-by: Paul Mackerras <paulus@samba.org>
    Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
    Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
    LKML-Reference: <19157.26731.855609.165622@cargo.ozlabs.ibm.com>
    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    paulusmack committed with gregkh Oct 14, 2009
  26. md: revert incorrect fix for read error handling in raid1.

    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 <neilb@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    neilbrown committed with gregkh Dec 1, 2009
  27. modules: don't export section names of empty sections via sysfs

    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:
    Sections:
    Idx Name          Size      VMA       LMA       File off  Algn
      0 .note.gnu.build-id 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 http://bugzilla.kernel.org/show_bug.cgi?id=14703
    
    Signed-off-by: Helge Deller <deller@gmx.de>
    CC: rusty@rustcorp.com.au
    CC: akpm@linux-foundation.org
    CC: James.Bottomley@HansenPartnership.com
    CC: roland@redhat.com
    CC: dave@hiauly1.hia.nrc.ca
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Helge Deller committed with gregkh Dec 2, 2009
  28. param: don't complain about unused module parameters.

    commit f066a4f upstream.
    
    Jon confirms that recent modprobe will look in /proc/cmdline, so these
    cmdline options can still be used.
    
    See http://bugzilla.kernel.org/show_bug.cgi?id=14164
    
    Reported-by: Adam Williamson <awilliam@redhat.com>
    Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    rustyrussell committed with gregkh Dec 1, 2009
  29. pxamci: call mmc_remove_host() before freeing resources

    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 <daniel@caiaq.de>
    Reported-by: Sven Neumann <s.neumann@raumfeld.com>
    Cc: Pierre Ossman <pierre@ossman.eu>
    Cc: linux-mmc@vger.kernel.org
    Cc: linux-arm-kernel@lists.infradead.org
    Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    zonque committed with gregkh Dec 1, 2009
  30. tty_port: handle the nonblocking open of a dead port corner case

    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 <alan@linux.intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Alan Cox committed with gregkh Nov 18, 2009
  31. USB: work around for EHCI with quirky periodic schedules

    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 <oliver@neukum.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Oliver Neukum committed with gregkh Nov 27, 2009
  32. USB: ftdi_sio: Keep going when write errors are encountered.

    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
    tty_wait_until_sent.
    
    Signed-off-by: Eric W. Biederman <ebiederm@aristanetworks.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    ebiederm committed with gregkh Nov 18, 2009
  33. usb: amd5536udc: fixed shared interrupt bug and warning oops

    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 <dahlmann.thomas@arcor.de>
    Cc: Robert Richter <robert.richter@amd.com>
    Cc: David Brownell <david-b@pacbell.net>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Thomas Dahlmann committed with gregkh Nov 17, 2009
  34. USB: musb_gadget: fix STALL handling

    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
      place;
    
    - in musb_g_rx(), eliminate the 'done' label completely...
    
    Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Sergei Shtylyov committed with gregkh Nov 18, 2009
  35. USB: EHCI: don't send Clear-TT-Buffer following a STALL

    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 <stern@rowland.harvard.edu>
    Reported-by: Javier Kohen <jkohen@users.sourceforge.net>
    CC: David Brownell <david-b@pacbell.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
    Alan Stern committed with gregkh Nov 18, 2009