On Thu, Apr 22, 2010 at 10:14:04AM -0500, Christoph Lameter wrote: > On Thu, 22 Apr 2010, Minchan Kim wrote: > > > For further optimization, we can hold vma->adjust_lock if vma_address > > returns -EFAULT. But I hope we redesigns it without new locking. > > But I don't have good idea, now. :( > > You could make it atomic through the use of RCU. > > Create a new vma entry with the changed parameters and then atomically > switch to the new vma. > > Problem is that you have some list_heads in there. Indeed, it would be necessary to update -all- pointers to the old vma entry to point to the new vma entry. The question at that point will be "is it OK to switch the pointers over one at a time?" In many situations, the answer is "yes", but it is necessary to check carefully. Thanx, Paul -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>