[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAB0TPYG5T_d32iwt8Lgq_nDO_COWfWBfuSzErraASSuTYGm3yQ@mail.gmail.com>
Date: Tue, 31 Jul 2018 10:44:33 +0200
From: Martijn Coenen <maco@...roid.com>
To: Matthew Wilcox <willy@...radead.org>
Cc: Christoph Hellwig <hch@...radead.org>,
Christian Brauner <christian@...uner.io>,
Al Viro <viro@...iv.linux.org.uk>,
linux-fsdevel@...r.kernel.org, LKML <linux-kernel@...r.kernel.org>,
Arve Hjønnevåg <arve@...roid.com>,
Todd Kjos <tkjos@...roid.com>, rlove@...gle.com,
ben@...adent.org.uk
Subject: Re: [PATCH 1/4] file: export __alloc_fd()
On Mon, Jul 30, 2018 at 10:36 PM, Matthew Wilcox <willy@...radead.org> wrote:
> I'm not entirely sure I understand the binder code (... does anyone?)
> but from what I can see, it intends to open a file descriptor in the
> process which is the target of the message being sent.
You're right.
> That strikes
> me as wrong-headed; it should be allocating a struct file and passing
> that file to the other process. When that process receives the message,
> *it* allocates a file descriptor for itself.ho
We're looking into cleaning this up (historically it was done this way
because VIVT caches made this not very efficient), and this is indeed
a very good candidate for fixing it.
>
> But I think the binder user-space API relies on this. The userspace API
> seems to rely on passing fd numbers around ... but I'm having trouble
> figuring most of this user API out. Perhaps Martijn can help here.
The UAPI does expect a file descriptor, but we may be able to do the
mapping from fd to struct file (and vice-versa) in the kernel driver,
so userspace wouldn't notice.
Thanks,
Martijn
Powered by blists - more mailing lists