The kernel's documentation about memory barriers is rather skimpy. I
gather that rmb() guarantees that all preceding reads will have completed
before any following reads are made, and wmb() guarantees that all
preceding writes will have completed before any following writes are made.
I also gather that mb() is essentially the same as rmb() and wmb() put
together.
But suppose I need to prevent a read from being moved past a write? It
doesn't look like either rmb() or wmb() will do this. And if mb() is the
same as "rmb(); wmb();" then it won't either. So what's the right thing
to do?
Alan Stern
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]