[OpenAFS-devel] Re: [OpenAFS] New FC4 Kernel == Can't Find System Call Table

chas williams - CONTRACTOR chas@cmf.nrl.navy.mil
Tue, 06 Dec 2005 20:16:52 -0500


In message <43960744.9010705@cert.org>,Jason McCormick writes:
>I sent the original message on 12/2 @ 11:11AM EST.  I can try solutions,
>but I'm not close to knowing enough about this to fix this on my own. :)

i would guess that this change is the big problem:

--- ../vanilla/arch/i386/kernel/entry.S	2005-10-27 20:02:08.000000000 -0400
+++ arch/i386/kernel/entry.S	2005-12-06 14:59:20.000000000 -0500
@@ -658,6 +662,7 @@
 	pushl $do_spurious_interrupt_bug
 	jmp error_code
 
+.section .rodata,"a"
 #include "syscall_table.S"
 
 syscall_table_size=(.-sys_call_table)

this is going to move sys_call_table to a different section, and the
check in osi_probe to see if the "found" sys_call_table is in the 
right section is going to fail.  while it is now marked readonly
i dont think the x86 platform can actually make it readonly.

i suspect the author of probe syscall will have a better idea
about possible fixes.

it also looks like it might be time to start using the keyring.
the ia64 does have a readonly sys_call_table that cannot be 
modified.