All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrea Arcangeli <andrea@qumranet.com>
To: Eric Dumazet <dada1@cosmosbay.com>
Cc: Christoph Lameter <clameter@sgi.com>,
	Nick Piggin <npiggin@suse.de>, Jack Steiner <steiner@sgi.com>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	kvm-devel@lists.sourceforge.net,
	Kanoj Sarcar <kanojsarcar@yahoo.com>,
	Roland Dreier <rdreier@cisco.com>,
	Steve Wise <swise@opengridcomputing.com>,
	linux-kernel@vger.kernel.org, Avi Kivity <avi@qumranet.com>,
	linux-mm@kvack.org, Robin Holt <holt@sgi.com>,
	general@lists.openfabrics.org, Hugh Dickins <hugh@veritas.com>,
	akpm@linux-foundation.org, Rusty Russell <rusty@rustcorp.com.au>
Subject: Re: [PATCH 01 of 12] Core of mmu notifiers
Date: Tue, 22 Apr 2008 17:15:30 +0200	[thread overview]
Message-ID: <20080422151529.GE24536@duo.random> (raw)
In-Reply-To: <480DFC8A.8040105@cosmosbay.com>

On Tue, Apr 22, 2008 at 04:56:10PM +0200, Eric Dumazet wrote:
> Andrea Arcangeli a écrit :
>> +
>> +static int mm_lock_cmp(const void *a, const void *b)
>> +{
>> +	cond_resched();
>> +	if ((unsigned long)*(spinlock_t **)a <
>> +	    (unsigned long)*(spinlock_t **)b)
>> +		return -1;
>> +	else if (a == b)
>> +		return 0;
>> +	else
>> +		return 1;
>> +}
>> +
> This compare function looks unusual...
> It should work, but sort() could be faster if the
> if (a == b) test had a chance to be true eventually...

Hmm, are you saying my mm_lock_cmp won't return 0 if a==b?

> static int mm_lock_cmp(const void *a, const void *b)
> {
> 	unsigned long la = (unsigned long)*(spinlock_t **)a;
> 	unsigned long lb = (unsigned long)*(spinlock_t **)b;
>
> 	cond_resched();
> 	if (la < lb)
> 		return -1;
> 	if (la > lb)
> 		return 1;
> 	return 0;
> }

If your intent is to use the assumption that there are going to be few
equal entries, you should have used likely(la > lb) to signal it's
rarely going to return zero or gcc is likely free to do whatever it
wants with the above. Overall that function is such a slow path that
this is going to be lost in the noise. My suggestion would be to defer
microoptimizations like this after 1/12 will be applied to mainline.

Thanks!


WARNING: multiple messages have this Message-ID (diff)
From: Andrea Arcangeli <andrea@qumranet.com>
To: Eric Dumazet <dada1@cosmosbay.com>
Cc: Nick Piggin <npiggin@suse.de>,
	Rusty Russell <rusty@rustcorp.com.au>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	kvm-devel@lists.sourceforge.net,
	Kanoj Sarcar <kanojsarcar@yahoo.com>,
	Roland Dreier <rdreier@cisco.com>, Jack Steiner <steiner@sgi.com>,
	linux-kernel@vger.kernel.org, Avi Kivity <avi@qumranet.com>,
	linux-mm@kvack.org, Robin Holt <holt@sgi.com>,
	general@lists.openfabrics.org, Hugh Dickins <hugh@veritas.com>,
	akpm@linux-foundation.org, Christoph Lameter <clameter@sgi.com>
Subject: [ofa-general] Re: [PATCH 01 of 12] Core of mmu notifiers
Date: Tue, 22 Apr 2008 17:15:30 +0200	[thread overview]
Message-ID: <20080422151529.GE24536@duo.random> (raw)
In-Reply-To: <480DFC8A.8040105@cosmosbay.com>

