commit ac0058305d83e8e50a9652a003bc2ec468df9f87
Author: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Date:   Sun Oct 8 10:11:47 2017 +0200

    Linux 3.18.74

commit 703937f005ea09ac2b6da593a9cec0befcb7b22a
Author: Andrey Ryabinin <aryabinin@virtuozzo.com>
Date:   Thu Nov 24 13:23:10 2016 +0000

    mpi: Fix NULL ptr dereference in mpi_powm() [ver #3]
    
    commit f5527fffff3f002b0a6b376163613b82f69de073 upstream.
    
    This fixes CVE-2016-8650.
    
    If mpi_powm() is given a zero exponent, it wants to immediately return
    either 1 or 0, depending on the modulus.  However, if the result was
    initalised with zero limb space, no limbs space is allocated and a
    NULL-pointer exception ensues.
    
    Fix this by allocating a minimal amount of limb space for the result when
    the 0-exponent case when the result is 1 and not touching the limb space
    when the result is 0.
    
    This affects the use of RSA keys and X.509 certificates that carry them.
    
    BUG: unable to handle kernel NULL pointer dereference at           (null)
    IP: [<ffffffff8138ce5d>] mpi_powm+0x32/0x7e6
    PGD 0
    Oops: 0002 [#1] SMP
    Modules linked in:
    CPU: 3 PID: 3014 Comm: keyctl Not tainted 4.9.0-rc6-fscache+ #278
    Hardware name: ASUS All Series/H97-PLUS, BIOS 2306 10/09/2014
    task: ffff8804011944c0 task.stack: ffff880401294000
    RIP: 0010:[<ffffffff8138ce5d>]  [<ffffffff8138ce5d>] mpi_powm+0x32/0x7e6
    RSP: 0018:ffff880401297ad8  EFLAGS: 00010212
    RAX: 0000000000000000 RBX: ffff88040868bec0 RCX: ffff88040868bba0
    RDX: ffff88040868b260 RSI: ffff88040868bec0 RDI: ffff88040868bee0
    RBP: ffff880401297ba8 R08: 0000000000000000 R09: 0000000000000000
    R10: 0000000000000047 R11: ffffffff8183b210 R12: 0000000000000000
    R13: ffff8804087c7600 R14: 000000000000001f R15: ffff880401297c50
    FS:  00007f7a7918c700(0000) GS:ffff88041fb80000(0000) knlGS:0000000000000000
    CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    CR2: 0000000000000000 CR3: 0000000401250000 CR4: 00000000001406e0
    Stack:
     ffff88040868bec0 0000000000000020 ffff880401297b00 ffffffff81376cd4
     0000000000000100 ffff880401297b10 ffffffff81376d12 ffff880401297b30
     ffffffff81376f37 0000000000000100 0000000000000000 ffff880401297ba8
    Call Trace:
     [<ffffffff81376cd4>] ? __sg_page_iter_next+0x43/0x66
     [<ffffffff81376d12>] ? sg_miter_get_next_page+0x1b/0x5d
     [<ffffffff81376f37>] ? sg_miter_next+0x17/0xbd
     [<ffffffff8138ba3a>] ? mpi_read_raw_from_sgl+0xf2/0x146
     [<ffffffff8132a95c>] rsa_verify+0x9d/0xee
     [<ffffffff8132acca>] ? pkcs1pad_sg_set_buf+0x2e/0xbb
     [<ffffffff8132af40>] pkcs1pad_verify+0xc0/0xe1
     [<ffffffff8133cb5e>] public_key_verify_signature+0x1b0/0x228
     [<ffffffff8133d974>] x509_check_for_self_signed+0xa1/0xc4
     [<ffffffff8133cdde>] x509_cert_parse+0x167/0x1a1
     [<ffffffff8133d609>] x509_key_preparse+0x21/0x1a1
     [<ffffffff8133c3d7>] asymmetric_key_preparse+0x34/0x61
     [<ffffffff812fc9f3>] key_create_or_update+0x145/0x399
     [<ffffffff812fe227>] SyS_add_key+0x154/0x19e
     [<ffffffff81001c2b>] do_syscall_64+0x80/0x191
     [<ffffffff816825e4>] entry_SYSCALL64_slow_path+0x25/0x25
    Code: 56 41 55 41 54 53 48 81 ec a8 00 00 00 44 8b 71 04 8b 42 04 4c 8b 67 18 45 85 f6 89 45 80 0f 84 b4 06 00 00 85 c0 75 2f 41 ff ce <49> c7 04 24 01 00 00 00 b0 01 75 0b 48 8b 41 18 48 83 38 01 0f
    RIP  [<ffffffff8138ce5d>] mpi_powm+0x32/0x7e6
     RSP <ffff880401297ad8>
    CR2: 0000000000000000
    ---[ end trace d82015255d4a5d8d ]---
    
    Basically, this is a backport of a libgcrypt patch:
    
            http://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=patch;h=6e1adb05d290aeeb1c230c763970695f4a538526
    
    Fixes: cdec9cb5167a ("crypto: GnuPG based MPI lib - source files (part 1)")
    Signed-off-by: Andrey Ryabinin <aryabinin@virtuozzo.com>
    Signed-off-by: David Howells <dhowells@redhat.com>
    cc: Dmitry Kasatkin <dmitry.kasatkin@gmail.com>
    cc: linux-ima-devel@lists.sourceforge.net
    Signed-off-by: James Morris <james.l.morris@oracle.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 36c84b22ac8aa041cbdfbe48a55ebb32e3521704
Author: Herbert Xu <herbert@gondor.apana.org.au>
Date:   Mon Jan 18 18:46:10 2016 +0800

    crypto: algif_skcipher - Load TX SG list after waiting
    
    commit 4f0414e54e4d1893c6f08260693f8ef84c929293 upstream.
    
    We need to load the TX SG list in sendmsg(2) after waiting for
    incoming data, not before.
    
    [connoro@google.com: backport to 3.18, where the relevant logic is
    located in skcipher_recvmsg() rather than skcipher_recvmsg_sync()]
    
    Reported-by: Dmitry Vyukov <dvyukov@google.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Tested-by: Dmitry Vyukov <dvyukov@google.com>
    Signed-off-by: Connor O'Brien <connoro@google.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 9d5012da8b97a6199fb2ead626be9c81aff649a8
Author: Peng Fan <van.freenix@gmail.com>
Date:   Tue Jun 16 23:13:21 2015 +0800

    staging: nvec: remove duplicated const
    
    commit 716baa7b430c66187a41e4d41eedf5de01343b21 upstream.
    
    Sparse checking warning:
    "drivers/staging/nvec/nvec_ps2.c:172:14: warning: duplicate const".
    Remove the duplicated const to fix the warning.
    
    Signed-off-by: Peng Fan <van.freenix@gmail.com>
    Acked-by: Marc Dietrich <marvin24@gmx.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 9c4ae8f3e5f778684e0a90c5e83b99cf39d2203c
Author: Arnd Bergmann <arnd@arndb.de>
Date:   Thu Feb 2 12:51:28 2017 -0200

    ttpci: address stringop overflow warning
    
    commit 69d3973af1acd4c0989ec8218c05f12d303cd7cf upstream.
    
    gcc-7.0.1 warns about old code in ttpci:
    
    In file included from drivers/media/pci/ttpci/av7110.c:63:0:
    In function 'irdebi.isra.2',
        inlined from 'start_debi_dma' at drivers/media/pci/ttpci/av7110.c:376:3,
        inlined from 'gpioirq' at drivers/media/pci/ttpci/av7110.c:659:3:
    drivers/media/pci/ttpci/av7110_hw.h:406:3: warning: 'memcpy': specified size between 18446744071562067968 and 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
       memcpy(av7110->debi_virt, (char *) &res, count);
    In function 'irdebi.isra.2',
        inlined from 'start_debi_dma' at drivers/media/pci/ttpci/av7110.c:376:3,
        inlined from 'gpioirq' at drivers/media/pci/ttpci/av7110.c:668:3:
    drivers/media/pci/ttpci/av7110_hw.h:406:3: warning: 'memcpy': specified size between 18446744071562067968 and 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
       memcpy(av7110->debi_virt, (char *) &res, count);
    
    Apparently, 'count' can be negative here, which will then get turned
    into a giant size argument for memcpy. Changing the sizes to 'unsigned
    int' instead seems safe as we already check for maximum sizes, and it
    also simplifies the code a bit.
    
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 0cd9a4647a23243db0d1c45ebd4df4242006b8f6
Author: Arnd Bergmann <arnd@arndb.de>
Date:   Thu Mar 23 16:15:55 2017 +0100

    ALSA: au88x0: avoid theoretical uninitialized access
    
    commit 13f99ebdd602ebdafb909e15ec6ffb1e34690167 upstream.
    
    The latest gcc-7.0.1 snapshot points out that we if nr_ch is zero, we never
    initialize some variables:
    
    sound/pci/au88x0/au88x0_core.c: In function 'vortex_adb_allocroute':
    sound/pci/au88x0/au88x0_core.c:2304:68: error: 'mix[0]' may be used uninitialized in this function [-Werror=maybe-uninitialized]
    sound/pci/au88x0/au88x0_core.c:2305:58: error: 'src[0]' may be used uninitialized in this function [-Werror=maybe-uninitialized]
    
    I assume this can never happen in practice, but adding a check here doesn't
    hurt either and avoids the warning. The code has been unchanged since
    the start of git history.
    
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit e288325e93fbb5163b26f198fd450f9d7b17938f
Author: Arnd Bergmann <arnd@arndb.de>
Date:   Tue Mar 14 13:18:45 2017 +0100

    IB/qib: fix false-postive maybe-uninitialized warning
    
    commit f6aafac184a3e46e919769dd4faa8bf0dc436534 upstream.
    
    aarch64-linux-gcc-7 complains about code it doesn't fully understand:
    
    drivers/infiniband/hw/qib/qib_iba7322.c: In function 'qib_7322_txchk_change':
    include/asm-generic/bitops/non-atomic.h:105:35: error: 'shadow' may be used uninitialized in this function [-Werror=maybe-uninitialized]
    
    The code is right, and despite trying hard, I could not come up with a version
    that I liked better than just adding a fake initialization here to shut up the
    warning.
    
    Fixes: f931551bafe1 ("IB/qib: Add new qib driver for QLogic PCIe InfiniBand adapters")
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Acked-by: Ira Weiny <ira.weiny@intel.com>
    Signed-off-by: Doug Ledford <dledford@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit b8710e2d77f3088be920b8005a8e5629da98691c
Author: Gwendal Grignou <gwendal@chromium.org>
Date:   Fri Mar 3 09:00:09 2017 -0800

    libata: transport: Remove circular dependency at free time
    
    
    [ Upstream commit d85fc67dd11e9a32966140677d4d6429ca540b25 ]
    
    Without this patch, failed probe would not free resources like irq.
    
    ata port tdev object currently hold a reference to the ata port
    object.  Therefore the ata port object release function will not get
    called until the ata_tport_release is called. But that would never
    happen, releasing the last reference of ata port dev is done by
    scsi_host_release, which is called by ata_host_release when the ata
    port object is released.
    
    The ata device objects actually do not need to explicitly hold a
    reference to their real counterpart, given the transport objects are
    the children of these objects and device_add() is call for each child.
    We know the parent will not be deleted until we call the child's
    device_del().
    
    Reported-by: Matthew Whitehead <tedheadster@gmail.com>
    Tested-by: Matthew Whitehead <tedheadster@gmail.com>
    Suggested-by: Tejun Heo <tj@kernel.org>
    Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
    Signed-off-by: Tejun Heo <tj@kernel.org>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit c9103723b7e4bd5046081c7569a73a752972cec9
Author: Darrick J. Wong <darrick.wong@oracle.com>
Date:   Mon Mar 6 11:58:20 2017 -0800

    xfs: remove kmem_zalloc_greedy
    
    
    [ Upstream commit 08b005f1333154ae5b404ca28766e0ffb9f1c150 ]
    
    The sole remaining caller of kmem_zalloc_greedy is bulkstat, which uses
    it to grab 1-4 pages for staging of inobt records.  The infinite loop in
    the greedy allocation function is causing hangs[1] in generic/269, so
    just get rid of the greedy allocator in favor of kmem_zalloc_large.
    This makes bulkstat somewhat more likely to ENOMEM if there's really no
    pages to spare, but eliminates a source of hangs.
    
    [1] http://lkml.kernel.org/r/20170301044634.rgidgdqqiiwsmfpj%40XZHOUW.usersys.redhat.com
    
    Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit d0bd573a6543d6f984c19158ce78653aa1f36240
Author: Shaohua Li <shli@fb.com>
Date:   Thu Feb 23 12:26:41 2017 -0800

    md/raid10: submit bio directly to replacement disk
    
    
    [ Upstream commit 6d399783e9d4e9bd44931501948059d24ad96ff8 ]
    
    Commit 57c67df(md/raid10: submit IO from originating thread instead of
    md thread) submits bio directly for normal disks but not for replacement
    disks. There is no point we shouldn't do this for replacement disks.
    
    Cc: NeilBrown <neilb@suse.com>
    Signed-off-by: Shaohua Li <shli@fb.com>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 75a12b2fa80c2e4cc40a9f9305f95899850b7426
Author: Zhu Yanjun <yanjun.zhu@oracle.com>
Date:   Tue Mar 7 02:48:36 2017 -0500

    rds: ib: add error handle
    
    
    [ Upstream commit 3b12f73a5c2977153f28a224392fd4729b50d1dc ]
    
    In the function rds_ib_setup_qp, the error handle is missing. When some
    error occurs, it is possible that memory leak occurs. As such, error
    handle is added.
    
    Cc: Joe Jin <joe.jin@oracle.com>
    Reviewed-by: Junxiao Bi <junxiao.bi@oracle.com>
    Reviewed-by: Guanglei Li <guanglei.li@oracle.com>
    Signed-off-by: Zhu Yanjun <yanjun.zhu@oracle.com>
    Acked-by: Santosh Shilimkar <santosh.shilimkar@oracle.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 22126c602203f6c18ec71449d924db92014a6b28
Author: Arvind Yadav <arvind.yadav.cs@gmail.com>
Date:   Tue Mar 14 15:24:51 2017 +0530

    parisc: perf: Fix potential NULL pointer dereference
    
    
    [ Upstream commit 74e3f6e63da6c8e8246fba1689e040bc926b4a1a ]
    
    Fix potential NULL pointer dereference and clean up
    coding style errors (code indent, trailing whitespaces).
    
    Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com>
    Signed-off-by: Helge Deller <deller@gmx.de>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 0a1b807cb2b6a5c05e6b22f7d0f3801ab36118d7
Author: Liping Zhang <zlpnobody@gmail.com>
Date:   Sun Mar 19 22:35:59 2017 +0800

    netfilter: nfnl_cthelper: fix incorrect helper->expect_class_max
    
    
    [ Upstream commit ae5c682113f9f94cc5e76f92cf041ee624c173ee ]
    
    The helper->expect_class_max must be set to the total number of
    expect_policy minus 1, since we will use the statement "if (class >
    helper->expect_class_max)" to validate the CTA_EXPECT_CLASS attr in
    ctnetlink_alloc_expect.
    
    So for compatibility, set the helper->expect_class_max to the
    NFCTH_POLICY_SET_NUM attr's value minus 1.
    
    Also: it's invalid when the NFCTH_POLICY_SET_NUM attr's value is zero.
    1. this will result "expect_policy = kzalloc(0, GFP_KERNEL);";
    2. we cannot set the helper->expect_class_max to a proper value.
    
    So if nla_get_be32(tb[NFCTH_POLICY_SET_NUM]) is zero, report -EINVAL to
    the userspace.
    
    Signed-off-by: Liping Zhang <zlpnobody@gmail.com>
    Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit b05c24d64d4c1a2534a1db469caa17b7ba2f50e1
Author: Thibault Saunier <thibault.saunier@osg.samsung.com>
Date:   Wed Feb 1 18:05:21 2017 -0200

    exynos-gsc: Do not swap cb/cr for semi planar formats
    
    
    [ Upstream commit d7f3e33df4fbdc9855fb151f4a328ec46447e3ba ]
    
    In the case of semi planar formats cb and cr are in the same plane
    in memory, meaning that will be set to 'cb' whatever the format is,
    and whatever the (packed) order of those components are.
    
    Suggested-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
    Signed-off-by: Thibault Saunier <thibault.saunier@osg.samsung.com>
    Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
    Acked-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit c8cab6f202a1cecb5217706b6df631c87daf39e1
Author: Liping Zhang <zlpnobody@gmail.com>
Date:   Sat Mar 25 08:53:12 2017 +0800

    netfilter: invoke synchronize_rcu after set the _hook_ to NULL
    
    
    [ Upstream commit 3b7dabf029478bb80507a6c4500ca94132a2bc0b ]
    
    Otherwise, another CPU may access the invalid pointer. For example:
        CPU0                CPU1
         -              rcu_read_lock();
         -              pfunc = _hook_;
      _hook_ = NULL;          -
      mod unload              -
         -                 pfunc(); // invalid, panic
         -             rcu_read_unlock();
    
    So we must call synchronize_rcu() to wait the rcu reader to finish.
    
    Also note, in nf_nat_snmp_basic_fini, synchronize_rcu() will be invoked
    by later nf_conntrack_helper_unregister, but I'm inclined to add a
    explicit synchronize_rcu after set the nf_nat_snmp_hook to NULL. Depend
    on such obscure assumptions is not a good idea.
    
    Last, in nfnetlink_cttimeout, we use kfree_rcu to free the time object,
    so in cttimeout_exit, invoking rcu_barrier() is not necessary at all,
    remove it too.
    
    Signed-off-by: Liping Zhang <zlpnobody@gmail.com>
    Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 0fe19e5c661621932a511b36143b25a0294e9ff5
Author: Heiner Kallweit <hkallweit1@gmail.com>
Date:   Wed Mar 29 20:54:37 2017 +0200

    mmc: sdio: fix alignment issue in struct sdio_func
    
    
    [ Upstream commit 5ef1ecf060f28ecef313b5723f1fd39bf5a35f56 ]
    
    Certain 64-bit systems (e.g. Amlogic Meson GX) require buffers to be
    used for DMA to be 8-byte-aligned. struct sdio_func has an embedded
    small DMA buffer not meeting this requirement.
    When testing switching to descriptor chain mode in meson-gx driver
    SDIO is broken therefore. Fix this by allocating the small DMA buffer
    separately as kmalloc ensures that the returned memory area is
    properly aligned for every basic data type.
    
    Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
    Tested-by: Helmut Klein <hgkr.klein@gmail.com>
    Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 0ee6c8e7875807fff8f776a50b2299cfa8a7d6ec
Author: Roman Spychała <roed@onet.eu>
Date:   Thu Apr 20 12:04:10 2017 +0200

    usb: plusb: Add support for PL-27A1
    
    
    [ Upstream commit 6f2aee0c0de65013333bbc26fe50c9c7b09a37f7 ]
    
    This patch adds support for the PL-27A1 by adding the appropriate
    USB ID's. This chip is used in the goobay Active USB 3.0 Data Link
    and Unitek Y-3501 cables.
    
    Signed-off-by: Roman Spychała <roed@onet.eu>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit eafffc0aabc1431a7b13f9d6fcbc6cf086f513aa
Author: Pan Bian <bianpan2016@163.com>
Date:   Mon Apr 24 18:29:16 2017 +0800

    team: fix memory leaks
    
    
    [ Upstream commit 72ec0bc64b9a5d8e0efcb717abfc757746b101b7 ]
    
    In functions team_nl_send_port_list_get() and
    team_nl_send_options_get(), pointer skb keeps the return value of
    nlmsg_new(). When the call to genlmsg_put() fails, the memory is not
    freed(). This will result in memory leak bugs.
    
    Fixes: 9b00cf2d1024 ("team: implement multipart netlink messages for options transfers")
    Signed-off-by: Pan Bian <bianpan2016@163.com>
    Acked-by: Jiri Pirko <jiri@mellanox.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit fbbb384f5208cd9076c3619ba702771eed4731cf
Author: Alexander Potapenko <glider@google.com>
Date:   Tue Apr 25 18:51:46 2017 +0200

    net/packet: check length in getsockopt() called with PACKET_HDRLEN
    
    
    [ Upstream commit fd2c83b35752f0a8236b976978ad4658df14a59f ]
    
    In the case getsockopt() is called with PACKET_HDRLEN and optlen < 4
    |val| remains uninitialized and the syscall may behave differently
    depending on its value, and even copy garbage to userspace on certain
    architectures. To fix this we now return -EINVAL if optlen is too small.
    
    This bug has been detected with KMSAN.
    
    Signed-off-by: Alexander Potapenko <glider@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 1728786b2b59b21f33c1d48bc6712779c7303c03
Author: Myungho Jung <mhjungk@gmail.com>
Date:   Tue Apr 25 11:58:15 2017 -0700

    net: core: Prevent from dereferencing null pointer when releasing SKB
    
    
    [ Upstream commit 9899886d5e8ec5b343b1efe44f185a0e68dc6454 ]
    
    Added NULL check to make __dev_kfree_skb_irq consistent with kfree
    family of functions.
    
    Link: https://bugzilla.kernel.org/show_bug.cgi?id=195289
    
    Signed-off-by: Myungho Jung <mhjungk@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 4c963eff7d9721bca8a3bce19b7733c8b2261685
Author: Richard Guy Briggs <rgb@redhat.com>
Date:   Tue Jan 17 11:07:15 2017 -0500

    audit: log 32-bit socketcalls
    
    
    [ Upstream commit 62bc306e2083436675e33b5bdeb6a77907d35971 ]
    
    32-bit socketcalls were not being logged by audit on x86_64 systems.
    Log them.  This is basically a duplicate of the call from
    net/socket.c:sys_socketcall(), but it addresses the impedance mismatch
    between 32-bit userspace process and 64-bit kernel audit.
    
    See: https://github.com/linux-audit/audit-kernel/issues/14
    
    Signed-off-by: Richard Guy Briggs <rgb@redhat.com>
    Acked-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Paul Moore <paul@paul-moore.com>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 40e63fb87a3f9fdf13ee19eafdc52f013068c4a8
Author: Alden Tondettar <alden.tondettar@gmail.com>
Date:   Sun Jan 15 15:31:56 2017 -0700

    partitions/efi: Fix integer overflow in GPT size calculation
    
    
    [ Upstream commit c5082b70adfe8e1ea1cf4a8eff92c9f260e364d2 ]
    
    If a GUID Partition Table claims to have more than 2**25 entries, the
    calculation of the partition table size in alloc_read_gpt_entries() will
    overflow a 32-bit integer and not enough space will be allocated for the
    table.
    
    Nothing seems to get written out of bounds, but later efi_partition() will
    read up to 32768 bytes from a 128 byte buffer, possibly OOPSing or exposing
    information to /proc/partitions and uevents.
    
    The problem exists on both 64-bit and 32-bit platforms.
    
    Fix the overflow and also print a meaningful debug message if the table
    size is too large.
    
    Signed-off-by: Alden Tondettar <alden.tondettar@gmail.com>
    Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
    Signed-off-by: Jens Axboe <axboe@fb.com>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 61e43da985aa188b075e275e1297131df0573aef
Author: Johan Hovold <johan@kernel.org>
Date:   Thu Jan 12 14:56:18 2017 +0100

    USB: serial: mos7840: fix control-message error handling
    
    
    [ Upstream commit cd8db057e93ddaacbec025b567490555d2bca280 ]
    
    Make sure to detect short transfers when reading a device register.
    
    The modem-status handling had sufficient error checks in place, but move
    handling of short transfers into the register accessor function itself
    for consistency.
    
    Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: Johan Hovold <johan@kernel.org>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 920027fef71971daf64658c6f6bbfdebde161b0a
Author: Johan Hovold <johan@kernel.org>
Date:   Thu Jan 12 14:56:17 2017 +0100

    USB: serial: mos7720: fix control-message error handling
    
    
    [ Upstream commit 0d130367abf582e7cbf60075c2a7ab53817b1d14 ]
    
    Make sure to log an error on short transfers when reading a device
    register.
    
    Also clear the provided buffer (which if often an uninitialised
    automatic variable) on errors as the driver currently does not bother to
    check for errors.
    
    Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: Johan Hovold <johan@kernel.org>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 7e4194e7e7f4d744b0de96843a3a645c455d60a9
Author: Feras Daoud <ferasda@mellanox.com>
Date:   Wed Dec 28 14:47:27 2016 +0200

    IB/ipoib: Replace list_del of the neigh->list with list_del_init
    
    
    [ Upstream commit c586071d1dc8227a7182179b8e50ee92cc43f6d2 ]
    
    In order to resolve a situation where a few process delete
    the same list element in sequence and cause panic, list_del
    is replaced with list_del_init. In this case if the first
    process that calls list_del releases the lock before acquiring
    it again, other processes who can acquire the lock will call
    list_del_init.
    
    Fixes: b63b70d87741 ("IPoIB: Use a private hash table for path lookup")
    Signed-off-by: Feras Daoud <ferasda@mellanox.com>
    Signed-off-by: Erez Shitrit <erezsh@mellanox.com>
    Reviewed-by: Alex Vesker <valex@mellanox.com>
    Signed-off-by: Leon Romanovsky <leon@kernel.org>
    Reviewed-by: Yuval Shaia <yuval.shaia@oracle.com>
    Signed-off-by: Doug Ledford <dledford@redhat.com>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 8d8a5bbc3976097e472ab4fbc2ccb5c0ff655b7f
Author: Feras Daoud <ferasda@mellanox.com>
Date:   Wed Dec 28 14:47:24 2016 +0200

    IB/ipoib: rtnl_unlock can not come after free_netdev
    
    
    [ Upstream commit 89a3987ab7a923c047c6dec008e60ad6f41fac22 ]
    
    The ipoib_vlan_add function calls rtnl_unlock after free_netdev,
    rtnl_unlock not only releases the lock, but also calls netdev_run_todo.
    The latter function browses the net_todo_list array and completes the
    unregistration of all its net_device instances. If we call free_netdev
    before rtnl_unlock, then netdev_run_todo call over the freed device causes
    panic.
    To fix, move rtnl_unlock call before free_netdev call.
    
    Fixes: 9baa0b036410 ("IB/ipoib: Add rtnl_link_ops support")
    Cc: Or Gerlitz <ogerlitz@mellanox.com>
    Signed-off-by: Feras Daoud <ferasda@mellanox.com>
    Signed-off-by: Erez Shitrit <erezsh@mellanox.com>
    Reviewed-by: Yuval Shaia <yuval.shaia@oracle.com>
    Signed-off-by: Leon Romanovsky <leon@kernel.org>
    Signed-off-by: Doug Ledford <dledford@redhat.com>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 6fc261c1e77d6b3cce0a2bcfa95734b908c30615
Author: Feras Daoud <ferasda@mellanox.com>
Date:   Wed Dec 28 14:47:22 2016 +0200

    IB/ipoib: Fix deadlock over vlan_mutex
    
    
    [ Upstream commit 1c3098cdb05207e740715857df7b0998e372f527 ]
    
    This patch fixes Deadlock while executing ipoib_vlan_delete.
    
    The function takes the vlan_rwsem semaphore and calls
    unregister_netdevice. The later function calls
    ipoib_mcast_stop_thread that cause workqueue flush.
    
    When the queue has one of the ipoib_ib_dev_flush_xxx events,
    a deadlock occur because these events also tries to catch the
    same vlan_rwsem semaphore.
    
    To fix, unregister_netdevice should be called after releasing
    the semaphore.
    
    Fixes: cbbe1efa4972 ("IPoIB: Fix deadlock between ipoib_open() and child interface create")
    Signed-off-by: Feras Daoud <ferasda@mellanox.com>
    Signed-off-by: Erez Shitrit <erezsh@mellanox.com>
    Reviewed-by: Alex Vesker <valex@mellanox.com>
    Signed-off-by: Leon Romanovsky <leon@kernel.org>
    Signed-off-by: Doug Ledford <dledford@redhat.com>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 0961072120f3e40fe98c2bb49c45549ca3f042dc
Author: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Date:   Mon Jan 9 01:26:37 2017 +0100

    tty: goldfish: Fix a parameter of a call to free_irq
    
    
    [ Upstream commit 1a5c2d1de7d35f5eb9793266237903348989502b ]
    
    'request_irq()' and 'free_irq()' should be called with the same dev_id.
    
    Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 8c28f327914153bba849ddefc0d84699471ae295
Author: Afzal Mohammed <afzal.mohd.ma@gmail.com>
Date:   Sat Jan 7 17:48:10 2017 +0100

    ARM: 8635/1: nommu: allow enabling REMAP_VECTORS_TO_RAM
    
    
    [ Upstream commit 8a792e9afbce84a0fdaf213fe42bb97382487094 ]
    
    REMAP_VECTORS_TO_RAM depends on DRAM_BASE, but since DRAM_BASE is a
    hex, REMAP_VECTORS_TO_RAM could never get enabled. Also depending on
    DRAM_BASE is redundant as whenever REMAP_VECTORS_TO_RAM makes itself
    available to Kconfig, DRAM_BASE also is available as the Kconfig
    gets sourced on !MMU.
    
    Signed-off-by: Afzal Mohammed <afzal.mohd.ma@gmail.com>
    Reviewed-by: Vladimir Murzin <vladimir.murzin@arm.com>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit f905dad52252c1858327ae9ebed3692f24ee312a
Author: Guenter Roeck <linux@roeck-us.net>
Date:   Tue Dec 27 14:15:07 2016 -0800

    hwmon: (gl520sm) Fix overflows and crash seen when writing into limit attributes
    
    
    [ Upstream commit 87cdfa9d60f4f40e6d71b04b10b36d9df3c89282 ]
    
    Writes into limit attributes can overflow due to multplications and
    additions with unbound input values. Writing into fan limit attributes
    can result in a crash with a division by zero if very large values are
    written and the fan divider is larger than 1.
    
    Signed-off-by: Guenter Roeck <linux@roeck-us.net>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit ff0377a9882504d67b0d4ebf3fa1b480868dc73c
Author: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Date:   Mon Jan 9 16:34:04 2017 +0100

    sh_eth: use correct name for ECMR_MPDE bit
    
    
    [ Upstream commit 6dcf45e514974a1ff10755015b5e06746a033e5f ]
    
    This bit was wrongly named due to a typo, Sergei checked the SH7734/63
    manuals and this bit should be named MPDE.
    
    Suggested-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
    Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 9ff3b35e994da8688786a918a5938668eee94652
Author: Paul Burton <paul.burton@imgtec.com>
Date:   Mon Nov 7 11:52:19 2016 +0000

    MIPS: Ensure bss section ends on a long-aligned address
    
    
    [ Upstream commit 3f00f4d8f083bc61005d0a1ef592b149f5c88bbd ]
    
    When clearing the .bss section in kernel_entry we do so using LONG_S
    instructions, and branch whilst the current write address doesn't equal
    the end of the .bss section minus the size of a long integer. The .bss
    section always begins at a long-aligned address and we always increment
    the write pointer by the size of a long integer - we therefore rely upon
    the .bss section ending at a long-aligned address. If this is not the
    case then the long-aligned write address can never be equal to the
    non-long-aligned end address & we will continue to increment past the
    end of the .bss section, attempting to zero the rest of memory.
    
    Despite this requirement that .bss end at a long-aligned address we pass
    0 as the end alignment requirement to the BSS_SECTION macro and thus
    don't guarantee any particular alignment, allowing us to hit the error
    condition described above.
    
    Fix this by instead passing 8 bytes as the end alignment argument to
    the BSS_SECTION macro, ensuring that the end of the .bss section is
    always at least long-aligned.
    
    Signed-off-by: Paul Burton <paul.burton@imgtec.com>
    Cc: linux-mips@linux-mips.org
    Patchwork: https://patchwork.linux-mips.org/patch/14526/
    Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 23e5fd9c55ca77c5d5557b565b43506ddb1fba74
Author: Santosh Shilimkar <santosh.shilimkar@oracle.com>
Date:   Thu Feb 18 20:06:47 2016 -0800

    RDS: RDMA: Fix the composite message user notification
    
    
    [ Upstream commit 941f8d55f6d613a460a5e080d25a38509f45eb75 ]
    
    When application sends an RDS RDMA composite message consist of
    RDMA transfer to be followed up by non RDMA payload, it expect to
    be notified *only* when the full message gets delivered. RDS RDMA
    notification doesn't behave this way though.
    
    Thanks to Venkat for debug and root casuing the issue
    where only first part of the message(RDMA) was
    successfully delivered but remainder payload delivery failed.
    In that case, application should not be notified with
    a false positive of message delivery success.
    
    Fix this case by making sure the user gets notified only after
    the full message delivery.
    
    Reviewed-by: Venkat Venkatsubra <venkat.x.venkatsubra@oracle.com>
    Signed-off-by: Santosh Shilimkar <santosh.shilimkar@oracle.com>
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

commit 523a387bb0c02af078137100235ae6ead801e64d
Author: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Date:   Tue Dec 13 11:09:16 2016 +0100

    drm: bridge: add DT bindings for TI ths8135
    
    
    [ Upstream commit 2e644be30fcc08c736f66b60f4898d274d4873ab ]
    
    THS8135 is a configurable video DAC. Add DT bindings for this chip.
    
    Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
    Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
    Acked-by: Rob Herring <robh@kernel.org>
    Signed-off-by: Archit Taneja <architt@codeaurora.org>
    Link: http://patchwork.freedesktop.org/patch/msgid/1481623759-12786-3-git-send-email-bgolaszewski@baylibre.com
    Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>