Recap: Kernel oops while duming user core.
Fredrik Arnerup
fredrik.arnerup at edgeware.tv
Tue Apr 7 19:09:54 EST 2009
> -----Original Message-----
> From: Scott Wood [mailto:scottwood at freescale.com]
> Sent: Monday, April 06, 2009 8:27 PM
> To: Fredrik Arnerup
> Cc: linuxppc-dev at ozlabs.org
> Subject: Re: Recap: Kernel oops while duming user core.
>
> On Mon, Apr 06, 2009 at 05:23:12PM +0200, Fredrik Arnerup wrote:
> > Was the kernel oops when dumping core ever resolved?
> > (http://ozlabs.org/pipermail/linuxppc-dev/2008-February/051080.html,
quoted
> > below)
>
> What was the cause? Is there a patch? A bug tracker ticket?
>
> It was fixed here:
> http://ozlabs.org/pipermail/linuxppc-dev/2008-February/051350.html
>
> > Using ELDK here, so still running 2.6.24 ...
>
> Please consider upgrading.
>
> -Scott
Thanks! Works with the ppc arch too.
/Fredrik
--- a/arch/ppc/mm/init.c
+++ b/arch/ppc/mm/init.c
@@ -483,7 +483,12 @@ void update_mmu_cache(struct vm_area_struct *vma,
unsigned long address,
*/
_tlbie(address, 0 /* 8xx doesn't care about PID */);
#endif
- if (!PageReserved(page)
+ /* The _PAGE_USER test should really be _PAGE_EXEC, but
+ * older glibc versions execute some code from no-exec
+ * pages, which for now we are supporting. If exec-only
+ * pages are ever implemented, this will have to change.
+ */
+ if (!PageReserved(page) && (pte_val(pte) & _PAGE_USER)
&& !test_bit(PG_arch_1, &page->flags)) {
if (vma->vm_mm == current->active_mm) {
__flush_dcache_icache((void *) address);
More information about the Linuxppc-dev
mailing list