Linux Kernel -- IRQ (proc file system VS system call) -
i working on linux kernel project. in project modified kernel copy_process called 1 of modules responds writes proc file entry. in essence, things liks:
int procfile_write(struct file *file, const char *buffer, unsigned long count, void *data) { //...more code copy_process(...); //...more code } int init_module() { /* create /proc file */ our_proc_file = create_proc_entry(procfs_name, 0644, null); // more code our_proc_file->write_proc = procfile_write; return 0; /* ok */ } my problem kernel hangs inside copy_process when hits line:
write_lock_irq(&tasklist_lock); now, know function being called time do_fork. happens inside system call.
my questions:
- am on right path thinking has writing proc file entry vs system calls?
- what irqs have writing proc file entries?
- is writing proc file entry different system call? mean in way handled , in context invoked?
thank you!
update: converted way code called being called while handling write proc file being called system call. nothing changed. still hangs when getting same line (i.e. locking tasklist_lock). now, problem why hangs there? , how fix issue?
Comments
Post a Comment