Re: [PATCH] MIPS: Fixed __debug_virt_addr_valid()

Serge Semin
2022-07-11T11:41:48Z

On Mon, Jul 11, 2022 at 01:27:40PM +0200, Thomas Bogendoerfer wrote:
> On Mon, Jul 11, 2022 at 01:40:52PM +0300, Serge Semin wrote:
> > On Mon, Jul 11, 2022 at 10:38:48AM +0200, Thomas Bogendoerfer wrote:
> > > On Thu, Jul 07, 2022 at 02:52:36PM -0700, Florian Fainelli wrote:
> > > > It is permissible for kernel code to call virt_to_phys() against virtual
> > > > addresses that are in KSEG0 or KSEG1 and we need to be dealing with both
> > > > types. Add a final condition that ensures that the virtual address is
> > > > below KSEG2.
> > > >
> > > > Fixes: dfad83cb7193 ("MIPS: Add support for CONFIG_DEBUG_VIRTUAL")
> > > > Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
> > > > ---
> > > > arch/mips/mm/physaddr.c | 3 ++-
> > > > 1 file changed, 2 insertions(+), 1 deletion(-)
> > > >
> > > > diff --git a/arch/mips/mm/physaddr.c b/arch/mips/mm/physaddr.c
> > > > index a1ced5e44951..a82f8f57a652 100644
> > > > --- a/arch/mips/mm/physaddr.c
> > > > +++ b/arch/mips/mm/physaddr.c
> > > > @@ -5,6 +5,7 @@
> > > > #include <linux/mmdebug.h>
> > > > #include <linux/mm.h>
> > > >
> > > > +#include <asm/addrspace.h>
> > > > #include <asm/sections.h>
> > > > #include <asm/io.h>
> > > > #include <asm/page.h>
> > > > @@ -30,7 +31,7 @@ static inline bool __debug_virt_addr_valid(unsigned long x)
> > > > if (x == MAX_DMA_ADDRESS)
> > > > return true;
> > > >
> > > > - return false;
> > > > + return KSEGX(x) < KSEG2;
> > > > }
> > > >
> > > > phys_addr_t __virt_to_phys(volatile const void *x)
> > > > --
> > > > 2.25.1
> > >
> >
> > > applied to mips-next.
> >
> > Are you sure it was ready to be applied?
> > Link: https://lore.kernel.org/linux-mips/20220708115851.ejsooiilxcopkoei@mobilestation/
>

> your comment sounded like optimizing, which can be done later on, so
> I assumed it ready.

What about Malta and EVA?

-Sergey

>
> Thomas.
>
> --
> Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
> good idea. [ RFC1925, 2.3 ]