Linux 3.7.74

commit 827f121bfdb8f89c9239c3be09dc107cf442b14e
Author: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Date:   Wed Dec 11 22:34:28 2013 -0800

    Linux 3.4.74

commit 4062191e84141d4549a38a25de09f886e2e344d8
Author: Tom Lendacky <thomas.lendacky@amd.com>
Date:   Thu Dec 5 13:09:53 2013 -0600

    crypto: scatterwalk - Use sg_chain_ptr on chain entries

    commit 389a5390583a18e45bc4abd4439291abec5e7a63 upstream.

    Now that scatterwalk_sg_chain sets the chain pointer bit the sg_page
    call in scatterwalk_sg_next hits a BUG_ON when CONFIG_DEBUG_SG is
    enabled. Use sg_chain_ptr instead of sg_page on a chain entry.

    Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 3fc9589a42dab00a4c2dd9922dde4d15497bc3f0
Author: Alan Cox <alan@linux.intel.com>
Date:   Tue Dec 3 13:56:56 2013 -0800

    drivers/char/i8k.c: add Dell XPLS L421X

    commit 9aa5b0181bdf335f0b731d8502e128a862884bcd upstream.

    Addresses https://bugzilla.kernel.org/show_bug.cgi?id=60772

    Signed-off-by: Alan Cox <alan@linux.intel.com>
    Reported-by: Leho Kraav <leho@kraav.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit bd73e380d4affe0aac123a677c8fa2d1c138310a
Author: David Cluytens <david.cluytens@gmail.com>
Date:   Tue Dec 3 14:18:57 2013 +0100

    USB: cdc-acm: Added support for the Lenovo RD02-D400 USB Modem

    commit 3b59d16c513da258ec8f6a0b4db85f257a0380d6 upstream.

    Signed-off-by: David Cluytens <david.cluytens@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 73133f44a3133a55c957b83f41bca821ba6d278d
Author: Colin Leitner <colin.leitner@googlemail.com>
Date:   Fri Nov 8 22:53:11 2013 +0100

    USB: spcp8x5: correct handling of CS5 setting

    commit 711fbdfbf2bc4827214a650afe3f64767a1aba16 upstream.

    This patch removes an erroneous check of CSIZE, which made it impossible to set
    CS5.

    Compiles clean, but couldn't test against hardware.

    Signed-off-by: Colin Leitner <colin.leitner@gmail.com>
    Signed-off-by: Johan Hovold <jhovold@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 7069fd0b638652ce5607cc1975e1701b4ec29574
Author: Colin Leitner <colin.leitner@googlemail.com>
Date:   Fri Nov 8 22:52:34 2013 +0100

    USB: mos7840: correct handling of CS5 setting

    commit 78692cc3382e0603a47e1f2aaeffe0d99891994d upstream.

    This patch removes an erroneous check of CSIZE, which made it impossible to set
    CS5.

    Compiles clean, but couldn't test against hardware.

    Signed-off-by: Colin Leitner <colin.leitner@gmail.com>
    Signed-off-by: Johan Hovold <jhovold@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit db2cbb5c69c0ab176a749e5bfe8fe6fa7b11ed8f
Author: Colin Leitner <colin.leitner@googlemail.com>
Date:   Mon Nov 4 19:40:43 2013 +0100

    USB: pl2303: fixed handling of CS5 setting

    commit a313249937820f8b1996133fc285efbd6aad2c5b upstream.

    This patch fixes the CS5 setting on the PL2303 USB-to-serial devices. CS5 has a
    value of 0 and the CSIZE setting has been skipped altogether by the enclosing
    if. Tested on 3.11.6 and the scope shows the correct output after the fix has
    been applied.

    Tagged to be added to stable, because it fixes a user visible driver bug and is
    simple enough to backport easily.

    Signed-off-by: Colin Leitner <colin.leitner@gmail.com>
    Signed-off-by: Johan Hovold <jhovold@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 3e80f4c2247595e2901f5ef262a524276cfb1d28