On Tue, Apr 22, 2008 at 04:56:10PM +0200, Eric Dumazet wrote:
> Andrea Arcangeli a écrit :
>> +
>> +static int mm_lock_cmp(const void *a, const void *b)
>> +{
>> +	cond_resched();
>> +	if ((unsigned long)*(spinlock_t **)a <
>> +	    (unsigned long)*(spinlock_t **)b)
>> +		return -1;
>> +	else if (a == b)
>> +		return 0;
>> +	else
>> +		return 1;
>> +}
>> +
> This compare function looks unusual...
> It should work, but sort() could be faster if the
> if (a == b) test had a chance to be true eventually...

Hmm, are you saying my mm_lock_cmp won't return 0 if a==b?

> static int mm_lock_cmp(const void *a, const void *b)
> {
> 	unsigned long la = (unsigned long)*(spinlock_t **)a;
> 	unsigned long lb = (unsigned long)*(spinlock_t **)b;
>
> 	cond_resched();
> 	if (la < lb)
> 		return -1;
> 	if (la > lb)
> 		return 1;
> 	return 0;
> }

If your intent is to use the assumption that there are going to be few
equal entries, you should have used likely(la > lb) to signal it's
rarely going to return zero or gcc is likely free to do whatever it
wants with the above. Overall that function is such a slow path that
this is going to be lost in the noise. My suggestion would be to defer
microoptimizations like this after 1/12 will be applied to mainline.

Thanks!

WARNING: multiple messages have this Message-ID (diff)
From: Andrea Arcangeli <andrea@qumranet.com>
To: Eric Dumazet <dada1@cosmosbay.com>
Cc: Christoph Lameter <clameter@sgi.com>,
	Nick Piggin <npiggin@suse.de>, Jack Steiner <steiner@sgi.com>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	kvm-devel@lists.sourceforge.net,
	Kanoj Sarcar <kanojsarcar@yahoo.com>,
	Roland Dreier <rdreier@cisco.com>,
	Steve Wise <swise@opengridcomputing.com>,
	linux-kernel@vger.kernel.org, Avi Kivity <avi@qumranet.com>,
	linux-mm@kvack.org, Robin Holt <holt@sgi.com>,
	general@lists.openfabrics.org, Hugh Dickins <hugh@veritas.com>,
	akpm@linux-foundation.org, Rusty Russell <rusty@rustcorp.com.au>
Subject: Re: [PATCH 01 of 12] Core of mmu notifiers
Date: Tue, 22 Apr 2008 17:15:30 +0200	[thread overview]
Message-ID: <20080422151529.GE24536@duo.random> (raw)
In-Reply-To: <480DFC8A.8040105@cosmosbay.com>

On Tue, Apr 22, 2008 at 04:56:10PM +0200, Eric Dumazet wrote:
> Andrea Arcangeli a ecrit :
>> +
>> +static int mm_lock_cmp(const void *a, const void *b)
>> +{
>> +	cond_resched();
>> +	if ((unsigned long)*(spinlock_t **)a <
>> +	    (unsigned long)*(spinlock_t **)b)
>> +		return -1;
>> +	else if (a == b)
>> +		return 0;
>> +	else
>> +		return 1;
>> +}
>> +
> This compare function looks unusual...
> It should work, but sort() could be faster if the
> if (a == b) test had a chance to be true eventually...

Hmm, are you saying my mm_lock_cmp won't return 0 if a==b?

> static int mm_lock_cmp(const void *a, const void *b)
> {
> 	unsigned long la = (unsigned long)*(spinlock_t **)a;
> 	unsigned long lb = (unsigned long)*(spinlock_t **)b;
>
> 	cond_resched();
> 	if (la < lb)
> 		return -1;
> 	if (la > lb)
> 		return 1;
> 	return 0;
> }

If your intent is to use the assumption that there are going to be few
equal entries, you should have used likely(la > lb) to signal it's
rarely going to return zero or gcc is likely free to do whatever it
wants with the above. Overall that function is such a slow path that
this is going to be lost in the noise. My suggestion would be to defer
microoptimizations like this after 1/12 will be applied to mainline.

