Re: can somebody explain barrier() macro ?

Alan Cox (alan@lxorguk.ukuu.org.uk)
Tue, 20 Feb 2001 21:02:09 +0000 (GMT)


> barrier() is defined in kernel.h as follows :
>
> #define barrier() __asm__ __volatile__("": : :"memory")
>
> what does this mean ? is this like "nop" ?

Its adds an empty piece of assembler (ie no code) and declares that this
non code causes effects on memory. That forces gcc to writeback before the
barrier and reload cached values afterwards
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/