Author: Seth Heasley <seth.heasley@intel.com>
Date:   Wed Jan 30 15:25:32 2013 +0000

    i2c: i801: SMBus patch for Intel Avoton DeviceIDs

    commit c2db409cbc8751ccc7e6d2cc2e41af0d12ea637f upstream.

    This patch adds the PCU SMBus DeviceID for the Intel Avoton SOC.

    Signed-off-by: Seth Heasley <seth.heasley@intel.com>
    Reviewed-by: Jean Delvare <khali@linux-fr.org>
    Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
    Cc: "Ong, Boon Leong" <boon.leong.ong@intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit cc3b20ff635a88c3236d585641f23b7153567f56
Author: Seth Heasley <seth.heasley@intel.com>
Date:   Fri Jan 25 12:01:05 2013 -0800

    ahci: AHCI-mode SATA patch for Intel Avoton DeviceIDs

    commit 29e674dd5c8e781589f09c3ee139c80f6da274e4 upstream.

    This patch adds the AHCI and RAID-mode SATA DeviceIDs for the Intel Avoton SOC.

    Signed-off-by: Seth Heasley <seth.heasley@intel.com>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
    Cc: Ong Boon Leong <boon.leong.ong@intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 223588e6ef385adc88f9aa5bdfc1908c32f88a8b
Author: James Ralston <james.d.ralston@intel.com>
Date:   Thu Aug 9 09:02:31 2012 -0700

    ahci: Add Device IDs for Intel Lynx Point-LP PCH

    commit 77b12bc9cf7b10c7c1a04ca45272fbb4287902d0 upstream.

    This patch adds the AHCI-mode SATA Device IDs for the Intel Lynx Point-LP PCH

    Signed-off-by: James Ralston <james.d.ralston@intel.com>
    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
    Cc: Ong Boon Leong <boon.leong.ong@intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 809d29070ffcf808e86f37e9e1971cd2b8caaf49
Author: Sergei Trofimovich <slyfox@gentoo.org>
Date:   Sun Dec 30 01:37:30 2012 +0300

    um: add missing declaration of 'getrlimit()' and friends

    commit fdfa4c952844fce881df8c76de9c7180cbe913ab upstream.

    arch/um/os-Linux/start_up.c: In function 'check_coredump_limit':
    arch/um/os-Linux/start_up.c:338:16: error: storage size of 'lim' isn't known
    arch/um/os-Linux/start_up.c:339:2: error: implicit declaration of function 'getrlimit' [-Werror=implicit-function-declaration]

    Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
    CC: Jeff Dike <jdike@addtoit.com>
    CC: Richard Weinberger <richard@nod.at>
    CC: Al Viro <viro@zeniv.linux.org.uk>
    CC: user-mode-linux-devel@lists.sourceforge.net
    CC: user-mode-linux-user@lists.sourceforge.net
    CC: linux-kernel@vger.kernel.org
    Signed-off-by: Richard Weinberger <richard@nod.at>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 5beebfa585c2348312b5934e588acbb97246765b
Author: Tom Gundersen <teg@jklm.no>
Date:   Thu Oct 31 00:44:49 2013 -0700

    Input: mousedev - allow disabling even without CONFIG_EXPERT

    commit dfaaed08ecc01bd513248ba7999daf50ce028352 upstream.

    Moust (if not all) modern software, including X, uses /dev/eventX rather than
    the legacy /dev/mouseX devices. It therefore makes sense for general-purpose
    (distro) kernels to use MOUSEDV=m (or even n), so let's drop the EXPERT=y
    requirement.

    Signed-off-by: Tom Gundersen <teg@jklm.no>
    Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 315a93764c1fa8bdbe9ab867d896a0d9478b54ed