Thanks!

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2008-04-22 15:15 UTC|newest]

Thread overview: 249+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-04-22 13:51 [PATCH 00 of 12] mmu notifier #v13 Andrea Arcangeli
2008-04-22 13:51 ` Andrea Arcangeli
2008-04-22 13:51 ` [ofa-general] " Andrea Arcangeli
2008-04-22 13:51 ` [PATCH 01 of 12] Core of mmu notifiers Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 14:56   ` Eric Dumazet
2008-04-22 14:56     ` Eric Dumazet
2008-04-22 15:15     ` Andrea Arcangeli [this message]
2008-04-22 15:15       ` Andrea Arcangeli
2008-04-22 15:15       ` [ofa-general] " Andrea Arcangeli
2008-04-22 15:24       ` Avi Kivity
2008-04-22 15:24         ` Avi Kivity
2008-04-22 15:37       ` Eric Dumazet
2008-04-22 15:37         ` Eric Dumazet
2008-04-22 16:46         ` Andrea Arcangeli
2008-04-22 16:46           ` Andrea Arcangeli
2008-04-22 16:46           ` [ofa-general] " Andrea Arcangeli
2008-04-22 20:19   ` Christoph Lameter
2008-04-22 20:19     ` Christoph Lameter
2008-04-22 20:19     ` [ofa-general] " Christoph Lameter
2008-04-22 20:31     ` Robin Holt
2008-04-22 20:31       ` Robin Holt
2008-04-22 20:31       ` [ofa-general] " Robin Holt
2008-04-22 22:35     ` Andrea Arcangeli
2008-04-22 22:35       ` Andrea Arcangeli
2008-04-22 22:35       ` Andrea Arcangeli
2008-04-22 23:07       ` Robin Holt
2008-04-22 23:07         ` Robin Holt
2008-04-22 23:07         ` Robin Holt
2008-04-23  0:28         ` Jack Steiner
2008-04-23  0:28           ` Jack Steiner
2008-04-23  0:28           ` [ofa-general] " Jack Steiner
2008-04-23 16:37           ` Andrea Arcangeli
2008-04-23 16:37             ` Andrea Arcangeli
2008-04-23 16:37             ` [ofa-general] " Andrea Arcangeli
2008-04-23 18:19             ` Christoph Lameter
2008-04-23 18:19               ` Christoph Lameter
2008-04-23 18:19               ` [ofa-general] " Christoph Lameter
2008-04-23 18:25               ` Andrea Arcangeli
2008-04-23 18:25                 ` Andrea Arcangeli
2008-04-23 18:25                 ` [ofa-general] " Andrea Arcangeli
2008-04-23 22:19             ` Andrea Arcangeli
2008-04-23 22:19               ` Andrea Arcangeli
2008-04-23 22:19               ` [ofa-general] " Andrea Arcangeli
2008-04-24  6:49               ` Andrea Arcangeli
2008-04-24  6:49                 ` Andrea Arcangeli
2008-04-24  6:49                 ` Andrea Arcangeli
2008-04-24  9:51                 ` Robin Holt
2008-04-24  9:51                   ` Robin Holt
2008-04-24  9:51                   ` [ofa-general] " Robin Holt
2008-04-24 15:39                   ` Andrea Arcangeli
2008-04-24 15:39                     ` Andrea Arcangeli
2008-04-24 15:39                     ` [ofa-general] " Andrea Arcangeli
2008-04-24 17:41                     ` Andrea Arcangeli
2008-04-24 17:41                       ` Andrea Arcangeli
2008-04-24 17:41                       ` [ofa-general] " Andrea Arcangeli
2008-04-26 13:17                       ` Robin Holt
2008-04-26 13:17                         ` Robin Holt
2008-04-26 13:17                         ` Robin Holt
2008-04-26 14:04                         ` Andrea Arcangeli
2008-04-26 14:04                           ` Andrea Arcangeli
2008-04-26 14:04                           ` Andrea Arcangeli
2008-04-27 12:27                         ` Andrea Arcangeli
2008-04-27 12:27                           ` Andrea Arcangeli
2008-04-27 12:27                           ` Andrea Arcangeli
2008-04-28 20:34                           ` Christoph Lameter
2008-04-28 20:34                             ` Christoph Lameter
2008-04-28 20:34                             ` [ofa-general] " Christoph Lameter
2008-04-29  0:10                             ` Andrea Arcangeli
2008-04-29  0:10                               ` Andrea Arcangeli
2008-04-29  0:10                               ` Andrea Arcangeli
2008-04-29  1:28                               ` Christoph Lameter
2008-04-29  1:28                                 ` Christoph Lameter
2008-04-29  1:28                                 ` Christoph Lameter
2008-04-29 15:30                                 ` Andrea Arcangeli
2008-04-29 15:30                                   ` Andrea Arcangeli
2008-04-29 15:30                                   ` [ofa-general] " Andrea Arcangeli
2008-04-29 15:50                                   ` Robin Holt
2008-04-29 15:50                                     ` Robin Holt
2008-04-29 15:50                                     ` [ofa-general] " Robin Holt
2008-04-29 16:03                                     ` Andrea Arcangeli
2008-04-29 16:03                                       ` Andrea Arcangeli
2008-04-29 16:03                                       ` [ofa-general] " Andrea Arcangeli
2008-05-07 15:00                                       ` Andrea Arcangeli
2008-05-07 15:00                                         ` Andrea Arcangeli
2008-05-07 15:00                                         ` [ofa-general] " Andrea Arcangeli
2008-04-29 10:49                               ` Hugh Dickins
2008-04-29 10:49                                 ` Hugh Dickins
2008-04-29 10:49                                 ` [ofa-general] " Hugh Dickins
2008-04-29 13:32                                 ` Andrea Arcangeli
2008-04-29 13:32                                   ` Andrea Arcangeli
2008-04-23 13:36         ` Andrea Arcangeli
2008-04-23 13:36           ` Andrea Arcangeli
2008-04-23 13:36           ` [ofa-general] " Andrea Arcangeli
2008-04-23 14:47           ` Robin Holt
2008-04-23 14:47             ` Robin Holt
2008-04-23 14:47             ` [ofa-general] " Robin Holt
2008-04-23 15:59             ` Andrea Arcangeli
2008-04-23 15:59               ` Andrea Arcangeli
2008-04-23 15:59               ` [ofa-general] " Andrea Arcangeli
2008-04-23 18:09               ` Christoph Lameter
2008-04-23 18:09                 ` Christoph Lameter
2008-04-23 18:09                 ` [ofa-general] " Christoph Lameter
2008-04-23 18:19                 ` Andrea Arcangeli
2008-04-23 18:19                   ` Andrea Arcangeli
2008-04-23 18:19                   ` [ofa-general] " Andrea Arcangeli
2008-04-23 18:27                   ` Christoph Lameter
2008-04-23 18:27                     ` Christoph Lameter
2008-04-23 18:27                     ` [ofa-general] " Christoph Lameter
2008-04-23 18:37                     ` Andrea Arcangeli
2008-04-23 18:37                       ` Andrea Arcangeli
2008-04-23 18:37                       ` [ofa-general] " Andrea Arcangeli
2008-04-23 18:46                       ` Christoph Lameter
2008-04-23 18:46                         ` Christoph Lameter
2008-04-23 18:46                         ` [ofa-general] " Christoph Lameter
2008-04-22 23:20       ` Christoph Lameter
2008-04-22 23:20         ` Christoph Lameter
2008-04-22 23:20         ` [ofa-general] " Christoph Lameter
2008-04-23 16:26         ` Andrea Arcangeli
2008-04-23 16:26           ` Andrea Arcangeli
2008-04-23 16:26           ` [ofa-general] " Andrea Arcangeli
2008-04-23 17:24           ` Andrea Arcangeli
2008-04-23 17:24             ` Andrea Arcangeli
2008-04-23 18:21             ` Christoph Lameter
2008-04-23 18:21               ` Christoph Lameter
2008-04-23 18:21               ` [ofa-general] " Christoph Lameter
2008-04-23 18:34               ` Andrea Arcangeli
2008-04-23 18:34                 ` Andrea Arcangeli
2008-04-23 18:15           ` Christoph Lameter
2008-04-23 18:15             ` Christoph Lameter
2008-04-23 18:15             ` [ofa-general] " Christoph Lameter
2008-04-23 17:09   ` Jack Steiner
2008-04-23 17:09     ` Jack Steiner
2008-04-23 17:09     ` [ofa-general] " Jack Steiner
2008-04-23 17:45     ` Andrea Arcangeli
2008-04-23 17:45       ` Andrea Arcangeli
2008-04-23 17:45       ` [ofa-general] " Andrea Arcangeli
2008-04-22 13:51 ` [PATCH 02 of 12] Fix ia64 compilation failure because of common code include bug Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 13:51   ` [ofa-general] " Andrea Arcangeli
2008-04-22 20:22   ` Christoph Lameter
2008-04-22 20:22     ` Christoph Lameter
2008-04-22 20:22     ` Christoph Lameter
2008-04-22 22:43     ` Andrea Arcangeli
2008-04-22 22:43       ` Andrea Arcangeli
2008-04-22 22:43       ` [ofa-general] " Andrea Arcangeli
2008-04-22 23:07       ` Robin Holt
2008-04-22 23:07         ` Robin Holt
2008-04-22 23:07         ` [ofa-general] " Robin Holt
2008-04-22 13:51 ` [PATCH 03 of 12] get_task_mm should not succeed if mmput() is running and has reduced Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 20:23   ` Christoph Lameter
2008-04-22 20:23     ` Christoph Lameter
2008-04-22 20:23     ` [ofa-general] " Christoph Lameter
2008-04-22 22:37     ` Andrea Arcangeli
2008-04-22 22:37       ` Andrea Arcangeli
2008-04-22 22:37       ` [ofa-general] " Andrea Arcangeli
2008-04-22 23:13       ` Christoph Lameter
2008-04-22 23:13         ` Christoph Lameter
2008-04-22 23:13         ` [ofa-general] " Christoph Lameter
2008-04-22 13:51 ` [PATCH 04 of 12] Moves all mmu notifier methods outside the PT lock (first and not last Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 20:24   ` Christoph Lameter
2008-04-22 20:24     ` Christoph Lameter
2008-04-22 20:24     ` Christoph Lameter
2008-04-22 22:40     ` Andrea Arcangeli
2008-04-22 22:40       ` Andrea Arcangeli
2008-04-22 22:40       ` [ofa-general] " Andrea Arcangeli
2008-04-22 23:14       ` Christoph Lameter
2008-04-22 23:14         ` Christoph Lameter
2008-04-22 23:14         ` Christoph Lameter
2008-04-23 13:44         ` Andrea Arcangeli
2008-04-23 13:44           ` Andrea Arcangeli
2008-04-23 13:44           ` [ofa-general] " Andrea Arcangeli
2008-04-23 15:45           ` Robin Holt
2008-04-23 15:45             ` Robin Holt
2008-04-23 15:45             ` [ofa-general] " Robin Holt
2008-04-23 16:15             ` Andrea Arcangeli
2008-04-23 16:15               ` Andrea Arcangeli
2008-04-23 16:15               ` [ofa-general] " Andrea Arcangeli
2008-04-23 19:55               ` Robin Holt
2008-04-23 19:55                 ` Robin Holt
2008-04-23 19:55                 ` [ofa-general] " Robin Holt
2008-04-23 21:05             ` Avi Kivity
2008-04-23 21:05               ` Avi Kivity
2008-04-23 21:05               ` [ofa-general] " Avi Kivity
2008-04-23 18:02           ` Christoph Lameter
2008-04-23 18:02             ` Christoph Lameter
2008-04-23 18:02             ` [ofa-general] " Christoph Lameter
2008-04-23 18:16             ` Andrea Arcangeli
2008-04-23 18:16               ` Andrea Arcangeli
2008-04-23 18:16               ` [ofa-general] " Andrea Arcangeli
2008-04-22 13:51 ` [PATCH 05 of 12] Move the tlb flushing into free_pgtables. The conversion of the locks Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 20:25   ` Christoph Lameter
2008-04-22 20:25     ` Christoph Lameter
2008-04-22 20:25     ` [ofa-general] " Christoph Lameter
2008-04-22 13:51 ` [PATCH 06 of 12] Move the tlb flushing inside of unmap vmas. This saves us from passing Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 13:51 ` [PATCH 07 of 12] Add a function to rw_semaphores to check if there are any processes Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 13:51 ` [PATCH 08 of 12] The conversion to a rwsem allows notifier callbacks during rmap traversal Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 13:51 ` [PATCH 09 of 12] Convert the anon_vma spinlock to a rw semaphore. This allows concurrent Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 13:51 ` [PATCH 10 of 12] Convert mm_lock to use semaphores after i_mmap_lock and anon_vma_lock Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 20:26   ` Christoph Lameter
2008-04-22 20:26     ` Christoph Lameter
2008-04-22 22:54     ` Andrea Arcangeli
2008-04-22 22:54       ` Andrea Arcangeli
2008-04-22 22:54       ` [ofa-general] " Andrea Arcangeli
2008-04-22 23:19       ` Christoph Lameter
2008-04-22 23:19         ` Christoph Lameter
2008-04-22 23:19         ` [ofa-general] " Christoph Lameter
2008-04-22 13:51 ` [PATCH 11 of 12] XPMEM would have used sys_madvise() except that madvise_dontneed() Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 13:51 ` [PATCH 12 of 12] This patch adds a lock ordering rule to avoid a potential deadlock when Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 13:51   ` Andrea Arcangeli
2008-04-22 18:22 ` [PATCH 00 of 12] mmu notifier #v13 Robin Holt
2008-04-22 18:22   ` Robin Holt
2008-04-22 18:22   ` Robin Holt
2008-04-22 18:43   ` Andrea Arcangeli
2008-04-22 18:43     ` Andrea Arcangeli
2008-04-22 19:42     ` Robin Holt
2008-04-22 19:42       ` Robin Holt
2008-04-22 19:42       ` [ofa-general] " Robin Holt
2008-04-22 20:30       ` Christoph Lameter
2008-04-22 20:30         ` Christoph Lameter
2008-04-22 20:30         ` [ofa-general] " Christoph Lameter
2008-04-23 13:33         ` Andrea Arcangeli
2008-04-23 13:33           ` Andrea Arcangeli
2008-04-23 13:33           ` [ofa-general] " Andrea Arcangeli
2008-04-22 20:28     ` Christoph Lameter
2008-04-22 20:28       ` Christoph Lameter
2008-04-22 20:28       ` [ofa-general] " Christoph Lameter
2008-04-23  0:31 ` Jack Steiner
2008-04-23  0:31   ` Jack Steiner
2008-04-23  0:31   ` [ofa-general] " Jack Steiner

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=20080422151529.GE24536@duo.random \
    --to=andrea@qumranet.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=akpm@linux-foundation.org \
    --cc=avi@qumranet.com \
    --cc=clameter@sgi.com \
    --cc=dada1@cosmosbay.com \
    --cc=general@lists.openfabrics.org \
    --cc=holt@sgi.com \
    --cc=hugh@veritas.com \
    --cc=kanojsarcar@yahoo.com \
    --cc=kvm-devel@lists.sourceforge.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=npiggin@suse.de \
    --cc=rdreier@cisco.com \
    --cc=rusty@rustcorp.com.au \
    --cc=steiner@sgi.com \
    --cc=swise@opengridcomputing.com \
    /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.