Re: Race between vmtruncate and mapped areas?
From: Andrea Arcangeli <hidden>
Date: 2003-05-17 18:30:15
Also in:
lkml
On Sat, May 17, 2003 at 11:19:39AM -0700, Paul McKenney wrote:
quoted
On Thu, May 15, 2003 at 02:20:00AM -0700, Andrew Morton wrote:quoted
Andrea Arcangeli [off-list ref] wrote:quoted
and it's still racydamn, and it just booted ;) I'm just a little bit concerned over the ever-expanding inode. Do you think the dual sequence numbers can be replaced by a single generation counter?yes, I wrote it as a single counter first, but was unreadable and it had more branches, so I added the other sequence number to make it cleaner. I don't mind another 4 bytes, that cacheline should be hot anyways.quoted
I do think that we should push the revalidate operation over into thevm_ops.quoted
quoted
That'll require an extra arg to ->nopage, but it has a spare one anyway(!).quoted
not sure why you need a callback, the lowlevel if needed can serialize using the same locking in the address space that vmtruncate uses. I would wait a real case need before adding a callback.FYI, we verified that the revalidate callback could also do the same job that the proposed nopagedone callback does -- permitting filesystems that provide their on vm_operations_struct to avoid the race between page faults and invalidating a page from a mapped file.
don't you need two callbacks to avoid the race? (really I mean, to call two times a callback, the callback can be also the same) Andrea -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"aart@kvack.org"> aart@kvack.org </a>