From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4B8A2C4741F for ; Sat, 26 Sep 2020 15:15:08 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id B7F44208FE for ; Sat, 26 Sep 2020 15:15:07 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B7F44208FE Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=arndb.de Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id ED4C88E0001; Sat, 26 Sep 2020 11:15:06 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E84D56B005D; Sat, 26 Sep 2020 11:15:06 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D9BE48E0001; Sat, 26 Sep 2020 11:15:06 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0106.hostedemail.com [216.40.44.106]) by kanga.kvack.org (Postfix) with ESMTP id C3D5C6B005C for ; Sat, 26 Sep 2020 11:15:06 -0400 (EDT) Received: from smtpin29.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id 7D61B8249980 for ; Sat, 26 Sep 2020 15:15:06 +0000 (UTC) X-FDA: 77305560612.29.sun43_471081727171 Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin29.hostedemail.com (Postfix) with ESMTP id 5AA06180868E4 for ; Sat, 26 Sep 2020 15:15:06 +0000 (UTC) X-HE-Tag: sun43_471081727171 X-Filterd-Recvd-Size: 4486 Received: from mout.kundenserver.de (mout.kundenserver.de [217.72.192.74]) by imf03.hostedemail.com (Postfix) with ESMTP for ; Sat, 26 Sep 2020 15:15:05 +0000 (UTC) Received: from mail-qk1-f172.google.com ([209.85.222.172]) by mrelayeu.kundenserver.de (mreue107 [212.227.15.145]) with ESMTPSA (Nemesis) id 1Mnqfc-1koNmM0Dxy-00pIHg for ; Sat, 26 Sep 2020 17:15:04 +0200 Received: by mail-qk1-f172.google.com with SMTP id w16so6072506qkj.7 for ; Sat, 26 Sep 2020 08:15:03 -0700 (PDT) X-Gm-Message-State: AOAM5323tfcAjDUCbduB8vI+BpykELU9nolxdkSXbAa0FrqYIMUPSZnn 8L2ur/B7k88Q9YQ4RjtgcJMjFxd/vAQpdsgT2eI= X-Google-Smtp-Source: ABdhPJxIHOGw51eNdlrbfPrNtvt9GZ0CRQoQPFIS6KxakNFDuy5nl7xrMMdye3IxBDCV7cgDteqr7U576hmGd6fdR7g= X-Received: by 2002:ae9:c30d:: with SMTP id n13mr5026781qkg.138.1601133302598; Sat, 26 Sep 2020 08:15:02 -0700 (PDT) MIME-Version: 1.0 References: <20200918132439.1475479-1-arnd@arndb.de> <20200918132439.1475479-5-arnd@arndb.de> <20200919054148.GL30063@infradead.org> In-Reply-To: <20200919054148.GL30063@infradead.org> From: Arnd Bergmann Date: Sat, 26 Sep 2020 17:14:46 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH 4/4] mm: remove compat numa syscalls To: Christoph Hellwig Cc: Alexander Viro , Eric Biederman , Andrew Morton , "linux-kernel@vger.kernel.org" , Linux ARM , linux-arch , Linux-MM , kexec@lists.infradead.org Content-Type: text/plain; charset="UTF-8" X-Provags-ID: V03:K1:9INZbfmnM7SVgvGavY8M2o+Cglui2wjk6EVRiRVv1BfSYNR4ZAk s0tgZ1wH6o8/Bhxu60PqA0pAj3DRtAqeq64aEhPTcmFxLUKztVeo+zPNTaSr9uQgY7oBWBM 1F9274Mlt9O881/P/LKyl1kJsr+NY2ZWadtGK8cTQ7vqJwlUccWjDQW2lJAtiYp2SilQp10 Cb62WQjL+lFeANA+iUmWA== X-UI-Out-Filterresults: notjunk:1;V03:K0:gW52u4Juav8=:dmzvDRuXQPK0uswiM+xNGs OCEYtrWkiOF75R3wM0dFil3Y2f2jNGmiBee9YTfaoQ/Lu7GIQHILRGYu4dgjCpqMPoLAJrl2y XF/WE8ZgjfTvBUSN9KIWnny/UlilC9aO0EZr7RjrpSjP2iiIfqoQm9tYqo6LgNmMZsWuBRhUo smk7GlQ7WW+cKKmm6p1ymjbyWQX+dkA5cQ+CFqn952NejAg5EcC10oXQ4WsT+dJ/EHwyYQJtf eIlCg6gG/48fJLkDz0GTsfB2ShSvNqIleovGTyhxd7TSKrX+p1hNj7j3P5Jf0PqWneOq9myxz FkEYns986EyfWxNMjXJ6mEqFTP+aYARjgk87YIZGc+RmiCZrmnrG/x6btIuY2vySACV72ukpH l+xQgK0vlgr9GFTFqD6lC4v/Lu7JvtkajWtChv/RXmlDJviiNFpQEhmFMJuy9Nqwd4z2Tvbaa GGjK7ld+S9l9/EULR8VKNGkYfOrEEx9gty+a8tASUHPCi4KQQXJn69ee18XE+i1NmWUCc7N6f 3Is4g+fkFBjarwmfzKYf4ee/aolhld47qGFZlLhXN+vxPmJ4TMJYfT4akpPIC1kXKK27+A6+c 88uZ6db3Vvmw+s85/NaZnLyOnu7WnoiwRajJidCt+fWrMuW8X35Rp5oSHEeHf1POkR/T9DoP+ 2xmceN57v6xJ55Hej91HqVTYaHdm6usBXfub4jruB2sb34q4dSpk5pZC/ZH2vevkJBI4rPyUB gUYHOtN7hq7JTDqA30+6AoKM1CH9PiHUCPwFzHJyD9sAAWZBPnah7/d5SkkQwz+xGZg0/8exV sBt3l29i3Ssm96Iz09Wkqsab56oMqZ1T6YN1HiNwlfID8/xXAIn2ibhUKAtKHxicTRGu6Pc X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Sat, Sep 19, 2020 at 7:41 AM Christoph Hellwig wrote: > On Fri, Sep 18, 2020 at 03:24:39PM +0200, Arnd Bergmann wrote: > > +static int get_bitmap(unsigned long *mask, const unsigned long __user *nmask, > > + unsigned long maxnode) > > +{ > > + unsigned long nlongs = BITS_TO_LONGS(maxnode); > > + int ret; > > + > > + if (in_compat_syscall()) > > + ret = compat_get_bitmap(mask, (void __user *)nmask, maxnode); > > I'd either pass void __user all the way, or do an explicit case from > the native to the compat version in the compat handler. Changed to if (in_compat_syscall()) ret = compat_get_bitmap(mask, (const compat_ulong_t __user *)nmask, maxnode); > > + else > > + ret = copy_from_user(mask, nmask, nlongs*sizeof(unsigned long)); > > That whole BITS_TO_LONGS(b) * sizeof(unsigned long) pattern is > duplicated in various places including the checking of compat vs native > and probably want a helper that includes the in_compat_syscall() check. I don't see what you mean here. I can see how having the helper would simplify copy_nodes_to_user(), but not how it can be shared with the use in get_bitmap()/get_nodes(). Arnd