Hi, I am intercepting the sys_read system call using this way ... orig_read = sys_call_table[__NR_read]; sys_call_table[__NR_read] = my_read; inside init_module() and in my close_module I have this : sys_call_table[__NR_read] = orig_read; if(sys_call_table[__NR_read] == sys_read) { printf("Everything is Ok"); } i am just cross checking that the sys_call_table entries are properly restored. But when i do rmmod of this module it prints Everything is OK but after a few seconds the kernel hangs and I cannot type anything. Can anyone please help me in this regard. thanks a lot. raghu. -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/