Author: Tom Gundersen <teg@jklm.no>
Date:   Thu Oct 31 00:38:30 2013 -0700

    Input: allow deselecting serio drivers even without CONFIG_EXPERT

    commit bcd2623073e98f69f84720308db0b142c4da0bd6 upstream.

    There is plenty of consumer hardware (e.g., mac books) that does not use AT
    keyboards or PS/2 mice. It therefore makes sense for distro kernels to
    build the related drivers as modules to avoid loading them on hardware that
    does not need them. As such, these options should no longer be protected by
    EXPERT.

    Moreover, building these drivers as modules gets rid of the following ugly
    error during boot:

    [    2.337745] i8042: PNP: No PS/2 controller found. Probing ports directly.
    [    3.439537] i8042: No controller found

    Signed-off-by: Tom Gundersen <teg@jklm.no>
    Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 30f2ae6300af96eab5c42726557442df96a40fe7
Author: Shawn Landden <shawn@churchofgit.com>
Date:   Sun Nov 24 22:36:28 2013 -0800

    net: update consumers of MSG_MORE to recognize MSG_SENDPAGE_NOTLAST

    commit d3f7d56a7a4671d395e8af87071068a195257bf6 upstream.

    Commit 35f9c09fe (tcp: tcp_sendpages() should call tcp_push() once)
    added an internal flag MSG_SENDPAGE_NOTLAST, similar to
    MSG_MORE.

    algif_hash, algif_skcipher, and udp used MSG_MORE from tcp_sendpages()
    and need to see the new flag as identical to MSG_MORE.

    This fixes sendfile() on AF_ALG.

    v3: also fix udp

    Cc: Tom Herbert <therbert@google.com>
    Cc: Eric Dumazet <eric.dumazet@gmail.com>
    Cc: David S. Miller <davem@davemloft.net>
    Reported-and-tested-by: Shawn Landden <shawnlandden@gmail.com>
    Original-patch: Richard Weinberger <richard@nod.at>
    Signed-off-by: Shawn Landden <shawn@churchofgit.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit a8000959881be86ee8e5262d305f12accb68db70
Author: Laxman Dewangan <ldewangan@nvidia.com>
Date:   Mon Nov 25 19:39:47 2013 +0530

    irq: Enable all irqs unconditionally in irq_resume

    commit ac01810c9d2814238f08a227062e66a35a0e1ea2 upstream.

    When the system enters suspend, it disables all interrupts in
    suspend_device_irqs(), including the interrupts marked EARLY_RESUME.

    On the resume side things are different. The EARLY_RESUME interrupts
    are reenabled in sys_core_ops->resume and the non EARLY_RESUME
    interrupts are reenabled in the normal system resume path.

    When suspend_noirq() failed or suspend is aborted for any other
    reason, we might omit the resume side call to sys_core_ops->resume()
    and therefor the interrupts marked EARLY_RESUME are not reenabled and
    stay disabled forever.

    To solve this, enable all irqs unconditionally in irq_resume()
    regardless whether interrupts marked EARLY_RESUMEhave been already
    enabled or not.

    This might try to reenable already enabled interrupts in the non
    failure case, but the only affected platform is XEN and it has been
    confirmed that it does not cause any side effects.

    [ tglx: Massaged changelog. ]

    Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
    Acked-by-and-tested-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
    Acked-by: Heiko Stuebner <heiko@sntech.de>
    Reviewed-by: Pavel Machek <pavel@ucw.cz>
    Cc: <ian.campbell@citrix.com>
    Cc: <rjw@rjwysocki.net>
    Cc: <len.brown@intel.com>
    Cc: <gregkh@linuxfoundation.org>
    Link: http://lkml.kernel.org/r/1385388587-16442-1-git-send-email-ldewangan@nvidia.com
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 8dd978fba2216c985d6ca0801b698dae7363d1dc
Author: Liu Gang <Gang.Liu@freescale.com>
Date:   Fri Nov 22 16:12:40 2013 +0800

    powerpc/gpio: Fix the wrong GPIO input data on MPC8572/MPC8536

    commit 1aeef303b5d9e243c41d5b80f8bb059366514a10 upstream.

    For MPC8572/MPC8536, the status of GPIOs defined as output
    cannot be determined by reading GPDAT register, so the code
    use shadow data register instead. But the code may give the
    wrong status of GPIOs defined as input under some scenarios:

    1. If some pins were configured as inputs and were asserted
    high before booting the kernel, the shadow data has been
    initialized with those pin values.
    2. Some pins have been configured as output first and have
    been set to the high value, then reconfigured as input.

    The above cases will make the shadow data for those input
    pins to be set to high. Then reading the pin status will
    always return high even if the actual pin status is low.

    The code should eliminate the effects of the shadow data to
    the input pins, and the status of those pins should be
    read directly from GPDAT.

    Acked-by: Scott Wood <scottwood@freescale.com>
    Acked-by: Anatolij Gustschin <agust@denx.de>
    Signed-off-by: Liu Gang <Gang.Liu@freescale.com>
    Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit a1a84b625339fbdfe7d2f207e3ccc8fbca5542ad
