Hi , I think this code shuld not be inside spin lock 1. if(!PageLocked(cq->async_page)){ lock_page(page); As this puts the daemon in sleep, As i experianced this in my code , I had gone through the code of lock_page, It try to set the PG_locked bit and if already set then only puts the process to block,which i'm checking in if loop. 2.While in unlock_page i got the core dump saying kernel BUG at filemap.c:891 EIP is at unlock_page if somebody has clue of this please let me know. Thanks Prasanna __________________________________ Do you Yahoo!? Yahoo! Mail - Helps protect you from nasty viruses. http://promotions.yahoo.com/new_mail -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/