From: James Morse <james.morse-5wv7dgnIgG8@public.gmane.org>
To: "Baicar, Tyler" <tbaicar-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>,
zjzhang-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org
Cc: christoffer.dall-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org,
marc.zyngier-5wv7dgnIgG8@public.gmane.org,
pbonzini-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
rkrcmar-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
linux-I+IVW8TIWO2tmTQ+vhA3Yw@public.gmane.org,
catalin.marinas-5wv7dgnIgG8@public.gmane.org,
will.deacon-5wv7dgnIgG8@public.gmane.org,
rjw-LthD3rsA81gm4RdzfppkhA@public.gmane.org,
lenb-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
matt-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org,
robert.moore-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org,
lv.zheng-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org,
nkaje-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org,
mark.rutland-5wv7dgnIgG8@public.gmane.org,
akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org,
eun.taik.lee-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org,
sandeepa.s.prabhu-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
labbott-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
shijie.huang-5wv7dgnIgG8@public.gmane.org,
rruigrok-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org,
paul.gortmaker-CWA4WttNNZF54TAoqtyWWQ@public.gmane.org,
tn-nYOzD4b6Jr9Wk0Htik3J/w@public.gmane.org,
fu.wei-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org,
rostedt-nx8X9YLhiw1AfugRpC6u6w@public.gmane.org,
bristot-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
kvmarm-FPEHb7Xf0XXUo1n7N8X6UoWGPAHP3yOg@public.gmane.org,
kvm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-acpi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
devel-E0kO6a4B6psdnm+yROfE0A@public.gmane.org,
Suzuki.Poulose-5wv7dgnIgG8@public.gmane.org, punit.agr
Subject: Re: [PATCH V8 06/10] acpi: apei: panic OS with fatal error status block
Date: Wed, 15 Feb 2017 12:13:09 +0000 [thread overview]
Message-ID: <58A445D5.7030501@arm.com> (raw)
In-Reply-To: <5b06372d-e389-5157-ccb4-a7b023990d4d-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
Hi Tyler,
On 13/02/17 22:45, Baicar, Tyler wrote:
> On 2/9/2017 3:48 AM, James Morse wrote:
>> On 01/02/17 17:16, Tyler Baicar wrote:
>>> From: "Jonathan (Zhixiong) Zhang" <zjzhang-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
>>>
>>> Even if an error status block's severity is fatal, the kernel does not
>>> honor the severity level and panic.
>>>
>>> With the firmware first model, the platform could inform the OS about a
>>> fatal hardware error through the non-NMI GHES notification type. The OS
>>> should panic when a hardware error record is received with this
>>> severity.
>>>
>>> Call panic() after CPER data in error status block is printed if
>>> severity is fatal, before each error section is handled.
>>> diff --git a/drivers/acpi/apei/ghes.c b/drivers/acpi/apei/ghes.c
>>> index 8756172..86c1f15 100644
>>> --- a/drivers/acpi/apei/ghes.c
>>> +++ b/drivers/acpi/apei/ghes.c
>>> @@ -687,6 +689,13 @@ static int ghes_ack_error(struct acpi_hest_generic_v2
>>> *generic_v2)
>>> return rc;
>>> }
>>> +static void __ghes_call_panic(void)
>>> +{
>>> + if (panic_timeout == 0)
>>> + panic_timeout = ghes_panic_timeout;
>>> + panic("Fatal hardware error!");
>>> +}
>>> +
>> __ghes_panic() also has:
>>> __ghes_print_estatus(KERN_EMERG, ghes->generic, ghes->estatus);
>> Which prints this estatus regardless of rate limiting and cache-ing.
[...]
>>> ghes_estatus_cache_add(ghes->generic, ghes->estatus);
>>> }
>>> + if (ghes_severity(ghes->estatus->error_severity) >= GHES_SEV_PANIC) {
>>> + __ghes_call_panic();
>>> + }
>> I think this ghes_severity() then panic() should go above the:
>>> if (!ghes_estatus_cached(ghes->estatus)) {
>> and we should call __ghes_print_estatus() here too, to make sure the message
>> definitely got out!
> Okay, that makes sense. If we move this up, is there a problem with calling
> __ghes_panic() instead of making the __ghes_print_estatus() and
> __ghes_call_panic() calls here? It looks like that will just add a call to
> oops_begin() and ghes_print_queued_estatus() as well, but this is what
> ghes_notify_nmi() does if the severity is panic.
I don't think the queued stuff is relevant, isn't that just for x86-NMI messages
that it doesn't print out directly?
A quick grep shows arm64 doesn't have oops_begin(), you may have to add some
equivalent mechanism. Lets try and avoid that rabbit hole!
Given __ghes_panic() calls __ghes_print_estatus() too, you could try moving that
into your new __ghes_call_panic().... or whatever results in the least lines
changed!
Thanks,
James
WARNING: multiple messages have this Message-ID (diff)
From: james.morse@arm.com (James Morse)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH V8 06/10] acpi: apei: panic OS with fatal error status block
Date: Wed, 15 Feb 2017 12:13:09 +0000 [thread overview]
Message-ID: <58A445D5.7030501@arm.com> (raw)
In-Reply-To: <5b06372d-e389-5157-ccb4-a7b023990d4d@codeaurora.org>
Hi Tyler,
On 13/02/17 22:45, Baicar, Tyler wrote:
> On 2/9/2017 3:48 AM, James Morse wrote:
>> On 01/02/17 17:16, Tyler Baicar wrote:
>>> From: "Jonathan (Zhixiong) Zhang" <zjzhang@codeaurora.org>
>>>
>>> Even if an error status block's severity is fatal, the kernel does not
>>> honor the severity level and panic.
>>>
>>> With the firmware first model, the platform could inform the OS about a
>>> fatal hardware error through the non-NMI GHES notification type. The OS
>>> should panic when a hardware error record is received with this
>>> severity.
>>>
>>> Call panic() after CPER data in error status block is printed if
>>> severity is fatal, before each error section is handled.
>>> diff --git a/drivers/acpi/apei/ghes.c b/drivers/acpi/apei/ghes.c
>>> index 8756172..86c1f15 100644
>>> --- a/drivers/acpi/apei/ghes.c
>>> +++ b/drivers/acpi/apei/ghes.c
>>> @@ -687,6 +689,13 @@ static int ghes_ack_error(struct acpi_hest_generic_v2
>>> *generic_v2)
>>> return rc;
>>> }
>>> +static void __ghes_call_panic(void)
>>> +{
>>> + if (panic_timeout == 0)
>>> + panic_timeout = ghes_panic_timeout;
>>> + panic("Fatal hardware error!");
>>> +}
>>> +
>> __ghes_panic() also has:
>>> __ghes_print_estatus(KERN_EMERG, ghes->generic, ghes->estatus);
>> Which prints this estatus regardless of rate limiting and cache-ing.
[...]
>>> ghes_estatus_cache_add(ghes->generic, ghes->estatus);
>>> }
>>> + if (ghes_severity(ghes->estatus->error_severity) >= GHES_SEV_PANIC) {
>>> + __ghes_call_panic();
>>> + }
>> I think this ghes_severity() then panic() should go above the:
>>> if (!ghes_estatus_cached(ghes->estatus)) {
>> and we should call __ghes_print_estatus() here too, to make sure the message
>> definitely got out!
> Okay, that makes sense. If we move this up, is there a problem with calling
> __ghes_panic() instead of making the __ghes_print_estatus() and
> __ghes_call_panic() calls here? It looks like that will just add a call to
> oops_begin() and ghes_print_queued_estatus() as well, but this is what
> ghes_notify_nmi() does if the severity is panic.
I don't think the queued stuff is relevant, isn't that just for x86-NMI messages
that it doesn't print out directly?
A quick grep shows arm64 doesn't have oops_begin(), you may have to add some
equivalent mechanism. Lets try and avoid that rabbit hole!
Given __ghes_panic() calls __ghes_print_estatus() too, you could try moving that
into your new __ghes_call_panic().... or whatever results in the least lines
changed!
Thanks,
James
WARNING: multiple messages have this Message-ID (diff)
From: James Morse <james.morse@arm.com>
To: "Baicar, Tyler" <tbaicar@codeaurora.org>, zjzhang@codeaurora.org
Cc: christoffer.dall@linaro.org, marc.zyngier@arm.com,
pbonzini@redhat.com, rkrcmar@redhat.com, linux@armlinux.org.uk,
catalin.marinas@arm.com, will.deacon@arm.com, rjw@rjwysocki.net,
lenb@kernel.org, matt@codeblueprint.co.uk,
robert.moore@intel.com, lv.zheng@intel.com, nkaje@codeaurora.org,
mark.rutland@arm.com, akpm@linux-foundation.org,
eun.taik.lee@samsung.com, sandeepa.s.prabhu@gmail.com,
labbott@redhat.com, shijie.huang@arm.com,
rruigrok@codeaurora.org, paul.gortmaker@windriver.com,
tn@semihalf.com, fu.wei@linaro.org, rostedt@goodmis.org,
bristot@redhat.com, linux-arm-kernel@lists.infradead.org,
kvmarm@lists.cs.columbia.edu, kvm@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org,
linux-efi@vger.kernel.org, devel@acpica.org,
Suzuki.Poulose@arm.com, punit.agrawal@arm.com, astone@redhat.com,
harba@codeaurora.org, hanjun.guo@linaro.org,
john.garry@huawei.com, shiju.jose@huawei.com
Subject: Re: [PATCH V8 06/10] acpi: apei: panic OS with fatal error status block
Date: Wed, 15 Feb 2017 12:13:09 +0000 [thread overview]
Message-ID: <58A445D5.7030501@arm.com> (raw)
In-Reply-To: <5b06372d-e389-5157-ccb4-a7b023990d4d@codeaurora.org>
Hi Tyler,
On 13/02/17 22:45, Baicar, Tyler wrote:
> On 2/9/2017 3:48 AM, James Morse wrote:
>> On 01/02/17 17:16, Tyler Baicar wrote:
>>> From: "Jonathan (Zhixiong) Zhang" <zjzhang@codeaurora.org>
>>>
>>> Even if an error status block's severity is fatal, the kernel does not
>>> honor the severity level and panic.
>>>
>>> With the firmware first model, the platform could inform the OS about a
>>> fatal hardware error through the non-NMI GHES notification type. The OS
>>> should panic when a hardware error record is received with this
>>> severity.
>>>
>>> Call panic() after CPER data in error status block is printed if
>>> severity is fatal, before each error section is handled.
>>> diff --git a/drivers/acpi/apei/ghes.c b/drivers/acpi/apei/ghes.c
>>> index 8756172..86c1f15 100644
>>> --- a/drivers/acpi/apei/ghes.c
>>> +++ b/drivers/acpi/apei/ghes.c
>>> @@ -687,6 +689,13 @@ static int ghes_ack_error(struct acpi_hest_generic_v2
>>> *generic_v2)
>>> return rc;
>>> }
>>> +static void __ghes_call_panic(void)
>>> +{
>>> + if (panic_timeout == 0)
>>> + panic_timeout = ghes_panic_timeout;
>>> + panic("Fatal hardware error!");
>>> +}
>>> +
>> __ghes_panic() also has:
>>> __ghes_print_estatus(KERN_EMERG, ghes->generic, ghes->estatus);
>> Which prints this estatus regardless of rate limiting and cache-ing.
[...]
>>> ghes_estatus_cache_add(ghes->generic, ghes->estatus);
>>> }
>>> + if (ghes_severity(ghes->estatus->error_severity) >= GHES_SEV_PANIC) {
>>> + __ghes_call_panic();
>>> + }
>> I think this ghes_severity() then panic() should go above the:
>>> if (!ghes_estatus_cached(ghes->estatus)) {
>> and we should call __ghes_print_estatus() here too, to make sure the message
>> definitely got out!
> Okay, that makes sense. If we move this up, is there a problem with calling
> __ghes_panic() instead of making the __ghes_print_estatus() and
> __ghes_call_panic() calls here? It looks like that will just add a call to
> oops_begin() and ghes_print_queued_estatus() as well, but this is what
> ghes_notify_nmi() does if the severity is panic.
I don't think the queued stuff is relevant, isn't that just for x86-NMI messages
that it doesn't print out directly?
A quick grep shows arm64 doesn't have oops_begin(), you may have to add some
equivalent mechanism. Lets try and avoid that rabbit hole!
Given __ghes_panic() calls __ghes_print_estatus() too, you could try moving that
into your new __ghes_call_panic().... or whatever results in the least lines
changed!
Thanks,
James
next prev parent reply other threads:[~2017-02-15 12:13 UTC|newest]
Thread overview: 97+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-01 17:16 [PATCH V8 00/10] Add UEFI 2.6 and ACPI 6.1 updates for RAS on ARM64 Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` [PATCH V8 01/10] acpi: apei: read ack upon ghes record consumption Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` [PATCH V8 02/10] ras: acpi/apei: cper: generic error data entry v3 per ACPI 6.1 Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` [PATCH V8 03/10] efi: parse ARM processor error Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` [PATCH V8 04/10] arm64: exception: handle Synchronous External Abort Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-03 15:59 ` James Morse
2017-02-03 15:59 ` James Morse
2017-02-03 15:59 ` James Morse
2017-02-03 20:24 ` Baicar, Tyler
2017-02-03 20:24 ` Baicar, Tyler
2017-02-03 20:24 ` Baicar, Tyler
2017-02-01 17:16 ` [PATCH V8 05/10] acpi: apei: handle SEA notification type for ARMv8 Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
[not found] ` <1485969413-23577-6-git-send-email-tbaicar-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2017-02-01 22:26 ` kbuild test robot
2017-02-01 22:26 ` kbuild test robot
2017-02-01 22:26 ` kbuild test robot
2017-02-01 22:26 ` kbuild test robot
2017-02-03 16:00 ` James Morse
2017-02-03 16:00 ` James Morse
2017-02-03 16:00 ` James Morse
2017-02-03 20:38 ` Baicar, Tyler
2017-02-03 20:38 ` Baicar, Tyler
2017-02-03 20:38 ` Baicar, Tyler
2017-02-15 6:24 ` Zhengqiang
2017-02-15 6:24 ` Zhengqiang
2017-02-15 6:24 ` Zhengqiang
2017-02-15 6:24 ` Zhengqiang
2017-02-15 14:58 ` Baicar, Tyler
2017-02-15 14:58 ` Baicar, Tyler
2017-02-15 14:58 ` Baicar, Tyler
2017-02-15 14:58 ` Baicar, Tyler
2017-02-01 17:16 ` [PATCH V8 06/10] acpi: apei: panic OS with fatal error status block Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-09 10:48 ` James Morse
2017-02-09 10:48 ` James Morse
2017-02-09 10:48 ` James Morse
[not found] ` <589C490A.9080109-5wv7dgnIgG8@public.gmane.org>
2017-02-13 22:45 ` Baicar, Tyler
2017-02-13 22:45 ` Baicar, Tyler
2017-02-13 22:45 ` Baicar, Tyler
[not found] ` <5b06372d-e389-5157-ccb4-a7b023990d4d-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2017-02-15 12:13 ` James Morse [this message]
2017-02-15 12:13 ` James Morse
2017-02-15 12:13 ` James Morse
[not found] ` <58A445D5.7030501-5wv7dgnIgG8@public.gmane.org>
2017-02-15 17:07 ` Baicar, Tyler
2017-02-15 17:07 ` Baicar, Tyler
2017-02-15 17:07 ` Baicar, Tyler
2017-02-01 17:16 ` [PATCH V8 07/10] efi: print unrecognized CPER section Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` [PATCH V8 08/10] ras: acpi / apei: generate trace event for " Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 23:20 ` kbuild test robot
2017-02-01 23:20 ` kbuild test robot
2017-02-01 23:20 ` kbuild test robot
2017-02-01 23:20 ` kbuild test robot
2017-02-15 15:52 ` Steven Rostedt
2017-02-15 15:52 ` Steven Rostedt
2017-02-15 15:52 ` Steven Rostedt
2017-02-15 16:54 ` Baicar, Tyler
2017-02-15 16:54 ` Baicar, Tyler
2017-02-15 16:54 ` Baicar, Tyler
2017-02-15 17:03 ` Steven Rostedt
2017-02-15 17:03 ` Steven Rostedt
2017-02-15 17:03 ` Steven Rostedt
2017-02-15 17:06 ` Baicar, Tyler
2017-02-15 17:06 ` Baicar, Tyler
2017-02-15 17:06 ` Baicar, Tyler
2017-02-01 17:16 ` [PATCH V8 09/10] trace, ras: add ARM processor error trace event Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-02 2:34 ` kbuild test robot
2017-02-02 2:34 ` kbuild test robot
2017-02-02 2:34 ` kbuild test robot
2017-02-02 2:34 ` kbuild test robot
2017-02-02 3:15 ` Steven Rostedt
2017-02-02 3:15 ` Steven Rostedt
2017-02-02 3:15 ` Steven Rostedt
2017-02-03 20:18 ` Baicar, Tyler
2017-02-03 20:18 ` Baicar, Tyler
2017-02-03 20:18 ` Baicar, Tyler
2017-02-01 17:16 ` [PATCH V8 10/10] arm/arm64: KVM: add guest SEA support Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
2017-02-01 17:16 ` Tyler Baicar
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=58A445D5.7030501@arm.com \
--to=james.morse-5wv7dgnigg8@public.gmane.org \
--cc=Suzuki.Poulose-5wv7dgnIgG8@public.gmane.org \
--cc=akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org \
--cc=bristot-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=catalin.marinas-5wv7dgnIgG8@public.gmane.org \
--cc=christoffer.dall-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=devel-E0kO6a4B6psdnm+yROfE0A@public.gmane.org \
--cc=eun.taik.lee-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org \
--cc=fu.wei-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=kvm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=kvmarm-FPEHb7Xf0XXUo1n7N8X6UoWGPAHP3yOg@public.gmane.org \
--cc=labbott-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=lenb-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=linux-I+IVW8TIWO2tmTQ+vhA3Yw@public.gmane.org \
--cc=linux-acpi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=lv.zheng-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=marc.zyngier-5wv7dgnIgG8@public.gmane.org \
--cc=mark.rutland-5wv7dgnIgG8@public.gmane.org \
--cc=matt-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org \
--cc=nkaje-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
--cc=paul.gortmaker-CWA4WttNNZF54TAoqtyWWQ@public.gmane.org \
--cc=pbonzini-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=rjw-LthD3rsA81gm4RdzfppkhA@public.gmane.org \
--cc=rkrcmar-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=robert.moore-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=rostedt-nx8X9YLhiw1AfugRpC6u6w@public.gmane.org \
--cc=rruigrok-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
--cc=sandeepa.s.prabhu-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=shijie.huang-5wv7dgnIgG8@public.gmane.org \
--cc=tbaicar-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
--cc=tn-nYOzD4b6Jr9Wk0Htik3J/w@public.gmane.org \
--cc=will.deacon-5wv7dgnIgG8@public.gmane.org \
--cc=zjzhang-sgV2jX0FEOL9JmXXK+q4OQ@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.