All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Mike Christie <mchristi@redhat.com>,
	Josef Bacik <josef@toxicpanda.com>, Jens Axboe <axboe@kernel.dk>,
	Sasha Levin <sashal@kernel.org>,
	linux-block@vger.kernel.org, nbd@other.debian.org
Subject: [PATCH AUTOSEL 4.19 067/128] nbd: add missing config put
Date: Sun, 22 Sep 2019 14:53:17 -0400	[thread overview]
Message-ID: <20190922185418.2158-67-sashal@kernel.org> (raw)
In-Reply-To: <20190922185418.2158-1-sashal@kernel.org>

From: Mike Christie <mchristi@redhat.com>

[ Upstream commit 887e975c4172d0d5670c39ead2f18ba1e4ec8133 ]

Fix bug added with the patch:

commit 8f3ea35929a0806ad1397db99a89ffee0140822a
Author: Josef Bacik <josef@toxicpanda.com>
Date:   Mon Jul 16 12:11:35 2018 -0400

    nbd: handle unexpected replies better

where if the timeout handler runs when the completion path is and we fail
to grab the mutex in the timeout handler we will leave a config reference
and cannot free the config later.

Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Signed-off-by: Mike Christie <mchristi@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/block/nbd.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c
index fa60f265ee506..b1c7009de1f4d 100644
--- a/drivers/block/nbd.c
+++ b/drivers/block/nbd.c
@@ -353,8 +353,10 @@ static enum blk_eh_timer_return nbd_xmit_timeout(struct request *req,
 	}
 	config = nbd->config;
 
