~wgrant/ubuntu/+source/linux:zesty/acs

Last commit made on 2017-05-18
Get this branch:
git clone -b zesty/acs https://git.launchpad.net/~wgrant/ubuntu/+source/linux
Only William Grant can upload to this branch. If you are William Grant please log in for upload directions.

Branch merges

Branch information

Name:
zesty/acs
Repository:
lp:~wgrant/ubuntu/+source/linux

Recent commits

e09a4b9... by William Grant

Update ABI and changelog.

b9ccc84... by Mark Weiman

pci: Enable overrides for missing ACS capabilities (4.8+)

This an updated version of Alex Williamson's patch from:
https://lkml.org/lkml/2013/5/30/513

Original commit message follows:

6e2b676... by Kleber Sacilotto de Souza

UBUNTU: Ubuntu-4.10.0-21.23

Signed-off-by: Kleber Sacilotto de Souza <email address hidden>

15932a9... by Seth Forshee

UBUNTU: [Debian] Use default compression for all packages

BugLink: http://bugs.launchpad.net/bugs/1686782

Currently we specify bzip2 compression for the main and extras
packages, but bzip2 is no longer permitted in artful and causes
a ftbfs. Switch to the default compression.

Signed-off-by: Seth Forshee <email address hidden>
Acked-by: Brad Figg <email address hidden>
Acked-by: Andy Whitcroft <email address hidden>
Signed-off-by: Kleber Sacilotto de Souza <email address hidden>

e2701b7... by Haiyang Zhang

UBUNTU: SAUCE: pci-hyperv: Use only 16 bit integer for PCI domain

BugLink: http://bugs.launchpad.net/bugs/1684971

Signed-off-by: Haiyang Zhang <email address hidden>
Signed-off-by: Joseph Salisbury <email address hidden>
Acked-by: Brad Figg <email address hidden>
Acked-by: Stefan Bader <email address hidden>
Signed-off-by: Kleber Sacilotto de Souza <email address hidden>

7336962... by Jason A. Donenfeld

macsec: dynamically allocate space for sglist

We call skb_cow_data, which is good anyway to ensure we can actually
modify the skb as such (another error from prior). Now that we have the
number of fragments required, we can safely allocate exactly that amount
of memory.

Fixes: c09440f7dcb3 ("macsec: introduce IEEE 802.1AE driver")
Signed-off-by: Jason A. Donenfeld <email address hidden>
Acked-by: Sabrina Dubroca <email address hidden>
Signed-off-by: David S. Miller <email address hidden>

BugLink: http://bugs.launchpad.net/bugs/1685892
CVE-2017-7477
Acked-by: Stefan Bader <email address hidden>
Acked-by: Thadeu Lima de Souza Cascardo <email address hidden>
(cherry picked from commit 5294b83086cc1c35b4efeca03644cf9d12282e5b)
Signed-off-by: Kleber Sacilotto de Souza <email address hidden>

e7a77e7... by Jason A. Donenfeld

macsec: avoid heap overflow in skb_to_sgvec

While this may appear as a humdrum one line change, it's actually quite
important. An sk_buff stores data in three places:

1. A linear chunk of allocated memory in skb->data. This is the easiest
   one to work with, but it precludes using scatterdata since the memory
   must be linear.
2. The array skb_shinfo(skb)->frags, which is of maximum length
   MAX_SKB_FRAGS. This is nice for scattergather, since these fragments
   can point to different pages.
3. skb_shinfo(skb)->frag_list, which is a pointer to another sk_buff,
   which in turn can have data in either (1) or (2).

The first two are rather easy to deal with, since they're of a fixed
maximum length, while the third one is not, since there can be
potentially limitless chains of fragments. Fortunately dealing with
frag_list is opt-in for drivers, so drivers don't actually have to deal
with this mess. For whatever reason, macsec decided it wanted pain, and
so it explicitly specified NETIF_F_FRAGLIST.

Because dealing with (1), (2), and (3) is insane, most users of sk_buff
doing any sort of crypto or paging operation calls a convenient function
called skb_to_sgvec (which happens to be recursive if (3) is in use!).
This takes a sk_buff as input, and writes into its output pointer an
array of scattergather list items. Sometimes people like to declare a
fixed size scattergather list on the stack; othertimes people like to
allocate a fixed size scattergather list on the heap. However, if you're
doing it in a fixed-size fashion, you really shouldn't be using
NETIF_F_FRAGLIST too (unless you're also ensuring the sk_buff and its
frag_list children arent't shared and then you check the number of
fragments in total required.)

Macsec specifically does this:

        size += sizeof(struct scatterlist) * (MAX_SKB_FRAGS + 1);
        tmp = kmalloc(size, GFP_ATOMIC);
        *sg = (struct scatterlist *)(tmp + sg_offset);
 ...
        sg_init_table(sg, MAX_SKB_FRAGS + 1);
        skb_to_sgvec(skb, sg, 0, skb->len);

Specifying MAX_SKB_FRAGS + 1 is the right answer usually, but not if you're
using NETIF_F_FRAGLIST, in which case the call to skb_to_sgvec will
overflow the heap, and disaster ensues.

Signed-off-by: Jason A. Donenfeld <email address hidden>
Cc: <email address hidden>
Cc: <email address hidden>
Signed-off-by: David S. Miller <email address hidden>

BugLink: http://bugs.launchpad.net/bugs/1685892
CVE-2017-7477
Acked-by: Stefan Bader <email address hidden>
Acked-by: Brad Figg <email address hidden>
Acked-by: Thadeu Lima de Souza Cascardo <email address hidden>
(cherry picked from commit 4d6fa57b4dab0d77f4d8e9d9c73d1e63f6fe8fee)
Signed-off-by: Kleber Sacilotto de Souza <email address hidden>

39e0e4a... by Greg Kroah-Hartman <email address hidden>

Linux 4.10.11

BugLink: http://bugs.launchpad.net/bugs/1685140

Signed-off-by: Stefan Bader <email address hidden>

0c0eb02... by Marek Szyprowski

dma-buf: add support for compat ioctl

BugLink: http://bugs.launchpad.net/bugs/1685140

commit 888022c0473d079bff9b47fb50434b1f20f8f37f upstream.

Add compat ioctl support to dma-buf. This lets one to use DMA_BUF_IOCTL_SYNC
ioctl from 32bit application on 64bit kernel. Data structures for both 32
and 64bit modes are same, so there is no need for additional translation
layer.

Signed-off-by: Marek Szyprowski <email address hidden>
Reviewed-by: Christian König <email address hidden>
Acked-by: Daniel Vetter <email address hidden>
Signed-off-by: Sumit Semwal <email address hidden>
Link: http://patchwork.freedesktop<email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Stefan Bader <email address hidden>

0d7746f... by =?utf-8?q?Horia_Geant=C4=83?= <email address hidden>

crypto: caam - fix invalid dereference in caam_rsa_init_tfm()

BugLink: http://bugs.launchpad.net/bugs/1685140

commit 33fa46d7b310e06d2cb2ab5417c100af120bfb65 upstream.

In case caam_jr_alloc() fails, ctx->dev carries the error code,
thus accessing it with dev_err() is incorrect.

Fixes: 8c419778ab57e ("crypto: caam - add support for RSA algorithm")
Signed-off-by: Horia Geantă <email address hidden>
Signed-off-by: Herbert Xu <email address hidden>
Signed-off-by: Greg Kroah-Hartman <email address hidden>
Signed-off-by: Stefan Bader <email address hidden>