From: Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>
To: Arnd Bergmann <arnd-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
Cc: Ard Biesheuvel <ardb-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Linus Torvalds
<torvalds-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>,
Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>,
linux-arch <linux-arch-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
Linux Memory Management List
<linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org>,
Linux API <linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>,
Linux Kernel Mailing List
<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
Russell King <linux-I+IVW8TIWO2tmTQ+vhA3Yw@public.gmane.org>,
Will Deacon <will-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Guo Ren <guoren-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Brian Cain <bcain-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>,
Geert Uytterhoeven
<geert-Td1EMuHUCqxL1ZNQvxDV9g@public.gmane.org>,
Michal Simek <monstr-pSz03upnqPeHXe+LvDLADg@public.gmane.org>,
Thomas Bogendoerfer
<tsbogend-I1c7kopa9pxLokYuJOExCg@public.gmane.org>,
Nick Hu <nickhu-MUIXKm3Oiri1Z/+hSey0Gg@public.gmane.org>,
Greentime Hu <green.hu-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
Dinh Nguyen <dinguyen-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Stafford Horne <shorne-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
Helge Deller <deller@gm>
Subject: Re: [PATCH 08/14] arm64: simplify access_ok()
Date: Tue, 15 Feb 2022 10:39:06 +0000 [thread overview]
Message-ID: <YguCysZGYYWUhAPk@FVFF77S0Q05N> (raw)
In-Reply-To: <CAK8P3a0NTqK_m7q909d8FN6is8k4_u3zeckC9XOrjEi7kqSvmg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
On Tue, Feb 15, 2022 at 10:39:46AM +0100, Arnd Bergmann wrote:
> On Tue, Feb 15, 2022 at 10:21 AM Ard Biesheuvel <ardb-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> wrote:
> > On Tue, 15 Feb 2022 at 10:13, Arnd Bergmann <arnd-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> wrote:
> >
> > arm64 also has this leading up to the range check, and I think we'd no
> > longer need it:
> >
> > if (IS_ENABLED(CONFIG_ARM64_TAGGED_ADDR_ABI) &&
> > (current->flags & PF_KTHREAD || test_thread_flag(TIF_TAGGED_ADDR)))
> > addr = untagged_addr(addr);
>
> I suspect the expensive part here is checking the two flags, as untagged_addr()
> seems to always just add a sbfx instruction. Would this work?
>
> #ifdef CONFIG_ARM64_TAGGED_ADDR_ABI
> #define access_ok(ptr, size) __access_ok(untagged_addr(ptr), (size))
> #else // the else path is the default, this can be left out.
> #define access_ok(ptr, size) __access_ok((ptr), (size))
> #endif
This would be an ABI change, e.g. for tasks without TIF_TAGGED_ADDR.
I don't think we should change this as part of this series.
Thanks,
Mark.
next prev parent reply other threads:[~2022-02-15 10:39 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-02-14 16:34 [PATCH 00/14] clean up asm/uaccess.h, kill set_fs for good Arnd Bergmann
2022-02-14 16:34 ` [PATCH 01/14] uaccess: fix integer overflow on access_ok() Arnd Bergmann
2022-02-14 16:58 ` Christoph Hellwig
2022-02-14 16:34 ` [PATCH 02/14] sparc64: add __{get,put}_kernel_nocheck() Arnd Bergmann
2022-02-14 16:34 ` [PATCH 03/14] nds32: fix access_ok() checks in get/put_user Arnd Bergmann
2022-02-14 17:01 ` Christoph Hellwig
2022-02-14 17:10 ` David Laight
2022-02-15 9:18 ` Arnd Bergmann
2022-02-15 10:25 ` Greg KH
2022-02-14 16:34 ` [PATCH 04/14] x86: use more conventional access_ok() definition Arnd Bergmann
2022-02-14 17:02 ` Christoph Hellwig
2022-02-14 19:45 ` Arnd Bergmann
2022-02-14 20:00 ` Christoph Hellwig
2022-02-14 20:01 ` Linus Torvalds
2022-02-14 20:17 ` Al Viro
2022-02-15 2:47 ` Al Viro
2022-02-14 20:24 ` Linus Torvalds
[not found] ` <CAHk-=wgYu67OwP4LhcrPdDVxv2mOsx-Xsc2DKoVW6GZwKFtOYQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2022-02-14 22:13 ` David Laight
2022-02-14 16:34 ` [PATCH 05/14] uaccess: add generic __{get,put}_kernel_nofault Arnd Bergmann
2022-02-14 17:02 ` Christoph Hellwig
2022-02-15 0:31 ` Al Viro
2022-02-15 13:16 ` Arnd Bergmann
2022-02-14 16:34 ` [PATCH 06/14] mips: use simpler access_ok() Arnd Bergmann
2022-02-14 16:34 ` [PATCH 07/14] uaccess: generalize access_ok() Arnd Bergmann
2022-02-14 17:04 ` Christoph Hellwig
[not found] ` <20220214163452.1568807-8-arnd-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2022-02-14 17:15 ` Al Viro
2022-02-14 19:25 ` Arnd Bergmann
2022-02-15 10:58 ` Mark Rutland
2022-02-14 16:34 ` [PATCH 08/14] arm64: simplify access_ok() Arnd Bergmann
2022-02-14 21:06 ` Robin Murphy
2022-02-15 8:17 ` Ard Biesheuvel
2022-02-15 9:12 ` Arnd Bergmann
2022-02-15 9:21 ` Ard Biesheuvel
2022-02-15 9:39 ` Arnd Bergmann
[not found] ` <CAK8P3a0NTqK_m7q909d8FN6is8k4_u3zeckC9XOrjEi7kqSvmg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2022-02-15 10:39 ` Mark Rutland [this message]
2022-02-15 10:37 ` Mark Rutland
[not found] ` <CAK8P3a2VfvDkueaJNTA9SiB+PFsi_Q17AX+aL46ueooW2ahmQw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2022-02-16 19:43 ` Christophe Leroy
2022-02-15 9:30 ` David Laight
2022-02-15 11:24 ` Mark Rutland
2022-02-15 11:07 ` Mark Rutland
2022-02-14 16:34 ` [PATCH 09/14] m68k: drop custom __access_ok() Arnd Bergmann
2022-02-15 0:37 ` Al Viro
2022-02-15 6:29 ` Christoph Hellwig
2022-02-15 7:13 ` Al Viro
2022-02-15 10:02 ` Arnd Bergmann
2022-02-15 13:28 ` David Laight
2022-02-14 16:34 ` [PATCH 10/14] uaccess: remove most CONFIG_SET_FS users Arnd Bergmann
2022-02-14 17:06 ` Christoph Hellwig
2022-02-14 19:40 ` Arnd Bergmann
2022-02-14 16:34 ` [PATCH 11/14] sparc64: remove CONFIG_SET_FS support Arnd Bergmann
2022-02-14 17:06 ` Christoph Hellwig
2022-02-16 13:06 ` Arnd Bergmann
2022-02-15 0:48 ` Al Viro
2022-02-16 13:07 ` Arnd Bergmann
2022-02-14 16:34 ` [PATCH 12/14] sh: " Arnd Bergmann
2022-02-14 16:34 ` [PATCH 13/14] ia64: " Arnd Bergmann
2022-02-14 16:34 ` [PATCH 14/14] uaccess: drop set_fs leftovers Arnd Bergmann
2022-02-15 3:03 ` Al Viro
2022-02-15 7:46 ` Helge Deller
2022-02-15 8:10 ` Arnd Bergmann
[not found] ` <20220214163452.1568807-1-arnd-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
2022-02-14 17:35 ` [PATCH 00/14] clean up asm/uaccess.h, kill set_fs for good Linus Torvalds
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YguCysZGYYWUhAPk@FVFF77S0Q05N \
--to=mark.rutland-5wv7dgnigg8@public.gmane.org \
--cc=ardb-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=arnd-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=arnd-r2nGTMty4D4@public.gmane.org \
--cc=bcain-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
--cc=deller@gm \
--cc=dinguyen-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=geert-Td1EMuHUCqxL1ZNQvxDV9g@public.gmane.org \
--cc=green.hu-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=guoren-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=hch-jcswGhMUV9g@public.gmane.org \
--cc=linux-I+IVW8TIWO2tmTQ+vhA3Yw@public.gmane.org \
--cc=linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-arch-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org \
--cc=monstr-pSz03upnqPeHXe+LvDLADg@public.gmane.org \
--cc=nickhu-MUIXKm3Oiri1Z/+hSey0Gg@public.gmane.org \
--cc=shorne-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=torvalds-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org \
--cc=tsbogend-I1c7kopa9pxLokYuJOExCg@public.gmane.org \
--cc=will-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox