LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
* OOPS: how to hook system_call_table in redhat es5.1 on x86_64 platform
@ 2008-03-02  1:40 Gang He
  2008-03-02 20:04 ` Arjan van de Ven
  0 siblings, 1 reply; 2+ messages in thread
From: Gang He @ 2008-03-02  1:40 UTC (permalink / raw)
  To: linux-kernel

Hi,

as you know, Linux kernel (>2.6.18) set some pages read-only, we can
not hook system_call_table directly like before, the new source code
on i386 is

#ifdef CONFIG_DEBUG_RODATA
     // fix kernel perms
    change_page_attr(virt_to_page(syscall_table), 1, PAGE_KERNEL);
    global_flush_tlb();
#endif

    // hook syscall_table, change some system call to your function
   syscall_table[__NR_open] = my_sys_open;

#ifdef CONFIG_DEBUG_RODATA
     // fix kernel perms
    change_page_attr(virt_to_page(syscall_table), 1, PAGE_KERNEL_RO);
    global_flush_tlb();
#endif

but I use the source code above to redhat es5.1 on x86_64, this will
bring Linux crash, who can help me  to hook system_call_table in
redhat es5.1 on x86_64 platform.

Thanks
Gang

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2008-03-02 20:04 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-03-02  1:40 OOPS: how to hook system_call_table in redhat es5.1 on x86_64 platform Gang He
2008-03-02 20:04 ` Arjan van de Ven

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).