Re: Fwd: s390x fixes

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

 




----- Original Message -----

> > 
> > And that's because when a "machdep->uvtop()" operation is done on a
> > user page that is not resident, the machine-dependent function should
> > return FALSE -- but it should return the PTE value in the paddr
> > pointer field so that it can be translated by vm_area_page_dump().
> > The s390x_uvtop() does not return the PTE, so the failed output can
> > vary, because it's using an uninitialized "paddr" stack variable.
> > But this is another easy fix, in this case to s390x_vtop():
> > 
> > /* lookup virtual address in page tables */
> > int s390x_vtop(ulong table, ulong vaddr, physaddr_t *phys_addr, int
> > verbose) {
> >         ulong entry, paddr;
> >         int level, len;
> > 
> > +       *phys_addr = 0;
> 
> 
> Looks also good. But probably I should implement a better fix that
> returns the pte for s390x swap entries.

That's true -- so since you've got the __swp_type() and __swp_offset()
macros #define'd for s390x, presumably it should work if you just pass
it back as is?  Even though you've got the common s390x_vtop() function
used by both s390x_kvtop() and s390x_uvtop(), I think it would be
safe to pass the PTE entry back in either case, because kvtop() operations
don't care about the paddr contents if you return FALSE. 

Dave

--
Crash-utility mailing list
Crash-utility@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/crash-utility


[Index of Archives]     [Fedora Development]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]

 

Powered by Linux