On Tue, 2019-02-05 at 19:41 +0100, Greg Kroah-Hartman wrote: > On Tue, Feb 05, 2019 at 06:26:23PM +0000, Ben Hutchings wrote: > > This is a backport of upstream changes to fix the FragmentSmack (CVE- > > 2018-5391) vulnerability. > > > > Peter Oskolkov checked an earlier version of this backport, but I have > > since rebased and added another 3 commits to it. I tested with the > > ip_defrag.sh self-test that he added upstream, and it passed. I have > > included the fix that is currently queued for the 4.9, 4.14 and 4.19 > > branches. > > That's a lot of patches, some of which I have already queued up in the > next 4.4 release which will happen in a day or so. Are they all still > needed after the changes there are merged? Ah, yes, a lot of the changes are already in your queue and I'm not certain that all of mine are needed. However I can say that the changes currently in the queue are not correct: * The ip_defrag.sh self-test fails: in the ipv4 non-overlap case, after a few seconds, recv() returns an EAGAIN error. If I modify the script to continue running the other cases, however, they pass. * There is a reference leak which prevents the new network namespaces being torn down ("unregister_netdevice: waiting for lo to become free. Usage count = 61"). (I see similar warnings with my backport, but the number gradually decreases and they stop after * Shutdown hangs. Ben. -- Ben Hutchings, Software Developer Codethink Ltd https://www.codethink.co.uk/ Dale House, 35 Dale Street Manchester, M1 2HF, United Kingdom On Tue, 2019-02-05 at 19:41 +0100, Greg Kroah-Hartman wrote: > On Tue, Feb 05, 2019 at 06:26:23PM +0000, Ben Hutchings wrote: > > This is a backport of upstream changes to fix the FragmentSmack (CVE- > > 2018-5391) vulnerability. > > > > Peter Oskolkov checked an earlier version of this backport, but I have > > since rebased and added another 3 commits to it. I tested with the > > ip_defrag.sh self-test that he added upstream, and it passed. I have > > included the fix that is currently queued for the 4.9, 4.14 and 4.19 > > branches. > > That's a lot of patches, some of which I have already queued up in the > next 4.4 release which will happen in a day or so. Are they all still > needed after the changes there are merged? Ah, yes, a lot of the fragment-handling changes are already in your queue and I'm not certain that all of mine are needed. However I don't think the changes in your queue are complete and correct. When I run the ip_defrag.sh self-test: 1. The ipv4 non-overlap case fails after a few seconds, with recv() returning an EAGAIN error. If I modify the script to continue after an error, the other cases do pass, however. This is not a regression from 4.4.172, but with my changes all cases pass. 2. There is a reference leak which prevents the new network namespaces being cleaned up ("unregister_netdevice: waiting for lo to become free. Usage count = 61"). With 4.4.172 or with my changes applied, the warnings appear, but only for about a minute with the number gradually decreasing. So this is a regression. 3. If I run the test again, it hangs. Shutting down the VM also hangs. I think this is related to the previous issue. Again, this is a regression. Ben. -- Ben Hutchings, Software Developer Codethink Ltd https://www.codethink.co.uk/ Dale House, 35 Dale Street Manchester, M1 2HF, United Kingdom