Bernhard Walle wrote: > * Dave Anderson <anderson@xxxxxxxxxx> [2007-03-16 21:29]: > > > > - In current 2.6 kernels, it is now possible to recognize ppc BOOKE > > processors, which is the current default in crash. If the processor > > is confirmed to not be BOOKE, then page table translation is done > > differently. (antipov@xxxxxxxxxxxxx) > > The current code doesn't build on PPC32. Follwing patch fixes the > problem. However, I consider the patch as evil, so maybe it would be > better to change some data types that are involved here, but I don't > really know. > Figures... I took that patch on blind faith since I don't have any 32-bit ppc hardware to compile it on, never mind test it: https://www.redhat.com/archives/crash-utility/2007-March/msg00020.html Anyway, I'll still defer to the MontaVista guys to come up with a patch that they can confirm works -- and that compiles, please... Thanks, Dave > > --- > ppc.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > Index: crash-4.0-3.21/ppc.c > =================================================================== > --- crash-4.0-3.21.orig/ppc.c > +++ crash-4.0-3.21/ppc.c > @@ -301,8 +301,8 @@ ppc_uvtop(struct task_context *tc, ulong > if (machdep->flags & CPU_BOOKE) > page_table = page_middle + (BTOP(vaddr) & (PTRS_PER_PTE - 1)); > else > - page_table = ((page_middle & machdep->pagemask) + machdep->kvbase) + > - (BTOP(vaddr) & (PTRS_PER_PTE-1)); > + page_table = (ulong *)((ulong)( (((ulonglong)(ulong)page_middle & machdep->pagemask) > + + machdep->kvbase) + ((BTOP(vaddr)) & (PTRS_PER_PTE-1)) )); > > if (verbose) > fprintf(fp, " PMD: %lx => %lx\n",(ulong)page_middle, > @@ -389,8 +389,8 @@ ppc_kvtop(struct task_context *tc, ulong > if (machdep->flags & CPU_BOOKE) > page_table = page_middle + (BTOP(kvaddr) & (PTRS_PER_PTE - 1)); > else > - page_table = ((page_middle & machdep->pagemask) + machdep->kvbase) + > - (BTOP(kvaddr) & (PTRS_PER_PTE-1)); > + page_table = (ulong *)((ulong)( (((ulonglong)(ulong)page_middle & machdep->pagemask) > + + machdep->kvbase) + ((BTOP(kvaddr)) & (PTRS_PER_PTE-1)) )); > > if (verbose) > fprintf(fp, " PMD: %lx => %lx\n", (ulong)page_middle, > > ------------------------------------------------------------------------------------------------------------------------ > Part 1.1.2Type: application/pgp-signature > > ------------------------------------------------------------------------------------------------------------------------ > -- > Crash-utility mailing list > Crash-utility@xxxxxxxxxx > https://www.redhat.com/mailman/listinfo/crash-utility -- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/crash-utility