Messages in this thread |  | | Subject | Re: [RFC v3 05/17] RCU free VMAs | From | Laurent Dufour <> | Date | Wed, 3 May 2017 09:23:31 +0200 |
| |
On 30/04/2017 07:05, Matthew Wilcox wrote: > On Thu, Apr 27, 2017 at 05:52:44PM +0200, Laurent Dufour wrote: >> +static inline bool vma_is_dead(struct vm_area_struct *vma, unsigned int sequence) >> +{ >> + int ret = RB_EMPTY_NODE(&vma->vm_rb); >> + unsigned seq = ACCESS_ONCE(vma->vm_sequence.sequence); >> + >> + /* >> + * Matches both the wmb in write_seqlock_{begin,end}() and >> + * the wmb in vma_rb_erase(). >> + */ >> + smp_rmb(); >> + >> + return ret || seq != sequence; >> +} > > Hang on, this isn't vma_is_dead(). This is vma_has_changed() (possibly > from live to dead, but also possibly grown or shrunk; see your earlier > patch).
This makes sense.
Thanks, Laurent
|  |