Re: FAILED: patch "[PATCH] arm64: Update PTE_RDONLY in set_pte_at() for PROT_NONE" failed to apply to 4.4-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Apr 11, 2016 at 10:46:07AM -0700, gregkh@xxxxxxxxxxxxxxxxxxx wrote:
> On Mon, Apr 11, 2016 at 03:48:40PM +0100, Catalin Marinas wrote:
> > Hi Greg,
> > 
> > On Sun, Apr 10, 2016 at 01:53:35AM +0100, gregkh@xxxxxxxxxxxxxxxxxxx wrote:
> > > The patch below does not apply to the 4.4-stable tree.
> > > If someone wants it applied there, or to any other stable or longterm
> > > tree, then please email the backport, including the original git commit
> > > id to <stable@xxxxxxxxxxxxxxx>.
> > > 
> > > thanks,
> > > 
> > > greg k-h
> > > 
> > > ------------------ original commit in Linus's tree ------------------
> > > 
> > > From fdc69e7df3cb24f18a93192641786e5b7ecd1dfe Mon Sep 17 00:00:00 2001
> > > From: Catalin Marinas <catalin.marinas@xxxxxxx>
> > > Date: Wed, 9 Mar 2016 16:31:29 +0000
> > > Subject: [PATCH] arm64: Update PTE_RDONLY in set_pte_at() for PROT_NONE
> > >  permission
> > > 
> > > The set_pte_at() function must update the hardware PTE_RDONLY bit
> > > depending on the state of the PTE_WRITE and PTE_DIRTY bits of the given
> > > entry value. However, it currently only performs this for pte_valid()
> > > entries, ignoring PTE_PROT_NONE. The side-effect is that PROT_NONE
> > > mappings would not have the PTE_RDONLY bit set. Without
> > > CONFIG_ARM64_HW_AFDBM, this is not an issue since such PROT_NONE pages
> > > are not accessible anyway.
> > > 
> > > With commit 2f4b829c625e ("arm64: Add support for hardware updates of
> > > the access and dirty pte bits"), the ptep_set_wrprotect() function was
> > > re-written to cope with automatic hardware updates of the dirty state.
> > > As an optimisation, only PTE_RDONLY is checked to assess the "dirty"
> > > status. Since set_pte_at() does not set this bit for PROT_NONE mappings,
> > > such pages may be considered "dirty" as a result of
> > > ptep_set_wrprotect().
> > > 
> > > This patch updates the pte_valid() check to pte_present() in
> > > set_pte_at(). It also adds PTE_PROT_NONE to the swap entry bits comment.
> > > 
> > > Fixes: 2f4b829c625e ("arm64: Add support for hardware updates of the access and dirty pte bits")
> > > Signed-off-by: Catalin Marinas <catalin.marinas@xxxxxxx>
> > > Reported-by: Ganapatrao Kulkarni <gkulkarni@xxxxxxxxxxxxxxxxxx>
> > > Tested-by: Ganapatrao Kulkarni <gkulkarni@xxxxxxxxxx>
> > > Cc: <stable@xxxxxxxxxxxxxxx>
> > 
> > This patch requires another commit that was merged in 4.5. The actual
> > "Cc: stable" line above should have been:
> > 
> > Cc: <stable@xxxxxxxxxxxxxxx> # 4.4.x: ac15bd63bbb2: arm64: Honour !PTE_WRITE in set_pte_at() for kernel mappings
> > 
> > Shall I re-send commit fdc69e7df3cb ("arm64: Update PTE_RDONLY in
> > set_pte_at() for PROT_NONE permission") with the amended "Cc: stable"
> > line or you're OK to cherry-pick the dependency?
> 
> I can cherry-pick, thanks.

Ok, I take it back, I need a backported version of fdc69e7df3cb for
4.4-stable as it didn't apply cleanly and I don't know the code at all
to be able to do it myself by hand.

Can you provide that backport?

thanks,

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]