[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20180926124032.gxvo43sisumybysu@kshutemo-mobl1>
Date: Wed, 26 Sep 2018 15:40:32 +0300
From: "Kirill A. Shutemov" <kirill@...temov.name>
To: "Aneesh Kumar K.V" <aneesh.kumar@...ux.ibm.com>
Cc: akpm@...ux-foundation.org,
"Kirill A . Shutemov" <kirill.shutemov@...ux.intel.com>,
linux-mm@...ck.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH V2] mm: Recheck page table entry with page table lock held
On Wed, Sep 26, 2018 at 08:48:58AM +0530, Aneesh Kumar K.V wrote:
> We clear the pte temporarily during read/modify/write update of the pte. If we
> take a page fault while the pte is cleared, the application can get SIGBUS. One
> such case is with remap_pfn_range without a backing vm_ops->fault callback.
> do_fault will return SIGBUS in that case.
>
> cpu 0 cpu1
> mprotect()
> ptep_modify_prot_start()/pte cleared.
> .
> . page fault.
> .
> .
> prep_modify_prot_commit()
>
> Fix this by taking page table lock and rechecking for pte_none.
>
> Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@...ux.ibm.com>
> ---
> V1:
> * update commit message.
You choosed to stick with VM_FAULT_NOPAGE, that's fine.
Acked-by: Kirill A. Shutemov <kirill.shutemov@...ux.intel.com>
Should it be in stable?
--
Kirill A. Shutemov
Powered by blists - more mailing lists