All of lore.kernel.org
 help / color / mirror / Atom feed
From: Linus Torvalds <torvalds@linux-foundation.org>
To: Dave Chinner <david@fromorbit.com>
Cc: Bob Peterson <rpeterso@redhat.com>,
	"Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>,
	"Huang, Ying" <ying.huang@intel.com>,
	Christoph Hellwig <hch@lst.de>,
	Wu Fengguang <fengguang.wu@intel.com>, LKP <lkp@01.org>,
	Tejun Heo <tj@kernel.org>, LKML <linux-kernel@vger.kernel.org>
Subject: Re: [LKP] [lkp] [xfs] 68a9f5e700: aim7.jobs-per-min -13.6% regression
Date: Mon, 15 Aug 2016 18:51:42 -0700	[thread overview]
Message-ID: <CA+55aFwmRPuhLLqN8D-3pcbkqoC05t=1dtnsv8k074uD7QNxBg@mail.gmail.com> (raw)
In-Reply-To: <20160816001942.GF16044@dastard>

On Mon, Aug 15, 2016 at 5:19 PM, Dave Chinner <david@fromorbit.com> wrote:
>
>> None of this code is all that new, which is annoying. This must have
>> gone on forever,
>
> Yes, it has been. Just worse than I've notice before, probably
> because of all the stuff put under the tree lock in the past couple
> of years.

So this is where a good profile can matter.

Particularly if it's all about kswapd, and all the contention is just
from __remove_mapping(), what should matter is the "all the stuff"
added *there* and absolutely nowhere else.

Sadly (well, not for me), in my profiles I have

 --3.37%--kswapd
   |
    --3.36%--shrink_node
      |
      |--2.88%--shrink_node_memcg
      |  |
      |   --2.87%--shrink_inactive_list
      |     |
      |     |--2.55%--shrink_page_list
      |     |  |
      |     |  |--0.84%--__remove_mapping
      |     |  |  |
      |     |  |  |--0.37%--__delete_from_page_cache
      |     |  |  |  |
      |     |  |  |   --0.21%--radix_tree_replace_clear_tags
      |     |  |  |     |
      |     |  |  |      --0.12%--__radix_tree_lookup
      |     |  |  |
      |     |  |   --0.23%--_raw_spin_lock_irqsave
      |     |  |     |
      |     |  |      --0.11%--queued_spin_lock_slowpath
      |     |  |
   ................


which is rather different from your 22% spin-lock overhead.

Anyway, including the direct reclaim call paths gets
__remove_mapping() a bit higher, and _raw_spin_lock_irqsave climbs to
0.26%. But perhaps more importlantly, looking at what __remove_mapping
actually *does* (apart from the spinlock) gives us:

 - inside remove_mapping itself (0.11% on its own - flat cost, no
child accounting)

    48.50 │       lock   cmpxchg %edx,0x1c(%rbx)

    so that's about 0.05%

 - 0.40% __delete_from_page_cache (0.22%
radix_tree_replace_clear_tags, 0.13%__radix_tree_lookup)

 - 0.06% workingset_eviction()

so I'm not actually seeing anything *new* expensive in there. The
__delete_from_page_cache() overhead may have changed a bit with the
tagged tree changes, but this doesn't look like memcg.

But we clearly have very different situations.

What does your profile show for when you actually dig into
__remove_mapping() itself?, Looking at your flat profile, I'm assuming
you get

   1.31%  [kernel]  [k] __radix_tree_lookup
   1.22%  [kernel]  [k] radix_tree_tag_set
   1.14%  [kernel]  [k] __remove_mapping

which is higher (but part of why my percentages are lower is that I
have that "50% CPU used for encryption" on my machine).

But I'm not seeing anything I'd attribute to "all the stuff added".
For example, originally I would have blamed memcg, but that's not
actually in this path at all.

I come back to wondering whether maybe you're hitting some PV-lock problem.

I know queued_spin_lock_slowpath() is ok. I'm not entirely sure
__pv_queued_spin_lock_slowpath() is.

So I'd love to see you try the non-PV case, but I also think it might
be interesting to see what the instruction profile for
__pv_queued_spin_lock_slowpath() itself is. They share a lot of code
(there's some interesting #include games going on to make
queued_spin_lock_slowpath() actually *be*
__pv_queued_spin_lock_slowpath() with some magic hooks), but there
might be issues.

