Home
last modified time | relevance | path

Searched refs:mm_lock_seq (Results 1 – 5 of 5) sorted by relevance

/linux/include/linux/
H A Dmmap_lock.h83 seqcount_init(&mm->mm_lock_seq); in mm_lock_seqcount_init()
88 do_raw_write_seqcount_begin(&mm->mm_lock_seq); in mm_lock_seqcount_begin()
93 ASSERT_EXCLUSIVE_WRITER(mm->mm_lock_seq); in mm_lock_seqcount_end()
94 do_raw_write_seqcount_end(&mm->mm_lock_seq); in mm_lock_seqcount_end()
105 return raw_seqcount_try_begin(&mm->mm_lock_seq, *seq); in mmap_lock_speculate_try_begin()
110 return read_seqcount_retry(&mm->mm_lock_seq, seq); in mmap_lock_speculate_retry()
186 static bool __is_vma_write_locked(struct vm_area_struct *vma, unsigned int *mm_lock_seq) in __is_vma_write_locked() argument
194 *mm_lock_seq = vma->vm_mm->mm_lock_seq.sequence; in __is_vma_write_locked()
195 return (vma->vm_lock_seq == *mm_lock_seq); in __is_vma_write_locked()
198 void __vma_start_write(struct vm_area_struct *vma, unsigned int mm_lock_seq);
[all …]
H A Dmm_types.h1078 seqcount_t mm_lock_seq; member
/linux/mm/
H A Dinit-mm.c44 .mm_lock_seq = SEQCNT_ZERO(init_mm.mm_lock_seq),
H A Dmmap_lock.c78 void __vma_start_write(struct vm_area_struct *vma, unsigned int mm_lock_seq) in __vma_start_write() argument
95 WRITE_ONCE(vma->vm_lock_seq, mm_lock_seq); in __vma_start_write()
156 if (READ_ONCE(vma->vm_lock_seq) == READ_ONCE(mm->mm_lock_seq.sequence)) { in vma_start_read()
190 if (unlikely(vma->vm_lock_seq == raw_read_seqcount(&mm->mm_lock_seq))) { in vma_start_read()
/linux/Documentation/mm/
H A Dprocess_addrs.rst810 If the mm sequence count, :c:member:`!mm->mm_lock_seq` is equal to the VMA
816 also increments :c:member:`!mm->mm_lock_seq` via