linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: Christoph Hellwig <hch@lst.de>
Cc: Paul Walmsley <paul.walmsley@sifive.com>,
	Palmer Dabbelt <palmer@dabbelt.com>,
	Alexander Viro <viro@zeniv.linux.org.uk>,
	linux-riscv <linux-riscv@lists.infradead.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	linux-arch <linux-arch@vger.kernel.org>
Subject: Re: remove set_fs for riscv
Date: Sat, 5 Sep 2020 14:17:16 +0200	[thread overview]
Message-ID: <CAK8P3a13Xs7-oknJJ0D7HU1+g3fOcaNDr0YgrN-cdv78G5fqiA@mail.gmail.com> (raw)
In-Reply-To: <20200905071735.GB13228@lst.de>

On Sat, Sep 5, 2020 at 9:17 AM Christoph Hellwig <hch@lst.de> wrote:
>
> On Fri, Sep 04, 2020 at 08:15:03PM +0200, Arnd Bergmann wrote:
> > Is there a bigger plan for the rest? I can probably have a look at the Arm
> > OABI code if nobody else working on that yet.
>
> m68knommu seems mostly trivial and not interact much with m68k/mmu,
> so that woud be my next target.  All the other seems to share more
> code for the mmu and nommu case, so they'd have to be done per arch.

Ok.

> arm would be my first target because it is used widespread, and its
> current set_fs implemenetation is very strange.  But given thar you
> help maintaining arm SOCs and probably know the arch code much better
> than I do I'd be more than happy to leave that to you.

I would start with the syscall wrapper code that just needs a simple
set of changes to pass the arguments on as kernel pointers instead
of fake user pointers.

I'm also not too familiar with the domain handling on older Arm cores,
which I think is the main difference to other architectures. On modern
Armv6+, the set_fs() call is just an assignment to current_thread_info()->
addr_limit like on other architectures, whereas Armv5 and older
rely on special load/store instructions to perform get_user/put_user
as an unprivileged access. Removing set_fs() should allow to clean
that up nicely, but I'd worry about introducing regressions in the
process, and will probably stop short of that cleanup.

     Arnd

  reply	other threads:[~2020-09-05 12:17 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-04 16:52 remove set_fs for riscv Christoph Hellwig
2020-09-04 16:52 ` [PATCH 1/8] maccess: add a generic __{get,put}_kernel_nofault for nommu Christoph Hellwig
2020-09-04 16:52 ` [PATCH 2/8] uaccess: provide a generic TASK_SIZE_MAX definition Christoph Hellwig
2020-09-04 16:52 ` [PATCH 3/8] asm-generic: fix unaligned access hamdling in raw_copy_{from,to}_user Christoph Hellwig
2020-09-04 18:04   ` Arnd Bergmann
2020-09-05  7:14     ` Christoph Hellwig
2020-09-04 18:06   ` Al Viro
2020-09-04 22:35     ` Al Viro
2020-09-05 14:41       ` Al Viro
2020-09-07  8:07       ` Arnd Bergmann
2020-09-07 19:00   ` [PATCH 3/8] asm-generic: fix unaligned access hamdling in raw_copy_{from, to}_user Sean Anderson
2020-09-04 16:52 ` [PATCH 4/8] asm-generic: prepare uaccess.h for a set_fs-less world Christoph Hellwig
2020-09-04 16:52 ` [PATCH 5/8] riscv: use memcpy based uaccess for nommu again Christoph Hellwig
2020-09-04 16:52 ` [PATCH 6/8] riscv: refactor __get_user and __put_user Christoph Hellwig
2020-09-04 16:52 ` [PATCH 7/8] riscv: implement __get_kernel_nofault and __put_user_nofault Christoph Hellwig
2020-09-04 16:52 ` [PATCH 8/8] riscv: remove address space overrides using set_fs() Christoph Hellwig
2020-09-04 18:15 ` remove set_fs for riscv Arnd Bergmann
2020-09-05  7:17   ` Christoph Hellwig
2020-09-05 12:17     ` Arnd Bergmann [this message]
2020-09-06 22:14     ` Arnd Bergmann
2020-09-07  6:03       ` Christoph Hellwig
2020-09-07 14:58         ` Arnd Bergmann

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=CAK8P3a13Xs7-oknJJ0D7HU1+g3fOcaNDr0YgrN-cdv78G5fqiA@mail.gmail.com \
    --to=arnd@arndb.de \
    --cc=hch@lst.de \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-riscv@lists.infradead.org \
    --cc=palmer@dabbelt.com \
    --cc=paul.walmsley@sifive.com \
    --cc=viro@zeniv.linux.org.uk \
    /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;
as well as URLs for NNTP newsgroup(s).