[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b077744e-65be-f89c-55bb-4fc0f712eb76@de.ibm.com>
Date: Wed, 29 Apr 2020 19:31:22 +0200
From: Christian Borntraeger <borntraeger@...ibm.com>
To: Dave Hansen <dave.hansen@...el.com>,
Claudio Imbrenda <imbrenda@...ux.ibm.com>,
akpm@...ux-foundation.org, jack@...e.cz, kirill@...temov.name
Cc: david@...hat.com, aarcange@...hat.com, linux-mm@...ck.org,
frankja@...ux.ibm.com, sfr@...b.auug.org.au, jhubbard@...dia.com,
linux-kernel@...r.kernel.org, linux-s390@...r.kernel.org,
peterz@...radead.org, sean.j.christopherson@...el.com
Subject: Re: [PATCH v1 1/1] fs/splice: add missing callback for inaccessible
pages
On 29.04.20 18:07, Dave Hansen wrote:
> On 4/28/20 3:50 PM, Claudio Imbrenda wrote:
>> If a page is inaccesible and it is used for things like sendfile, then
>> the content of the page is not always touched, and can be passed
>> directly to a driver, causing issues.
>>
>> This patch fixes the issue by adding a call to arch_make_page_accessible
>> in page_cache_pipe_buf_confirm; this fixes the issue.
>
> I spent about 5 minutes putting together a patch:
>
> https://sr71.net/~dave/intel/accessible.patch
>
> It adds a page flag ("daccess") which starts out set. It clears the
> flag it when the page is added to the page cache or mapped as anonymous.
And that of course does not work. Pages are not made unaccessible at a random
point in time. We do check for several page flags and page count before doing
so and we also do this while with paqe_ref_freeze to avoid several races.
I guess you just hit one of those.
Powered by blists - more mailing lists