Messages in this thread | | | From | Dan Williams <> | Date | Mon, 9 Apr 2018 09:51:33 -0700 | Subject | Re: [PATCH v8 15/18] mm, fs, dax: handle layout changes to pinned dax mappings |
| |
On Mon, Apr 9, 2018 at 9:49 AM, Jan Kara <jack@suse.cz> wrote: > On Sat 07-04-18 12:38:24, Dan Williams wrote: [..] >> I wonder if this can be trivially solved by using srcu. I.e. we don't >> need to wait for a global quiescent state, just a >> get_user_pages_fast() quiescent state. ...or is that an abuse of the >> srcu api? > > Well, I'd rather use the percpu rwsemaphore (linux/percpu-rwsem.h) than > SRCU. It is a more-or-less standard locking mechanism rather than relying > on implementation properties of SRCU which is a data structure protection > method. And the overhead of percpu rwsemaphore for your use case should be > about the same as that of SRCU.
I was just about to ask that. Yes, it seems they would share similar properties and it would be better to use the explicit implementation rather than a side effect of srcu.
| |