On Thursday 21 August 2008 22:26, jmerkey@wolfmountaingroup.com wrote:It is not the same as volatile type. What it does is tell the compiler to clobber all registers or temporaries. This something pretty well defined and hard to get wrong compared to volatile type. Linux barriers aren't going to force a load to be emitted, if it can be optimized away. If it optimized away a store, then I'd like to see a test case. The point is not whether it is possible to work with volatile types, but that we tend not to use them in Linux to deal with concurrency. Also, barriers seem to work fine for everybody else, so I think it is likely you either aren't using them correctly, or have other bugs in the code. You should disable preempt before getting the processor id. Can't see any other possible bugs, but you should be able to see from the disassembly pretty easily. --
| Hiten Pandya | Re: up? (emacs docbook xml ide) |
| David Newall | Re: Slow DOWN, please!!! |
| Greg KH | Re: [Ksummit-2008-discuss] Fixing the Kernel Janitors project |
| James Morris | Re: LSM conversion to static interface |
git: | |
| Gerrit Renker | [PATCH 0/37] dccp: Feature negotiation - last call for comments |
| Jarek Poplawski | [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| David Miller | Re: [BUG] New Kernel Bugs |