-	if (!mutex_trylock(&cmd->lock))
+	if (!mutex_trylock(&cmd->lock)) {
+		nbd_config_put(nbd);
 		return BLK_EH_RESET_TIMER;
+	}
 
 	if (config->num_connections > 1) {
 		dev_err_ratelimited(nbd_to_dev(nbd),
-- 
2.20.1


  parent reply	other threads:[~2019-09-22 19:17 UTC|newest]

Thread overview: 144+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-22 18:52 [PATCH AUTOSEL 4.19 001/128] ALSA: hda: Flush interrupts on disabling Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 002/128] regulator: lm363x: Fix off-by-one n_voltages for lm3632 ldo_vpos/ldo_vneg Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 003/128] ASoC: tlv320aic31xx: suppress error message for EPROBE_DEFER Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 004/128] ASoC: sgtl5000: Fix of unmute outputs on probe Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 005/128] ASoC: sgtl5000: Fix charge pump source assignment Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 006/128] firmware: qcom_scm: Use proper types for dma mappings Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 007/128] dmaengine: bcm2835: Print error in case setting DMA mask fails Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 008/128] leds: leds-lp5562 allow firmware files up to the maximum length Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 009/128] media: dib0700: fix link error for dibx000_i2c_set_speed Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 010/128] media: mtk-cir: lower de-glitch counter for rc-mm protocol Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 011/128] media: exynos4-is: fix leaked of_node references Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 012/128] media: hdpvr: Add device num check and handling Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 013/128] media: i2c: ov5640: Check for devm_gpiod_get_optional() error Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 014/128] time/tick-broadcast: Fix tick_broadcast_offline() lockdep complaint Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 015/128] sched/fair: Fix imbalance due to CPU affinity Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 016/128] sched/core: Fix CPU controller for !RT_GROUP_SCHED Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 017/128] x86/apic: Make apic_pending_intr_clear() more robust Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 018/128] sched/deadline: Fix bandwidth accounting at all levels after offline migration Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 019/128] x86/reboot: Always use NMI fallback when shutdown via reboot vector IPI fails Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 020/128] x86/apic: Soft disable APIC before initializing it Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 021/128] ALSA: hda - Show the fatal CORB/RIRB error more clearly Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 022/128] ALSA: i2c: ak4xxx-adda: Fix a possible null pointer dereference in build_adc_controls() Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 023/128] EDAC/mc: Fix grain_bits calculation Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 024/128] media: iguanair: add sanity checks Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 025/128] base: soc: Export soc_device_register/unregister APIs Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 026/128] ALSA: usb-audio: Skip bSynchAddress endpoint check if it is invalid Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 027/128] ia64:unwind: fix double free for mod->arch.init_unw_table Sasha Levin
2019-09-22 18:52   ` Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 028/128] EDAC/altera: Use the proper type for the IRQ status bits Sasha Levin
2019-09-22 18:52   ` Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 029/128] ASoC: rsnd: don't call clk_get_rate() under atomic context Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 030/128] arm64/prefetch: fix a -Wtype-limits warning Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 031/128] md/raid1: end bio when the device faulty Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 032/128] md: don't call spare_active in md_reap_sync_thread if all member devices can't work Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 033/128] md: don't set In_sync if array is frozen Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 034/128] media: media/platform: fsl-viu.c: fix build for MICROBLAZE Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 035/128] RAS: Fix prototype warnings Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 036/128] ACPI / processor: don't print errors for processorIDs == 0xff Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 037/128] loop: Add LOOP_SET_DIRECT_IO to compat ioctl Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 038/128] EDAC, pnd2: Fix ioremap() size in dnv_rd_reg() Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 039/128] efi: cper: print AER info of PCIe fatal error Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 040/128] firmware: arm_scmi: Check if platform has released shmem before using Sasha Levin
2019-09-22 18:52   ` Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 041/128] sched/fair: Use rq_lock/unlock in online_fair_sched_group Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 042/128] idle: Prevent late-arriving interrupts from disrupting offline Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 043/128] media: gspca: zero usb_buf on error Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 044/128] perf config: Honour $PERF_CONFIG env var to specify alternate .perfconfig Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 045/128] perf test vfs_getname: Disable ~/.perfconfig to get default output Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 046/128] media: mtk-mdp: fix reference count on old device tree Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 047/128] media: fdp1: Reduce FCP not found message level to debug Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 048/128] media: em28xx: modules workqueue not inited for 2nd device Sasha Levin
2019-09-22 18:52 ` [PATCH AUTOSEL 4.19 049/128] media: rc: imon: Allow iMON RC protocol for ffdc 7e device Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 050/128] dmaengine: iop-adma: use correct printk format strings Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 051/128] perf ftrace: Use CAP_SYS_ADMIN instead of euid==0 Sasha Levin
2019-09-22 18:53   ` Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 052/128] perf record: Support aarch64 random socket_id assignment Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 053/128] media: vsp1: fix memory leak of dl on error return path Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 054/128] media: i2c: ov5645: Fix power sequence Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 055/128] media: omap3isp: Don't set streaming state on random subdevs Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 056/128] media: imx: mipi csi-2: Don't fail if initial state times-out Sasha Levin
2019-09-22 18:53   ` Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 057/128] net: lpc-enet: fix printk format strings Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 058/128] m68k: Prevent some compiler warnings in Coldfire builds Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 059/128] ARM: dts: imx7d: cl-som-imx7: make ethernet work again Sasha Levin
2019-09-22 18:53   ` Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 060/128] ARM: dts: imx7-colibri: disable HS400 Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 061/128] media: radio/si470x: kill urb on error Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 062/128] media: hdpvr: add terminating 0 at end of string Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 063/128] ASoC: uniphier: Fix double reset assersion when transitioning to suspend state Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 064/128] tools headers: Fixup bitsperlong per arch includes Sasha Levin
2019-09-22 18:53   ` Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 065/128] ASoC: sun4i-i2s: Don't use the oversample to calculate BCLK Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 066/128] led: triggers: Fix a memory leak bug Sasha Levin
2019-09-22 18:53 ` Sasha Levin [this message]
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 068/128] media: mceusb: fix (eliminate) TX IR signal length limit Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 069/128] media: dvb-frontends: use ida for pll number Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 070/128] posix-cpu-timers: Sanitize bogus WARNONS Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 071/128] media: dvb-core: fix a memory leak bug Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 072/128] libperf: Fix alignment trap with xyarray contents in 'perf stat' Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 073/128] EDAC/amd64: Recognize DRAM device type ECC capability Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 074/128] EDAC/amd64: Decode syndrome before translating address Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 075/128] PM / devfreq: passive: Use non-devm notifiers Sasha Levin
2019-09-23 20:38   ` Leonard Crestez
2019-10-01 16:12     ` Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 076/128] PM / devfreq: exynos-bus: Correct clock enable sequence Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 077/128] media: cec-notifier: clear cec_adap in cec_notifier_unregister Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 078/128] media: saa7146: add cleanup in hexium_attach() Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 079/128] media: cpia2_usb: fix memory leaks Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 080/128] media: saa7134: fix terminology around saa7134_i2c_eeprom_md7134_gate() Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 081/128] perf trace beauty ioctl: Fix off-by-one error in cmd->string table Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 082/128] media: ov9650: add a sanity check Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 083/128] ASoC: es8316: fix headphone mixer volume table Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 084/128] ACPI / CPPC: do not require the _PSD method Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 085/128] sched/cpufreq: Align trace event behavior of fast switching Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 086/128] x86/apic/vector: Warn when vector space exhaustion breaks affinity Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 087/128] arm64: kpti: ensure patched kernel text is fetched from PoU Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 088/128] x86/mm/pti: Do not invoke PTI functions when PTI is disabled Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 089/128] ASoC: fsl_ssi: Fix clock control issue in master mode Sasha Levin
2019-09-22 18:53   ` Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 090/128] x86/mm/pti: Handle unaligned address gracefully in pti_clone_pagetable() Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 091/128] nvmet: fix data units read and written counters in SMART log Sasha Levin
2019-09-22 18:53   ` Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 092/128] nvme-multipath: fix ana log nsid lookup when nsid is not found Sasha Levin
2019-09-22 18:53   ` Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 093/128] ALSA: firewire-motu: add support for MOTU 4pre Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 094/128] arm64: lse: Make ARM64_LSE_ATOMICS depend on JUMP_LABEL Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 095/128] iommu/amd: Silence warnings under memory pressure Sasha Levin
2019-09-22 18:53   ` Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 096/128] libata/ahci: Drop PCS quirk for Denverton and beyond Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 097/128] iommu/iova: Avoid false sharing on fq_timer_on Sasha Levin
2019-09-22 18:53   ` Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 098/128] libtraceevent: Change users plugin directory Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 099/128] ARM: dts: exynos: Mark LDO10 as always-on on Peach Pit/Pi Chromebooks Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 100/128] ACPI: custom_method: fix memory leaks Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 101/128] ACPI / PCI: fix acpi_pci_irq_enable() memory leak Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 102/128] closures: fix a race on wakeup from closure_sync Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 103/128] hwmon: (acpi_power_meter) Change log level for 'unsafe software power cap' Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 104/128] md/raid1: fail run raid1 array when active disk less than one Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 105/128] dmaengine: ti: edma: Do not reset reserved paRAM slots Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 106/128] kprobes: Prohibit probing on BUG() and WARN() address Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 107/128] s390/crypto: xts-aes-s390 fix extra run-time crypto self tests finding Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 108/128] irqchip/gic-v3-its: Fix LPI release for Multi-MSI devices Sasha Levin
2019-09-22 18:53 ` [PATCH AUTOSEL 4.19 109/128] x86/platform/uv: Fix kmalloc() NULL check routine Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 110/128] x86/cpu: Add Tiger Lake to Intel family Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 111/128] platform/x86: intel_pmc_core: Do not ioremap RAM Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 112/128] ASoC: es8316: support fixed and variable both clock rates Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 113/128] ASoC: dmaengine: Make the pcm->name equal to pcm->id if the name is not set Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 114/128] raid5: don't set STRIPE_HANDLE to stripe which is in batch list Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 115/128] mmc: core: Clarify sdio_irq_pending flag for MMC_CAP2_SDIO_IRQ_NOTHREAD Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 116/128] mmc: sdhci: Fix incorrect switch to HS mode Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 117/128] mmc: core: Add helper function to indicate if SDIO IRQs is enabled Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 118/128] mmc: dw_mmc: Re-store SDIO IRQs mask at system resume Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 119/128] raid5: don't increment read_errors on EILSEQ return Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 120/128] media: technisat-usb2: break out of loop at end of buffer Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 121/128] libertas: Add missing sentinel at end of if_usb.c fw_table Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 122/128] e1000e: add workaround for possible stalled packet Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 123/128] ALSA: hda - Drop unsol event handler for Intel HDMI codecs Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 124/128] drm/amd/powerplay/smu7: enforce minimal VBITimeout (v2) Sasha Levin
2019-09-22 18:54   ` Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 125/128] media: ttusb-dec: Fix info-leak in ttusb_dec_send_command() Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 126/128] ALSA: hda/realtek - Blacklist PC beep for Lenovo ThinkCentre M73/93 Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 127/128] iommu/amd: Override wrong IVRS IOAPIC on Raven Ridge systems Sasha Levin
2019-09-22 18:54   ` Sasha Levin
2019-09-22 18:54 ` [PATCH AUTOSEL 4.19 128/128] btrfs: extent-tree: Make sure we only allocate extents from block groups with the same type Sasha Levin

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=20190922185418.2158-67-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=axboe@kernel.dk \
    --cc=josef@toxicpanda.com \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mchristi@redhat.com \
    --cc=nbd@other.debian.org \
    --cc=stable@vger.kernel.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.