[SRU][J/I/H/F][PATCH 0/1] Drop "UBUNTU: SAUCE: cachefiles: Page leaking in cachefiles_read_backing_file while vmscan is active"

Thadeu Lima de Souza Cascardo cascardo at canonical.com
Tue Oct 19 12:02:44 UTC 2021


On Tue, Oct 19, 2021 at 12:33:07PM +0200, Andrea Righi wrote:
> BugLink: https://bugs.launchpad.net/bugs/1947709
> 
> [Impact]
> 
> "UBUNTU: SAUCE: cachefiles: Page leaking in cachefiles_read_backing_file while
> vmscan is active" has been applied to fix a page leaking issue.
> 
> However a slightly different fix has been applied upstream:
> 
>  9a24ce5b66f9 ("cachefiles: Fix page leak in cachefiles_read_backing_file while vmscan is active")
> 
> Basically we are fixing the same issue in two different ways at the same time,
> but even worse our patch an introduce a potential NULL pointer dereference: we
> do a put_page(newpage) and set newpage = NULL in the main for() loop and then
> we may do additional put_page(newpage) after the main for loop if
> ret == -EEXIST, that would trigger the NULL pointer dereference.
> 

So, I see bionic has the SAUCE patch, but does not have the upstream one. We
should revert the SAUCE patch on bionic as well and apply the upstream patch
there.

Also, the upstream commit has a test case, are you able to use it?

Thanks.
Cascardo.

> [Test case]
> 
> No test case or reproducer is available at the moment, this issue has been
> found simply by reviewing the code.
> 
> [Fix]
> 
> Drop the SAUCE patch and rely on the upstream fix.
> 
> [Regression potential]
> 
> If the analysis is not correct we may re-introduce a page leak in cachefiles
> (NFS for example), but it seems unlikely to happen, since the upstream fix is
> addressing the page leaking already.
> 
> 
> -- 
> kernel-team mailing list
> kernel-team at lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team



More information about the kernel-team mailing list