==>>But I don't think that if you block in copy_to_user, > scheduler is > ==>called. So that there will be no deadlock. ==> ==> IMHO, you may not have all the pages in the memory when you are trying ==>to write to the pages. Once you get them in memory, you will lock the ==>pages while doing the transfers. Now once the pages are not on the ==>memory, you have to sleep while the swapper get the pages in the memory. Oh...yes I missed this.....So when you sleep trying to get hold of pages in memory, the new process may try to acquire the same spinlock and will spin on it until you notify the sleeping process that more pages are available and then it will release the spinlock. Ketan *** "Few things are harder to put up with than a good example. " - Mark Twain (1835-1910) *** -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/