linux-kernel.vger.kernel.org archive mirror
 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, Ronnie Sahlberg <lsahlber@redhat.com>,
	Steve French <stfrench@microsoft.com>,
	Pavel Shilovsky <pshilov@microsoft.com>
Subject: [PATCH 5.1 013/121] cifs: add spinlock for the openFileList to cifsInodeInfo
Date: Mon, 24 Jun 2019 17:55:45 +0800	[thread overview]
Message-ID: <20190624092321.322715737@linuxfoundation.org> (raw)
In-Reply-To: <20190624092320.652599624@linuxfoundation.org>

From: Ronnie Sahlberg <lsahlber@redhat.com>

commit 487317c99477d00f22370625d53be3239febabbe upstream.

We can not depend on the tcon->open_file_lock here since in multiuser mode
we may have the same file/inode open via multiple different tcons.

The current code is race prone and will crash if one user deletes a file
at the same time a different user opens/create the file.

To avoid this we need to have a spinlock attached to the inode and not the tcon.

RHBZ:  1580165

CC: Stable <stable@vger.kernel.org>
Signed-off-by: Ronnie Sahlberg <lsahlber@redhat.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
Reviewed-by: Pavel Shilovsky <pshilov@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

---
 fs/cifs/cifsfs.c   |    1 +
 fs/cifs/cifsglob.h |    5 +++++
 fs/cifs/file.c     |    8 ++++++--
 3 files changed, 12 insertions(+), 2 deletions(-)

--- a/fs/cifs/cifsfs.c
+++ b/fs/cifs/cifsfs.c
@@ -303,6 +303,7 @@ cifs_alloc_inode(struct super_block *sb)
 	cifs_inode->uniqueid = 0;
 	cifs_inode->createtime = 0;
 	cifs_inode->epoch = 0;
+	spin_lock_init(&cifs_inode->open_file_lock);
 	generate_random_uuid(cifs_inode->lease_key);
 
 	/*
--- a/fs/cifs/cifsglob.h
+++ b/fs/cifs/cifsglob.h
@@ -1357,6 +1357,7 @@ struct cifsInodeInfo {
 	struct rw_semaphore lock_sem;	/* protect the fields above */
 	/* BB add in lists for dirty pages i.e. write caching info for oplock */
 	struct list_head openFileList;
+	spinlock_t	open_file_lock;	/* protects openFileList */
 	__u32 cifsAttrs; /* e.g. DOS archive bit, sparse, compressed, system */
 	unsigned int oplock;		/* oplock/lease level we have */
 	unsigned int epoch;		/* used to track lease state changes */
@@ -1760,10 +1761,14 @@ require use of the stronger protocol */
  *  tcp_ses_lock protects:
  *	list operations on tcp and SMB session lists
  *  tcon->open_file_lock protects the list of open files hanging off the tcon
+ *  inode->open_file_lock protects the openFileList hanging off the inode
  *  cfile->file_info_lock protects counters and fields in cifs file struct
  *  f_owner.lock protects certain per file struct operations
  *  mapping->page_lock protects certain per page operations
  *
+ *  Note that the cifs_tcon.open_file_lock should be taken before
+ *  not after the cifsInodeInfo.open_file_lock
+ *
  *  Semaphores
  *  ----------
  *  sesSem     operations on smb session
