Commits on Feb 7, 2012
  1. Merge branch 'configs-3.2' into pf-3.2

    Oleksandr Natalenko committed Feb 7, 2012
  2. configs-3.2: update config for Dell Inspiron 1525 laptop

    Oleksandr Natalenko committed Feb 7, 2012
  3. Merge branch 'version-3.2' into pf-3.2

    Oleksandr Natalenko committed Feb 7, 2012
  4. version-3.2: bump to v3.2.4-pf

    Oleksandr Natalenko committed Feb 7, 2012
Commits on Feb 6, 2012
  1. Merge branch 'imq-3.2' into pf-3.2

    Oleksandr Natalenko committed Feb 6, 2012
  2. imq-3.2: add LinuxIMQ for 3.2 kernel

    Oleksandr Natalenko committed Feb 6, 2012
  3. fix merge conflict

    Oleksandr Natalenko committed Feb 6, 2012
  4. @gregkh

    Linux 3.2.5

    gregkh committed Feb 6, 2012
  5. @gregkh

    PCI: Rework ASPM disable code

    commit 3c07635 upstream.
    
    Right now we forcibly clear ASPM state on all devices if the BIOS indicates
    that the feature isn't supported. Based on the Microsoft presentation
    "PCI Express In Depth for Windows Vista and Beyond", I'm starting to think
    that this may be an error. The implication is that unless the platform
    grants full control via _OSC, Windows will not touch any PCIe features -
    including ASPM. In that case clearing ASPM state would be an error unless
    the platform has granted us that control.
    
    This patch reworks the ASPM disabling code such that the actual clearing
    of state is triggered by a successful handoff of PCIe control to the OS.
    The general ASPM code undergoes some changes in order to ensure that the
    ability to clear the bits isn't overridden by ASPM having already been
    disabled. Further, this theoretically now allows for situations where
    only a subset of PCIe roots hand over control, leaving the others in the
    BIOS state.
    
    It's difficult to know for sure that this is the right thing to do -
    there's zero public documentation on the interaction between all of these
    components. But enough vendors enable ASPM on platforms and then set this
    bit that it seems likely that they're expecting the OS to leave them alone.
    
    Measured to save around 5W on an idle Thinkpad X220.
    
    Signed-off-by: Matthew Garrett <mjg@redhat.com>
    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Matthew Garrett committed with gregkh Nov 10, 2011
Commits on Feb 4, 2012
  1. fix merge conflict

    Oleksandr Natalenko committed Feb 4, 2012
