All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	stable@vger.kernel.org, Kirill Smelkov <kirr@nexedi.com>,
	Miklos Szeredi <mszeredi@redhat.com>
Subject: [PATCH 5.1 110/122] fuse: Add FOPEN_STREAM to use stream_open()
Date: Thu, 23 May 2019 21:07:12 +0200	[thread overview]
Message-ID: <20190523181720.013770818@linuxfoundation.org> (raw)
In-Reply-To: <20190523181705.091418060@linuxfoundation.org>

From: Kirill Smelkov <kirr@nexedi.com>

commit bbd84f33652f852ce5992d65db4d020aba21f882 upstream.

Starting from commit 9c225f2655e3 ("vfs: atomic f_pos accesses as per
POSIX") files opened even via nonseekable_open gate read and write via lock
and do not allow them to be run simultaneously. This can create read vs
write deadlock if a filesystem is trying to implement a socket-like file
which is intended to be simultaneously used for both read and write from
filesystem client.  See commit 10dce8af3422 ("fs: stream_open - opener for
stream-like files so that read and write can run simultaneously without
deadlock") for details and e.g. commit 581d21a2d02a ("xenbus: fix deadlock
on writes to /proc/xen/xenbus") for a similar deadlock example on
/proc/xen/xenbus.

To avoid such deadlock it was tempting to adjust fuse_finish_open to use
stream_open instead of nonseekable_open on just FOPEN_NONSEEKABLE flags,
but grepping through Debian codesearch shows users of FOPEN_NONSEEKABLE,
and in particular GVFS which actually uses offset in its read and write
handlers

	https://codesearch.debian.net/search?q=-%3Enonseekable+%3D
	https://gitlab.gnome.org/GNOME/gvfs/blob/1.40.0-6-gcbc54396/client/gvfsfusedaemon.c#L1080
	https://gitlab.gnome.org/GNOME/gvfs/blob/1.40.0-6-gcbc54396/client/gvfsfusedaemon.c#L1247-1346
	https://gitlab.gnome.org/GNOME/gvfs/blob/1.40.0-6-gcbc54396/client/gvfsfusedaemon.c#L1399-1481

so if we would do such a change it will break a real user.

Add another flag (FOPEN_STREAM) for filesystem servers to indicate that the
opened handler is having stream-like semantics; does not use file position
and thus the kernel is free to issue simultaneous read and write request on
opened file handle.

This patch together with stream_open() should be added to stable kernels
starting from v3.14+. This will allow to patch OSSPD and other FUSE
filesystems that provide stream-like files to return FOPEN_STREAM |
FOPEN_NONSEEKABLE in open handler and this way avoid the deadlock on all
kernel versions. This should work because fuse_finish_open ignores unknown
open flags returned from a filesystem and so passing FOPEN_STREAM to a
kernel that is not aware of this flag cannot hurt. In turn the kernel that
is not aware of FOPEN_STREAM will be < v3.14 where just FOPEN_NONSEEKABLE
is sufficient to implement streams without read vs write deadlock.

Cc: stable@vger.kernel.org # v3.14+
Signed-off-by: Kirill Smelkov <kirr@nexedi.com>
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 fs/fuse/file.c            |    4 +++-
 include/uapi/linux/fuse.h |    2 ++
 2 files changed, 5 insertions(+), 1 deletion(-)

--- a/fs/fuse/file.c
+++ b/fs/fuse/file.c
@@ -178,7 +178,9 @@ void fuse_finish_open(struct inode *inod
 
 	if (!(ff->open_flags & FOPEN_KEEP_CACHE))
 		invalidate_inode_pages2(inode->i_mapping);
-	if (ff->open_flags & FOPEN_NONSEEKABLE)
+	if (ff->open_flags & FOPEN_STREAM)
+		stream_open(inode, file);
+	else if (ff->open_flags & FOPEN_NONSEEKABLE)
 		nonseekable_open(inode, file);
 	if (fc->atomic_o_trunc && (file->f_flags & O_TRUNC)) {
 		struct fuse_inode *fi = get_fuse_inode(inode);
--- a/include/uapi/linux/fuse.h
+++ b/include/uapi/linux/fuse.h
@@ -229,11 +229,13 @@ struct fuse_file_lock {
  * FOPEN_KEEP_CACHE: don't invalidate the data cache on open
  * FOPEN_NONSEEKABLE: the file is not seekable
  * FOPEN_CACHE_DIR: allow caching this directory
+ * FOPEN_STREAM: the file is stream-like (no file position at all)
  */
 #define FOPEN_DIRECT_IO		(1 << 0)
 #define FOPEN_KEEP_CACHE	(1 << 1)
 #define FOPEN_NONSEEKABLE	(1 << 2)
 #define FOPEN_CACHE_DIR		(1 << 3)
+#define FOPEN_STREAM		(1 << 4)
 
 /**
  * INIT request/reply flags



  parent reply	other threads:[~2019-05-23 19:32 UTC|newest]

Thread overview: 142+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-23 19:05 [PATCH 5.1 000/122] 5.1.5-stable review Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 001/122] ipv6: fix src addr routing with the exception table Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 002/122] ipv6: prevent possible fib6 leaks Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 003/122] net: Always descend into dsa/ Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 004/122] net: avoid weird emergency message Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 005/122] net/mlx4_core: Change the error print to info print Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 006/122] net: test nouarg before dereferencing zerocopy pointers Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 007/122] net: usb: qmi_wwan: add Telit 0x1260 and 0x1261 compositions Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 008/122] nfp: flower: add rcu locks when accessing netdev for tunnels Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 009/122] ppp: deflate: Fix possible crash in deflate_init Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 010/122] rtnetlink: always put IFLA_LINK for links with a link-netnsid Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 011/122] tipc: switch order of device registration to fix a crash Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 012/122] vsock/virtio: free packets during the socket release Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 013/122] tipc: fix modprobe tipc failed after switch order of device registration Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 014/122] mlxsw: core: Prevent QSFP module initialization for old hardware Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 015/122] mlxsw: core: Prevent reading unsupported slave address from SFP EEPROM Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 016/122] flow_offload: support CVLAN match Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 017/122] net/mlx5e: Fix calling wrong function to get inner vlan key and mask Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 018/122] net/mlx5: Fix peer pf disable hca command Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 019/122] vsock/virtio: Initialize core virtio vsock before registering the driver Greg Kroah-Hartman
2019-05-23 19:05   ` Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 020/122] net/mlx5e: Add missing ethtool driver info for representors Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 021/122] net/mlx5e: Additional check for flow destination comparison Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 022/122] net/mlx5: Imply MLXFW in mlx5_core Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 023/122] net/mlx5e: Fix ethtool rxfh commands when CONFIG_MLX5_EN_RXNFC is disabled Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 024/122] blk-mq: free hw queues resource in hctxs release handler Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 025/122] regulator: core: fix error path for regulator_set_voltage_unlocked Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 026/122] parisc: Export running_on_qemu symbol for modules Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 027/122] parisc: Add memory clobber to TLB purges Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 028/122] parisc: Skip registering LED when running in QEMU Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 029/122] parisc: Add memory barrier to asm pdc and sync instructions Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 030/122] parisc: Allow live-patching of __meminit functions Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 031/122] parisc: Use PA_ASM_LEVEL in boot code Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 032/122] parisc: Rename LEVEL to PA_ASM_LEVEL to avoid name clash with DRBD code Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 033/122] stm class: Fix channel free in stm output free path Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 034/122] stm class: Fix channel bitmap on 32-bit systems Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 035/122] brd: re-enable __GFP_HIGHMEM in brd_insert_page() Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 036/122] proc: prevent changes to overridden credentials Greg Kroah-Hartman
2019-05-23 19:05 ` [PATCH 5.1 037/122] Revert "MD: fix lock contention for flush bios" Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 038/122] md: batch flush requests Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 039/122] md: add mddev->pers to avoid potential NULL pointer dereference Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 040/122] md: add a missing endianness conversion in check_sb_changes Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 041/122] dcache: sort the freeing-without-RCU-delay mess for good Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 042/122] intel_th: msu: Fix single mode with IOMMU Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 043/122] p54: drop device reference count if fails to enable device Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 044/122] of: fix clang -Wunsequenced for be32_to_cpu() Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 045/122] brcmfmac: Add DMI nvram filename quirk for ACEPC T8 and T11 mini PCs Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 046/122] cifs: fix credits leak for SMB1 oplock breaks Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 047/122] cifs: fix strcat buffer overflow and reduce raciness in smb21_set_oplock_level() Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 048/122] phy: ti-pipe3: fix missing bit-wise or operator when assigning val Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 049/122] media: ov6650: Fix sensor possibly not detected on probe Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 050/122] media: seco-cec: fix building with RC_CORE=m Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 051/122] media: imx: csi: Allow unknown nearest upstream entities Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 052/122] media: imx: Clear fwnode link struct for each endpoint iteration Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 053/122] media: imx: Rename functions that add IPU-internal subdevs Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 054/122] media: imx: Dont register IPU subdevs/links if CSI port missing Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 055/122] RDMA/mlx5: Use get_zeroed_page() for clock_info Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 056/122] RDMA/ipoib: Allow user space differentiate between valid dev_port Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 057/122] NFS4: Fix v4.0 client state corruption when mount Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 058/122] PNFS fallback to MDS if no deviceid found Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 059/122] clk: hi3660: Mark clk_gate_ufs_subsys as critical Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 060/122] clk: tegra: Fix PLLM programming on Tegra124+ when PMC overrides divider Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 061/122] clk: mediatek: Disable tuner_en before change PLL rate Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 062/122] clk: rockchip: fix wrong clock definitions for rk3328 Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 063/122] udlfb: delete the unused parameter for dlfb_handle_damage Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 064/122] udlfb: fix sleeping inside spinlock Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 065/122] udlfb: introduce a rendering mutex Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 066/122] fuse: fix writepages on 32bit Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 067/122] fuse: honor RLIMIT_FSIZE in fuse_file_fallocate Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 068/122] ovl: fix missing upper fs freeze protection on copy up for ioctl Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 069/122] fsnotify: fix unlink performance regression Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 070/122] gcc-plugins: arm_ssp_per_task_plugin: Fix for older GCC < 6 Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 071/122] iommu/tegra-smmu: Fix invalid ASID bits on Tegra30/114 Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 072/122] ceph: flush dirty inodes before proceeding with remount Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 073/122] x86_64: Add gap to int3 to allow for call emulation Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 074/122] x86_64: Allow breakpoints to emulate call instructions Greg Kroah-Hartman
2019-05-23 19:06   ` Greg Kroah-Hartman
2019-05-23 19:06   ` gregkh
2019-05-23 19:06 ` [PATCH 5.1 075/122] ftrace/x86_64: Emulate call function while updating in breakpoint handler Greg Kroah-Hartman
2019-05-23 19:06   ` Greg Kroah-Hartman
2019-05-23 19:06   ` gregkh
2019-05-23 19:06 ` [PATCH 5.1 076/122] tracing: Fix partial reading of trace events id file Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 077/122] tracing: probeevent: Fix to make the type of $comm string Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 078/122] memory: tegra: Fix integer overflow on tick value calculation Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 079/122] perf intel-pt: Fix instructions sampling rate Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 080/122] perf intel-pt: Fix improved sample timestamp Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 081/122] perf intel-pt: Fix sample timestamp wrt non-taken branches Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 082/122] MIPS: perf: Fix build with CONFIG_CPU_BMIPS5000 enabled Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 083/122] objtool: Allow AR to be overridden with HOSTAR Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 084/122] x86/mpx, mm/core: Fix recursive munmap() corruption Greg Kroah-Hartman
2019-05-23 19:06   ` Greg Kroah-Hartman
2019-05-23 19:06   ` Greg Kroah-Hartman
2019-05-23 19:06   ` Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 085/122] fbdev/efifb: Ignore framebuffer memmap entries that lack any memory types Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 086/122] fbdev: sm712fb: fix brightness control on reboot, dont set SR30 Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 087/122] fbdev: sm712fb: fix VRAM detection, dont set SR70/71/74/75 Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 088/122] fbdev: sm712fb: fix white screen of death on reboot, dont set CR3B-CR3F Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 089/122] fbdev: sm712fb: fix boot screen glitch when sm712fb replaces VGA Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 090/122] fbdev: sm712fb: fix crashes during framebuffer writes by correctly mapping VRAM Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 091/122] fbdev: sm712fb: fix support for 1024x768-16 mode Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 092/122] fbdev: sm712fb: use 1024x768 by default on non-MIPS, fix garbled display Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 093/122] fbdev: sm712fb: fix crashes and garbled display during DPMS modesetting Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 094/122] PCI: Mark AMD Stoney Radeon R7 GPU ATS as broken Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 095/122] PCI: Mark Atheros AR9462 to avoid bus reset Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 096/122] PCI: Reset Lenovo ThinkPad P50 nvgpu at boot if necessary Greg Kroah-Hartman
2019-05-23 19:06   ` Greg Kroah-Hartman
2019-05-23 19:06 ` [PATCH 5.1 097/122] PCI: Init PCIe feature bits for managed host bridge alloc Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 098/122] PCI/AER: Change pci_aer_init() stub to return void Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 099/122] PCI: rcar: Add the initialization of PCIe link in resume_noirq() Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 100/122] PCI: Factor out pcie_retrain_link() function Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 101/122] PCI: Work around Pericom PCIe-to-PCI bridge Retrain Link erratum Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 102/122] dm cache metadata: Fix loading discard bitset Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 103/122] dm zoned: Fix zone report handling Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 104/122] dm init: fix max devices/targets checks Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 105/122] dm delay: fix a crash when invalid device is specified Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 106/122] dm crypt: move detailed message into debug level Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 107/122] dm integrity: correctly calculate the size of metadata area Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 108/122] dm ioctl: fix hang in early create error condition Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 109/122] dm mpath: always free attached_handler_name in parse_path() Greg Kroah-Hartman
2019-05-23 19:07 ` Greg Kroah-Hartman [this message]
2019-05-23 19:07 ` [PATCH 5.1 111/122] dm: make sure to obey max_io_len_target_boundary Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 112/122] Revert "Dont jump to compute_result state from check_result state" Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 113/122] md/raid: raid5 preserve the writeback action after the parity check Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 114/122] dmaengine: imx-sdma: Only check ratio on parts that support 1:1 Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 115/122] driver core: Postpone DMA tear-down until after devres release for probe failure Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 116/122] bpf: relax inode permission check for retrieving bpf program Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 117/122] bpf: add map_lookup_elem_sys_only for lookups from syscall side Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 118/122] bpf, lru: avoid messing with eviction heuristics upon syscall lookup Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 119/122] y2038: Make CONFIG_64BIT_TIME unconditional Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 120/122] btrfs: reloc: Fix NULL pointer dereference due to expanded reloc_root lifespan Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 121/122] ARM: dts: imx6q-logicpd: Reduce inrush current on USBH1 Greg Kroah-Hartman
2019-05-23 19:07 ` [PATCH 5.1 122/122] ARM: dts: imx6q-logicpd: Reduce inrush current on start Greg Kroah-Hartman
2019-05-23 23:08 ` [PATCH 5.1 000/122] 5.1.5-stable review kernelci.org bot
2019-05-24 19:48   ` Kevin Hilman
2019-05-25 16:07     ` Greg Kroah-Hartman
2019-05-24  8:53 ` Naresh Kamboju
2019-05-24 15:01   ` Greg Kroah-Hartman
2019-05-24 11:05 ` Jon Hunter
2019-05-24 11:05   ` Jon Hunter
2019-05-24 15:01   ` Greg Kroah-Hartman
2019-05-24 18:55 ` shuah
2019-05-24 19:07   ` Greg Kroah-Hartman

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=20190523181720.013770818@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=kirr@nexedi.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mszeredi@redhat.com \
    --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.