Manish havent u tried lxr of rubini u will surely find the answer to your question there. anyway a barrier is inserted between two instruction when u want a particular instruction to be completed berfore the next instruction is picked up for eg : - u would insert a barrier between consecutive port writes/reads the actual value and the value is the processor cache could be different a barrier would ensure tht they are synced -SIGTERM amit -----Original Message----- From: kernelnewbies-bounce@nl.linux.org [mailto:kernelnewbies-bounce@nl.linux.org]On Behalf Of manish regmi Sent: Thursday, June 24, 2004 10:36 AM To: kernelnewbies@nl.linux.org Subject: kernel preemption Hi, Can anybody explain me what is barrier() doing in preempt_enable() and preempt_disable(). I saw it is a macro expanding to __memory_barrier(). What does it do? Also, When can kernel preempt. ie. preempt_count is 1. thanks _________________________________________________________________ The new MSN 8: smart spam protection and 2 months FREE* http://join.msn.com/?page=features/junkmail -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/ -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/