Commits on Feb 3, 2012
  1. @gregkh

    Linux 3.2.4

    gregkh committed Feb 3, 2012
  2. @gregkh

    Revert "ASoC: Don't go through cache when applying WM5100 rev A updates"

    This reverts commit 78fd753 (upstream
    commit 495174a) as it breaks the build.
    
    Reported-by: Tim Gardner <rtg.canonical@gmail.com>
    Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    gregkh committed Feb 3, 2012
  3. @gregkh

    Revert "ASoC: Mark WM5100 register map cache only when going into BIA…

    …S_OFF"
    
    This reverts commit 11a17e5
    (e53e417 upstream) as it breaks the
    build.
    
    Reported-by: Tim Gardner <rtg.canonical@gmail.com>
    Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    gregkh committed Feb 3, 2012
  4. Merge branch 'version-3.2' into pf-3.2

    Oleksandr Natalenko committed Feb 3, 2012
  5. version-3.2: bump to v3.2.3-pf

    Oleksandr Natalenko committed Feb 3, 2012
  6. fix merge conflict

    Oleksandr Natalenko committed Feb 3, 2012
  7. @gregkh

    Linux 3.2.3

    gregkh committed Feb 3, 2012
  8. @gregkh

    mach-ux500: no MMC_CAP_SD_HIGHSPEED on Snowball

    commit 2ab1159 upstream.
    
    MMC_CAP_SD_HIGHSPEED is not supported on Snowball board resulting on
    initialization errors.
    
    Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
    Signed-off-by: Fredrik Soderstedt <fredrik.soderstedt@stericsson.com>
    Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
    Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
    Philippe Langlais committed with gregkh Jan 20, 2012
  9. @jhovold @gregkh

    USB: cp210x: allow more baud rates above 1Mbaud

    commit d1620ca upstream.
    
    Allow more baud rates to be set in [1M,2M] baud.
    
    Signed-off-by: Johan Hovold <jhovold@gmail.com>
    Cc: Preston Fick <preston.fick@silabs.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    jhovold committed with gregkh Jan 16, 2012
  10. @jhovold @gregkh

    USB: cp210x: initialise baud rate at open

    commit cdc32fd upstream.
    
    The newer cp2104 devices require the baud rate to be initialised after
    power on. Make sure it is set when port is opened.
    
    Signed-off-by: Johan Hovold <jhovold@gmail.com>
    Cc: Preston Fick <preston.fick@silabs.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    jhovold committed with gregkh Jan 16, 2012
  11. @jhovold @gregkh

    USB: cp210x: clean up, refactor and document speed handling

    commit e599087 upstream.
    
    Clean up and refactor speed handling.
    Document baud rate handling for CP210{1,2,4,5,10}.
    
    Signed-off-by: Johan Hovold <jhovold@gmail.com>
    Cc: Preston Fick <preston.fick@silabs.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    jhovold committed with gregkh Jan 16, 2012
  12. @jhovold @gregkh

    USB: cp210x: fix up set_termios variables

    commit 34b76fc upstream.
    
    [Based on a patch from Johan, mangled by gregkh to keep things in line]
    
    Fix up the variable usage in the set_termios call.
    
    Signed-off-by: Johan Hovold <jhovold@gmail.com>
    Cc: Preston Fick <preston.fick@silabs.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    jhovold committed with gregkh Jan 16, 2012
  13. @jhovold @gregkh

    USB: cp210x: do not map baud rates to B0

    commit be125d9 upstream.
    
    We do not implement B0 hangup yet so map low baudrates to 300bps.
    
    Signed-off-by: Johan Hovold <jhovold@gmail.com>
    Cc: Preston Fick <preston.fick@silabs.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    jhovold committed with gregkh Jan 16, 2012
  14. @prestonfick @gregkh

    USB: cp210x: fix CP2104 baudrate usage

    commit 7f482fc upstream.
    
    This fix changes the way baudrates are set on the CP210x devices from
    Silicon Labs. The CP2101/2/3 will respond to both a GET/SET_BAUDDIV
    command, and GET/SET_BAUDRATE command, while CP2104 and higher devices
    only respond to GET/SET_BAUDRATE. The current cp210x.ko driver in
    kernel version 3.2.0 only implements the GET/SET_BAUDDIV command.
    
    This patch implements the two new codes for the GET/SET_BAUDRATE
    commands. Then there is a change in the way that the baudrate is
    assigned or retrieved. This is done according to the CP210x USB
    specification in AN571. This document can be found here:
    http://www.silabs.com/pages/DownloadDoc.aspx?FILEURL=Support%20Documents/TechnicalDocs/AN571.pdf&src=DocumentationWebPart
    
    Sections 5.3/5.4 describe the USB packets for the old baudrate method.
    Sections 5.5/5.6 describe the USB packets for the new method. This
    patch also implements the new request scheme, and eliminates the
    unnecessary baudrate calculations since it uses the "actual baudrate"
    method.
    
    This patch solves the problem reported for the CP2104 in bug 42586,
    and also keeps support for all other devices (CP2101/2/3).
    
    This patchfile is also attached to the bug report on
    bugzilla.kernel.org. This patch has been developed and test on the
    3.2.0 mainline kernel version under Ubuntu 10.11.
    
    Signed-off-by: Preston Fick <preston.fick@silabs.com>
    [duplicate patch also sent by Johan - gregkh]
    Signed-off-by: Johan Hovold <jhovold@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    prestonfick committed with gregkh Jan 16, 2012
  15. @jhovold @gregkh

    USB: cp210x: call generic open last in open

    commit 55b2afb upstream.
    
    Make sure port is fully initialised before calling generic open.
    
    Signed-off-by: Johan Hovold <jhovold@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    jhovold committed with gregkh Jan 16, 2012
  16. @rmsc @gregkh

    USB: serial: CP210x: Added USB-ID for the Link Instruments MSO-19

    commit 791b7d7 upstream.
    
    This device is a Oscilloscope/Logic Analizer/Pattern Generator/TDR,
    using a Silabs CP2103 USB to UART Bridge.
    
    Signed-off-by: Renato Caldas <rmsc@fe.up.pt>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    rmsc committed with gregkh Jan 6, 2012
  17. @gregkh

    tcp: md5: using remote adress for md5 lookup in rst packet

    [ Upstream commit 8a622e7 ]
    
    md5 key is added in socket through remote address.
    remote address should be used in finding md5 key when
    sending out reset packet.
    
    Signed-off-by: shawnlu <shawn.lu@ericsson.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    shawnlu committed with gregkh Jan 20, 2012
  18. @gregkh

    tcp: fix tcp_trim_head() to adjust segment count with skb MSS

    [ Upstream commit 5b35e1e ]
    
    This commit fixes tcp_trim_head() to recalculate the number of
    segments in the skb with the skb's existing MSS, so trimming the head
    causes the skb segment count to be monotonically non-increasing - it
    should stay the same or go down, but not increase.
    
    Previously tcp_trim_head() used the current MSS of the connection. But
    if there was a decrease in MSS between original transmission and ACK
    (e.g. due to PMTUD), this could cause tcp_trim_head() to
    counter-intuitively increase the segment count when trimming bytes off
    the head of an skb. This violated assumptions in tcp_tso_acked() that
    tcp_trim_head() only decreases the packet count, so that packets_acked
    in tcp_tso_acked() could underflow, leading tcp_clean_rtx_queue() to
    pass u32 pkts_acked values as large as 0xffffffff to
    ca_ops->pkts_acked().
    
    As an aside, if tcp_trim_head() had really wanted the skb to reflect
    the current MSS, it should have called tcp_set_skb_tso_segs()
    unconditionally, since a decrease in MSS would mean that a
    single-packet skb should now be sliced into multiple segments.
    
    Signed-off-by: Neal Cardwell <ncardwell@google.com>
    Acked-by: Nandita Dukkipati <nanditad@google.com>
    Acked-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Neal Cardwell committed with gregkh Jan 28, 2012
  19. @davem330 @gregkh

    rds: Make rds_sock_lock BH rather than IRQ safe.

    [ Upstream commit efc3dbc ]
    
    rds_sock_info() triggers locking warnings because we try to perform a
    local_bh_enable() (via sock_i_ino()) while hardware interrupts are
    disabled (via taking rds_sock_lock).
    
    There is no reason for rds_sock_lock to be a hardware IRQ disabling
    lock, none of these access paths run in hardware interrupt context.
    
    Therefore making it a BH disabling lock is safe and sufficient to
    fix this bug.
    
    Reported-by: Kumar Sanghvi <kumaras@chelsio.com>
    Reported-by: Josh Boyer <jwboyer@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    davem330 committed with gregkh Jan 24, 2012
  20. @gregkh

    net: reintroduce missing rcu_assign_pointer() calls

    [ Upstream commit cf778b0 ]
    
    commit a9b3cd7 (rcu: convert uses of rcu_assign_pointer(x, NULL) to
    RCU_INIT_POINTER) did a lot of incorrect changes, since it did a
    complete conversion of rcu_assign_pointer(x, y) to RCU_INIT_POINTER(x,
    y).
    
    We miss needed barriers, even on x86, when y is not NULL.
    
    Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
    CC: Stephen Hemminger <shemminger@vyatta.com>
    CC: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Eric Dumazet committed with gregkh Jan 12, 2012
  21. @gregkh

    net: bpf_jit: fix divide by 0 generation

    [ Upstream commit d00a9dd ]
    
    Several problems fixed in this patch :
    
    1) Target of the conditional jump in case a divide by 0 is performed
       by a bpf is wrong.
    
    2) Must 'generate' the full function prologue/epilogue at pass=0,
       or else we can stop too early in pass=1 if the proglen doesnt change.
       (if the increase of prologue/epilogue equals decrease of all
        instructions length because some jumps are converted to near jumps)
    
    3) Change the wrong length detection at the end of code generation to
       issue a more explicit message, no need for a full stack trace.
    
    Reported-by: Phil Oester <kernel@linuxace.com>
    Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Eric Dumazet committed with gregkh Jan 18, 2012
  22. @gregkh

    macvlan: fix a possible use after free

    [ Upstream commit 4ec7ac1 ]
    
    Commit bc416d9 (macvlan: handle fragmented multicast frames) added a
    possible use after free in macvlan_handle_frame(), since
    ip_check_defrag() uses pskb_may_pull() : skb header can be reallocated.
    
    Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
    Cc: Ben Greear <greearb@candelatech.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Eric Dumazet committed with gregkh Jan 23, 2012
  23. @gregkh

    l2tp: l2tp_ip - fix possible oops on packet receive

    [ Upstream commit 6831580 ]
    
    When a packet is received on an L2TP IP socket (L2TPv3 IP link
    encapsulation), the l2tpip socket's backlog_rcv function calls
    xfrm4_policy_check(). This is not necessary, since it was called
    before the skb was added to the backlog. With CONFIG_NET_NS enabled,
    xfrm4_policy_check() will oops if skb->dev is null, so this trivial
    patch removes the call.
    
    This bug has always been present, but only when CONFIG_NET_NS is
    enabled does it cause problems. Most users are probably using UDP
    encapsulation for L2TP, hence the problem has only recently
    surfaced.
    
    EIP: 0060:[<c12bb62b>] EFLAGS: 00210246 CPU: 0
    EIP is at l2tp_ip_recvmsg+0xd4/0x2a7
    EAX: 00000001 EBX: d77b5180 ECX: 00000000 EDX: 00200246
    ESI: 00000000 EDI: d63cbd30 EBP: d63cbd18 ESP: d63cbcf4
     DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
    Call Trace:
     [<c1218568>] sock_common_recvmsg+0x31/0x46
     [<c1215c92>] __sock_recvmsg_nosec+0x45/0x4d
     [<c12163a1>] __sock_recvmsg+0x31/0x3b
     [<c1216828>] sock_recvmsg+0x96/0xab
     [<c10b2693>] ? might_fault+0x47/0x81
     [<c10b2693>] ? might_fault+0x47/0x81
     [<c1167fd0>] ? _copy_from_user+0x31/0x115
     [<c121e8c8>] ? copy_from_user+0x8/0xa
     [<c121ebd6>] ? verify_iovec+0x3e/0x78
     [<c1216604>] __sys_recvmsg+0x10a/0x1aa
     [<c1216792>] ? sock_recvmsg+0x0/0xab
     [<c105a99b>] ? __lock_acquire+0xbdf/0xbee
     [<c12d5a99>] ? do_page_fault+0x193/0x375
     [<c10d1200>] ? fcheck_files+0x9b/0xca
     [<c10d1259>] ? fget_light+0x2a/0x9c
     [<c1216bbb>] sys_recvmsg+0x2b/0x43
     [<c1218145>] sys_socketcall+0x16d/0x1a5
     [<c11679f0>] ? trace_hardirqs_on_thunk+0xc/0x10
     [<c100305f>] sysenter_do_call+0x12/0x38
    Code: c6 05 8c ea a8 c1 01 e8 0c d4 d9 ff 85 f6 74 07 3e ff 86 80 00 00 00 b9 17 b6 2b c1 ba 01 00 00 00 b8 78 ed 48 c1 e8 23 f6 d9 ff <ff> 76 0c 68 28 e3 30 c1 68 2d 44 41 c1 e8 89 57 01 00 83 c4 0c
    
    Signed-off-by: James Chapman <jchapman@katalix.com>
    Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    James Chapman committed with gregkh Jan 25, 2012
  24. @jiribohac @gregkh

    bonding: fix enslaving in alb mode when link down

    [ Upstream commit b924551 ]
    
    bond_alb_init_slave() is called from bond_enslave() and sets the slave's MAC
    address. This is done differently for TLB and ALB modes.
    bond->alb_info.rlb_enabled is used to discriminate between the two modes but
    this flag may be uninitialized if the slave is being enslaved prior to calling
    bond_open() -> bond_alb_initialize() on the master.
    
    It turns out all the callers of alb_set_slave_mac_addr() pass
    bond->alb_info.rlb_enabled as the hw parameter.
    
    This patch cleans up the unnecessary parameter of alb_set_slave_mac_addr() and
    makes the function decide based on the bonding mode instead, which fixes the
    above problem.
    
    Reported-by: Narendra K <Narendra_K@Dell.com>
    Signed-off-by: Jiri Bohac <jbohac@suse.cz>
    Signed-off-by: Jay Vosburgh <fubar@us.ibm.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    jiribohac committed with gregkh Jan 18, 2012
  25. @gregkh

    af_unix: fix EPOLLET regression for stream sockets

    [ Upstream commit 6f01fd6 ]
    
    Commit 0884d7a (AF_UNIX: Fix poll blocking problem when reading from
    a stream socket) added a regression for epoll() in Edge Triggered mode
    (EPOLLET)
    
    Appropriate fix is to use skb_peek()/skb_unlink() instead of
    skb_dequeue(), and only call skb_unlink() when skb is fully consumed.
    
    This remove the need to requeue a partial skb into sk_receive_queue head
    and the extra sk->sk_data_ready() calls that added the regression.
    
    This is safe because once skb is given to sk_receive_queue, it is not
    modified by a writer, and readers are serialized by u->readlock mutex.
    
    This also reduce number of spinlock acquisition for small reads or
    MSG_PEEK users so should improve overall performance.
    
    Reported-by: Nick Mathewson <nickm@freehaven.net>
    Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
    Cc: Alexey Moiseytsev <himeraster@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Eric Dumazet committed with gregkh Jan 28, 2012