From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753648AbeCQRVb (ORCPT ); Sat, 17 Mar 2018 13:21:31 -0400 Received: from isilmar-4.linta.de ([136.243.71.142]:35192 "EHLO isilmar-4.linta.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753336AbeCQRVN (ORCPT ); Sat, 17 Mar 2018 13:21:13 -0400 Date: Sat, 17 Mar 2018 17:39:37 +0100 From: Dominik Brodowski To: Darren Hart Cc: Andy Lutomirski , LKML , Linus Torvalds , Al Viro , Ingo Molnar , Andrew Morton , Arnd Bergmann , Thomas Gleixner , Ingo Molnar , Peter Zijlstra Subject: Re: [PATCH v2 03/36] mm: use do_futex() instead of sys_futex() in mm_release() Message-ID: <20180317163937.GA1619@light.dominikbrodowski.net> References: <20180315190529.20943-1-linux@dominikbrodowski.net> <20180315190529.20943-4-linux@dominikbrodowski.net> <20180316184348.GA20184@localhost.localdomain> <20180316214454.GB20184@localhost.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180316214454.GB20184@localhost.localdomain> User-Agent: Mutt/1.9.4 (2018-02-28) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 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 > > >> Cc: Ingo Molnar > > >> Cc: Peter Zijlstra > > >> Cc: Darren Hart > > >> Cc: Andrew Morton > > >> Signed-off-by: Dominik Brodowski > > > > > > 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