On Wed, 17 Apr 2002 15:21:56 -0700, "Mark Huang" <mhuang@broadcom.com> wrote: >search_one_table() in arch/mips/kernel/traps.c does a binary search for the >erring instruction address in the DBE table. What guarantee is there that >the table is in order by instruction address? It looks like the code hasn't >changed in a long time and it has worked for me since at least 2.4.3. >However, a top of tree (2.5.1) kernel crashes on me as soon as a get_dbe() >fails, because the table is out of order at link time---possibly run time if >there's some code that I missed that is reordering the table at __init. Any >ideas? The kernel relies on several tables being correctly ordered by the linker, including the initialization vectors, so it is a fair bet that the linker is correctly appended these tables as the kernel is built. What is more likely is that one of the exception table entries was created out of order. Please send the following output to me, not the list. objdump -h vmlinux objdump -s -j __ex_table vmlinux nm -a vmlinux