Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Dec 9, 2011
  1. @gregkh


    gregkh authored
  2. @gregkh

    clockevents: Set noop handler in clockevents_exchange_device()

    Thomas Gleixner authored gregkh committed
    commit de28f25 upstream.
    If a device is shutdown, then there might be a pending interrupt,
    which will be processed after we reenable interrupts, which causes the
    original handler to be run. If the old handler is the (broadcast)
    periodic handler the shutdown state might hang the kernel completely.
    Signed-off-by: Thomas Gleixner <>
    Signed-off-by: Greg Kroah-Hartman <>
  3. @gregkh

    tick-broadcast: Stop active broadcast device when replacing it

    Thomas Gleixner authored gregkh committed
    commit c1be843 upstream.
    When a better rated broadcast device is installed, then the current
    active device is not disabled, which results in two running broadcast
    Signed-off-by: Thomas Gleixner <>
    Signed-off-by: Greg Kroah-Hartman <>
  4. @gitido @gregkh

    genirq: Fix race condition when stopping the irq thread

    gitido authored gregkh committed
    commit 550acb1 upstream.
    In irq_wait_for_interrupt(), the should_stop member is verified before
    setting the task's state to TASK_INTERRUPTIBLE and calling schedule().
    In case kthread_stop sets should_stop and wakes up the process after
    should_stop is checked by the irq thread but before the task's state
    is changed, the irq thread might never exit:
    kthread_stop                    irq_wait_for_interrupt
    ------------                    ----------------------
    ...                              while (!kthread_should_stop()) {
    kthread->should_stop = 1;
    Fix this by checking if the thread should stop after modifying the
    task's state.
    [ tglx: Simplified it a bit ]
    Signed-off-by: Ido Yariv <>
    Signed-off-by: Thomas Gleixner <>
    Signed-off-by: Greg Kroah-Hartman <>
  5. @gregkh

    oprofile, x86: Fix crash when unloading module (nmi timer mode)

    Robert Richter authored gregkh committed
    commit 97f7f81 upstream.
    If oprofile uses the nmi timer interrupt there is a crash while
    unloading the module. The bug can be triggered with oprofile build as
    module and kernel parameter nolapic set. This patch fixes this.
    oprofile: using NMI timer interrupt.
    BUG: unable to handle kernel NULL pointer dereference at 0000000000000008
    IP: [<ffffffff8123c226>] unregister_syscore_ops+0x41/0x58
    PGD 42dbca067 PUD 41da6a067 PMD 0
    Oops: 0002 [#1] PREEMPT SMP
    CPU 5
    Modules linked in: oprofile(-) [last unloaded: oprofile]
    Pid: 2518, comm: modprobe Not tainted 3.1.0-rc7-00019-gb2fb49d #19 Advanced Micro Device Anaheim/Anaheim
    RIP: 0010:[<ffffffff8123c226>]  [<ffffffff8123c226>] unregister_syscore_ops+0x41/0x58
    RSP: 0018:ffff88041ef71e98  EFLAGS: 00010296
    RAX: 0000000000000000 RBX: ffffffffa0017100 RCX: dead000000200200
    RDX: 0000000000000000 RSI: dead000000100100 RDI: ffffffff8178c620
    RBP: ffff88041ef71ea8 R08: 0000000000000001 R09: 0000000000000082
    R10: 0000000000000000 R11: ffff88041ef71de8 R12: 0000000000000080
    R13: fffffffffffffff5 R14: 0000000000000001 R15: 0000000000610210
    FS:  00007fc902f20700(0000) GS:ffff88042fd40000(0000) knlGS:0000000000000000
    CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
    CR2: 0000000000000008 CR3: 000000041cdb6000 CR4: 00000000000006e0
    DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
    DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
    Process modprobe (pid: 2518, threadinfo ffff88041ef70000, task ffff88041d348040)
     ffff88041ef71eb8 ffffffffa0017790 ffff88041ef71eb8 ffffffffa0013532
     ffff88041ef71ec8 ffffffffa00132d6 ffff88041ef71ed8 ffffffffa00159b2
     ffff88041ef71f78 ffffffff81073115 656c69666f72706f 0000000000610200
    Call Trace:
     [<ffffffffa0013532>] op_nmi_exit+0x15/0x17 [oprofile]
     [<ffffffffa00132d6>] oprofile_arch_exit+0xe/0x10 [oprofile]
     [<ffffffffa00159b2>] oprofile_exit+0x1e/0x20 [oprofile]
     [<ffffffff81073115>] sys_delete_module+0x1c3/0x22f
     [<ffffffff811bf09e>] ? trace_hardirqs_on_thunk+0x3a/0x3f
     [<ffffffff8148070b>] system_call_fastpath+0x16/0x1b
    Code: 20 c6 78 81 e8 c5 cc 23 00 48 8b 13 48 8b 43 08 48 be 00 01 10 00 00 00 ad de 48 b9 00 02 20 00 00 00 ad de 48 c7 c7 20 c6 78 81
     89 42 08 48 89 10 48 89 33 48 89 4b 08 e8 a6 c0 23 00 5a 5b
    RIP  [<ffffffff8123c226>] unregister_syscore_ops+0x41/0x58
     RSP <ffff88041ef71e98>
    CR2: 0000000000000008
    ---[ end trace 43a541a52956b7b0 ]---
    Signed-off-by: Robert Richter <>
    Signed-off-by: Greg Kroah-Hartman <>
  6. @bjorn-helgaas @gregkh

    x86/mpparse: Account for bus types other than ISA and PCI

    bjorn-helgaas authored gregkh committed
    commit 9e68666 upstream.
    In commit f8924e7 ("x86: unify mp_bus_info"), the 32-bit
    and 64-bit versions of MP_bus_info were rearranged to match each
    other better.  Unfortunately it introduced a regression: prior
    to that change we used to always set the mp_bus_not_pci bit,
    then clear it if we found a PCI bus.  After it, we set
    mp_bus_not_pci for ISA buses, clear it for PCI buses, and leave
    it alone otherwise.
    In the cases of ISA and PCI, there's not much difference.  But
    ISA is not the only non-PCI bus, so it's better to always set
    mp_bus_not_pci and clear it only for PCI.
    Without this change, Dan's Dell PowerEdge 4200 panics on boot
    with a log indicating interrupt routing trouble unless the
    "noapic" option is supplied.  With this change, the machine
    boots reliably without "noapic".
    Reported-bisected-and-tested-by: Dan McGrath <>
    Signed-off-by: Bjorn Helgaas <>
    Cc: Dan McGrath <>
    Cc: Alexey Starikovskiy <>
    [ clarified commit message]
    Signed-off-by: Jonathan Nieder <>
    Signed-off-by: Ingo Molnar <>
    Signed-off-by: Greg Kroah-Hartman <>
  7. @sqazi @gregkh

    sched, x86: Avoid unnecessary overflow in sched_clock

    sqazi authored gregkh committed
    commit 4cecf6d upstream.
    (Added the missing signed-off-by line)
    In hundreds of days, the __cycles_2_ns calculation in sched_clock
    has an overflow.  cyc * per_cpu(cyc2ns, cpu) exceeds 64 bits, causing
    the final value to become zero.  We can solve this without losing
    any precision.
    We can decompose TSC into quotient and remainder of division by the
    scale factor, and then use this to convert TSC into nanoseconds.
    Signed-off-by: Salman Qazi <>
    Acked-by: John Stultz <>
    Reviewed-by: Paul Turner <>
    Signed-off-by: Peter Zijlstra <>
    Signed-off-by: Ingo Molnar <>
    Signed-off-by: Greg Kroah-Hartman <>
  8. @gregkh

    cifs: fix cifs stable patch cifs-fix-oplock-break-handling-try-2.patch

    Suresh Jayaraman authored gregkh committed
    The stable release added the upstream commit
    12fed00. However, one of the hunks of
    the original patch seems missing from the stable backport which can be
    found here:
    This hunk corresponds to the change in is_valid_oplock_break() at
    This patch backports the missing hunk and is against
    linux-2.6.32.y stable kernel.
    Cc: Steve French <>
    Signed-off-by: Pavel Shilovsky <>
    Signed-off-by: Suresh Jayaraman <>
    Signed-off-by: Greg Kroah-Hartman <>
  9. @hreinecke @gregkh

    SCSI: Silencing 'killing requests for dead queue'

    hreinecke authored gregkh committed
    commit 7457181 upstream.
    When we tear down a device we try to flush all outstanding
    commands in scsi_free_queue(). However the check in
    scsi_request_fn() is imperfect as it only signals that
    we _might start_ aborting commands, not that we've actually
    aborted some.
    So move the printk inside the scsi_kill_request function,
    this will also give us a hint about which commands are aborted.
    Signed-off-by: Hannes Reinecke <>
    Signed-off-by: James Bottomley <>
    Signed-off-by: Greg Kroah-Hartman <>
  10. @jirislaby @gregkh

    SCSI: scsi_lib: fix potential NULL dereference

    jirislaby authored gregkh committed
    commit 03b1470 upstream.
    Stanse found a potential NULL dereference in scsi_kill_request.
    Instead of triggering BUG() in 'if (unlikely(cmd == NULL))' branch,
    the kernel will Oops earlier on cmd dereference.
    Move the dereferences after the if.
    Signed-off-by: Jiri Slaby <>
    Signed-off-by: James Bottomley <>
    Signed-off-by: Greg Kroah-Hartman <>
  11. @yestyle @gregkh

    USB: usb-storage: unusual_devs entry for Kingston DT 101 G2

    yestyle authored gregkh committed
    commit cec28a5 upstream.
    Kingston DT 101 G2 replies a wrong tag while transporting, add an
    unusal_devs entry to ignore the tag validation.
    Signed-off-by: Qinglin Ye <>
    Signed-off-by: Greg Kroah-Hartman <>
  12. @gregkh

    usb: option: add SIMCom SIM5218

    Veli-Pekka Peltola authored gregkh committed
    commit ec0cd94 upstream.
    Tested with SIM5218EVB-KIT evaluation kit.
    Signed-off-by: Veli-Pekka Peltola <>
    Signed-off-by: Greg Kroah-Hartman <>
  13. @koriakin @gregkh

    usb: ftdi_sio: add PID for Propox ISPcable III

    koriakin authored gregkh committed
    commit 307369b upstream.
    Signed-off-by: Marcin Kościelnicki <>
    Signed-off-by: Greg Kroah-Hartman <>
  14. @gregkh

    USB: whci-hcd: fix endian conversion in qset_clear()

    Dan Carpenter authored gregkh committed
    commit 8746c83 upstream.
    qset-> is an __le64 field and we should be using cpu_to_le64()
    to fill it.
    Signed-off-by: Dan Carpenter <>
    Signed-off-by: Greg Kroah-Hartman <>
  15. @FedericoVaga @gregkh

    Staging: comedi: fix signal handling in read and write

    FedericoVaga authored gregkh committed
    commit 6a9ce6b upstream.
    After sleeping on a wait queue, signal_pending(current) should be
    checked (not before sleeping).
    Acked-by: Alessandro Rubini <>
    Signed-off-by: Federico Vaga <>
    Signed-off-by: Greg Kroah-Hartman <>
  16. @berndporr @gregkh

    staging: comedi: fix oops for USB DAQ devices.

    berndporr authored gregkh committed
    commit 3ffab42 upstream.
    This fixes kernel oops when an USB DAQ device is plugged out while it's
    communicating with the userspace software.
    Signed-off-by: Bernd Porr <>
    Signed-off-by: Greg Kroah-Hartman <>
  17. @gregkh

    staging: usbip: bugfix for deadlock

    Bart Westgeest authored gregkh committed
    commit 438957f upstream.
    Interrupts must be disabled prior to calling usb_hcd_unlink_urb_from_ep.
    If interrupts are not disabled, it can potentially lead to a deadlock.
    The deadlock is readily reproduceable on a slower (ARM based) device
    such as the TI Pandaboard.
    Signed-off-by: Bart Westgeest <>
    Signed-off-by: Greg Kroah-Hartman <>
  18. @gregkh

    gro: reset vlan_tci on reuse

    Benjamin Poirier authored gregkh committed
    This one liner is part of upstream
    commit 3701e51
    Author: Jesse Gross <>
        vlan: Centralize handling of hardware acceleration.
    The bulk of that commit is a rework of the hardware assisted vlan tagging
    driver interface, and as such doesn't classify for -stable inclusion. The fix
    that is needed is a part of that commit but can work independently of the
    This patch can avoid panics on the 2.6.32.y -stable kernels and is in the same
    spirit as mainline commits
    66c46d7 gro: Reset dev pointer on reuse
    6d152e2 gro: reset skb_iif on reuse
    which are already in -stable.
    For drivers using the vlan_gro_frags() interface, a packet with an invalid tci
    leads to GRO_DROP and napi_reuse_skb(). The skb has to be sanitized before
    being reused or we may send an skb with an invalid vlan_tci field up the stack
    where it is not expected.
    Signed-off-by: Benjamin Poirier <>
    Cc: Jesse Gross <>
    Acked-by: David S. Miller <>
  19. @elp @gregkh

    nl80211: fix MAC address validation

    elp authored gregkh committed
    commit e007b85 upstream.
    MAC addresses have a fixed length. The current
    policy allows passing < ETH_ALEN bytes, which
    might result in reading beyond the buffer.
    Signed-off-by: Eliad Peller <>
    Signed-off-by: John W. Linville <>
    Signed-off-by: Greg Kroah-Hartman <>
  20. @mbuesch @gregkh

    p54spi: Fix workqueue deadlock

    mbuesch authored gregkh committed
    commit 2d16181 upstream.
    priv->work must not be synced while priv->mutex is locked, because
    the mutex is taken in the work handler.
    Move cancel_work_sync down to after the device shutdown code.
    This is safe, because the work handler checks fw_state and bails out
    early in case of a race.
    Signed-off-by: Michael Buesch <>
    Acked-by: Christian Lamparter <>
    Signed-off-by: John W. Linville <>
    Signed-off-by: Greg Kroah-Hartman <>
  21. @mbuesch @gregkh

    p54spi: Add missing spin_lock_init

    mbuesch authored gregkh committed
    commit 32d3a39 upstream.
    The tx_lock is not initialized properly. Add spin_lock_init().
    Signed-off-by: Michael Buesch <>
    Acked-by: Christian Lamparter <>
    Signed-off-by: John W. Linville <>
    Signed-off-by: Greg Kroah-Hartman <>
  22. @hpalacio @gregkh

    timekeeping: add arch_offset hook to ktime_get functions

    hpalacio authored gregkh committed
    commit d004e02 upstream.
    ktime_get and ktime_get_ts were calling timekeeping_get_ns()
    but later they were not calling arch_gettimeoffset() so architectures
    using this mechanism returned 0 ns when calling these functions.
    This happened for example when running Busybox's ping which calls
    syscall(__NR_clock_gettime, CLOCK_MONOTONIC, ts) which eventually
    calls ktime_get. As a result the returned ping travel time was zero.
    Signed-off-by: Hector Palacios <>
    Signed-off-by: John Stultz <>
    Signed-off-by: Greg Kroah-Hartman <>
  23. @gregkh

    SUNRPC: Ensure we return EAGAIN in xs_nospace if congestion is cleared

    Trond Myklebust authored gregkh committed
    commit 24ca9a8 upstream.
    By returning '0' instead of 'EAGAIN' when the tests in xs_nospace() fail
    to find evidence of socket congestion, we are making the RPC engine believe
    that the message was incorrectly sent and so it disconnects the socket
    instead of just retrying.
    The bug appears to have been introduced by commit
    5e3771c (SUNRPC: Ensure that xs_nospace
    return values are propagated).
    Reported-by: Andrew Cooper <>
    Signed-off-by: Trond Myklebust <>
    Tested-by: Andrew Cooper <>
    Signed-off-by: Greg Kroah-Hartman <>
  24. @timblechmann @gregkh

    ALSA: lx6464es - fix device communication via command bus

    timblechmann authored gregkh committed
    commit a298785 upstream.
    commit 6175ddf optimized the mem*io
    functions that have been used to send commands to the device. these
    optimizations somehow corrupted the communication with the lx6464es,
    that resulted the device to be unusable with kernels after 2.6.33.
    this patch emulates the memcpy_*_io functions via a loop to avoid these
    Signed-off-by: Tim Blechmann <>
    LKML-Reference: <>
    Signed-off-by: Takashi Iwai <>
    Signed-off-by: Greg Kroah-Hartman <>
  25. @wildea01 @gregkh

    ARM: 7161/1: errata: no automatic store buffer drain

    wildea01 authored gregkh committed
    commit 11ed0ba upstream.
    This patch implements a workaround for PL310 erratum 769419. On
    revisions of the PL310 prior to r3p2, the Store Buffer does not
    automatically drain. This can cause normal, non-cacheable writes to be
    retained when the memory system is idle, leading to suboptimal I/O
    performance for drivers using coherent DMA.
    This patch adds an optional wmb() call to the cpu_idle loop. On systems
    with an outer cache, this causes an explicit flush of the store buffer.
    Acked-by: Catalin Marinas <>
    Tested-by: Marc Zyngier <>
    Signed-off-by: Will Deacon <>
    Signed-off-by: Russell King <>
    Signed-off-by: Greg Kroah-Hartman <>
  26. @bjorn-helgaas @gregkh

    PCI hotplug: shpchp: don't blindly claim non-AMD 0x7450 device IDs

    bjorn-helgaas authored gregkh committed
    commit 4cac2eb upstream.
    Previously we claimed device ID 0x7450, regardless of the vendor, which is
    clearly wrong.  Now we'll claim that device ID only for AMD.
    I suspect this was just a typo in the original code, but it's possible this
    change will break shpchp on non-7450 AMD bridges.  If so, we'll have to fix
    them as we find them.
    Reported-by: Ralf Jung <>
    Cc: Joerg Roedel <>
    Signed-off-by: Bjorn Helgaas <>
    Signed-off-by: Jesse Barnes <>
    Signed-off-by: Greg Kroah-Hartman <>
  27. @gregkh

    eCryptfs: Extend array bounds for all filename chars

    Tyler Hicks authored gregkh committed
    commit 0f751e6 upstream.
    From mhalcrow's original commit message:
        Characters with ASCII values greater than the size of
        filename_rev_map[] are valid filename characters.
        ecryptfs_decode_from_filename() will access kernel memory beyond
        that array, and ecryptfs_parse_tag_70_packet() will then decrypt
        those characters. The attacker, using the FNEK of the crafted file,
        can then re-encrypt the characters to reveal the kernel memory past
        the end of the filename_rev_map[] array. I expect low security
        impact since this array is statically allocated in the text area,
        and the amount of memory past the array that is accessible is
        limited by the largest possible ASCII filename character.
    This patch solves the issue reported by mhalcrow but with an
    implementation suggested by Linus to simply extend the length of
    filename_rev_map[] to 256. Characters greater than 0x7A are mapped to
    0x00, which is how invalid characters less than 0x7A were previously
    being handled.
    Signed-off-by: Tyler Hicks <>
    Reported-by: Michael Halcrow <>
    Signed-off-by: Greg Kroah-Hartman <>
  28. @sjchu @gregkh

    i2c-algo-bit: Generate correct i2c address sequence for 10-bit target

    sjchu authored gregkh committed
    commit cc6bcf7 upstream.
    The wrong bits were put on the wire, fix that.
    This fixes kernel bug #42562.
    Signed-off-by: Sheng-Hui J. Chu <>
    Signed-off-by: Jean Delvare <>
    Signed-off-by: Greg Kroah-Hartman <>
Commits on Nov 26, 2011
  1. @gregkh


    gregkh authored
  2. @gregkh

    tty: icount changeover for other main devices

    Alan Cox authored gregkh committed
    commit 0587102 upstream
    Again basically cut and paste
    Convert the main driver set to use the hooks for GICOUNT
    Signed-off-by: Alan Cox <>
    Signed-off-by: Greg Kroah-Hartman <>
    Signed-off-by: Dan Carpenter <>
  3. @gregkh

    tty: Make tiocgicount a handler

    Alan Cox authored gregkh committed
    commit d281da7 upstream
    Dan Rosenberg noted that various drivers return the struct with uncleared
    fields. Instead of spending forever trying to stomp all the drivers that
    get it wrong (and every new driver) do the job in one place.
    This first patch adds the needed operations and hooks them up, including
    the needed USB midlayer and serial core plumbing.
    Signed-off-by: Alan Cox <>
    Signed-off-by: Greg Kroah-Hartman <>
    Signed-off-by: Dan Carpenter <>
  4. @anbroid @gregkh

    USB: quirks: adding more quirky webcams to avoid squeaky audio

    anbroid authored gregkh committed
    commit 0d145d7 upstream.
    The following patch contains additional affected webcam models, on top of the
    patches commited to linux-next 2394d67
    and 5b253d8
    Signed-off-by: sordna <>
    Cc: Oliver Neukum <>
    Signed-off-by: Greg Kroah-Hartman <>
  5. @gregkh

    USB: add quirk for Logitech C600 web cam

    Josh Boyer authored gregkh committed
    commit 60c71ca upstream.
    We've had another report of the "chipmunk" sound on a Logitech C600 webcam.
    This patch resolves the issue.
    Signed-off-by: Josh Boyer <>
    Signed-off-by: Greg Kroah-Hartman <>
  6. @gregkh

    usb-storage: Accept 8020i-protocol commands longer than 12 bytes

    Alan Stern authored gregkh committed
    commit 2f640bf upstream.
    The 8020i protocol (also 8070i and QIC-157) uses 12-byte commands;
    shorter commands must be padded.  Simon Detheridge reports that his
    3-TB USB disk drive claims to use the 8020i protocol (which is
    normally meant for ATAPI devices like CD drives), and because of its
    large size, the disk drive requires the use of 16-byte commands.
    However the usb_stor_pad12_command() routine in usb-storage always
    sets the command length to 12, making the drive impossible to use.
    Since the SFF-8020i specification allows for 16-byte commands in
    future extensions, we may as well accept them.  This patch (as1490)
    changes usb_stor_pad12_command() to leave commands larger than 12
    bytes alone rather than truncating them.
    Signed-off-by: Alan Stern <>
    Tested-by: Simon Detheridge <>
    CC: Matthew Dharm <>
    Signed-off-by: Greg Kroah-Hartman <>
  7. @amworsley @gregkh

    USB: Fix Corruption issue in USB ftdi driver ftdi_sio.c

    amworsley authored gregkh committed
    commit b1ffb4c upstream.
    Fix for ftdi_set_termios() glitching output
    ftdi_set_termios() is constantly setting the baud rate, data bits and parity
    unnecessarily on every call, . When called while characters are being
    transmitted can cause the FTDI chip to corrupt the serial port bit stream
    output by stalling the output half a bit during the output of a character.
    Simple fix by skipping this setting if the baud rate/data bits/parity are
    Signed-off-by: Andrew Worsley <>
    Signed-off-by: Greg Kroah-Hartman <>
Something went wrong with that request. Please try again.