Tom Bradley <tojabr@tojabr.com> wrote: >> So volatile by itself gives nothing. In kernel you have to use barrier() >Not True. volatille is very usefull. 'jiffies' are volatile, and many >status registers variables for devices are volatile. Volatile means 'don't >trust the cached value, reread it.' Any variable that changes very fast or >very often should be volatile. The barrier() functions are used for Any variable that may change it's value without code at that place should be volatile (i.e. hardware status registers and similar, variables changed by signal handlers, etc.). Otherwise the C compiler is allowed to assume that the variable's contents works like RAM and use that wisdom. Bernd -- Bernd Petrovitsch Email : bernd@gams.at g.a.m.s gmbh Fax : +43 1 205255-900 Prinz-Eugen-Straße 8 A-1040 Vienna/Austria/Europe LUGA : http://www.luga.at -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/