Fwd: CPU features

Benjamin Herrenschmidt benh at kernel.crashing.org
Mon Apr 2 03:04:18 EST 2001

>Thanks your great kernel works.
>Recently kernel source has spin_lock problem.
>I  needed the patch for kernel-2.4.3.pre8-SMP on Dual G4.
>Kernel Guys, Please look the patch or
>Please Look this problem.

Hrm.. your patch isn't good. I think I found the problem (but didn't
yet test. My proposed fix is in my rsync, please test and report).

Basically, pte_alloc() is meant to be called with the page table lock
held. It may itself unlock & re-lock it.

There are places in arch/ppc/mm/init.c where we call it (via map_page())
without the lock. That mean that we can go out of mapin_ram and paging_init
with a dangling page table lock held init init_mm, causing further calls
to __ioremap (or other things) to lockup as soon as they try to grab that

The fix would be to enclose those calls to map_page() with a

Tell me what result you get with that.


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

More information about the Linuxppc-dev mailing list