Message ID | 20190606184438.31646-8-jgg@ziepe.ca (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Jason Gunthorpe |
Headers | show |
Series | Various revisions from a locking/code review | expand |
On 6/6/19 11:44 AM, Jason Gunthorpe wrote: > From: Jason Gunthorpe <jgg@mellanox.com> > > So we can check locking at runtime. > > Signed-off-by: Jason Gunthorpe <jgg@mellanox.com> > Reviewed-by: Jérôme Glisse <jglisse@redhat.com> > --- > v2 > - Fix missing & in lockdeps (Jason) > --- > mm/hmm.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/mm/hmm.c b/mm/hmm.c > index f67ba32983d9f1..c702cd72651b53 100644 > --- a/mm/hmm.c > +++ b/mm/hmm.c > @@ -254,11 +254,11 @@ static const struct mmu_notifier_ops hmm_mmu_notifier_ops = { > * > * To start mirroring a process address space, the device driver must register > * an HMM mirror struct. > - * > - * THE mm->mmap_sem MUST BE HELD IN WRITE MODE ! > */ > int hmm_mirror_register(struct hmm_mirror *mirror, struct mm_struct *mm) > { > + lockdep_assert_held_exclusive(&mm->mmap_sem); > + > /* Sanity check */ > if (!mm || !mirror || !mirror->ops) > return -EINVAL; > Reviewed-by: John Hubbard <jhubbard@nvidia.com> thanks,
On 6/6/19 11:44 AM, Jason Gunthorpe wrote: > From: Jason Gunthorpe <jgg@mellanox.com> > > So we can check locking at runtime. > > Signed-off-by: Jason Gunthorpe <jgg@mellanox.com> > Reviewed-by: Jérôme Glisse <jglisse@redhat.com> Reviewed-by: Ralph Campbell <rcampbell@nvidia.com> > --- > v2 > - Fix missing & in lockdeps (Jason) > --- > mm/hmm.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/mm/hmm.c b/mm/hmm.c > index f67ba32983d9f1..c702cd72651b53 100644 > --- a/mm/hmm.c > +++ b/mm/hmm.c > @@ -254,11 +254,11 @@ static const struct mmu_notifier_ops hmm_mmu_notifier_ops = { > * > * To start mirroring a process address space, the device driver must register > * an HMM mirror struct. > - * > - * THE mm->mmap_sem MUST BE HELD IN WRITE MODE ! > */ > int hmm_mirror_register(struct hmm_mirror *mirror, struct mm_struct *mm) > { > + lockdep_assert_held_exclusive(&mm->mmap_sem); > + > /* Sanity check */ > if (!mm || !mirror || !mirror->ops) > return -EINVAL; >
On Fri, Jun 7, 2019 at 12:15 AM Jason Gunthorpe <jgg@ziepe.ca> wrote: > > From: Jason Gunthorpe <jgg@mellanox.com> > > So we can check locking at runtime. Little more descriptive change log would be helpful. Acked-by: Souptick Joarder <jrdr.linux@gmail.com> > > Signed-off-by: Jason Gunthorpe <jgg@mellanox.com> > Reviewed-by: Jérôme Glisse <jglisse@redhat.com> > --- > v2 > - Fix missing & in lockdeps (Jason) > --- > mm/hmm.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/mm/hmm.c b/mm/hmm.c > index f67ba32983d9f1..c702cd72651b53 100644 > --- a/mm/hmm.c > +++ b/mm/hmm.c > @@ -254,11 +254,11 @@ static const struct mmu_notifier_ops hmm_mmu_notifier_ops = { > * > * To start mirroring a process address space, the device driver must register > * an HMM mirror struct. > - * > - * THE mm->mmap_sem MUST BE HELD IN WRITE MODE ! > */ > int hmm_mirror_register(struct hmm_mirror *mirror, struct mm_struct *mm) > { > + lockdep_assert_held_exclusive(&mm->mmap_sem); > + > /* Sanity check */ > if (!mm || !mirror || !mirror->ops) > return -EINVAL; > -- > 2.21.0 >
diff --git a/mm/hmm.c b/mm/hmm.c index f67ba32983d9f1..c702cd72651b53 100644 --- a/mm/hmm.c +++ b/mm/hmm.c @@ -254,11 +254,11 @@ static const struct mmu_notifier_ops hmm_mmu_notifier_ops = { * * To start mirroring a process address space, the device driver must register * an HMM mirror struct. - * - * THE mm->mmap_sem MUST BE HELD IN WRITE MODE ! */ int hmm_mirror_register(struct hmm_mirror *mirror, struct mm_struct *mm) { + lockdep_assert_held_exclusive(&mm->mmap_sem); + /* Sanity check */ if (!mm || !mirror || !mirror->ops) return -EINVAL;