Messages in this thread | | | Date | Mon, 6 Jun 2011 13:27:07 -0400 | From | Steven Rostedt <> | Subject | Re: Change in functionality of futex() system call. |
| |
On Mon, Jun 06, 2011 at 07:11:37PM +0200, Eric Dumazet wrote: > Le lundi 06 juin 2011 à 19:05 +0200, Peter Zijlstra a écrit : > > > Dunno, using futexes on private file maps is stupid imo, its just asking > > for trouble, ro private file maps are even worse. Forcing the COW is the > > only sane answer in that it gives consistent results and 'breaks' silly > > expectations early instead of sometimes. > > > > Anyway, that's not really the issue here, as David uses MAP_SHARED (as > > one should if one is interested in the shared value). > > Sure, but maybe another guy is 'stupid' and uses MAP_PRIVATE on its > read-only mappings. With old kernels this was working, and we were not > doing the COW.
That sounds like a bug in both the kernel and userspace. I would expect a MAP_PRIVATE not be seen by any other process regardless. That's the definition of PRIVATE.
From: http://www.gnu.org/s/hello/manual/libc/Memory_002dmapped-I_002fO.html
MAP_PRIVATE This specifies that writes to the region should never be written back to the attached file. Instead, a copy is made for the process, and the region will be swapped normally if memory runs low. No other process will see the changes.
-- Steve -- 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/
| |