Message ID | 20230918201832.265108-1-jannh@google.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | mm: document mmu_notifier_invalidate_range_start_nonblock() | expand |
On Mon, Sep 18, 2023 at 10:18:32PM +0200, Jann Horn wrote: > Document what mmu_notifier_invalidate_range_start_nonblock() is for. > Also add a __must_check annotation to signal that callers must bail out if > a notifier vetoes the operation. > > Signed-off-by: Jann Horn <jannh@google.com> > --- > include/linux/mmu_notifier.h | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) Reviewed-by: Jason Gunthorpe <jgg@nvidia.com> Jason
Looks good, thanks. Reviewed-by: Alistair Popple <apopple@nvidia.com> Jann Horn <jannh@google.com> writes: > Document what mmu_notifier_invalidate_range_start_nonblock() is for. > Also add a __must_check annotation to signal that callers must bail out if > a notifier vetoes the operation. > > Signed-off-by: Jann Horn <jannh@google.com> > --- > include/linux/mmu_notifier.h | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) > > diff --git a/include/linux/mmu_notifier.h b/include/linux/mmu_notifier.h > index 6e3c857606f1..f349e08a9dfe 100644 > --- a/include/linux/mmu_notifier.h > +++ b/include/linux/mmu_notifier.h > @@ -459,7 +459,14 @@ mmu_notifier_invalidate_range_start(struct mmu_notifier_range *range) > lock_map_release(&__mmu_notifier_invalidate_range_start_map); > } > > -static inline int > +/* > + * This version of mmu_notifier_invalidate_range_start() avoids blocking, but it > + * can return an error if a notifier can't proceed without blocking, in which > + * case you're not allowed to modify PTEs in the specified range. > + * > + * This is mainly intended for OOM handling. > + */ > +static inline int __must_check > mmu_notifier_invalidate_range_start_nonblock(struct mmu_notifier_range *range) > { > int ret = 0; > > base-commit: 6704c78e2963a5682b4ac3c0e609d36f2405cf17
On 18.09.23 22:18, Jann Horn wrote: > Document what mmu_notifier_invalidate_range_start_nonblock() is for. > Also add a __must_check annotation to signal that callers must bail out if > a notifier vetoes the operation. > > Signed-off-by: Jann Horn <jannh@google.com> > --- I'm late but: Reviewed-by: David Hildenbrand <david@redhat.com>
diff --git a/include/linux/mmu_notifier.h b/include/linux/mmu_notifier.h index 6e3c857606f1..f349e08a9dfe 100644 --- a/include/linux/mmu_notifier.h +++ b/include/linux/mmu_notifier.h @@ -459,7 +459,14 @@ mmu_notifier_invalidate_range_start(struct mmu_notifier_range *range) lock_map_release(&__mmu_notifier_invalidate_range_start_map); } -static inline int +/* + * This version of mmu_notifier_invalidate_range_start() avoids blocking, but it + * can return an error if a notifier can't proceed without blocking, in which + * case you're not allowed to modify PTEs in the specified range. + * + * This is mainly intended for OOM handling. + */ +static inline int __must_check mmu_notifier_invalidate_range_start_nonblock(struct mmu_notifier_range *range) { int ret = 0;
Document what mmu_notifier_invalidate_range_start_nonblock() is for. Also add a __must_check annotation to signal that callers must bail out if a notifier vetoes the operation. Signed-off-by: Jann Horn <jannh@google.com> --- include/linux/mmu_notifier.h | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) base-commit: 6704c78e2963a5682b4ac3c0e609d36f2405cf17