From: Mathieu Desnoyers <mathieu.desnoyers-vg+e7yoeK/dWk0Htik3J/w@public.gmane.org>
To: Rusty Russell <rusty-mnsaURCQ41sdnm+yROfE0A@public.gmane.org>
Cc: Andrew Morton
<akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-api <linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
Subject: Re: [PATCH 0/3] sys_membarrier (x86, generic)
Date: Tue, 6 Oct 2015 02:17:36 +0000 (UTC) [thread overview]
Message-ID: <1840779213.18838.1444097856879.JavaMail.zimbra@efficios.com> (raw)
In-Reply-To: <87vbaknbp8.fsf-8n+1lVoiYb80n/F98K4Iww@public.gmane.org>
----- On Oct 5, 2015, at 7:21 PM, Rusty Russell rusty-mnsaURCQ41sdnm+yROfE0A@public.gmane.org wrote:
> Mathieu Desnoyers <mathieu.desnoyers-vg+e7yoeK/dWk0Htik3J/w@public.gmane.org> writes:
>> Hi Andrew,
>>
>> Here is a repost of sys_membarrier, rebased on top of Linus commit
>> c4b5fd3fb2058b650447372472ad24e2a989f9f6 without any change since the
>> last v19 post other that proceeding to further testing. When merging
>> with other system calls, system call number conflicts should be quite
>> straightforward to handle, there is nothing special there.
>
> Hi Mathieu,
>
> Great to see this go in! One small note: it talks about
> threads, but membarrier as currently implemented would cover any shared
> memory. If you plan to optimize in future, that might not be the case:
> we'd want an address argument for those cases?
Hi Rusty,
Indeed, the current membarrier implementation only supports
the MEMBARRIER_CMD_SHARED flag, which works even with shared
memory across processes. If we ever want to optimize that for
single-process, multi-threaded cases, we would have to add
a new flag (e.g. MEMBARRIER_CMD_PRIVATE). This is quite
similar to what already exists in the futex system call.
I'm not sure I fully understand where the address argument
you are describing would be useful. So far, I see two
main use-cases: we either interact with memory that is
local to a single process, or with memory shared across
processes.
We could indeed think about sending a membarrier to all
processes using a specific shared memory area (hence the
possible need for an address argument). This could eventually
be supported by adding a specific flag for this (e.g.
MEMBARRIER_CMD_SHM), which would indicate that an extra
parameter is provided (an address).
Thoughts ?
Thanks for the feedback!
Mathieu
>
> Cheers,
> Rusty.
--
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com
WARNING: multiple messages have this Message-ID (diff)
From: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
To: Rusty Russell <rusty@ozlabs.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
linux-kernel@vger.kernel.org,
linux-api <linux-api@vger.kernel.org>
Subject: Re: [PATCH 0/3] sys_membarrier (x86, generic)
Date: Tue, 6 Oct 2015 02:17:36 +0000 (UTC) [thread overview]
Message-ID: <1840779213.18838.1444097856879.JavaMail.zimbra@efficios.com> (raw)
In-Reply-To: <87vbaknbp8.fsf@rustcorp.com.au>
----- On Oct 5, 2015, at 7:21 PM, Rusty Russell rusty@ozlabs.org wrote:
> Mathieu Desnoyers <mathieu.desnoyers@efficios.com> writes:
>> Hi Andrew,
>>
>> Here is a repost of sys_membarrier, rebased on top of Linus commit
>> c4b5fd3fb2058b650447372472ad24e2a989f9f6 without any change since the
>> last v19 post other that proceeding to further testing. When merging
>> with other system calls, system call number conflicts should be quite
>> straightforward to handle, there is nothing special there.
>
> Hi Mathieu,
>
> Great to see this go in! One small note: it talks about
> threads, but membarrier as currently implemented would cover any shared
> memory. If you plan to optimize in future, that might not be the case:
> we'd want an address argument for those cases?
Hi Rusty,
Indeed, the current membarrier implementation only supports
the MEMBARRIER_CMD_SHARED flag, which works even with shared
memory across processes. If we ever want to optimize that for
single-process, multi-threaded cases, we would have to add
a new flag (e.g. MEMBARRIER_CMD_PRIVATE). This is quite
similar to what already exists in the futex system call.
I'm not sure I fully understand where the address argument
you are describing would be useful. So far, I see two
main use-cases: we either interact with memory that is
local to a single process, or with memory shared across
processes.
We could indeed think about sending a membarrier to all
processes using a specific shared memory area (hence the
possible need for an address argument). This could eventually
be supported by adding a specific flag for this (e.g.
MEMBARRIER_CMD_SHM), which would indicate that an extra
parameter is provided (an address).
Thoughts ?
Thanks for the feedback!
Mathieu
>
> Cheers,
> Rusty.
--
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com
next prev parent reply other threads:[~2015-10-06 2:17 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-10 20:58 [PATCH 0/3] sys_membarrier (x86, generic) Mathieu Desnoyers
2015-07-10 20:58 ` [PATCH 1/3 v19] sys_membarrier(): system-wide memory barrier (generic, x86) Mathieu Desnoyers
2015-12-04 15:44 ` Michael Kerrisk (man-pages)
[not found] ` <5661B4E8.2070801-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-12-05 8:48 ` Mathieu Desnoyers
2015-12-05 8:48 ` Mathieu Desnoyers
[not found] ` <1635187109.213051.1449305303824.JavaMail.zimbra-vg+e7yoeK/dWk0Htik3J/w@public.gmane.org>
2015-12-11 18:05 ` Michael Kerrisk (man-pages)
2015-12-11 18:05 ` Michael Kerrisk (man-pages)
[not found] ` <566B107D.802-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-12-13 11:44 ` Mathieu Desnoyers
2015-12-13 11:44 ` Mathieu Desnoyers
2015-07-10 20:58 ` [PATCH 2/3] selftests: add membarrier syscall test Mathieu Desnoyers
[not found] ` <1436561912-24365-3-git-send-email-mathieu.desnoyers-vg+e7yoeK/dWk0Htik3J/w@public.gmane.org>
2015-08-31 6:54 ` Michael Ellerman
2015-08-31 6:54 ` Michael Ellerman
[not found] ` <1441004040.5735.7.camel-Gsx/Oe8HsFggBc27wqDAHg@public.gmane.org>
2015-09-01 17:11 ` Mathieu Desnoyers
2015-09-01 17:11 ` Mathieu Desnoyers
[not found] ` <1071313434.33305.1441127478843.JavaMail.zimbra-vg+e7yoeK/dWk0Htik3J/w@public.gmane.org>
2015-09-01 18:32 ` Andy Lutomirski
2015-09-01 18:32 ` Andy Lutomirski
2015-09-03 9:33 ` Michael Ellerman
[not found] ` <1441272839.26379.2.camel-Gsx/Oe8HsFggBc27wqDAHg@public.gmane.org>
2015-09-03 15:47 ` Mathieu Desnoyers
2015-09-03 15:47 ` Mathieu Desnoyers
[not found] ` <1734164155.35899.1441295233847.JavaMail.zimbra-vg+e7yoeK/dWk0Htik3J/w@public.gmane.org>
2015-09-04 3:36 ` Michael Ellerman
2015-09-04 3:36 ` Michael Ellerman
2015-09-07 16:01 ` Mathieu Desnoyers
[not found] ` <2098747118.39146.1441641706942.JavaMail.zimbra-vg+e7yoeK/dWk0Htik3J/w@public.gmane.org>
2015-09-08 4:19 ` Michael Ellerman
2015-09-08 4:19 ` Michael Ellerman
[not found] ` <1441685994.14597.7.camel-Gsx/Oe8HsFggBc27wqDAHg@public.gmane.org>
2015-09-08 14:02 ` Mathieu Desnoyers
2015-09-08 14:02 ` Mathieu Desnoyers
2015-09-03 9:24 ` Michael Ellerman
2015-09-03 9:24 ` Michael Ellerman
2015-07-10 20:58 ` [PATCH 3/3] selftests: enhance " Mathieu Desnoyers
[not found] ` <1436561912-24365-1-git-send-email-mathieu.desnoyers-vg+e7yoeK/dWk0Htik3J/w@public.gmane.org>
2015-10-05 23:21 ` [PATCH 0/3] sys_membarrier (x86, generic) Rusty Russell
2015-10-05 23:21 ` Rusty Russell
[not found] ` <87vbaknbp8.fsf-8n+1lVoiYb80n/F98K4Iww@public.gmane.org>
2015-10-06 2:17 ` Mathieu Desnoyers [this message]
2015-10-06 2:17 ` Mathieu Desnoyers
[not found] ` <1840779213.18838.1444097856879.JavaMail.zimbra-vg+e7yoeK/dWk0Htik3J/w@public.gmane.org>
2015-10-08 6:22 ` Rusty Russell
2015-10-08 6:22 ` Rusty Russell
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=1840779213.18838.1444097856879.JavaMail.zimbra@efficios.com \
--to=mathieu.desnoyers-vg+e7yoek/dwk0htik3j/w@public.gmane.org \
--cc=akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org \
--cc=linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=rusty-mnsaURCQ41sdnm+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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.