Author: Trond Myklebust <Trond.Myklebust@netapp.com>
Date:   Tue Nov 19 16:34:14 2013 -0500

    NFSv4: Update list of irrecoverable errors on DELEGRETURN

    commit c97cf606e43b85a6cf158b810375dd77312024db upstream.

    If the DELEGRETURN errors out with something like NFS4ERR_BAD_STATEID
    then there is no recovery possible. Just quit without returning an error.

    Also, note that the client must not assume that the NFSv4 lease has been
    renewed when it sees an error on DELEGRETURN.

    Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 5ee54c2a9297ad88d41badfffc5ed063b6f4d7f4
Author: Linus Walleij <linus.walleij@linaro.org>
Date:   Thu Nov 28 14:33:52 2013 +0100

    net: smc91: fix crash regression on the versatile

    commit a0c20fb02592d372e744d1d739cda3e1b3defaae upstream.

    After commit e9e4ea74f06635f2ffc1dffe5ef40c854faa0a90
    "net: smc91x: dont't use SMC_outw for fixing up halfword-aligned data"
    The Versatile SMSC LAN91C111 is crashing like this:

    ------------[ cut here ]------------
    kernel BUG at /home/linus/linux/drivers/net/ethernet/smsc/smc91x.c:599!
    Internal error: Oops - BUG: 0 [#1] ARM
    Modules linked in:
    CPU: 0 PID: 43 Comm: udhcpc Not tainted 3.13.0-rc1+ #24
    task: c6ccfaa0 ti: c6cd0000 task.ti: c6cd0000
    PC is at smc_hardware_send_pkt+0x198/0x22c
    LR is at smc_hardware_send_pkt+0x24/0x22c
    pc : [<c01be324>]    lr : [<c01be1b0>]    psr: 20000013
    sp : c6cd1d08  ip : 00000001  fp : 00000000
    r10: c02adb08  r9 : 00000000  r8 : c6ced802
    r7 : c786fba0  r6 : 00000146  r5 : c8800000  r4 : c78d6000
    r3 : 0000000f  r2 : 00000146  r1 : 00000000  r0 : 00000031
    Flags: nzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
    Control: 0005317f  Table: 06cf4000  DAC: 00000015
    Process udhcpc (pid: 43, stack limit = 0xc6cd01c0)
    Stack: (0xc6cd1d08 to 0xc6cd2000)
    1d00:                   00000010 c8800000 c78d6000 c786fba0 c78d6000 c01be868
    1d20: c01be7a4 00004000 00000000 c786fba0 c6c12b80 c0208554 000004d0 c780fc60
    1d40: 00000220 c01fb734 00000000 00000000 00000000 c6c9a440 c6c12b80 c78d6000
    1d60: c786fba0 c6c9a440 00000000 c021d1d8 00000000 00000000 c6c12b80 c78d6000
    1d80: c786fba0 00000001 c6c9a440 c02087f8 c6c9a4a0 00080008 00000000 00000000
    1da0: c78d6000 c786fba0 c78d6000 00000138 00000000 00000000 00000000 00000000
    1dc0: 00000000 c027ba74 00000138 00000138 00000001 00000010 c6cedc00 00000000
    1de0: 00000008 c7404400 c6cd1eec c6cd1f14 c067a73c c065c0b8 00000000 c067a740
    1e00: 01ffffff 002040d0 00000000 00000000 00000000 00000000 00000000 ffffffff
    1e20: 43004400 00110022 c6cdef20 c027ae8c c6ccfaa0 be82d65c 00000014 be82d3cc
    1e40: 00000000 00000000 00000000 c01f2870 00000000 00000000 00000000 c6cd1e88
    1e60: c6ccfaa0 00000000 00000000 00000000 00000000 00000000 00000000 00000000
    1e80: 00000000 00000000 00000031 c7802310 c7802300 00000138 c7404400 c0771da0
    1ea0: 00000000 c6cd1eec c7800340 00000138 be82d65c 00000014 be82d3cc c6cd1f08
    1ec0: 00000014 00000000 c7404400 c7404400 00000138 c01f4628 c78d6000 00000000
    1ee0: 00000000 be82d3cc 00000138 c6cd1f08 00000014 c6cd1ee4 00000001 00000000
    1f00: 00000000 00000000 00080011 00000002 06000000 ffffffff 0000ffff 00000002
    1f20: 06000000 ffffffff 0000ffff c00928c8 c065c520 c6cd1f58 00000003 c009299c
    1f40: 00000003 c065c520 c7404400 00000000 c7404400 c01f2218 c78106b0 c7441cb0
    1f60: 00000000 00000006 c06799fc 00000000 00000000 00000006 00000000 c01f3ee0
    1f80: 00000000 00000000 be82d678 be82d65c 00000014 00000001 00000122 c00139c8
    1fa0: c6cd0000 c0013840 be82d65c 00000014 00000006 be82d3cc 00000138 00000000
    1fc0: be82d65c 00000014 00000001 00000122 00000000 00000000 00018cb1 00000000
    1fe0: 00003801 be82d3a8 0003a0c7 b6e9af08 60000010 00000006 00000000 00000000
    [<c01be324>] (smc_hardware_send_pkt+0x198/0x22c) from [<c01be868>] (smc_hard_start_xmit+0xc4/0x1e8)
    [<c01be868>] (smc_hard_start_xmit+0xc4/0x1e8) from [<c0208554>] (dev_hard_start_xmit+0x460/0x4cc)
    [<c0208554>] (dev_hard_start_xmit+0x460/0x4cc) from [<c021d1d8>] (sch_direct_xmit+0x94/0x18c)
    [<c021d1d8>] (sch_direct_xmit+0x94/0x18c) from [<c02087f8>] (dev_queue_xmit+0x238/0x42c)
    [<c02087f8>] (dev_queue_xmit+0x238/0x42c) from [<c027ba74>] (packet_sendmsg+0xbe8/0xd28)
    [<c027ba74>] (packet_sendmsg+0xbe8/0xd28) from [<c01f2870>] (sock_sendmsg+0x84/0xa8)
    [<c01f2870>] (sock_sendmsg+0x84/0xa8) from [<c01f4628>] (SyS_sendto+0xb8/0xdc)
    [<c01f4628>] (SyS_sendto+0xb8/0xdc) from [<c0013840>] (ret_fast_syscall+0x0/0x2c)
    Code: e3130002 1a000001 e3130001 0affffcd (e7f001f2)
    ---[ end trace 81104fe70e8da7fe ]---
    Kernel panic - not syncing: Fatal exception in interrupt

    This is because the macro operations in smc91x.h defined
    for Versatile are missing SMC_outsw() as used in this
    commit.

    The Versatile needs and uses the same accessors as the other
    platforms in the first if(...) clause, just switch it to using
    that and we have one problem less to worry about.

    This includes a hunk of a patch from Will Deacon fixin
    the other 32bit platforms as well: Innokom, Ramses, PXA,
    PCM027.

    Checkpatch complains about spacing, but I have opted to
    follow the style of this .h-file.

    Cc: Russell King <linux@arm.linux.org.uk>
    Cc: Nicolas Pitre <nico@fluxnic.net>
    Cc: Eric Miao <eric.y.miao@gmail.com>
    Cc: Jonathan Cameron <jic23@cam.ac.uk>
    Signed-off-by: Will Deacon <will.deacon@arm.com>
    Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 3d4866261167bb89408a0bfcd374537cb971aeb8
Author: Stephen M. Cameron <scameron@beardog.cce.hp.com>
Date:   Fri Nov 1 11:02:25 2013 -0500

    SCSI: hpsa: return 0 from driver probe function on success, not 1

    commit 88bf6d62db4393fa03a58bada9d746312d5b496f upstream.

    A return value of 1 is interpreted as an error.  See pci_driver.
    in local_pci_probe().  If you're wondering how this ever could
    have worked, it's because it used to be the case that only return
    values less than zero were interpreted as failure.  But even in
    the current kernel if the driver registers its various entry
    points with the kernel, and then returns a value which is
    interpreted as failure, those registrations aren't undone, so
    the driver still mostly works.  However, the driver's remove
    function wouldn't be called on rmmod, and pci power management
    functions wouldn't work.  In the case of Smart Array, since it
    has a battery backed cache (or else no cache) even if the driver
    is not shut down properly as long as there is no outstanding
    i/o, nothing too bad happens, which is why it took so long to
    notice.

    Requesting backport to stable because the change to pci-driver.c
    which requires driver probe functions to return 0 occurred between
    2.6.35 and 2.6.36 (the pci power management breakage) and again
    between 3.7 and 3.8 (pci_dev->driver getting set to NULL in
    local_pci_probe() preventing driver remove function from being
    called on rmmod.)

    Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com>
    Signed-off-by: James Bottomley <JBottomley@Parallels.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 877227541646b8ee9f99069457014f828942fedb
Author: Stephen M. Cameron <scameron@beardog.cce.hp.com>
Date:   Mon Sep 23 13:33:41 2013 -0500

    SCSI: hpsa: do not discard scsi status on aborted commands

    commit 2e311fbabdc23b7eaec77313dc3b9a151a5407b5 upstream.

    We inadvertantly discarded the scsi status for aborted commands.
    For some commands (e.g. reads from tape drives) these can't be retried,
    and if we discarded the scsi status, the scsi mid layer couldn't notice
    anything was wrong and the error was not reported.

    Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com>
    Signed-off-by: James Bottomley <JBottomley@Parallels.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 41bb75da07743ef39d7c1be4d8d53f83270f6762
Author: Dan Williams <dan.j.williams@intel.com>
Date:   Tue Oct 22 18:35:19 2013 -0700

    SCSI: libsas: fix usage of ata_tf_to_fis

    commit ae5fbae0ccd982dfca0ce363036ed92f5b13f150 upstream.

    Since commit 110dd8f19df5 "[SCSI] libsas: fix scr_read/write users and
    update the libata documentation" we have been passing pmp=1 and is_cmd=0
    to ata_tf_to_fis().  Praveen reports that eSATA attached drives do not
    discover correctly.  His investigation found that the BIOS was passing
    pmp=0 while Linux was passing pmp=1 and failing to discover the drives.
    Update libsas to follow the libata example of pulling the pmp setting
    from the ata_link and correct is_cmd to be 1 since all tf's submitted
    through ->qc_issue are commands.  Presumably libsas lldds do not care
    about is_cmd as they have sideband mechanisms to perform link
    management.

    http://marc.info/?l=linux-scsi&m=138179681726990

    [jejb: checkpatch fix]
    Signed-off-by: Dan Williams <dan.j.williams@intel.com>
    Reported-by: Praveen Murali <pmurali@logicube.com>
    Tested-by: Praveen Murali <pmurali@logicube.com>
    Signed-off-by: James Bottomley <JBottomley@Parallels.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit b232973fafc677185e42ae3f62a65349bf1afc27
Author: James Bottomley <JBottomley@Parallels.com>
Date:   Fri Nov 15 14:58:00 2013 -0800

    SCSI: enclosure: fix WARN_ON in dual path device removing

    commit a1470c7bf3a4676e62e4c0fb204e339399eb5c59 upstream.

    Bug report from: wenxiong@linux.vnet.ibm.com

    The issue is happened in dual controller configuration. We got the
    sysfs warnings when rmmod the ipr module.

    enclosure_unregister() in drivers/msic/enclosure.c, call device_unregister()
    for each componment deivce, device_unregister() ->device_del()->kobject_del()
    ->sysfs_remove_dir(). In sysfs_remove_dir(), set kobj->sd = NULL.

    For each componment device,
    enclosure_component_release()->enclosure_remove_links()->sysfs_remove_link()
    in which checking kobj->sd again, it has been set as NULL when doing
    device_unregister. So we saw all these sysfs WARNING.

    Tested-by: wenxiong@linux.vnet.ibm.com
    Signed-off-by: James Bottomley <JBottomley@Parallels.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 8e73078f451fe1d79362db1942f8822ba46bf189
Author: Bo Shen <voice.shen@atmel.com>
Date:   Tue Dec 3 18:04:54 2013 +0800

    ASoC: wm8731: fix dsp mode configuration

    commit b4af6ef99a60c5b56df137d7accd81ba1ee1254e upstream.

    According to WM8731 "PD, Rev 4.9 October 2012" datasheet, when it
    works in DSP mode A, LRP = 1, while works in DSP mode B, LRP = 0.
    So, fix LRP for DSP mode as the datesheet specification.

    Signed-off-by: Bo Shen <voice.shen@atmel.com>
    Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
    Signed-off-by: Mark Brown <broonie@linaro.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit d01cb3a1b851d2b367d73b6bbe71e582d4e33320
Author: Mark Brown <broonie@linaro.org>
Date:   Fri Nov 22 14:17:18 2013 +0000

    ASoC: wm8990: Mark the register map as dirty when powering down

    commit 2ab2b74277a86afe0dd92976db695a2bb8b93366 upstream.

    Otherwise we'll skip sync on resume.

    Signed-off-by: Mark Brown <broonie@linaro.org>
    Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 788f5da26bc52ddc0edaeb0d0419d7cd0a134dbd
Author: Tom Lendacky <thomas.lendacky@amd.com>
Date:   Tue Nov 12 11:46:04 2013 -0600

    crypto: authenc - Find proper IV address in ablkcipher callback

    commit fc019c7122dfcd69c50142b57a735539aec5da95 upstream.

    When performing an asynchronous ablkcipher operation the authenc
    completion callback routine is invoked, but it does not locate and use
    the proper IV.

    The callback routine, crypto_authenc_encrypt_done, is updated to use
    the same method of calculating the address of the IV as is done in
    crypto_authenc_encrypt function which sets up the callback.

    Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit fe879ea2a3f181949ae832dcd9224cdc5f6ed19c
Author: Horia Geanta <horia.geanta@freescale.com>
Date:   Thu Nov 28 15:11:15 2013 +0200

    crypto: ccm - Fix handling of zero plaintext when computing mac

    commit 5638cabf3e4883f38dfb246c30980cebf694fbda upstream.

    There are cases when cryptlen can be zero in crypto_ccm_auth():
    -encryptiom: input scatterlist length is zero (no plaintext)
    -decryption: input scatterlist contains only the mac
    plus the condition of having different source and destination buffers
    (or else scatterlist length = max(plaintext_len, ciphertext_len)).

    These are not handled correctly, leading to crashes like:

    root@p4080ds:~/crypto# insmod tcrypt.ko mode=45
    ------------[ cut here ]------------
    kernel BUG at crypto/scatterwalk.c:37!
    Oops: Exception in kernel mode, sig: 5 [#1]
    SMP NR_CPUS=8 P4080 DS
    Modules linked in: tcrypt(+) crc32c xts xcbc vmac pcbc ecb gcm ghash_generic gf128mul ccm ctr seqiv
    CPU: 3 PID: 1082 Comm: cryptomgr_test Not tainted 3.11.0 #14
    task: ee12c5b0 ti: eecd0000 task.ti: eecd0000
    NIP: c0204d98 LR: f9225848 CTR: c0204d80
    REGS: eecd1b70 TRAP: 0700   Not tainted  (3.11.0)
    MSR: 00029002 <CE,EE,ME>  CR: 22044022  XER: 20000000

    GPR00: f9225c94 eecd1c20 ee12c5b0 eecd1c28 ee879400 ee879400 00000000 ee607464
    GPR08: 00000001 00000001 00000000 006b0000 c0204d80 00000000 00000002 c0698e20
    GPR16: ee987000 ee895000 fffffff4 ee879500 00000100 eecd1d58 00000001 00000000
    GPR24: ee879400 00000020 00000000 00000000 ee5b2800 ee607430 00000004 ee607460
    NIP [c0204d98] scatterwalk_start+0x18/0x30
    LR [f9225848] get_data_to_compute+0x28/0x2f0 [ccm]
    Call Trace:
    [eecd1c20] [f9225974] get_data_to_compute+0x154/0x2f0 [ccm] (unreliable)
    [eecd1c70] [f9225c94] crypto_ccm_auth+0x184/0x1d0 [ccm]
    [eecd1cb0] [f9225d40] crypto_ccm_encrypt+0x60/0x2d0 [ccm]
    [eecd1cf0] [c020d77c] __test_aead+0x3ec/0xe20
    [eecd1e20] [c020f35c] test_aead+0x6c/0xe0
    [eecd1e40] [c020f420] alg_test_aead+0x50/0xd0
    [eecd1e60] [c020e5e4] alg_test+0x114/0x2e0
    [eecd1ee0] [c020bd1c] cryptomgr_test+0x4c/0x60
    [eecd1ef0] [c0047058] kthread+0xa8/0xb0
    [eecd1f40] [c000eb0c] ret_from_kernel_thread+0x5c/0x64
    Instruction dump:
    0f080000 81290024 552807fe 0f080000 5529003a 4bffffb4 90830000 39400000
    39000001 8124000c 2f890000 7d28579e <0f090000> 81240008 91230004 4e800020
    ---[ end trace 6d652dfcd1be37bd ]---

    Cc: Jussi Kivilinna <jussi.kivilinna@mbnet.fi>
    Signed-off-by: Horia Geanta <horia.geanta@freescale.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 941f77dc3c2b264051fba4726461fec919822041
Author: Tom Lendacky <thomas.lendacky@amd.com>
Date:   Tue Nov 12 11:46:10 2013 -0600

    crypto: scatterwalk - Set the chain pointer indication bit

    commit 41da8b5adba77e22584f8b45f9641504fa885308 upstream.

    The scatterwalk_crypto_chain function invokes the scatterwalk_sg_chain
    function to chain two scatterlists, but the chain pointer indication
    bit is not set.  When the resulting scatterlist is used, for example,
    by sg_nents to count the number of scatterlist entries, a segfault occurs
    because sg_nents does not follow the chain pointer to the chained scatterlist.

    Update scatterwalk_sg_chain to set the chain pointer indication bit as is
    done by the sg_chain function.

    Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>