Hi David,
I have finally located where my NULL pointer is. The problem is that I
have not got a clue how it is getting set to NULL.
In arch/sparc/mm/sun4c.c, add_ring_ordered, head->next is getting
corrupted and is becoming a NULL pointer. This is ment to be a circular
linked list so it should never be NULL.
The simple explenation, since nothing significant apears to have changed
in sun4c.c, is that some change in mm/memory.c is wrong/incompatible with
sun4c mmu. The problem is that all the kernels I tried to build around the
changes to the mm code don't build on Sparc32 due to the DMA changes. This
makes it more dificult to be cirtain of the cause of the corruption.
I am going to try to back out the mm/memory.c changes so that I can
eliminate them as a cause.
Unless someone who understands the memory management code spots an error,
this is not going to be easy to track down and fix.
Do you have any documentation on the sun4c mmu?
If not, I am going to have to create some diagrams/documentation as
tralling through the code takes forever and gets very confusing. I am
struggel to understand what tables have what in them for the sun4c mmu.
Regards
Mark Fortescue.
-
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html