On Thu, Oct 18, 2007 at 01:13:02PM -0700, Casey Schaufler wrote:Why? Writes from CPU1 don't have to be seen in the same order on CPU2. Compiler has every right to turn that into load from smack_known store to ->smk_next ... store to smack_known and there's no reason whatsoever why these two stores won't be seen out of order on CPU2 - there's no barrier and all we have is a bunch of assignments from registers to various (nonrepeating) addresses in memory. On out-of-order architectures they can be reordered just fine by CPU itself... You need at least a barrier, assuming that you want to keep that kind of lockless access in readers (actually, I wonder if that list is a good choice of data structure here - you are using it as a symbol table and depending on the expected use pattern there might be better choices for that). -
| Jens Axboe | Re: [BUG] New Kernel Bugs |
| KAMEZAWA Hiroyuki | Re: 2.6.24-rc3-mm1 |
| Ingo Molnar | Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS] |
| Greg Kroah-Hartman | [PATCH 001/196] Chinese: Add the known_regression URI to the HOWTO |
git: | |
| Jarek Poplawski | [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| Jarek Poplawski | Re: Data corruption issue with splice() on 2.6.27.10 |
| Patrick McHardy | Re: [GIT]: Networking |
