* [PATCH -tip 0/2] more get_user_pages mmap_sem cleanups @ 2019-02-07 5:37 Davidlohr Bueso 2019-02-07 5:37 ` [PATCH 1/2] xsk: do not use mmap_sem Davidlohr Bueso ` (2 more replies) 0 siblings, 3 replies; 13+ messages in thread From: Davidlohr Bueso @ 2019-02-07 5:37 UTC (permalink / raw) To: akpm; +Cc: linux-mm, dave, linux-kernel Hi, Here are two more patchlets that cleanup mmap_sem and gup abusers. The second is also a fixlet. Compile-tested only. Please consider for v5.1 Thanks! Davidlohr Bueso (2): xsk: do not use mmap_sem MIPS/c-r4k: do no use mmap_sem for gup_fast() arch/mips/mm/c-r4k.c | 6 +----- net/xdp/xdp_umem.c | 6 ++---- 2 files changed, 3 insertions(+), 9 deletions(-) -- 2.16.4 ^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH 1/2] xsk: do not use mmap_sem 2019-02-07 5:37 [PATCH -tip 0/2] more get_user_pages mmap_sem cleanups Davidlohr Bueso @ 2019-02-07 5:37 ` Davidlohr Bueso 2019-02-07 7:43 ` Björn Töpel 2019-02-11 16:15 ` [PATCH v2] xsk: share the mmap_sem for page pinning Davidlohr Bueso 2019-02-07 5:37 ` [PATCH 2/2] MIPS/c-r4k: do no use mmap_sem for gup_fast() Davidlohr Bueso 2019-02-07 5:50 ` [PATCH -tip 0/2] more get_user_pages mmap_sem cleanups Davidlohr Bueso 2 siblings, 2 replies; 13+ messages in thread From: Davidlohr Bueso @ 2019-02-07 5:37 UTC (permalink / raw) To: akpm Cc: linux-mm, dave, linux-kernel, David S . Miller, Bjorn Topel, Magnus Karlsson, netdev, Davidlohr Bueso Holding mmap_sem exclusively for a gup() is an overkill. Lets replace the call for gup_fast() and let the mm take it if necessary. Cc: David S. Miller <davem@davemloft.net> Cc: Bjorn Topel <bjorn.topel@intel.com> Cc: Magnus Karlsson <magnus.karlsson@intel.com> CC: netdev@vger.kernel.org Signed-off-by: Davidlohr Bueso <dbueso@suse.de> --- net/xdp/xdp_umem.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/net/xdp/xdp_umem.c b/net/xdp/xdp_umem.c index 5ab236c5c9a5..25e1e76654a8 100644 --- a/net/xdp/xdp_umem.c +++ b/net/xdp/xdp_umem.c @@ -265,10 +265,8 @@ static int xdp_umem_pin_pages(struct xdp_umem *umem) if (!umem->pgs) return -ENOMEM; - down_write(¤t->mm->mmap_sem); - npgs = get_user_pages(umem->address, umem->npgs, - gup_flags, &umem->pgs[0], NULL); - up_write(¤t->mm->mmap_sem); + npgs = get_user_pages_fast(umem->address, umem->npgs, + gup_flags, &umem->pgs[0]); if (npgs != umem->npgs) { if (npgs >= 0) { -- 2.16.4 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [PATCH 1/2] xsk: do not use mmap_sem 2019-02-07 5:37 ` [PATCH 1/2] xsk: do not use mmap_sem Davidlohr Bueso @ 2019-02-07 7:43 ` Björn Töpel 2019-02-11 15:33 ` Daniel Borkmann 2019-02-11 16:15 ` [PATCH v2] xsk: share the mmap_sem for page pinning Davidlohr Bueso 1 sibling, 1 reply; 13+ messages in thread From: Björn Töpel @ 2019-02-07 7:43 UTC (permalink / raw) To: Davidlohr Bueso Cc: akpm, linux-mm, LKML, David S . Miller, Bjorn Topel, Magnus Karlsson, Netdev, Davidlohr Bueso Den tors 7 feb. 2019 kl 06:38 skrev Davidlohr Bueso <dave@stgolabs.net>: > > Holding mmap_sem exclusively for a gup() is an overkill. > Lets replace the call for gup_fast() and let the mm take > it if necessary. > > Cc: David S. Miller <davem@davemloft.net> > Cc: Bjorn Topel <bjorn.topel@intel.com> > Cc: Magnus Karlsson <magnus.karlsson@intel.com> > CC: netdev@vger.kernel.org > Signed-off-by: Davidlohr Bueso <dbueso@suse.de> > --- > net/xdp/xdp_umem.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git a/net/xdp/xdp_umem.c b/net/xdp/xdp_umem.c > index 5ab236c5c9a5..25e1e76654a8 100644 > --- a/net/xdp/xdp_umem.c > +++ b/net/xdp/xdp_umem.c > @@ -265,10 +265,8 @@ static int xdp_umem_pin_pages(struct xdp_umem *umem) > if (!umem->pgs) > return -ENOMEM; > > - down_write(¤t->mm->mmap_sem); > - npgs = get_user_pages(umem->address, umem->npgs, > - gup_flags, &umem->pgs[0], NULL); > - up_write(¤t->mm->mmap_sem); > + npgs = get_user_pages_fast(umem->address, umem->npgs, > + gup_flags, &umem->pgs[0]); > Thanks for the patch! The lifetime of the pinning is similar to RDMA umem mapping, so isn't gup_longterm preferred? Björn > if (npgs != umem->npgs) { > if (npgs >= 0) { > -- > 2.16.4 > ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/2] xsk: do not use mmap_sem 2019-02-07 7:43 ` Björn Töpel @ 2019-02-11 15:33 ` Daniel Borkmann 2019-02-11 16:37 ` Dan Williams 0 siblings, 1 reply; 13+ messages in thread From: Daniel Borkmann @ 2019-02-11 15:33 UTC (permalink / raw) To: Björn Töpel, Davidlohr Bueso Cc: akpm, linux-mm, LKML, David S . Miller, Bjorn Topel, Magnus Karlsson, Netdev, Davidlohr Bueso, dan.j.williams [ +Dan ] On 02/07/2019 08:43 AM, Björn Töpel wrote: > Den tors 7 feb. 2019 kl 06:38 skrev Davidlohr Bueso <dave@stgolabs.net>: >> >> Holding mmap_sem exclusively for a gup() is an overkill. >> Lets replace the call for gup_fast() and let the mm take >> it if necessary. >> >> Cc: David S. Miller <davem@davemloft.net> >> Cc: Bjorn Topel <bjorn.topel@intel.com> >> Cc: Magnus Karlsson <magnus.karlsson@intel.com> >> CC: netdev@vger.kernel.org >> Signed-off-by: Davidlohr Bueso <dbueso@suse.de> >> --- >> net/xdp/xdp_umem.c | 6 ++---- >> 1 file changed, 2 insertions(+), 4 deletions(-) >> >> diff --git a/net/xdp/xdp_umem.c b/net/xdp/xdp_umem.c >> index 5ab236c5c9a5..25e1e76654a8 100644 >> --- a/net/xdp/xdp_umem.c >> +++ b/net/xdp/xdp_umem.c >> @@ -265,10 +265,8 @@ static int xdp_umem_pin_pages(struct xdp_umem *umem) >> if (!umem->pgs) >> return -ENOMEM; >> >> - down_write(¤t->mm->mmap_sem); >> - npgs = get_user_pages(umem->address, umem->npgs, >> - gup_flags, &umem->pgs[0], NULL); >> - up_write(¤t->mm->mmap_sem); >> + npgs = get_user_pages_fast(umem->address, umem->npgs, >> + gup_flags, &umem->pgs[0]); >> > > Thanks for the patch! > > The lifetime of the pinning is similar to RDMA umem mapping, so isn't > gup_longterm preferred? Seems reasonable from reading what gup_longterm seems to do. Davidlohr or Dan, any thoughts on the above? Thanks, Daniel ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 1/2] xsk: do not use mmap_sem 2019-02-11 15:33 ` Daniel Borkmann @ 2019-02-11 16:37 ` Dan Williams 2019-02-11 17:16 ` Weiny, Ira 0 siblings, 1 reply; 13+ messages in thread From: Dan Williams @ 2019-02-11 16:37 UTC (permalink / raw) To: Daniel Borkmann Cc: Björn Töpel, Davidlohr Bueso, Andrew Morton, Linux MM, LKML, David S . Miller, Bjorn Topel, Magnus Karlsson, Netdev, Davidlohr Bueso, Weiny, Ira [ add Ira ] On Mon, Feb 11, 2019 at 7:33 AM Daniel Borkmann <daniel@iogearbox.net> wrote: > > [ +Dan ] > > On 02/07/2019 08:43 AM, Björn Töpel wrote: > > Den tors 7 feb. 2019 kl 06:38 skrev Davidlohr Bueso <dave@stgolabs.net>: > >> > >> Holding mmap_sem exclusively for a gup() is an overkill. > >> Lets replace the call for gup_fast() and let the mm take > >> it if necessary. > >> > >> Cc: David S. Miller <davem@davemloft.net> > >> Cc: Bjorn Topel <bjorn.topel@intel.com> > >> Cc: Magnus Karlsson <magnus.karlsson@intel.com> > >> CC: netdev@vger.kernel.org > >> Signed-off-by: Davidlohr Bueso <dbueso@suse.de> > >> --- > >> net/xdp/xdp_umem.c | 6 ++---- > >> 1 file changed, 2 insertions(+), 4 deletions(-) > >> > >> diff --git a/net/xdp/xdp_umem.c b/net/xdp/xdp_umem.c > >> index 5ab236c5c9a5..25e1e76654a8 100644 > >> --- a/net/xdp/xdp_umem.c > >> +++ b/net/xdp/xdp_umem.c > >> @@ -265,10 +265,8 @@ static int xdp_umem_pin_pages(struct xdp_umem *umem) > >> if (!umem->pgs) > >> return -ENOMEM; > >> > >> - down_write(¤t->mm->mmap_sem); > >> - npgs = get_user_pages(umem->address, umem->npgs, > >> - gup_flags, &umem->pgs[0], NULL); > >> - up_write(¤t->mm->mmap_sem); > >> + npgs = get_user_pages_fast(umem->address, umem->npgs, > >> + gup_flags, &umem->pgs[0]); > >> > > > > Thanks for the patch! > > > > The lifetime of the pinning is similar to RDMA umem mapping, so isn't > > gup_longterm preferred? > > Seems reasonable from reading what gup_longterm seems to do. Davidlohr > or Dan, any thoughts on the above? Yes, any gup where the lifetime of the corresponding put_page() is under direct control of userspace should be using the _longterm flavor to coordinate be careful in the presence of dax. In the dax case there is no page cache indirection to coordinate truncate vs page pins. Ira is looking to add a "fast + longterm" flavor for cases like this. ^ permalink raw reply [flat|nested] 13+ messages in thread
* RE: [PATCH 1/2] xsk: do not use mmap_sem 2019-02-11 16:37 ` Dan Williams @ 2019-02-11 17:16 ` Weiny, Ira 0 siblings, 0 replies; 13+ messages in thread From: Weiny, Ira @ 2019-02-11 17:16 UTC (permalink / raw) To: Williams, Dan J, Daniel Borkmann Cc: Björn Töpel, Davidlohr Bueso, Andrew Morton, Linux MM, LKML, David S . Miller, Topel, Bjorn, Karlsson, Magnus, Netdev, Davidlohr Bueso > > >> --- > > >> net/xdp/xdp_umem.c | 6 ++---- > > >> 1 file changed, 2 insertions(+), 4 deletions(-) > > >> > > >> diff --git a/net/xdp/xdp_umem.c b/net/xdp/xdp_umem.c index > > >> 5ab236c5c9a5..25e1e76654a8 100644 > > >> --- a/net/xdp/xdp_umem.c > > >> +++ b/net/xdp/xdp_umem.c > > >> @@ -265,10 +265,8 @@ static int xdp_umem_pin_pages(struct > xdp_umem *umem) > > >> if (!umem->pgs) > > >> return -ENOMEM; > > >> > > >> - down_write(¤t->mm->mmap_sem); > > >> - npgs = get_user_pages(umem->address, umem->npgs, > > >> - gup_flags, &umem->pgs[0], NULL); > > >> - up_write(¤t->mm->mmap_sem); > > >> + npgs = get_user_pages_fast(umem->address, umem->npgs, > > >> + gup_flags, &umem->pgs[0]); > > >> > > > > > > Thanks for the patch! > > > > > > The lifetime of the pinning is similar to RDMA umem mapping, so > > > isn't gup_longterm preferred? > > > > Seems reasonable from reading what gup_longterm seems to do. Davidlohr > > or Dan, any thoughts on the above? > > Yes, any gup where the lifetime of the corresponding put_page() is under > direct control of userspace should be using the _longterm flavor to > coordinate be careful in the presence of dax. In the dax case there is no page > cache indirection to coordinate truncate vs page pins. Ira is looking to add a > "fast + longterm" flavor for cases like this. Yes I'm just about ready with a small patch set to add a GUP fast longterm. I think this should wait for that series. Ira ^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH v2] xsk: share the mmap_sem for page pinning 2019-02-07 5:37 ` [PATCH 1/2] xsk: do not use mmap_sem Davidlohr Bueso 2019-02-07 7:43 ` Björn Töpel @ 2019-02-11 16:15 ` Davidlohr Bueso 2019-02-11 16:21 ` Björn Töpel 2019-02-11 19:53 ` Daniel Borkmann 1 sibling, 2 replies; 13+ messages in thread From: Davidlohr Bueso @ 2019-02-11 16:15 UTC (permalink / raw) To: akpm Cc: linux-mm, linux-kernel, David S . Miller, Bjorn Topel, Magnus Karlsson, netdev, Davidlohr Bueso Holding mmap_sem exclusively for a gup() is an overkill. Lets share the lock and replace the gup call for gup_longterm(), as it is better suited for the lifetime of the pinning. Cc: David S. Miller <davem@davemloft.net> Cc: Bjorn Topel <bjorn.topel@intel.com> Cc: Magnus Karlsson <magnus.karlsson@intel.com> CC: netdev@vger.kernel.org Signed-off-by: Davidlohr Bueso <dbueso@suse.de> --- net/xdp/xdp_umem.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/net/xdp/xdp_umem.c b/net/xdp/xdp_umem.c index 5ab236c5c9a5..e7fa8d0d7090 100644 --- a/net/xdp/xdp_umem.c +++ b/net/xdp/xdp_umem.c @@ -265,10 +265,10 @@ static int xdp_umem_pin_pages(struct xdp_umem *umem) if (!umem->pgs) return -ENOMEM; - down_write(¤t->mm->mmap_sem); - npgs = get_user_pages(umem->address, umem->npgs, + down_read(¤t->mm->mmap_sem); + npgs = get_user_pages_longterm(umem->address, umem->npgs, gup_flags, &umem->pgs[0], NULL); - up_write(¤t->mm->mmap_sem); + up_read(¤t->mm->mmap_sem); if (npgs != umem->npgs) { if (npgs >= 0) { -- 2.16.4 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [PATCH v2] xsk: share the mmap_sem for page pinning 2019-02-11 16:15 ` [PATCH v2] xsk: share the mmap_sem for page pinning Davidlohr Bueso @ 2019-02-11 16:21 ` Björn Töpel 2019-02-11 19:53 ` Daniel Borkmann 1 sibling, 0 replies; 13+ messages in thread From: Björn Töpel @ 2019-02-11 16:21 UTC (permalink / raw) To: akpm, linux-mm, LKML, David S . Miller, Bjorn Topel, Magnus Karlsson, Netdev, Davidlohr Bueso Den mån 11 feb. 2019 kl 17:15 skrev Davidlohr Bueso <dave@stgolabs.net>: > > Holding mmap_sem exclusively for a gup() is an overkill. > Lets share the lock and replace the gup call for gup_longterm(), > as it is better suited for the lifetime of the pinning. > Thanks for the cleanup! Acked-by: Björn Töpel <bjorn.topel@intel.com> > Cc: David S. Miller <davem@davemloft.net> > Cc: Bjorn Topel <bjorn.topel@intel.com> > Cc: Magnus Karlsson <magnus.karlsson@intel.com> > CC: netdev@vger.kernel.org > Signed-off-by: Davidlohr Bueso <dbueso@suse.de> > --- > net/xdp/xdp_umem.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/net/xdp/xdp_umem.c b/net/xdp/xdp_umem.c > index 5ab236c5c9a5..e7fa8d0d7090 100644 > --- a/net/xdp/xdp_umem.c > +++ b/net/xdp/xdp_umem.c > @@ -265,10 +265,10 @@ static int xdp_umem_pin_pages(struct xdp_umem *umem) > if (!umem->pgs) > return -ENOMEM; > > - down_write(¤t->mm->mmap_sem); > - npgs = get_user_pages(umem->address, umem->npgs, > + down_read(¤t->mm->mmap_sem); > + npgs = get_user_pages_longterm(umem->address, umem->npgs, > gup_flags, &umem->pgs[0], NULL); > - up_write(¤t->mm->mmap_sem); > + up_read(¤t->mm->mmap_sem); > > if (npgs != umem->npgs) { > if (npgs >= 0) { > -- > 2.16.4 > ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH v2] xsk: share the mmap_sem for page pinning 2019-02-11 16:15 ` [PATCH v2] xsk: share the mmap_sem for page pinning Davidlohr Bueso 2019-02-11 16:21 ` Björn Töpel @ 2019-02-11 19:53 ` Daniel Borkmann 1 sibling, 0 replies; 13+ messages in thread From: Daniel Borkmann @ 2019-02-11 19:53 UTC (permalink / raw) To: akpm, linux-mm, linux-kernel, David S . Miller, Bjorn Topel, Magnus Karlsson, netdev, Davidlohr Bueso On 02/11/2019 05:15 PM, Davidlohr Bueso wrote: > Holding mmap_sem exclusively for a gup() is an overkill. > Lets share the lock and replace the gup call for gup_longterm(), > as it is better suited for the lifetime of the pinning. > > Cc: David S. Miller <davem@davemloft.net> > Cc: Bjorn Topel <bjorn.topel@intel.com> > Cc: Magnus Karlsson <magnus.karlsson@intel.com> > CC: netdev@vger.kernel.org > Signed-off-by: Davidlohr Bueso <dbueso@suse.de> Applied, thanks! ^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH 2/2] MIPS/c-r4k: do no use mmap_sem for gup_fast() 2019-02-07 5:37 [PATCH -tip 0/2] more get_user_pages mmap_sem cleanups Davidlohr Bueso 2019-02-07 5:37 ` [PATCH 1/2] xsk: do not use mmap_sem Davidlohr Bueso @ 2019-02-07 5:37 ` Davidlohr Bueso 2019-02-07 19:00 ` Paul Burton 2019-02-07 5:50 ` [PATCH -tip 0/2] more get_user_pages mmap_sem cleanups Davidlohr Bueso 2 siblings, 1 reply; 13+ messages in thread From: Davidlohr Bueso @ 2019-02-07 5:37 UTC (permalink / raw) To: akpm Cc: linux-mm, dave, linux-kernel, Ralf Baechle, Paul Burton, James Hogan, linux-mips, Davidlohr Bueso It is well known that because the mm can internally call the regular gup_unlocked if the lockless approach fails and take the sem there, the caller must not hold the mmap_sem already. Fixes: e523f289fe4d (MIPS: c-r4k: Fix sigtramp SMP call to use kmap) Cc: Ralf Baechle <ralf@linux-mips.org> Cc: Paul Burton <paul.burton@mips.com> Cc: James Hogan <jhogan@kernel.org> Cc: linux-mips@vger.kernel.org Signed-off-by: Davidlohr Bueso <dbueso@suse.de> --- arch/mips/mm/c-r4k.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/arch/mips/mm/c-r4k.c b/arch/mips/mm/c-r4k.c index cc4e17caeb26..38fe86928837 100644 --- a/arch/mips/mm/c-r4k.c +++ b/arch/mips/mm/c-r4k.c @@ -1034,11 +1034,9 @@ static void r4k_flush_cache_sigtramp(unsigned long addr) struct flush_cache_sigtramp_args args; int npages; - down_read(¤t->mm->mmap_sem); - npages = get_user_pages_fast(addr, 1, 0, &args.page); if (npages < 1) - goto out; + return; args.mm = current->mm; args.addr = addr; @@ -1046,8 +1044,6 @@ static void r4k_flush_cache_sigtramp(unsigned long addr) r4k_on_each_cpu(R4K_HIT, local_r4k_flush_cache_sigtramp, &args); put_page(args.page); -out: - up_read(¤t->mm->mmap_sem); } static void r4k_flush_icache_all(void) -- 2.16.4 ^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: [PATCH 2/2] MIPS/c-r4k: do no use mmap_sem for gup_fast() 2019-02-07 5:37 ` [PATCH 2/2] MIPS/c-r4k: do no use mmap_sem for gup_fast() Davidlohr Bueso @ 2019-02-07 19:00 ` Paul Burton 2019-02-07 19:25 ` Davidlohr Bueso 0 siblings, 1 reply; 13+ messages in thread From: Paul Burton @ 2019-02-07 19:00 UTC (permalink / raw) To: Davidlohr Bueso Cc: akpm, linux-mm, linux-kernel, Ralf Baechle, James Hogan, linux-mips, Davidlohr Bueso Hi Davidlohr, On Wed, Feb 06, 2019 at 09:37:40PM -0800, Davidlohr Bueso wrote: > It is well known that because the mm can internally > call the regular gup_unlocked if the lockless approach > fails and take the sem there, the caller must not hold > the mmap_sem already. > > Fixes: e523f289fe4d (MIPS: c-r4k: Fix sigtramp SMP call to use kmap) > Cc: Ralf Baechle <ralf@linux-mips.org> > Cc: Paul Burton <paul.burton@mips.com> > Cc: James Hogan <jhogan@kernel.org> > Cc: linux-mips@vger.kernel.org > Signed-off-by: Davidlohr Bueso <dbueso@suse.de> Thanks - this looks good, but: 1) The problem it fixes was introduced in v4.8. 2) Commit adcc81f148d7 ("MIPS: math-emu: Write-protect delay slot emulation pages") actually left flush_cache_sigtramp unused, and has been backported to stable kernels also as far as v4.8. Therefore this will just fix code that never gets called, and I'll go delete the whole thing instead. Thanks, Paul ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH 2/2] MIPS/c-r4k: do no use mmap_sem for gup_fast() 2019-02-07 19:00 ` Paul Burton @ 2019-02-07 19:25 ` Davidlohr Bueso 0 siblings, 0 replies; 13+ messages in thread From: Davidlohr Bueso @ 2019-02-07 19:25 UTC (permalink / raw) To: Paul Burton Cc: akpm, linux-mm, linux-kernel, Ralf Baechle, James Hogan, linux-mips, Davidlohr Bueso On Thu, 07 Feb 2019, Paul Burton wrote: >Hi Davidlohr, > >On Wed, Feb 06, 2019 at 09:37:40PM -0800, Davidlohr Bueso wrote: >> It is well known that because the mm can internally >> call the regular gup_unlocked if the lockless approach >> fails and take the sem there, the caller must not hold >> the mmap_sem already. >> >> Fixes: e523f289fe4d (MIPS: c-r4k: Fix sigtramp SMP call to use kmap) >> Cc: Ralf Baechle <ralf@linux-mips.org> >> Cc: Paul Burton <paul.burton@mips.com> >> Cc: James Hogan <jhogan@kernel.org> >> Cc: linux-mips@vger.kernel.org >> Signed-off-by: Davidlohr Bueso <dbueso@suse.de> > >Thanks - this looks good, but: > > 1) The problem it fixes was introduced in v4.8. > > 2) Commit adcc81f148d7 ("MIPS: math-emu: Write-protect delay slot > emulation pages") actually left flush_cache_sigtramp unused, and has > been backported to stable kernels also as far as v4.8. > >Therefore this will just fix code that never gets called, and I'll go >delete the whole thing instead. Even better. Thanks, Davidlohr ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [PATCH -tip 0/2] more get_user_pages mmap_sem cleanups 2019-02-07 5:37 [PATCH -tip 0/2] more get_user_pages mmap_sem cleanups Davidlohr Bueso 2019-02-07 5:37 ` [PATCH 1/2] xsk: do not use mmap_sem Davidlohr Bueso 2019-02-07 5:37 ` [PATCH 2/2] MIPS/c-r4k: do no use mmap_sem for gup_fast() Davidlohr Bueso @ 2019-02-07 5:50 ` Davidlohr Bueso 2 siblings, 0 replies; 13+ messages in thread From: Davidlohr Bueso @ 2019-02-07 5:50 UTC (permalink / raw) To: akpm; +Cc: linux-mm, linux-kernel Unlike what the subject says, this is not against -tip, it applies on today's -next. On Wed, 06 Feb 2019, Davidlohr Bueso wrote: >Hi, > >Here are two more patchlets that cleanup mmap_sem and gup abusers. >The second is also a fixlet. > >Compile-tested only. Please consider for v5.1 > >Thanks! > >Davidlohr Bueso (2): > xsk: do not use mmap_sem > MIPS/c-r4k: do no use mmap_sem for gup_fast() > > arch/mips/mm/c-r4k.c | 6 +----- > net/xdp/xdp_umem.c | 6 ++---- > 2 files changed, 3 insertions(+), 9 deletions(-) > >-- >2.16.4 > ^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2019-02-11 19:53 UTC | newest] Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2019-02-07 5:37 [PATCH -tip 0/2] more get_user_pages mmap_sem cleanups Davidlohr Bueso 2019-02-07 5:37 ` [PATCH 1/2] xsk: do not use mmap_sem Davidlohr Bueso 2019-02-07 7:43 ` Björn Töpel 2019-02-11 15:33 ` Daniel Borkmann 2019-02-11 16:37 ` Dan Williams 2019-02-11 17:16 ` Weiny, Ira 2019-02-11 16:15 ` [PATCH v2] xsk: share the mmap_sem for page pinning Davidlohr Bueso 2019-02-11 16:21 ` Björn Töpel 2019-02-11 19:53 ` Daniel Borkmann 2019-02-07 5:37 ` [PATCH 2/2] MIPS/c-r4k: do no use mmap_sem for gup_fast() Davidlohr Bueso 2019-02-07 19:00 ` Paul Burton 2019-02-07 19:25 ` Davidlohr Bueso 2019-02-07 5:50 ` [PATCH -tip 0/2] more get_user_pages mmap_sem cleanups Davidlohr Bueso
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).