From: Tadhg Kearney <tadhg.kearney@intel.com>
To: dts@dpdk.org
Cc: reshma.pattan@intel.com, Tadhg Kearney <tadhg.kearney@intel.com>
Subject: [dts][V2] test_plans/*: modify power test plans to adapt meson build
Date: Wed, 2 Mar 2022 11:53:21 +0000 [thread overview]
Message-ID: <20220302115321.820795-1-tadhg.kearney@intel.com> (raw)
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=y, Size: 20596 bytes --]
Signed-off-by: Tadhg Kearney <tadhg.kearney@intel.com>
---
.../power_bidirection_channel_test_plan.rst | 16 ++++-----
test_plans/power_branch_ratio_test_plan.rst | 6 ++--
test_plans/power_empty_poll_test_plan.rst | 4 +--
test_plans/power_negative_test_plan.rst | 26 +++++++-------
test_plans/power_pbf_test_plan.rst | 8 ++---
test_plans/power_pstate_test_plan.rst | 2 +-
test_plans/power_telemetry_test_plan.rst | 2 +-
test_plans/vm_power_manager_test_plan.rst | 12 +++----
test_plans/vm_pw_mgmt_policy_test_plan.rst | 36 ++++++++++---------
9 files changed, 58 insertions(+), 54 deletions(-)
diff --git a/test_plans/power_bidirection_channel_test_plan.rst b/test_plans/power_bidirection_channel_test_plan.rst
index a6df6597..7dfa87b2 100644
--- a/test_plans/power_bidirection_channel_test_plan.rst
+++ b/test_plans/power_bidirection_channel_test_plan.rst
@@ -59,7 +59,7 @@ Step 1. Launch VM using libvirt::
Step 2. Launch VM power manager example on the host to monitor the channel from VM::
- ./examples/vm_power_manager/build/vm_power_mgr -c 0xfffe -n 4 --no-pci
+ ./<build_target>/examples/dpdk-vm_power_manager -c 0xfffe -n 4 --no-pci
vmpower> add_vm [vm name]
vmpower> add_channels [vm name] all
vmpower> set_channel_status [vm name] all enabled
@@ -71,9 +71,9 @@ Step 2. Launch VM power manager example on the host to monitor the channel from
vmpower> set_channel_status ubuntu all enabled
vmpower> show_vm ubuntu
-Step 3. In the VM, launch guest_vm_power_mgr to set and send the power manager policy to the host power example::
+Step 3. In the VM, launch dpdk-guest_cli to set and send the power manager policy to the host power example::
- ./examples/vm_power_manager/guest_cli/build/guest_vm_power_mgr -c 0xfe -n 4 -m 1024 --no-pci --file-prefix=vm_power -- --vm-name=ubuntu --vcpu-list=0-7
+ ./<build_target>/examples/dpdk-guest_cli/ -c 0xfe -n 4 -m 1024 --no-pci --file-prefix=vm_power -- --vm-name=ubuntu --vcpu-list=0-7
Send command to the core 7 on host APP:
vmpower(guest)> set_cpu_freq 7 down
@@ -100,14 +100,14 @@ Step 1. Launch VM using libvirt::
Step 2. Launch VM power manager example on the host to monitor the channel from VM::
- ./examples/vm_power_manager/build/vm_power_mgr -c 0xfffe -n 4 --no-pci
+ ./<build_target>/examples/dpdk-vm_power_manager -c 0xfffe -n 4 --no-pci
vmpower> add_vm [vm name]
vmpower> add_channels [vm name] all
vmpower> set_channel_status [vm name] all enabled
vmpower> show_vm [vm name]
vmpower> set_query <vm_name> <enable|disable>
-Step 3. Enable the query permission for target VM from host vm_power_mgr example::
+Step 3. Enable the query permission for target VM from host vm_power_manager example::
Command format: set_query <vm_name> <enable|disable>
if vm name is ubuntu,command as following:
@@ -115,7 +115,7 @@ Step 3. Enable the query permission for target VM from host vm_power_mgr example
Step 4. Query the CPU frequency for all CPU cores from VM side::
- ./examples/vm_power_manager/guest_cli/build/guest_vm_power_mgr -c 0xfe -n 4 -m 1024 --no-pci --file-prefix=vm_power -- --vm-name=ubuntu --vcpu-list=0-7
+ ./<build_target>/examples/dpdk-guest_cli -c 0xfe -n 4 -m 1024 --no-pci --file-prefix=vm_power -- --vm-name=ubuntu --vcpu-list=0-7
vmpower> query_cpu_freq <core_num> | all
Check vcpu 0~7 frequency info will be returned, for example:
@@ -130,7 +130,7 @@ Step 4. Query the CPU frequency for all CPU cores from VM side::
Step 5. Disable query permission from VM, check the host CPU frequency won't be returned::
- at host side, disable query permission by vm_power_mgr example:
+ at host side, disable query permission by vm_power_manager example:
vmpower> set_query ubuntu disable
at VM side, query CPU frequency again, this action should not be executed successfully, log as following:
@@ -164,7 +164,7 @@ Step 5: Query CPU capability for core out of scope, check no CPU info will be re
Step 6: Disable query permission from VM, check the host CPU capability won't be returned::
- at host side, disable query permission by vm_power_mgr example:
+ at host side, disable query permission by vm_power_manager example:
vmpower> set_query ubuntu disable
at VM side, query CPU capability again, this action should not be executed successfully, log as following:
diff --git a/test_plans/power_branch_ratio_test_plan.rst b/test_plans/power_branch_ratio_test_plan.rst
index daecc133..3b87f2f9 100644
--- a/test_plans/power_branch_ratio_test_plan.rst
+++ b/test_plans/power_branch_ratio_test_plan.rst
@@ -58,17 +58,17 @@ no_turbo_max=$(rdmsr -p 2 0x0CE -f 15:8 -d)00000
Test Case 1 : Set Branch-Ratio Test Rate by User ====================================================================================
1. Launch VM power manager sample on the host to run branch monitor.
-./x86_64-native-linuxapp-gcc/examples/dpdk-vm_power_manager -v -c 0xe -n 1 -m 1024 --no-pci -- --core-branch-ratio=1-3:0.3
+./<build_target>/examples/dpdk-vm_power_manager -v -c 0xe -n 1 -m 1024 --no-pci -- --core-branch-ratio=1-3:0.3
2. Launch testpmd with fwd io mode::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -v -c 0x6 -n 1 -m 1024 --file-prefix=vmpower2 -- -i
+ ./<build_target>/app/dpdk-testpmd -v -c 0x6 -n 1 -m 1024 --file-prefix=vmpower2 -- -i
> start
3. Inject packet with packet generator to the NIC, with line rate,
check the branch ratio and the related CPU frequency, in this case, the
core 2 will be used by testpmd as worker core, branch ratio will be shown as
-following in vm_power_mgr's log output::
+following in vm_power_manager's log output::
1: 0.0048 {250065} {20001}
0: 0.0307 {35782} {20000}
diff --git a/test_plans/power_empty_poll_test_plan.rst b/test_plans/power_empty_poll_test_plan.rst
index 44728308..f18a483a 100644
--- a/test_plans/power_empty_poll_test_plan.rst
+++ b/test_plans/power_empty_poll_test_plan.rst
@@ -124,7 +124,7 @@ Test Case1 : Basic Training mode test based on one NIC with l3fwd-power
=======================================================================
Step 1. Bind One NIC to DPDK driver, launch l3fwd-power with empty-poll enabled
- ./l3fwd-power -l 1-2 -n 4 -- -p 0x1 -P --config="(0,0,2)" --empty-poll="1,0,0" -l 10 -m 6 -h 1
+ ./<build_target>/examples/dpdk-l3fwd-power -l 1-2 -n 4 -- -p 0x1 -P --config="(0,0,2)" --empty-poll="1,0,0" -l 10 -m 6 -h 1
Step 2. Check the log also when changing the inject packet rate as following:
@@ -139,6 +139,6 @@ Test Case2: No-Training mode test based on one NIC with l3fwd-power
===================================================================
Step 1. Bind One NIC to DPDK driver, launch l3fwd-power with empty-poll enabled
- ./l3fwd-power -l 1-2 -n 4 -- -p 0x1 -P --config="(0,0,2)" --empty-poll="0,350000,500000" -l 10 -m 6 -h 1
+ ./<build_target>/examples/dpdk-l3fwd-power -l 1-2 -n 4 -- -p 0x1 -P --config="(0,0,2)" --empty-poll="0,350000,500000" -l 10 -m 6 -h 1
Step 2. Check no training steps are executed in sample's launch log.
diff --git a/test_plans/power_negative_test_plan.rst b/test_plans/power_negative_test_plan.rst
index bf2cfebf..081905ed 100644
--- a/test_plans/power_negative_test_plan.rst
+++ b/test_plans/power_negative_test_plan.rst
@@ -53,11 +53,11 @@ Step 1. Create powermonitor fold for vm_power_manager sample::
Step 2. Luanch VM power manager sample::
- ./x86_64-native-linuxapp-gcc/examples/dpdk-vm_power_manager -l 1-3 -n 4 --file-prefix=test1 --no-pci
+ ./<build_target>/examples/dpdk-vm_power_manager -l 1-3 -n 4 --file-prefix=test1 --no-pci
Step 3. Prepare policy in JSON format then send it to the fifo channel:
Prepare different command in JSON format then send it to the fifo channel
- Modify "name", "resource_id", "command" to large character string to check if the vm_power_mgr sample will crash
+ Modify "name", "resource_id", "command" to large character string to check if the vm_power_manager sample will crash
For example::
{"policy": {
@@ -71,7 +71,7 @@ Step 4. Send Json format command to the fifo channel::
cat command.json > /tmp/powermonitor/fifo22
-Check point: no crash at the vm_power_mgr application side.
+Check point: no crash at the vm_power_manager application side.
Potential issue: no warning for the user for the name too long, now is char[32], but no crash as strlcpy is uesed
@@ -84,7 +84,7 @@ Step 1. Create powermonitor fold for vm_power_manager sample::
Step 2. Luanch VM power manager sample::
- ./x86_64-native-linuxapp-gcc/examples/dpdk-vm_power_manager -l 1-3 -n 4 --file-prefix=test1 --no-pci
+ ./<build_target>/examples/dpdk-vm_power_manager -l 1-3 -n 4 --file-prefix=test1 --no-pci
Step 3. Prepare policy in JSON format then send it to the fifo channel:
@@ -118,22 +118,22 @@ Note: For the VM xml file which will be used for creating the VM, it can re-use
Step 2. Luanch VM power manager sample on the host to monitor the channel from VM::
- ./x86_64-native-linuxapp-gcc/examples/dpdk-vm_power_manager -l 12-14 -n 4 --no-pci
+ ./<build_taget>/examples/dpdk-vm_power_manager -l 12-14 -n 4 --no-pci
> add_vm [vm name]
> add_channels [vm name] all
> set_channel_status [vm name] all enabled
> show_vm [vm name]
- Check the invalid input command for vm_power_mgr sample::
+ Check the invalid input command for vm_power_manager sample::
> add_channels ubuntu 128
> add_channel ubuntu 10000000000000000
-Check point: No crash should be occur at vm_power_mgr sample
+Check point: No crash should be occur at vm_power_manager sample
-Step 3. In the VM, launch guest_vm_power_mgr to set and send the power manager policy to the host power sample::
+Step 3. In the VM, launch dpdk-guest_cli to set and send the power manager policy to the host power sample::
- ./x86_64-native-linuxapp-gcc/examples/dpdk-guest_cli -c 0xff -n 4 -m 1024 --no-pci --file-prefix=yaolei \
+ ./<build_target>/examples/dpdk-guest_cli -c 0xff -n 4 -m 1024 --no-pci --file-prefix=yaolei \
-- --vm-name=ubuntu --vcpu-list=0-7
> set_cpu_freq 128 down
> set_cpu_freq 1000000000000 down
@@ -146,14 +146,14 @@ Step 3. In the VM, launch guest_vm_power_mgr to set and send the power manager p
Test Case4: TRAFFIC Policy Test based on JSON configure file with large integer number
========================================================================================
-Step 1. Generate 1 VF under vfio-pci driver, launch vm_power_mgr sample with PF, for example::
+Step 1. Generate 1 VF under vfio-pci driver, launch vm_power_manager sample with PF, for example::
echo 1 > /sys/bus/pci/drivers/vfio-pci/0000\:82\:00.0/max_vfs
- ./x86_64-native-linuxapp-gcc/examples/dpdk-vm_power_manager -l 1-4 -n 4 --socket-mem=1024,1024 --file-prefix=test1 -a 82:00.0 -- -p 0x01
+ ./<build_target>/examples/dpdk-vm_power_manager -l 1-4 -n 4 --socket-mem=1024,1024 --file-prefix=test1 -a 82:00.0 -- -p 0x01
Step 2. Launch testpmd with VF::
- ./x86_64-native-linuxapp-gcc/app/dpdk-testpmd -l 5-6 -n 4 --socket-mem=1024,1024 --file-prefix=test2 -a 0000:82:02.0 -- -i
+ ./<build_target>/app/dpdk-testpmd -l 5-6 -n 4 --socket-mem=1024,1024 --file-prefix=test2 -a 0000:82:02.0 -- -i
> set fwd macswap
> start
@@ -172,4 +172,4 @@ Step 4. Send Json format command to the fifo channel::
cat traffic.json > /tmp/powermonitor/fifo6
-Check point: No crash should be occur at vm_power_mgr sample
+Check point: No crash should be occur at vm_power_manager sample
diff --git a/test_plans/power_pbf_test_plan.rst b/test_plans/power_pbf_test_plan.rst
index 6a38fc61..846c2d93 100644
--- a/test_plans/power_pbf_test_plan.rst
+++ b/test_plans/power_pbf_test_plan.rst
@@ -59,7 +59,7 @@ Step 1. Create powermonitor fold for::
Step 2. Compile DPDK with Power Lib debug info on, then Luanch VM power manager sample::
- ./examples/vm_power_manager/build/vm_power_mgr -l 1-46 -n 4 --file-prefix=power --no-pci
+ ./<build_target>/examples/dpdk-vm_power_manager -l 1-46 -n 4 --file-prefix=power --no-pci
Check two different base_max frequency will be shown in log, for example on Intel 6230N Processor:
The log will be like as following
@@ -87,7 +87,7 @@ Step 1. Create powermonitor fold for::
Step 2. Compile DPDK with Power Lib debug info on, then aunch VM power manager sample::
- ./examples/vm_power_manager/build/vm_power_mgr -l 1-46 -n 4 --file-prefix=power --no-pci
+ ./<build_target>/examples/dpdk-vm_power_manager -l 1-46 -n 4 --file-prefix=power --no-pci
Step 3. Prepare different command in JSON format::
@@ -102,7 +102,7 @@ Step 3. Prepare different command in JSON format::
Step 4: Send different command to power sample, then check the frequency::
Command Steps: ENABLE_TURBO-> SCALE_MAX-> SCALE_DOWN-> SCALE_MIN
- Send action JSON file to vm_power_mgr's fifo channel, each core will have it's own channel:
+ Send action JSON file to vm_power_manager's fifo channel, each core will have it's own channel:
cat command.json >/tmp/powermonitor/fifo{core_number}
Check the CPU frequency is changed accordingly in previous list by following method:
@@ -129,7 +129,7 @@ Step 1. Create powermonitor fold for::
Step 2. Compile DPDK with Power Lib debug info on, then launch VM power manager sample::
- ./examples/vm_power_manager/build/vm_power_mgr -l 1-46 -n 4 --file-prefix=power --no-pci
+ ./<build_target>/examples/dpdk-vm_power_manager -l 1-46 -n 4 --file-prefix=power --no-pci
Step 3. Prepare Several command in JSON format then send it to the fifo channel for the high priority core::
diff --git a/test_plans/power_pstate_test_plan.rst b/test_plans/power_pstate_test_plan.rst
index f2a5e199..ce79c71f 100644
--- a/test_plans/power_pstate_test_plan.rst
+++ b/test_plans/power_pstate_test_plan.rst
@@ -64,7 +64,7 @@ Step 1. Create powermonitor fold for::
Step 2. Luanch VM power manager sample::
- ./examples/vm_power_manager/build/vm_power_mgr -l 1-4 -n 4 --file-prefix=power --no-pci
+ ./<build_target>/examples/dpdk-vm_power_manager -l 1-4 -n 4 --file-prefix=power --no-pci
Step 3. Prepare different command in JSON format then send it to the fifo channel::
diff --git a/test_plans/power_telemetry_test_plan.rst b/test_plans/power_telemetry_test_plan.rst
index fd27f8a1..0afb0f77 100644
--- a/test_plans/power_telemetry_test_plan.rst
+++ b/test_plans/power_telemetry_test_plan.rst
@@ -63,7 +63,7 @@ Test Case 1 : Check all 3 type of power related info reported by Telemetry Syste
=================================================================================
1. Launch l3fwd-power sample with telemetry enabled, bind one NIC to DPDK driver, launch l3fwd-power::
- ./l3fwd-power -l 1-2 -n 4 --telemetry -- -p 0x1 -P --config="(0,0,2)" --telemetry
+ ./<build_target>/examples/dpdk-l3fwd-power -l 1-2 -n 4 --telemetry -- -p 0x1 -P --config="(0,0,2)" --telemetry
2. Get the telemetry info using dpdk-telemetry-client.py script, then choose mode 3 ``Send for global Metrics``::
diff --git a/test_plans/vm_power_manager_test_plan.rst b/test_plans/vm_power_manager_test_plan.rst
index cc78998b..bf6991bd 100644
--- a/test_plans/vm_power_manager_test_plan.rst
+++ b/test_plans/vm_power_manager_test_plan.rst
@@ -123,13 +123,13 @@ Test Case 1: VM Power Management Channel
3. Run power-manager in Host::
- x86_64-native-linuxapp-gcc/examples/dpdk-guest_cli -c 0x3 -n 4
+ ./<build_target>/examples/dpdk-guest_cli -c 0x3 -n 4
-4. Startup VM and run guest_vm_power_mgr::
+4. Startup VM and run dpdk-guest_cli::
- x86_64-native-linuxapp-gcc/examples/dpdk-guest_cli -c 0x1f -n 4 -- -i
+ ./<build_target>/examples/dpdk-guest_cli -c 0x1f -n 4 -- -i
-5. Add vm in host and check vm_power_mgr can get frequency normally::
+5. Add vm in host and check vm_power_manager can get frequency normally::
vmpower> add_vm <vm_name>
vmpower> add_channels <vm_name> all
@@ -153,9 +153,9 @@ Test Case 1: VM Power Management Channel
[3]: Physical CPU Mask 0x10
[4]: Physical CPU Mask 0x20
-7. Run vm_power_mgr in vm::
+7. Run vm_power_manager in vm::
- x86_64-native-linuxapp-gcc/examples/dpdk-guest_cli -c 0x1f -n 4
+ ./<build_target>/examples/dpdk-guest_cli -c 0x1f -n 4
Check monitor channel for all cores has been connected.
diff --git a/test_plans/vm_pw_mgmt_policy_test_plan.rst b/test_plans/vm_pw_mgmt_policy_test_plan.rst
index 98894ff5..4237583f 100644
--- a/test_plans/vm_pw_mgmt_policy_test_plan.rst
+++ b/test_plans/vm_pw_mgmt_policy_test_plan.rst
@@ -168,11 +168,13 @@ Set up testing environment
#. Compile and run power-manager in host, core number should >= 3, add vm in host.
- export RTE_SDK=`pwd`
- export RTE_TARGET=x86_64-native-linuxapp-gcc
- make -C examples/vm_power_manager
+ CC=gcc meson -Denable_kmods=True -Dlibdir=lib --default-library=static <build_target>
+ ninja -C <build_target>
- ./examples/vm_power_manager/build/vm_power_mgr -c 0xffff -n 4
+ meson configure -Dexamples=vm_power_manager <build_target>
+ ninja -C <build_target>
+
+ ./<build_target>/examples/dpdk-vm_power_manager -c 0xffff -n 4
vmpower> add_vm <vm_name>
vmpower> add_channels <vm_name> all
@@ -181,20 +183,22 @@ Set up testing environment
#. Run testpmd on vm0 when do traffic policy testing, other test cases ignore
this step.
- ./testpmd -c 0x3 -n 1 -v -m 1024 --file-prefix=vmpower1 -- -i --port-topology=loop
+ ./<build_target>/app/dpdk-testpmd -c 0x3 -n 1 -v -m 1024 --file-prefix=vmpower1 -- -i --port-topology=loop
testpmd> set fwd mac
testpmd> set promisc all on
testpmd> port start all
testpmd> start
-#. Compile and run guest_vm_power_mgr on VM.
+#. Compile and run dpdk-guest_cli on VM.
+
+ CC=gcc meson -Denable_kmods=True -Dlibdir=lib --default-library=static <build_target>
+ ninja -C <build_target>
- export RTE_SDK=`pwd`
- export RTE_TARGET=x86_64-native-linuxapp-gcc
- make -C examples/vm_power_manager/guest_cli
+ meson configure -Dexamples=vm_power_manager/guest_cli <build_target>
+ ninja -C <build_target>
- ./examples/vm_power_manager/guest_cli/build/guest_vm_power_mgr \
+ ./<build_target>/examples/dpdk-guest_cli \
-c 0xff -n 4 --file-prefix=vmpower2 -- -i --vm-name=<vm name> \
--policy=<policy name> --vcpu-list=<vcpus list> --busy-hours=<time stage>
@@ -227,7 +231,7 @@ check these content.
#. when dut clock is set to a desired busy hours, put core to max freq.
#. when dut clock is set to a desired quiet hours, put core to min freq.
-This case test multiple guest_vm_power_mgr options, they are composited
+This case test multiple dpdk-guest_cli options, they are composited
by these content as below::
#. --policy
@@ -252,7 +256,7 @@ steps:
#. set up testing environment refer to ``Set up testing environment`` steps.
-#. trigger policy on vm DUT from guest_vm_power_mgr console::
+#. trigger policy on vm DUT from dpdk-guest_cli console::
vmpower(guest)> send_policy now
@@ -269,7 +273,7 @@ vcpus frequency will run at med frequency.
#. use packet generator to send a stream with a pps rate less than 1800000,
vcpu frequency will run at min frequency.
-This case test multiple guest_vm_power_mgr options, they are composited
+This case test multiple dpdk-guest_cli options, they are composited
by these content as below::
#. --policy
@@ -288,7 +292,7 @@ steps:
#. set up testing environment refer to ``Set up testing environment`` steps.
-#. trigger policy on vm DUT from guest_vm_power_mgr console::
+#. trigger policy on vm DUT from dpdk-guest_cli console::
vmpower(guest)> send_policy now
@@ -306,7 +310,7 @@ steps:
#. set up testing environment refer to ``Set up testing environment`` steps.
-#. set cpu turbo disable on vm DUT from guest_vm_power_mgr console::
+#. set cpu turbo disable on vm DUT from dpdk-guest_cli console::
vmpower(guest)> set_cpu_freq <core_num> disable_turbo
@@ -324,7 +328,7 @@ steps:
#. set up testing environment refer to ``Set up testing environment`` steps.
-#. set cpu turbo enable on vm DUT from guest_vm_power_mgr console::
+#. set cpu turbo enable on vm DUT from dpdk-guest_cli console::
vmpower(guest)> set_cpu_freq <vm_core_num> enable_turbo
--
2.25.1
[-- Attachment #2.1: Type: text/plain, Size: 505 bytes --]
--------------------------------------------------------------
Intel Research and Development Ireland Limited
Registered in Ireland
Registered Office: Collinstown Industrial Park, Leixlip, County Kildare
Registered Number: 308263
This e-mail and any attachments may contain confidential material for the sole
use of the intended recipient(s). Any review or distribution by others is
strictly prohibited. If you are not the intended recipient, please contact the
sender and delete all copies.
[-- Attachment #2.2: Type: text/html, Size: 546 bytes --]
reply other threads:[~2022-03-02 11:53 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=20220302115321.820795-1-tadhg.kearney@intel.com \
--to=tadhg.kearney@intel.com \
--cc=dts@dpdk.org \
--cc=reshma.pattan@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).