[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180317163937.GA1619@light.dominikbrodowski.net>
Date: Sat, 17 Mar 2018 17:39:37 +0100
From: Dominik Brodowski <linux@...inikbrodowski.net>
To: Darren Hart <dvhart@...radead.org>
Cc: Andy Lutomirski <luto@...nel.org>,
LKML <linux-kernel@...r.kernel.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Al Viro <viro@...iv.linux.org.uk>,
Ingo Molnar <mingo@...nel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Arnd Bergmann <arnd@...db.de>,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>,
Peter Zijlstra <peterz@...radead.org>
Subject: Re: [PATCH v2 03/36] mm: use do_futex() instead of sys_futex() in
mm_release()
On Fri, Mar 16, 2018 at 02:44:54PM -0700, Darren Hart wrote:
> On Fri, Mar 16, 2018 at 07:03:53PM +0000, Andy Lutomirski wrote:
> > On Fri, Mar 16, 2018 at 6:43 PM, Darren Hart <dvhart@...radead.org> wrote:
> > > On Thu, Mar 15, 2018 at 08:04:56PM +0100, Dominik Brodowski wrote:
> > >> sys_futex() is a wrapper to do_futex() which does not modify any
> > >> values here:
> > >>
> > >> - uaddr, val and val3 are kept the same
> > >>
> > >> - op is masked with FUTEX_CMD_MASK, but is always set to FUTEX_WAKE.
> > >> Therefore, val2 is always 0.
> > >>
> > >> - as utime is set to NULL, *timeout is NULL
> > >>
> > >> Cc: Thomas Gleixner <tglx@...utronix.de>
> > >> Cc: Ingo Molnar <mingo@...hat.com>
> > >> Cc: Peter Zijlstra <peterz@...radead.org>
> > >> Cc: Darren Hart <dvhart@...radead.org>
> > >> Cc: Andrew Morton <akpm@...ux-foundation.org>
> > >> Signed-off-by: Dominik Brodowski <linux@...inikbrodowski.net>
> > >
> > > Hi Dominik,
> > >
> > > I'm missing the "why" part here. What is it you are trying to address?
> > >
> > > do_futex is not currently in use outside of the futex implementation,
> > > while sys_futex is. This decouples the interface from the
> > > implementation. While this is perhaps less critical within the
> > > kernel, I don't see a compelling reason to increase the coupling
> > > between the mm and futex implementations.
> > >
> > > Without a compelling WHY, Nack from me.
> > >
> >
> > We want to make some changes to the way that the syscall entry code
> > invokes syscalls, and these changes will make it impossible to call
> > sys_xyz() functions from the kernel. So we can make sys_futex() be a
> > trivial wrapper around a new ksys_futex(), or we can do a patch like
> > this.
>
> I dug up the cover letter and got the motivation and withdraw my
> objection. I understand the motivation to put the motivation in the
> cover letter in a large series, but I think there should have been
> something indicating the need for this change in the individual patches,
> even just a single line like Andy's first sentence above.
It's two lines, but I added
This patch is part of a series which tries to remove in-kernel calls to
syscalls. On this basis, the syscall entry path can be streamlined.
to all commits in these series which remove in-kernel calls to syscalls.
Thanks,
Dominik
Powered by blists - more mailing lists