2015-12-14 02:44:31

by Paul Mackerras

[permalink] [raw]
Subject: Bad backport of "net: Fix skb_set_peeked use-after-free bug" in 3.18.23

Commit d9a1133495b4 ("net: Fix skb_set_peeked use-after-free bug") in
3.18.23 claims to be a backport of commit a0a2a6602496, but in fact
the patch is identical to commit 738ac1ebb96d ("net: Clone skb before
setting peeked flag"), which is the commit that introduces the
use-after-free bug that a0a2a6602496 fixes.

The result is that we have been seeing crashes in __skb_recv_datagram
since I merged v3.18.24 into the kernel code we are using for a
product. Could someone fix this with an actual backport of
a0a2a6602496 please?

Thanks,
Paul.


2015-12-14 17:16:12

by Sasha Levin

[permalink] [raw]
Subject: Re: Bad backport of "net: Fix skb_set_peeked use-after-free bug" in 3.18.23

On 12/13/2015 09:44 PM, Paul Mackerras wrote:
> Commit d9a1133495b4 ("net: Fix skb_set_peeked use-after-free bug") in
> 3.18.23 claims to be a backport of commit a0a2a6602496, but in fact
> the patch is identical to commit 738ac1ebb96d ("net: Clone skb before
> setting peeked flag"), which is the commit that introduces the
> use-after-free bug that a0a2a6602496 fixes.
>
> The result is that we have been seeing crashes in __skb_recv_datagram
> since I merged v3.18.24 into the kernel code we are using for a
> product. Could someone fix this with an actual backport of
> a0a2a6602496 please?

Sorry about that, looks like my script has gone haywire :/

I've fixed it, pushed queue and will ship tomorrow after testing.


Thanks,
Sasha