[PATCH] powerpc: Allow flush_(inval_)dcache_range to work across ranges >4GB

Greg Kroah-Hartman gregkh at linuxfoundation.org
Fri Aug 16 17:14:12 AEST 2019


On Fri, Aug 16, 2019 at 11:42:22AM +1000, Michael Ellerman wrote:
> Greg Kroah-Hartman <gregkh at linuxfoundation.org> writes:
> > On Thu, Aug 15, 2019 at 02:55:42PM +1000, Alastair D'Silva wrote:
> >> From: Alastair D'Silva <alastair at d-silva.org>
> >> 
> >> Heads Up: This patch cannot be submitted to Linus's tree, as the affected
> >> assembler functions have already been converted to C.
> 
> That was done in upstream commit:
> 
> 22e9c88d486a ("powerpc/64: reuse PPC32 static inline flush_dcache_range()")
> 
> Which is a larger change that we don't want to backport. This patch is a
> minimal fix for stable trees.
> 
> 
> >> When calling flush_(inval_)dcache_range with a size >4GB, we were masking
> >> off the upper 32 bits, so we would incorrectly flush a range smaller
> >> than intended.
> >> 
> >> This patch replaces the 32 bit shifts with 64 bit ones, so that
> >> the full size is accounted for.
> >> 
> >> Signed-off-by: Alastair D'Silva <alastair at d-silva.org>
> >> ---
> >>  arch/powerpc/kernel/misc_64.S | 4 ++--
> >>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> Acked-by: Michael Ellerman <mpe at ellerman.id.au>
> 
> > <formletter>
> >
> > This is not the correct way to submit patches for inclusion in the
> > stable kernel tree.  Please read:
> >     https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html
> > for how to do this properly.
> >
> > </formletter>
> 
> Hi Greg,
> 
> This is "option 3", submit the patch directly, and the patch "deviates
> from the original upstream patch" because the upstream patch was a
> wholesale conversion from asm to C.
> 
> This patch applies cleanly to v4.14 and v4.19.
> 
> The change log should have mentioned which upstream patch it is not a
> backport of, is there anything else we should have done differently to
> avoid the formletter bot :)

That is exactly what you should have done.  It needs to be VERY explicit
as to why this is being submitted different from what upstream did, and
to what trees it needs to go to and who is going to be responsible for
when it breaks.  And it will break :)

thanks,

greg k-h


More information about the Linuxppc-dev mailing list