--- a/fs/cifs/file.c
+++ b/fs/cifs/file.c
@@ -338,10 +338,12 @@ cifs_new_fileinfo(struct cifs_fid *fid,
 	atomic_inc(&tcon->num_local_opens);
 
 	/* if readable file instance put first in list*/
+	spin_lock(&cinode->open_file_lock);
 	if (file->f_mode & FMODE_READ)
 		list_add(&cfile->flist, &cinode->openFileList);
 	else
 		list_add_tail(&cfile->flist, &cinode->openFileList);
+	spin_unlock(&cinode->open_file_lock);
 	spin_unlock(&tcon->open_file_lock);
 
 	if (fid->purge_cache)
@@ -413,7 +415,9 @@ void _cifsFileInfo_put(struct cifsFileIn
 	cifs_add_pending_open_locked(&fid, cifs_file->tlink, &open);
 
 	/* remove it from the lists */
+	spin_lock(&cifsi->open_file_lock);
 	list_del(&cifs_file->flist);
+	spin_unlock(&cifsi->open_file_lock);
 	list_del(&cifs_file->tlist);
 	atomic_dec(&tcon->num_local_opens);
 
@@ -1950,9 +1954,9 @@ refind_writable:
 			return 0;
 		}
 
-		spin_lock(&tcon->open_file_lock);
+		spin_lock(&cifs_inode->open_file_lock);
 		list_move_tail(&inv_file->flist, &cifs_inode->openFileList);
-		spin_unlock(&tcon->open_file_lock);
+		spin_unlock(&cifs_inode->open_file_lock);
 		cifsFileInfo_put(inv_file);
 		++refind;
 		inv_file = NULL;



  parent reply	other threads:[~2019-06-24 10:11 UTC|newest]

Thread overview: 133+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-24  9:55 [PATCH 5.1 000/121] 5.1.15-stable review Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 001/121] tracing: Silence GCC 9 array bounds warning Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 002/121] mmc: sdhci: sdhci-pci-o2micro: Correctly set bus width when tuning Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 003/121] mmc: sdhi: disallow HS400 for M3-W ES1.2, RZ/G2M, and V3H Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 004/121] mmc: mediatek: fix SDIO IRQ interrupt handle flow Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 005/121] mmc: mediatek: fix SDIO IRQ detection issue Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 006/121] mmc: core: API to temporarily disable retuning for SDIO CRC errors Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 007/121] mmc: core: Add sdio_retune_hold_now() and sdio_retune_release() Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 008/121] mmc: core: Prevent processing SDIO IRQs when the card is suspended Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 009/121] scsi: ufs: Avoid runtime suspend possibly being blocked forever Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 010/121] usb: chipidea: udc: workaround for endpoint conflict issue Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 011/121] xhci: detect USB 3.2 capable host controllers correctly Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 012/121] usb: xhci: Dont try to recover an endpoint if port is in error state Greg Kroah-Hartman
2019-06-24  9:55 ` Greg Kroah-Hartman [this message]
2019-06-24  9:55 ` [PATCH 5.1 014/121] cifs: fix GlobalMid_Lock bug in cifs_reconnect Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 015/121] IB/hfi1: Validate fault injection opcode user input Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 016/121] IB/hfi1: Close PSM sdma_progress sleep window Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 017/121] IB/hfi1: Avoid hardlockup with flushlist_lock Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 018/121] IB/hfi1: Correct tid qp rcd to match verbs context Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 019/121] IB/hfi1: Silence txreq allocation warnings Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 020/121] iio: imu: st_lsm6dsx: fix PM support for st_lsm6dsx i2c controller Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 021/121] iio: temperature: mlx90632 Relax the compatibility check Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 022/121] Input: synaptics - enable SMBus on ThinkPad E480 and E580 Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 023/121] Input: uinput - add compat ioctl number translation for UI_*_FF_UPLOAD Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 024/121] Input: silead - add MSSL0017 to acpi_device_id Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 025/121] apparmor: fix PROFILE_MEDIATES for untrusted input Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 026/121] apparmor: enforce nullbyte at end of tag string Greg Kroah-Hartman
2019-06-24  9:55 ` [PATCH 5.1 027/121] apparmor: reset pos on failure to unpack for various functions Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 028/121] Revert "brcmfmac: disable command decode in sdio_aos" Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 029/121] brcmfmac: sdio: Disable auto-tuning around commands expected to fail Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 030/121] brcmfmac: sdio: Dont tune while the card is off Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 031/121] lkdtm/usercopy: Moves the KERNEL_DS test to non-canonical Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 032/121] ARC: fix build warnings Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 033/121] dmaengine: jz4780: Fix transfers being ACKed too soon Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 034/121] dmaengine: dw-axi-dmac: fix null dereference when pointer first is null Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 035/121] dmaengine: mediatek-cqdma: sleeping in atomic context Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 036/121] dmaengine: sprd: Fix the possible crash when getting descriptor status Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 037/121] dmaengine: sprd: Add validation of current descriptor in irq handler Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 038/121] dmaengine: sprd: Fix the incorrect start for 2-stage destination channels Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 039/121] dmaengine: sprd: Fix block length overflow Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 040/121] dmaengine: sprd: Fix the right place to configure 2-stage transfer Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 041/121] ARC: [plat-hsdk]: Add missing multicast filter bins number to GMAC node Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 042/121] ARC: [plat-hsdk]: Add missing FIFO size entry in " Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 043/121] MIPS: mark ginvt() as __always_inline Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 044/121] fpga: stratix10-soc: fix use-after-free on s10_init() Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 045/121] fpga: dfl: afu: Pass the correct device to dma_mapping_error() Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 046/121] fpga: dfl: Add lockdep classes for pdata->lock Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 047/121] parport: Fix mem leak in parport_register_dev_model Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 048/121] parisc: Fix compiler warnings in float emulation code Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 049/121] habanalabs: fix bug in checking huge page optimization Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 050/121] IB/rdmavt: Fix alloc_qpn() WARN_ON() Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 051/121] IB/hfi1: Insure freeze_work work_struct is canceled on shutdown Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 052/121] IB/{qib, hfi1, rdmavt}: Correct ibv_devinfo max_mr value Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 053/121] IB/hfi1: Validate page aligned for a given virtual address Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 054/121] MIPS: uprobes: remove set but not used variable epc Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 055/121] crypto: hmac - fix memory leak in hmac_init_tfm() Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 056/121] xtensa: Fix section mismatch between memblock_reserve and mem_reserve Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 057/121] kselftest/cgroup: fix unexpected testing failure on test_memcontrol Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 058/121] kselftest/cgroup: fix unexpected testing failure on test_core Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 059/121] kselftest/cgroup: fix incorrect test_core skip Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 060/121] userfaultfd: selftest: fix compiler warning Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 061/121] selftests: vm: install test_vmalloc.sh for run_vmtests Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 062/121] nds32: Avoid IEX status being incorrectly modified Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 063/121] net: dsa: mv88e6xxx: avoid error message on remove from VLAN 0 Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 064/121] net: hns: Fix loopback test failed at copper ports Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 065/121] mdesc: fix a missing-check bug in get_vdev_port_node_info() Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 066/121] sparc: perf: fix updated event period in response to PERF_EVENT_IOC_PERIOD Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 067/121] net: ethernet: mediatek: Use hw_feature to judge if HWLRO is supported Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 068/121] net: ethernet: mediatek: Use NET_IP_ALIGN to judge if HW RX_2BYTE_OFFSET is enabled Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 069/121] selftests: set sysctl bc_forwarding properly in router_broadcast.sh Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 070/121] drm/arm/mali-dp: Add a loop around the second set CVAL and try 5 times Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 071/121] drm/arm/hdlcd: Actually validate CRTC modes Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 072/121] drm/arm/hdlcd: Allow a bit of clock tolerance Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 073/121] nvmet: fix data_len to 0 for bdev-backed write_zeroes Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 074/121] kbuild: tar-pkg: enable communication with jobserver Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 075/121] scripts/checkstack.pl: Fix arm64 wrong or unknown architecture Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 076/121] net: phylink: avoid reducing support mask Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 077/121] scsi: ufs: Check that space was properly alloced in copy_query_response Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 078/121] scsi: smartpqi: unlock on error in pqi_submit_raid_request_synchronous() Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 079/121] net: ipvlan: Fix ipvlan device tso disabled while NETIF_F_IP_CSUM is set Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 080/121] udmabuf: actually unmap the scatterlist Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 081/121] tests: fix pidfd-test compilation Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 082/121] s390/qeth: handle limited IPv4 broadcast in L3 TX path Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 083/121] s390/qeth: check dst entry before use Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 084/121] s390/qeth: fix VLAN attribute in bridge_hostnotify udev event Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 085/121] hwmon: (core) add thermal sensors only if dev->of_node is present Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 086/121] hwmon: (pmbus/core) Treat parameters as paged if on multiple pages Greg Kroah-Hartman
2019-06-24  9:56 ` [PATCH 5.1 087/121] arm64: Silence gcc warnings about arch ABI drift Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 088/121] nvme: Fix u32 overflow in the number of namespace list calculation Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 089/121] ovl: detect overlapping layers Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 090/121] ovl: dont fail with disconnected lower NFS Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 091/121] ovl: fix bogus -Wmaybe-unitialized warning Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 092/121] btrfs: start readahead also in seed devices Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 093/121] can: xilinx_can: use correct bittiming_const for CAN FD core Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 094/121] can: flexcan: fix timeout when set small bitrate Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 095/121] can: purge socket error queue on sock destruct Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 096/121] riscv: mm: synchronize MMU after pte change Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 097/121] powerpc/bpf: use unsigned division instruction for 64-bit operations Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 098/121] ARM: imx: cpuidle-imx6sx: Restrict the SW2ISO increase to i.MX6SX Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 099/121] ARM: mvebu_v7_defconfig: fix Ethernet on Clearfog Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 100/121] ARM: dts: dra76x: Update MMC2_HS200_MANUAL1 iodelay values Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 101/121] ARM: dts: am57xx-idk: Remove support for voltage switching for SD card Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 102/121] arm64/sve: <uapi/asm/ptrace.h> should not depend on <uapi/linux/prctl.h> Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 103/121] arm64: ssbd: explicitly depend on <linux/prctl.h> Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 104/121] KVM: x86/mmu: Allocate PAE root array when using SVMs 32-bit NPT Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 105/121] ovl: make i_ino consistent with st_ino in more cases Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 106/121] drm/vmwgfx: Use the backdoor port if the HB port is not available Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 107/121] drm/i915: Dont clobber M/N values during fastset check Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 108/121] binder: fix possible UAF when freeing buffer Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 109/121] staging: erofs: add requirements field in superblock Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 110/121] Bluetooth: Align minimum encryption key size for LE and BR/EDR connections Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 111/121] Bluetooth: Fix regression with minimum encryption key size alignment Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 112/121] SMB3: retry on STATUS_INSUFFICIENT_RESOURCES instead of failing write Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 113/121] x86/vdso: Prevent segfaults due to hoisted vclock reads Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 114/121] fs/namespace: fix unprivileged mount propagation Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 115/121] cfg80211: fix memory leak of wiphy device name Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 116/121] mac80211: drop robust management frames from unknown TA Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 117/121] {nl,mac}80211: allow 4addr AP operation on crypto controlled devices Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 118/121] mac80211: handle deauthentication/disassociation from TDLS peer Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 119/121] nl80211: fix station_info pertid memory leak Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 120/121] mac80211: Do not use stack memory with scatterlist for GMAC Greg Kroah-Hartman
2019-06-24  9:57 ` [PATCH 5.1 121/121] x86/resctrl: Dont stop walking closids when a locksetup group is found Greg Kroah-Hartman
2019-06-24 12:48 ` [PATCH 5.1 000/121] 5.1.15-stable review Guenter Roeck
2019-06-24 15:41   ` Greg Kroah-Hartman
2019-06-24 15:11 ` kernelci.org bot
2019-06-24 17:52 ` Jiunn Chang
2019-06-25  0:51   ` Greg Kroah-Hartman
2019-06-25  0:15 ` Guenter Roeck
2019-06-25  3:08   ` Greg Kroah-Hartman
2019-06-25  0:45 ` Naresh Kamboju
2019-06-25  3:08   ` Greg Kroah-Hartman
2019-06-25 10:01 ` Jon Hunter
2019-06-26  0:51   ` 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=20190624092321.322715737@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lsahlber@redhat.com \
    --cc=pshilov@microsoft.com \
    --cc=stable@vger.kernel.org \
    --cc=stfrench@microsoft.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).