For example, if you run a virtual 16-core system on a physical machine
that then doesn't consistently give 16 cores to the virtual machine,
you'll get no end of hiccups.

Because as mentioned, we've had bugs ("performance anomalies") there before.

               Linus

WARNING: multiple messages have this Message-ID (diff)
From: Linus Torvalds <torvalds@linux-foundation.org>
To: lkp@lists.01.org
Subject: Re: [xfs] 68a9f5e700: aim7.jobs-per-min -13.6% regression
Date: Mon, 15 Aug 2016 18:51:42 -0700	[thread overview]
Message-ID: <CA+55aFwmRPuhLLqN8D-3pcbkqoC05t=1dtnsv8k074uD7QNxBg@mail.gmail.com> (raw)
In-Reply-To: <20160816001942.GF16044@dastard>

[-- Attachment #1: Type: text/plain, Size: 3602 bytes --]

On Mon, Aug 15, 2016 at 5:19 PM, Dave Chinner <david@fromorbit.com> wrote:
>
>> None of this code is all that new, which is annoying. This must have
>> gone on forever,
>
> Yes, it has been. Just worse than I've notice before, probably
> because of all the stuff put under the tree lock in the past couple
> of years.

So this is where a good profile can matter.

Particularly if it's all about kswapd, and all the contention is just
from __remove_mapping(), what should matter is the "all the stuff"
added *there* and absolutely nowhere else.

Sadly (well, not for me), in my profiles I have

 --3.37%--kswapd
   |
    --3.36%--shrink_node
      |
      |--2.88%--shrink_node_memcg
      |  |
      |   --2.87%--shrink_inactive_list
      |     |
      |     |--2.55%--shrink_page_list
      |     |  |
      |     |  |--0.84%--__remove_mapping
      |     |  |  |
      |     |  |  |--0.37%--__delete_from_page_cache
      |     |  |  |  |
      |     |  |  |   --0.21%--radix_tree_replace_clear_tags
      |     |  |  |     |
      |     |  |  |      --0.12%--__radix_tree_lookup
      |     |  |  |
      |     |  |   --0.23%--_raw_spin_lock_irqsave
      |     |  |     |
      |     |  |      --0.11%--queued_spin_lock_slowpath
      |     |  |
   ................


which is rather different from your 22% spin-lock overhead.

Anyway, including the direct reclaim call paths gets
__remove_mapping() a bit higher, and _raw_spin_lock_irqsave climbs to
0.26%. But perhaps more importlantly, looking at what __remove_mapping
actually *does* (apart from the spinlock) gives us:

 - inside remove_mapping itself (0.11% on its own - flat cost, no
child accounting)

    48.50 │       lock   cmpxchg %edx,0x1c(%rbx)

    so that's about 0.05%

 - 0.40% __delete_from_page_cache (0.22%
radix_tree_replace_clear_tags, 0.13%__radix_tree_lookup)

 - 0.06% workingset_eviction()

so I'm not actually seeing anything *new* expensive in there. The
__delete_from_page_cache() overhead may have changed a bit with the
tagged tree changes, but this doesn't look like memcg.

But we clearly have very different situations.

What does your profile show for when you actually dig into
__remove_mapping() itself?, Looking at your flat profile, I'm assuming
you get

   1.31%  [kernel]  [k] __radix_tree_lookup
   1.22%  [kernel]  [k] radix_tree_tag_set
   1.14%  [kernel]  [k] __remove_mapping

which is higher (but part of why my percentages are lower is that I
have that "50% CPU used for encryption" on my machine).

But I'm not seeing anything I'd attribute to "all the stuff added".
For example, originally I would have blamed memcg, but that's not
actually in this path at all.

I come back to wondering whether maybe you're hitting some PV-lock problem.

I know queued_spin_lock_slowpath() is ok. I'm not entirely sure
__pv_queued_spin_lock_slowpath() is.

So I'd love to see you try the non-PV case, but I also think it might
be interesting to see what the instruction profile for
__pv_queued_spin_lock_slowpath() itself is. They share a lot of code
(there's some interesting #include games going on to make
queued_spin_lock_slowpath() actually *be*
__pv_queued_spin_lock_slowpath() with some magic hooks), but there
might be issues.

For example, if you run a virtual 16-core system on a physical machine
that then doesn't consistently give 16 cores to the virtual machine,
you'll get no end of hiccups.

Because as mentioned, we've had bugs ("performance anomalies") there before.

               Linus

  reply	other threads:[~2016-08-16  1:51 UTC|newest]

Thread overview: 219+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-09 14:33 [lkp] [xfs] 68a9f5e700: aim7.jobs-per-min -13.6% regression kernel test robot
2016-08-09 14:33 ` kernel test robot
2016-08-10 18:24 ` [lkp] " Linus Torvalds
2016-08-10 18:24   ` Linus Torvalds
2016-08-10 23:08   ` [lkp] " Dave Chinner
2016-08-10 23:08     ` Dave Chinner
2016-08-10 23:51     ` [lkp] " Linus Torvalds
2016-08-10 23:51       ` Linus Torvalds
2016-08-10 23:58       ` [LKP] [lkp] " Huang, Ying
2016-08-10 23:58         ` Huang, Ying
2016-08-11  0:11         ` [LKP] [lkp] " Huang, Ying
2016-08-11  0:11           ` Huang, Ying
2016-08-11  0:23           ` [LKP] [lkp] " Linus Torvalds
2016-08-11  0:23             ` Linus Torvalds
2016-08-11  0:33             ` [LKP] [lkp] " Huang, Ying
2016-08-11  0:33               ` Huang, Ying
2016-08-11  1:00               ` [LKP] [lkp] " Linus Torvalds
2016-08-11  1:00                 ` Linus Torvalds
2016-08-11  4:46                 ` [LKP] [lkp] " Dave Chinner
2016-08-11  4:46                   ` Dave Chinner
2016-08-15 17:22                   ` [LKP] [lkp] " Huang, Ying
2016-08-15 17:22                     ` Huang, Ying
2016-08-16  0:08                     ` [LKP] [lkp] " Dave Chinner
2016-08-16  0:08                       ` Dave Chinner
2016-08-11 15:57                 ` [LKP] [lkp] " Christoph Hellwig
2016-08-11 15:57                   ` Christoph Hellwig
2016-08-11 16:55                   ` [LKP] [lkp] " Linus Torvalds
2016-08-11 16:55                     ` Linus Torvalds
2016-08-11 17:51                     ` [LKP] [lkp] " Huang, Ying
2016-08-11 17:51                       ` Huang, Ying
2016-08-11 19:51                       ` [LKP] [lkp] " Linus Torvalds
2016-08-11 19:51                         ` Linus Torvalds
2016-08-11 20:00                         ` [LKP] [lkp] " Christoph Hellwig
2016-08-11 20:00                           ` Christoph Hellwig
2016-08-11 20:35                           ` [LKP] [lkp] " Linus Torvalds
2016-08-11 20:35                             ` Linus Torvalds
2016-08-11 22:16                             ` [LKP] [lkp] " Al Viro
2016-08-11 22:16                               ` Al Viro
2016-08-11 22:30                               ` [LKP] [lkp] " Linus Torvalds
2016-08-11 22:30                                 ` Linus Torvalds
2016-08-11 21:16                           ` [LKP] [lkp] " Huang, Ying
2016-08-11 21:16                             ` Huang, Ying
2016-08-11 21:40                             ` [LKP] [lkp] " Linus Torvalds
2016-08-11 21:40                               ` Linus Torvalds
2016-08-11 22:08                               ` [LKP] [lkp] " Christoph Hellwig
2016-08-11 22:08                                 ` Christoph Hellwig
2016-08-12  0:54                     ` [LKP] [lkp] " Dave Chinner
2016-08-12  0:54                       ` Dave Chinner
2016-08-12  2:23                       ` [LKP] [lkp] " Dave Chinner
2016-08-12  2:23                         ` Dave Chinner
2016-08-12  2:32                         ` [LKP] [lkp] " Linus Torvalds
2016-08-12  2:32                           ` Linus Torvalds
2016-08-12  2:52                         ` [LKP] [lkp] " Christoph Hellwig
2016-08-12  2:52                           ` Christoph Hellwig
2016-08-12  3:20                           ` [LKP] [lkp] " Linus Torvalds
2016-08-12  3:20                             ` Linus Torvalds
2016-08-12  4:16                             ` [LKP] [lkp] " Dave Chinner
2016-08-12  4:16                               ` Dave Chinner
2016-08-12  5:02                               ` [LKP] [lkp] " Linus Torvalds
2016-08-12  5:02                                 ` Linus Torvalds
2016-08-12  6:04                                 ` [LKP] [lkp] " Dave Chinner
2016-08-12  6:04                                   ` Dave Chinner
2016-08-12  6:29                                   ` [LKP] [lkp] " Ye Xiaolong
2016-08-12  6:29                                     ` Ye Xiaolong
2016-08-12  8:51                                     ` [LKP] [lkp] " Ye Xiaolong
2016-08-12  8:51                                       ` Ye Xiaolong
2016-08-12 10:02                                       ` [LKP] [lkp] " Dave Chinner
2016-08-12 10:02                                         ` Dave Chinner
2016-08-12 10:43                                         ` Fengguang Wu
2016-08-12 10:43                                           ` Fengguang Wu
2016-08-13  0:30                                         ` [LKP] [lkp] " Christoph Hellwig
2016-08-13  0:30                                           ` Christoph Hellwig
2016-08-13 21:48                                           ` [LKP] [lkp] " Christoph Hellwig
2016-08-13 21:48                                             ` Christoph Hellwig
2016-08-13 22:07                                             ` [LKP] [lkp] " Fengguang Wu
2016-08-13 22:07                                               ` Fengguang Wu
2016-08-13 22:15                                               ` [LKP] [lkp] " Christoph Hellwig
2016-08-13 22:15                                                 ` Christoph Hellwig
2016-08-13 22:51                                                 ` [LKP] [lkp] " Fengguang Wu
2016-08-13 22:51                                                   ` Fengguang Wu
2016-08-14 14:50                                                   ` [LKP] [lkp] " Fengguang Wu
2016-08-14 14:50                                                     ` Fengguang Wu
2016-08-14 16:17                                                     ` [LKP] [lkp] " Christoph Hellwig
2016-08-14 16:17                                                       ` Christoph Hellwig
2016-08-14 23:46                                                       ` [LKP] [lkp] " Dave Chinner
2016-08-14 23:46                                                         ` Dave Chinner
2016-08-14 23:57                                                       ` [LKP] [lkp] " Fengguang Wu
2016-08-14 23:57                                                         ` Fengguang Wu
2016-08-15 14:14                                                       ` [LKP] [lkp] " Fengguang Wu
2016-08-15 14:14                                                         ` Fengguang Wu
2016-08-15 21:22                                                         ` [LKP] [lkp] " Dave Chinner
2016-08-15 21:22                                                           ` Dave Chinner
2016-08-16 12:20                                                           ` [LKP] [lkp] " Fengguang Wu
2016-08-16 12:20                                                             ` Fengguang Wu
2016-08-15 20:30                                                       ` [LKP] [lkp] " Huang, Ying
2016-08-15 20:30                                                         ` Huang, Ying
2016-08-22 22:09                                                         ` [LKP] [lkp] " Huang, Ying
2016-08-22 22:09                                                           ` Huang, Ying
2016-09-26  6:25                                                           ` [LKP] [lkp] " Huang, Ying
2016-09-26  6:25                                                             ` Huang, Ying
2016-09-26 14:55                                                             ` [LKP] [lkp] " Christoph Hellwig
2016-09-26 14:55                                                               ` Christoph Hellwig
2016-09-27  0:52                                                               ` [LKP] [lkp] " Huang, Ying
2016-09-27  0:52                                                                 ` Huang, Ying
2016-08-16 13:25                                                       ` [LKP] [lkp] " Fengguang Wu
2016-08-16 13:25                                                         ` Fengguang Wu
2016-08-13 23:32                                           ` [LKP] [lkp] " Dave Chinner
2016-08-13 23:32                                             ` Dave Chinner
2016-08-12  2:27                       ` [LKP] [lkp] " Linus Torvalds
2016-08-12  2:27                         ` Linus Torvalds
2016-08-12  3:56                         ` [LKP] [lkp] " Dave Chinner
2016-08-12  3:56                           ` Dave Chinner
2016-08-12 18:03                           ` [LKP] [lkp] " Linus Torvalds
2016-08-12 18:03                             ` Linus Torvalds
2016-08-13 23:58                             ` [LKP] [lkp] " Fengguang Wu
2016-08-13 23:58                               ` Fengguang Wu
2016-08-15  0:48                             ` [LKP] [lkp] " Dave Chinner
2016-08-15  0:48                               ` Dave Chinner
2016-08-15  1:37                               ` [LKP] [lkp] " Linus Torvalds
2016-08-15  1:37                                 ` Linus Torvalds
2016-08-15  2:28                                 ` [LKP] [lkp] " Dave Chinner
2016-08-15  2:28                                   ` Dave Chinner
2016-08-15  2:53                                   ` [LKP] [lkp] " Linus Torvalds
2016-08-15  2:53                                     ` Linus Torvalds
2016-08-15  5:00                                     ` [LKP] [lkp] " Dave Chinner
2016-08-15  5:00                                       ` Dave Chinner
     [not found]                                       ` <CA+55aFwva2Xffai+Eqv1Jn_NGryk3YJ2i5JoHOQnbQv6qVPAsw@mail.gmail.com>
     [not found]                                         ` <CA+55aFy14nUnJQ_GdF=j8Fa9xiH70c6fY2G3q5HQ01+8z1z3qQ@mail.gmail.com>
2016-08-15  5:12                                           ` Linus Torvalds
2016-08-15 22:22                                             ` [LKP] [lkp] " Dave Chinner
2016-08-15 22:22                                               ` Dave Chinner
2016-08-15 22:42                                               ` [LKP] [lkp] " Dave Chinner
2016-08-15 22:42                                                 ` Dave Chinner
2016-08-15 23:20                                                 ` [LKP] [lkp] " Linus Torvalds
2016-08-15 23:20                                                   ` Linus Torvalds
2016-08-15 23:48                                                   ` [LKP] [lkp] " Linus Torvalds
2016-08-15 23:48                                                     ` Linus Torvalds
2016-08-16  0:44                                                     ` [LKP] [lkp] " Dave Chinner
2016-08-16  0:44                                                       ` Dave Chinner
2016-08-16 15:05                                                     ` [LKP] [lkp] " Mel Gorman
2016-08-16 15:05                                                       ` Mel Gorman
2016-08-16 17:47                                                       ` [LKP] [lkp] " Linus Torvalds
2016-08-16 17:47                                                         ` Linus Torvalds
2016-08-17 15:48                                                         ` [LKP] [lkp] " Michal Hocko
2016-08-17 15:48                                                           ` Michal Hocko
2016-08-17 16:42                                                           ` [LKP] [lkp] " Michal Hocko
2016-08-17 16:42                                                             ` Michal Hocko
2016-08-17 15:49                                                         ` [LKP] [lkp] " Mel Gorman
2016-08-17 15:49                                                           ` Mel Gorman
2016-08-18  0:45                                                           ` [LKP] [lkp] " Mel Gorman
2016-08-18  0:45                                                             ` Mel Gorman
2016-08-18  7:11                                                             ` [LKP] [lkp] " Dave Chinner
2016-08-18  7:11                                                               ` Dave Chinner
2016-08-18 13:24                                                               ` [LKP] [lkp] " Mel Gorman
2016-08-18 13:24                                                                 ` Mel Gorman
2016-08-18 17:55                                                                 ` [LKP] [lkp] " Linus Torvalds
2016-08-18 17:55                                                                   ` Linus Torvalds
2016-08-18 21:19                                                                   ` [LKP] [lkp] " Dave Chinner
2016-08-18 21:19                                                                     ` Dave Chinner
2016-08-18 22:25                                                                     ` [LKP] [lkp] " Linus Torvalds
2016-08-18 22:25                                                                       ` Linus Torvalds
2016-08-19  9:00                                                                       ` [LKP] [lkp] " Michal Hocko
2016-08-19  9:00                                                                         ` Michal Hocko
2016-08-19 10:49                                                                       ` [LKP] [lkp] " Mel Gorman
2016-08-19 10:49                                                                         ` Mel Gorman
2016-08-19 23:48                                                                         ` [LKP] [lkp] " Dave Chinner
2016-08-19 23:48                                                                           ` Dave Chinner
2016-08-20  1:08                                                                           ` [LKP] [lkp] " Linus Torvalds
2016-08-20  1:08                                                                             ` Linus Torvalds
2016-08-20 12:16                                                                           ` [LKP] [lkp] " Mel Gorman
2016-08-20 12:16                                                                             ` Mel Gorman
2016-08-19 15:08                                                               ` [LKP] [lkp] " Mel Gorman
2016-08-19 15:08                                                                 ` Mel Gorman
2016-09-01 23:32                                                                 ` [LKP] [lkp] " Dave Chinner
2016-09-01 23:32                                                                   ` Dave Chinner
2016-09-06 15:37                                                                   ` [LKP] [lkp] " Mel Gorman
2016-09-06 15:37                                                                     ` Mel Gorman
2016-09-06 15:52                                                                     ` [LKP] [lkp] " Huang, Ying
2016-09-06 15:52                                                                       ` Huang, Ying
2016-08-24 15:40                                                             ` [LKP] [lkp] " Huang, Ying
2016-08-24 15:40                                                               ` Huang, Ying
2016-08-25  9:37                                                               ` [LKP] [lkp] " Mel Gorman
2016-08-25  9:37                                                                 ` Mel Gorman
2016-08-18  2:44                                                           ` [LKP] [lkp] " Dave Chinner
2016-08-18  2:44                                                             ` Dave Chinner
2016-08-16  0:15                                                   ` [LKP] [lkp] " Linus Torvalds
2016-08-16  0:15                                                     ` Linus Torvalds
2016-08-16  0:38                                                     ` [LKP] [lkp] " Dave Chinner
2016-08-16  0:38                                                       ` Dave Chinner
2016-08-16  0:50                                                       ` [LKP] [lkp] " Linus Torvalds
2016-08-16  0:50                                                         ` Linus Torvalds
2016-08-16  0:19                                                   ` [LKP] [lkp] " Dave Chinner
2016-08-16  0:19                                                     ` Dave Chinner
2016-08-16  1:51                                                     ` Linus Torvalds [this message]
2016-08-16  1:51                                                       ` Linus Torvalds
2016-08-16 22:02                                                       ` [LKP] [lkp] " Dave Chinner
2016-08-16 22:02                                                         ` Dave Chinner
2016-08-16 23:23                                                         ` [LKP] [lkp] " Linus Torvalds
2016-08-16 23:23                                                           ` Linus Torvalds
2016-08-15 23:01                                               ` [LKP] [lkp] " Linus Torvalds
2016-08-15 23:01                                                 ` Linus Torvalds
2016-08-16  0:17                                                 ` [LKP] [lkp] " Dave Chinner
2016-08-16  0:17                                                   ` Dave Chinner
2016-08-16  0:45                                                   ` [LKP] [lkp] " Linus Torvalds
2016-08-16  0:45                                                     ` Linus Torvalds
2016-08-15  5:03                                     ` [LKP] [lkp] " Ingo Molnar
2016-08-15  5:03                                       ` Ingo Molnar
2016-08-17 16:24                                       ` [LKP] [lkp] " Peter Zijlstra
2016-08-17 16:24                                         ` Peter Zijlstra
2016-08-15 12:58                             ` [LKP] [lkp] " Fengguang Wu
2016-08-15 12:58                               ` Fengguang Wu
2016-08-11  1:16               ` [LKP] [lkp] " Dave Chinner
2016-08-11  1:16                 ` Dave Chinner
2016-08-11  1:32                 ` [LKP] [lkp] " Dave Chinner
2016-08-11  1:32                   ` Dave Chinner
2016-08-11  2:36                   ` [LKP] [lkp] " Ye Xiaolong
2016-08-11  2:36                     ` Ye Xiaolong
2016-08-11  3:05                     ` [LKP] [lkp] " Dave Chinner
2016-08-11  3:05                       ` Dave Chinner
2016-08-12  1:26                 ` [LKP] [lkp] " Dave Chinner
2016-08-12  1:26                   ` Dave Chinner

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='CA+55aFwmRPuhLLqN8D-3pcbkqoC05t=1dtnsv8k074uD7QNxBg@mail.gmail.com' \
    --to=torvalds@linux-foundation.org \
    --cc=david@fromorbit.com \
    --cc=fengguang.wu@intel.com \
    --cc=hch@lst.de \
    --cc=kirill.shutemov@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lkp@01.org \
    --cc=rpeterso@redhat.com \
    --cc=tj@kernel.org \
    --cc=ying.huang@intel.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.